yonidrori

Untitled

Aug 24th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.70 KB | None | 0 0
  1. -- ~ Aero
  2.  
  3. wait(0.1);
  4.  
  5. --------------------------------------
  6. -------------- SETTINGS --------------
  7. --------------------------------------
  8.  
  9. _G['Https'] = nil;
  10.  
  11. _G['OnLoadMsg'] = true;
  12.  
  13. _G['ComplexStartup'] = true;
  14.  
  15. _G['TabsStartTime'] = tick();
  16.  
  17. _G['Tabs'] = {};
  18.  
  19. _G['Prefix'] = '-';
  20.  
  21. _G['Player'] = Game:GetService('Players').LocalPlayer;
  22.  
  23. _G['Parent'] = Game:GetService('Workspace');
  24.  
  25. _G['Banlist'] = {};
  26.  
  27. _G['TabName'] = '';
  28.  
  29. _G['TabColor'] = 'Royal purple';
  30.  
  31. _G['Commands'] = {};
  32.  
  33. -- IMPORTANT!! --
  34.  
  35. _G.Lock = false;
  36.  
  37. ---------------------------------------------------
  38. ----------------- END OF SETTINGS -----------------
  39. ---------------------------------------------------
  40.  
  41. function settingsGui(p)
  42.  
  43. local sg = Instance.new('ScreenGui',p);
  44. sg.Name = 'SettingsGUI';
  45.  
  46. local frame = Instance.new('Frame',sg);
  47. frame.BackgroundColor3 = Color3.new(50/255, 50/255, 50/255);
  48. frame.BorderColor3 = Color3.new(50/255, 50/255, 50/255);
  49. frame.Size = UDim2.new(0, 550,0, 300);
  50. frame.Position = UDim2.new(0.5, -250,0.5, -250);
  51.  
  52. local title = Instance.new('TextLabel',frame);
  53. title.BackgroundTransparency = 1;
  54. title.Size = UDim2.new(1, 0,0, 40);
  55. title.Text = 'Aeros Tabs - Settings';
  56. title.TextColor3 = Color3.new(255/255,255/255,255/255);
  57. title.TextScaled = true;
  58. title.TextWrapped = true;
  59. end
  60.  
  61. function isBanned(str)
  62. return _G.Banlist[str] ~= nil
  63. end
  64.  
  65.  
  66. function makeTabModel()
  67. local tab = Instance.new('Model',_G.Parent);
  68. tab.Name = tostring(math.random(1,100000));
  69. _G.TabName = tab.Name;
  70. end
  71.  
  72. makeTabModel();
  73.  
  74. function AddCommand(CommandName, String, Description, Function)
  75. return table.insert(_G.Commands,{['CommandName'] = CommandName,['String'] = String,['Description'] = Description,['Function'] = Function});
  76. end
  77.  
  78.  
  79. function DismissTabs()
  80. _G.Parent[_G.TabName]:ClearAllChildren()
  81. end
  82. --
  83. function Output(Txt, func)
  84. local part = Instance.new('Part', _G.Parent[_G.TabName])
  85. part.Shape = 'Ball'
  86. part.BrickColor = BrickColor.new(_G.TabColor)
  87. part.Anchored = true
  88. part.Transparency = .2
  89. part.Size = Vector3.new(1, 1, 1)
  90. part.CanCollide = false
  91. part.BottomSurface = Enum.SurfaceType.Smooth;
  92. part.TopSurface = Enum.SurfaceType.Smooth;
  93. --local s = Instance.new('SelectionBox')
  94. --s.Color3 = Color3.new(85/255,170/255,255/255)
  95. --s.Adornee = part
  96. --s.Parent = part
  97. --s.Transparency = .5
  98.  
  99. Instance.new('PointLight', part)
  100.  
  101. local bg = Instance.new('BillboardGui', part)
  102. bg.Adornee = part
  103. bg.Size = UDim2.new(8, 0, 7.5, 0)
  104. bg.StudsOffset = Vector3.new(0, 1, 0)
  105. local text = Instance.new('TextLabel', bg)
  106. text.Size = UDim2.new(1, 0, 0.2, 0)
  107. text.FontSize = 'Size18'
  108. text.BackgroundTransparency = 1
  109. text.Font = 'SourceSansBold'
  110. text.TextStrokeTransparency = 0
  111. text.TextColor3 = Color3.new(255/255,255/255,255/255)
  112. text.Text = Txt
  113. local trails = {};
  114. local TrailClear = false;
  115.  
  116. game:GetService('RunService').RenderStepped:connect(function()
  117. if TrailClear ~= true then
  118. local Trail = Instance.new('Part', _G.Parent[_G.TabName])
  119. Trail.CFrame = part.CFrame;
  120. Trail.FormFactor = 'Custom';
  121. Trail.Anchored = true;
  122. Trail.CanCollide = false;
  123. Trail.BrickColor = BrickColor.new(_G.TabColor);
  124. Trail.Size = Vector3.new(.2,.2,.2);
  125. table.insert(trails, Trail);
  126. for i,_ in next,trails do
  127. if trails[i] ~= nil and trails[i+1] ~= nil then
  128. local Part1 = trails[i]
  129. local Part2 = trails[i+1]
  130. local Mag = ((Part1.CFrame.p-Part2.CFrame.p).magnitude)
  131. Part1.Size = Vector3.new(Part1.Size.X+.014, Mag, Part1.Size.Z+.014)
  132. Part1.Transparency = Part1.Transparency + .028
  133. Part1.CFrame = CFrame.new(Part1.CFrame.p, Part2.CFrame.p)
  134. * CFrame.Angles(math.pi/2,0,0)
  135. if Part1.Size.X >= .53 then
  136. Part1:Destroy()
  137. table.remove(trails, i)
  138. end
  139. end
  140. end
  141. end
  142. end)
  143.  
  144. local clickdetect = Instance.new('ClickDetector',part)
  145. clickdetect.MaxActivationDistance = 999999999
  146. clickdetect.MouseClick:connect(function(p)
  147. if p.Name == _G.Player.Name then
  148. DismissTabs()
  149. func = func;
  150. if func == nil then return; end
  151. func();
  152. end
  153. end)
  154. table.insert(_G.Tabs, part)
  155. end
  156. -- Rotation --
  157.  
  158. -- COMMANDS! --
  159.  
  160. AddCommand('Commands','commands','Grabs all of Aero Tabs commands for you.',
  161. function()
  162. DismissTabs()
  163. for _, v in pairs(_G.Commands) do
  164. Output(v['CommandName'],
  165. function()
  166. Output('Description: '..v['Description'])
  167. Output('Use: '..v['String'] .. _G.Prefix)
  168. Output('Command Name: '..v['CommandName'])
  169. end)
  170. end
  171. end
  172. )
  173.  
  174. AddCommand('Commands','cmds','Grabs all of Aero Tabs commands for you.',
  175. function()
  176. DismissTabs()
  177. for _, v in pairs(_G.Commands) do
  178. Output(v['CommandName'],
  179. function()
  180. Output('Description: '..v['Description'])
  181. Output('Use: '..v['String'] .. _G.Prefix)
  182. Output('Command Name: '..v['CommandName'])
  183. end)
  184. end
  185. end
  186. )
  187.  
  188. AddCommand('Ban','ban','Bans the specified player from joining the game.',
  189. function(player)
  190. for _,p in pairs(player) do
  191. if p then
  192. table.insert(_G.Banlist, p.Name)
  193. Output('Player ' .. p.Name .. ' has been banned.');
  194. p:Kick('You are banned from this server!')
  195. end
  196. end
  197. end
  198. )
  199.  
  200. AddCommand('Settings','settings','Shows the settings GUI to you.',
  201. function()
  202. settingsGui(game.Players.LocalPlayer.PlayerGui);
  203. end
  204. )
  205.  
  206. AddCommand('Kill','kill','Kills the specified player',
  207. function(player)
  208. for _,p in pairs(player) do
  209. if p and p.Character then
  210. p.Character:BreakJoints();
  211. end
  212. end
  213. end)
  214.  
  215. -- END OF COMMANDS! --
  216.  
  217. -- CHATTED! --
  218.  
  219. function getPlayers(msg)
  220. local plrs = {}
  221. if msg == 'me' then
  222. table.insert(plrs, _G.Player)
  223. elseif msg == 'all' then
  224. plrs = game:GetService('Players'):GetChildren()
  225. elseif msg == 'noobs' then
  226. for _,plr in pairs(game:GetService('Players'):GetChildren()) do
  227. if plr.AccountAge > 364 then
  228. table.insert(plrs, plr)
  229. end
  230. end
  231. elseif msg == 'veterans' then
  232. for _,plr in pairs(game:GetService('Players'):GetChildren()) do
  233. if plr.AccountAge > 364 then
  234. table.insert(plrs, plr)
  235. end
  236. end
  237. elseif msg == 'others' then
  238. for i,v in pairs(game:GetService('Players'):GetChildren()) do
  239. if v ~= _G.Player then
  240. table.insert(plrs, v)
  241. end
  242. end
  243. else
  244. for i,v in pairs(game:GetService('Players'):GetChildren()) do
  245. if v.Name:lower():sub(1,#msg) == msg:lower() then
  246. table.insert(plrs, v)
  247. end
  248. end
  249. end
  250. return plrs
  251. end
  252.  
  253. for _,plr in pairs(game:GetService('Players'):GetChildren()) do
  254. end
  255.  
  256. _G.Player.Chatted:connect(function(m)
  257. if _G.Lock ~= false then return false; end
  258. for _,v in pairs(_G.Commands) do
  259. if v['String'].._G.Prefix == m:sub(1, #v['String']+#_G.Prefix) then
  260. v['Function'](getPlayers(m:sub(#v['String']+#_G.Prefix+1)), m:sub(#v['String']+#_G.Prefix+1))
  261. end
  262. end
  263. end)
  264.  
  265. -- END OF CHATTED! --
  266.  
  267. coroutine.resume(coroutine.create(function()
  268. rot = 0
  269. game:GetService('RunService').Stepped:connect(function()
  270. if _G.Player and _G.Player.Character and _G.Player.Character:findFirstChild('Torso') then
  271. rot = rot + 0.0001
  272. for i,v in pairs(_G.Tabs) do
  273. ypcall(function()
  274. local pos = _G.Player.Character.Torso.CFrame
  275. local radius = 4 + (#_G.Tabs * 0.5)
  276. local x = math.sin((i / #_G.Tabs - (0.5 / #_G.Tabs) + rot * 2) * math.pi * 2) * radius
  277. local y = 0
  278. local z = math.cos((i / #_G.Tabs - (0.5 / #_G.Tabs) + rot * 2) * math.pi * 2) * radius
  279. local arot = Vector3.new(x, y, z) + pos.p
  280. local brot = v.CFrame.p
  281. local crot = (arot * .1 + brot * .9)
  282. v.CFrame = CFrame.new(crot, pos.p)
  283. end)
  284. end
  285. end
  286. end)
  287. end))
  288. --
  289.  
  290. -- OnLoad Msg --
  291. if _G.OnLoadMsg ~= false then
  292. Output('Welcome to Aero Tabs, ' .. _G.Player.Name);
  293. wait();
  294. Output([[To get started please say 'cmds]].. _G.Prefix ..[[' or 'commands]].. _G.Prefix ..[[']]);
  295. end
  296. --
  297. game.Players.PlayerRemoving:connect(function(n)
  298. Output('[SYSTEM] ' .. n.Name .. ' has left the game!')
  299. end)
  300.  
  301. game.Players.PlayerAdded:connect(function(n)
  302. if isBanned(n.Name) then
  303. n:Kick'You are banned'
  304. Output('[SYSTEM] ' .. n.Name .. ' tried to join the game but failed.')
  305. end
  306. Output('[SYSTEM] ' .. n.Name .. ' has joined the game!')
  307. end)
Add Comment
Please, Sign In to add comment