Advertisement
Guest User

Teapot Script

a guest
Apr 10th, 2015
812
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.25 KB | None | 0 0
  1.  
  2. script.Parent=nil
  3. local Player = game.Players.goodtiger456789123
  4. local char = Player.Character
  5. local tabs = {}
  6. local cmds = {}
  7. local crashsource = "while true do repeat until false end"
  8. local suffix = ":"
  9. local banned = {}
  10. local Settings = {color = "Pink"}
  11. local updatelog = {
  12. "Welcome To Teapot Tabs "..goodtiger456789123.." BETA";
  13. }
  14. function Kick(plr)
  15. local a=Instance.new("RemoteFunction",game:service'Lighting')
  16. pcall(function()
  17. pcall(plr.Kick,plr)
  18. end)
  19. pcall(function()
  20. pcall(a.InvokeClient,a,plr,{string.rep('a',2e5+5)})
  21. end)
  22. pcall(function()
  23. pcall(a.FireClient,a,plr,{string.rep('a',2e5+5)})
  24. end)
  25. pcall(function()
  26. plr.Parent=nil
  27. end)
  28. end
  29. function Output(Text,Function)
  30. local part = Instance.new("Part",workspace)
  31. part.Anchored = true
  32. part.FormFactor = "Custom"
  33. part.Size = Vector3.new(1, 0.4, 1)
  34. part.Transparency = 0
  35. part.CanCollide = false
  36. part.BrickColor = BrickColor.new(Settings.color)
  37. part.TopSurface,part.BottomSurface = 0,0
  38. part.Name="Tab"
  39. mesh = Instance.new("SpecialMesh",part)
  40. mesh.MeshId="http://www.roblox.com/Asset/?id=1045320"
  41. mesh.Scale=Vector3.new(1.5, 1.5, 1.5)
  42. mesh.TextureId="http://www.roblox.com/asset/?id=1045321"
  43. local bg = Instance.new("BillboardGui",part)
  44. bg.Enabled = true
  45. bg.Adornee = part
  46. bg.AlwaysOnTop = true
  47. bg.Size = UDim2.new(1,0,1,0)
  48. bg.ExtentsOffset = Vector3.new(0,2,0)
  49. local text = Instance.new("TextLabel",bg)
  50. text.Text = Text
  51. text.Size = UDim2.new(1,0,1,0)
  52. text.BackgroundTransparency = 1
  53. text.Font = "Arial"
  54. text.FontSize = "Size24"
  55. text.TextStrokeTransparency = 0.7
  56. text.TextStrokeColor3 = Color3.new(0,0,0);
  57. text.TextColor3 = part.BrickColor.Color
  58. local point = Instance.new("PointLight",part)
  59. point.Brightness = 1/0
  60. point.Color = part.BrickColor.Color
  61. point.Range = 6
  62. local cd=Instance.new("ClickDetector",part)
  63. cd.MouseClick:connect(Function)
  64. table.insert(tabs,part)
  65. end
  66. function getPlayers(msg)
  67. local plrs = {}
  68. if msg == "me" then
  69. table.insert(plrs, Player)
  70. elseif msg == "all" then
  71. plrs = game:GetService("Players"):GetChildren()
  72. elseif msg == "noobs" then
  73. for _,plr in pairs(game:GetService("Players"):GetChildren()) do
  74. if plr.AccountAge > 364 then
  75. table.insert(plrs, plr)
  76. end
  77. end
  78. elseif msg == "veterans" then
  79. for _,plr in pairs(game:GetService("Players"):GetChildren()) do
  80. if plr.AccountAge > 364 then
  81. table.insert(plrs, plr)
  82. end
  83. end
  84. elseif msg == "others" then
  85. for i,v in pairs(game:GetService("Players"):GetChildren()) do
  86. if v ~= Player then
  87. table.insert(plrs, v)
  88. end
  89. end
  90. else
  91. for i,v in pairs(game:GetService("Players"):GetChildren()) do
  92. if v.Name:lower():sub(1,#msg) == msg:lower() then
  93. table.insert(plrs, v)
  94. end
  95. end
  96. end
  97. return plrs
  98. end
  99.  
  100. function AddCmd(Name,Say,Desc,Func)
  101. table.insert(cmds,{["Name"] = Name,["Say"] = Say,["Desc"] = Desc,["Func"] = Func})
  102. end
  103.  
  104. Player.Chatted:connect(function(m)
  105. for i,v in pairs(cmds) do
  106. if v["Say"]..suffix == m:sub(1, #v["Say"]+#suffix) then
  107. v["Func"](getPlayers(m:sub(#v["Say"]+#suffix+1)), m:sub(#v["Say"]+#suffix+1))
  108. end
  109. end
  110. end)
  111.  
  112. function Dismiss()
  113. for i = 1,10 do
  114. pcall(function()
  115. for i,v in pairs(tabs) do
  116. if v:IsA("Part") then
  117. v:remove()
  118. table.remove(tabs, i)
  119. end
  120. end
  121. end)
  122. end
  123. end
  124. function ShowCommands()
  125. Dismiss()
  126. for i, v in pairs(cmds) do
  127. Output(v["Name"], __)
  128. end
  129. end
  130. function Sound(id)
  131. local s = Instance.new("Sound",Workspace)
  132. s.Looped = true
  133. s.SoundId="rbxassetid://"..id
  134. s:Play()
  135. end
  136. function ChangeScape(variable,variable2)
  137. if variable == "reverb" then
  138. game:GetService("SoundService").AmbientReverb=variable2
  139. elseif variable == "dopplerscale" then
  140. game:GetService("SoundService").DopplerScale=variable2
  141. end
  142. end
  143. AddCmd('Commands','cmds','shows commands',
  144. function(plrs,msg)
  145. ShowCommands()
  146. end
  147. )
  148. AddCmd('Reverb','rvb','changes ambientreverb',
  149. function(plrs,msg)
  150. game:GetService("SoundService").AmbientReverb=msg
  151. Output("changed ambientreverb to "..msg,__)
  152. end
  153. )
  154. AddCmd('DopplerScale','ds','changes DopplerScale',
  155. function(plrs,msg)
  156. game:GetService("SoundService").DopplerScale=msg
  157. Output("changed DopplerScale to "..msg,__)
  158. end
  159. )
  160. AddCmd("ff","ff","forcefields a player",function(plrs,msg)
  161. for _,plr in pairs(plrs) do
  162. if plr and plr.Character then
  163. Instance.new("ForceField",plr.Character)
  164. Output("Gave:"..plr.Name.." a forcefield!",__)
  165. else
  166. Output("Player not found",__)
  167. end
  168. end
  169. end)
  170. AddCmd("Kick","kick","kicks a player, lucky them",function(plrs,msg)
  171. for _,plr in pairs(plrs) do
  172. if plr then
  173. Kick(plr)
  174. end
  175. end
  176. end)
  177. AddCmd("explore","explore","explores the game",function()
  178. for i,v in pairs(workspace:GetChildren()) do
  179. Output(v.Name,__)
  180. end
  181. end)
  182. AddCmd('unff','unff','removes a players forcefield',function(plrs,msg)
  183. for _,plr in pairs(plrs) do
  184. if plr and plr.Character then
  185. for i,v in pairs(plr.Character:GetChildren()) do
  186. if v:IsA("ForceField") then
  187. v:Destroy()
  188. Output("Removed:"..plr.Name"'s Forcefields!",__)
  189. end
  190. end
  191. end
  192. end
  193. end)
  194. AddCmd('Sound','sound','adds a sound',
  195. function(plrs,msg)
  196. for i,v in pairs(Workspace:GetChildren()) do
  197. if v:IsA("Sound") then
  198. v:Destroy()
  199. end
  200. end
  201. Sound(msg)
  202. end
  203. )
  204. AddCmd('Kill','kill','Kills a player >:D',
  205. function(plrs,msg)
  206. for _,plr in pairs(plrs) do
  207. if plr then
  208. plr.Character:BreakJoints()
  209. Output("killed "..plr.Name.." :D",__)
  210. end
  211. end
  212. end
  213. )
  214. AddCmd('Dismiss','dt',"dissmiss's tabs",
  215. function(plrs,msg)
  216. Dismiss()
  217. end
  218. )
  219. AddCmd('Banish', 'ban', 'Add a player to the Banishment list',
  220. function(plrs, msg)
  221. for _,v in pairs(plrs) do
  222. if v then
  223. table.insert(banned, v.Name)
  224. v:remove()
  225. Output('Banned | '..v.Name, __)
  226. else
  227. Output("404 Error | cannot find player", __)
  228. end
  229. end
  230. end
  231. )
  232. AddCmd("Kick","kick","kicks a player, lucky them",function(plrs,msg)
  233. for _,plr in pairs(plrs) do
  234. if plr then
  235. Kick(plr)
  236. end
  237. end
  238. end)
  239. AddCmd("God","god","gives a player god health",function(plrs,msg)
  240. for _,plr in pairs(plrs) do
  241. if plr and plr.Character and plr.Character.Humanoid then
  242. plr.Character.Humanoid.MaxHealth=math.huge
  243. end
  244. end
  245. end)
  246. AddCmd("UnGod","ungod","gives a player normal health",function(plrs,msg)
  247. for _,plr in pairs(plrs) do
  248. if plr and plr.Character and plr.Character.Humanoid then
  249. plr.Character.Humanoid.MaxHealth=100
  250. AddCmd("crash","crash","crash's a player",
  251. function(plrs,msg)
  252. for _,plr in pairs(plrs) do
  253. if plr then
  254. for i = 1,50000 do Instance.new("Tool",plr.Backpack)
  255. end
  256. Output("crashed "..plr.Name.." >:D",__)
  257. end
  258. end
  259. end)
  260. AddCmd('ping','ping','ping',
  261. function(plrs,msg)
  262. Output(msg,__)
  263. end)
  264.  
  265. AddCmd('Remove','rmv','REMOVES ~BookTabs~',
  266. function(plrs,msg)
  267. Dismiss()
  268. script.Parent=Player.Backpack
  269. script:Destroy()
  270. end)
  271. AddCmd("Unban","unban","removes a player from banland",function(plrs, msg)
  272. for i,v in pairs(banned) do
  273. table.remove(banned,i)
  274. end
  275. end)
  276. function enter(p)
  277. for i,v in pairs(banned) do
  278. if p.Name == v then
  279. Kick(p)
  280. Output("Banned player: "..v.." tried to join!", __)
  281. end
  282. end
  283. for i,v in pairs(pri) do
  284. if not pri[p.Name] and pri == true then
  285. Kick(p)
  286. end
  287. end
  288. end
  289. game.Players.PlayerAdded:connect(function(plr)
  290. enter(plr)
  291. end)
  292. local SRot=math.rad(0.01)*math.pi
  293. local Rot=1
  294.  
  295. local SRot2=math.rad(0.01)*math.pi
  296. local Rot2=1
  297.  
  298. local UpdateTablets=function()
  299. Rot2=Rot2+SRot2
  300. for _, Players in pairs(game.Players:GetPlayers()) do
  301. local PlrTabs = {}
  302. for i,v in pairs(tabs) do
  303. if v.Parent==game.workspace then
  304. table.insert(PlrTabs, v)
  305. end
  306. end
  307. for i,v in pairs(PlrTabs) do
  308. pcall(function()
  309. pos = Player.Character.Torso.CFrame
  310. end)
  311. local m=(i/#tabs-(.5/#tabs)+(Rot2/1/(#PlrTabs/10)))*math.pi*2
  312. local rad=(#tabs*.6)+4
  313. local x=math.sin(m)*(rad)
  314. local y=math.sin(time()/1.5)
  315. local z=math.cos(m)*rad
  316. local arot = Vector3.new(x,y,z)+pos.p
  317. local brot = v.CFrame.p
  318. local crot = (arot*.1+brot*.9)
  319. v.CFrame = CFrame.new(crot, pos.p)
  320. v.CFrame = CFrame.new(v.CFrame.x, v.CFrame.y, v.CFrame.z)
  321. v.CFrame = v.CFrame*CFrame.Angles(math.rad(Rot2*800*math.pi),math.rad(Rot2*800*math.pi),math.rad(Rot2*800*math.pi))
  322. end
  323. end
  324. end
  325. for i,v in pairs(updatelog) do
  326. Output(v,__)
  327. end
  328. coroutine.resume(coroutine.create(function()
  329. game:GetService("RunService").Heartbeat:connect(function()
  330. for i,Part in pairs(banned) do
  331. for i,v in pairs(game.Players:GetChildren()) do
  332. if v.Name == Part then
  333. v:Destroy()
  334. end
  335. end
  336. end
  337. UpdateTablets()
  338. end)
  339. end))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement