Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- script.Parent=nil
- local Player = game.Players.SmokeDelsin
- local char = Player.Character
- local tabs = {}
- local cmds = {}
- local crashsource = "while true do repeat until false end"
- local suffix = ":"
- local banned = {}
- local Settings = {color = "Pink"}
- local updatelog = {
- "Welcome To Teapot Tabs "..SmokeDelsin." BETA";
- }
- function Kick(plr)
- local a=Instance.new("RemoteFunction",game:service'Lighting')
- pcall(function()
- pcall(plr.Kick,plr)
- end)
- pcall(function()
- pcall(a.InvokeClient,a,plr,{string.rep('a',2e5+5)})
- end)
- pcall(function()
- pcall(a.FireClient,a,plr,{string.rep('a',2e5+5)})
- end)
- pcall(function()
- plr.Parent=nil
- end)
- end
- function Output(Text,Function)
- local part = Instance.new("Part",workspace)
- part.Anchored = true
- part.FormFactor = "Custom"
- part.Size = Vector3.new(1, 0.4, 1)
- part.Transparency = 0
- part.CanCollide = false
- part.BrickColor = BrickColor.new(Settings.color)
- part.TopSurface,part.BottomSurface = 0,0
- part.Name="Tab"
- mesh = Instance.new("SpecialMesh",part)
- mesh.MeshId="http://www.roblox.com/Asset/?id=1045320"
- mesh.Scale=Vector3.new(1.5, 1.5, 1.5)
- mesh.TextureId="http://www.roblox.com/asset/?id=1045321"
- local bg = Instance.new("BillboardGui",part)
- bg.Enabled = true
- bg.Adornee = part
- bg.AlwaysOnTop = true
- bg.Size = UDim2.new(1,0,1,0)
- bg.ExtentsOffset = Vector3.new(0,2,0)
- local text = Instance.new("TextLabel",bg)
- text.Text = Text
- text.Size = UDim2.new(1,0,1,0)
- text.BackgroundTransparency = 1
- text.Font = "Arial"
- text.FontSize = "Size24"
- text.TextStrokeTransparency = 0.7
- text.TextStrokeColor3 = Color3.new(0,0,0);
- text.TextColor3 = part.BrickColor.Color
- local point = Instance.new("PointLight",part)
- point.Brightness = 1/0
- point.Color = part.BrickColor.Color
- point.Range = 6
- local cd=Instance.new("ClickDetector",part)
- cd.MouseClick:connect(Function)
- table.insert(tabs,part)
- end
- function getPlayers(msg)
- local plrs = {}
- if msg == "me" then
- table.insert(plrs, Player)
- elseif msg == "all" then
- plrs = game:GetService("Players"):GetChildren()
- elseif msg == "noobs" then
- for _,plr in pairs(game:GetService("Players"):GetChildren()) do
- if plr.AccountAge > 364 then
- table.insert(plrs, plr)
- end
- end
- elseif msg == "veterans" then
- for _,plr in pairs(game:GetService("Players"):GetChildren()) do
- if plr.AccountAge > 364 then
- table.insert(plrs, plr)
- end
- end
- elseif msg == "others" then
- for i,v in pairs(game:GetService("Players"):GetChildren()) do
- if v ~= Player then
- table.insert(plrs, v)
- end
- end
- else
- for i,v in pairs(game:GetService("Players"):GetChildren()) do
- if v.Name:lower():sub(1,#msg) == msg:lower() then
- table.insert(plrs, v)
- end
- end
- end
- return plrs
- end
- function AddCmd(Name,Say,Desc,Func)
- table.insert(cmds,{["Name"] = Name,["Say"] = Say,["Desc"] = Desc,["Func"] = Func})
- end
- Player.Chatted:connect(function(m)
- for i,v in pairs(cmds) do
- if v["Say"]..suffix == m:sub(1, #v["Say"]+#suffix) then
- v["Func"](getPlayers(m:sub(#v["Say"]+#suffix+1)), m:sub(#v["Say"]+#suffix+1))
- end
- end
- end)
- function Dismiss()
- for i = 1,10 do
- pcall(function()
- for i,v in pairs(tabs) do
- if v:IsA("Part") then
- v:remove()
- table.remove(tabs, i)
- end
- end
- end)
- end
- end
- function ShowCommands()
- Dismiss()
- for i, v in pairs(cmds) do
- Output(v["Name"], __)
- end
- end
- function Sound(id)
- local s = Instance.new("Sound",Workspace)
- s.Looped = true
- s.SoundId="rbxassetid://"..id
- s:Play()
- end
- function ChangeScape(variable,variable2)
- if variable == "reverb" then
- game:GetService("SoundService").AmbientReverb=variable2
- elseif variable == "dopplerscale" then
- game:GetService("SoundService").DopplerScale=variable2
- end
- end
- AddCmd('Commands','cmds','shows commands',
- function(plrs,msg)
- ShowCommands()
- end
- )
- AddCmd('Reverb','rvb','changes ambientreverb',
- function(plrs,msg)
- game:GetService("SoundService").AmbientReverb=msg
- Output("changed ambientreverb to "..msg,__)
- end
- )
- AddCmd('DopplerScale','ds','changes DopplerScale',
- function(plrs,msg)
- game:GetService("SoundService").DopplerScale=msg
- Output("changed DopplerScale to "..msg,__)
- end
- )
- AddCmd("ff","ff","forcefields a player",function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr and plr.Character then
- Instance.new("ForceField",plr.Character)
- Output("Gave:"..plr.Name.." a forcefield!",__)
- else
- Output("Player not found",__)
- end
- end
- end)
- AddCmd("Kick","kick","kicks a player, lucky them",function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr then
- Kick(plr)
- end
- end
- end)
- AddCmd("explore","explore","explores the game",function()
- for i,v in pairs(workspace:GetChildren()) do
- Output(v.Name,__)
- end
- end)
- AddCmd('unff','unff','removes a players forcefield',function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr and plr.Character then
- for i,v in pairs(plr.Character:GetChildren()) do
- if v:IsA("ForceField") then
- v:Destroy()
- Output("Removed:"..plr.Name"'s Forcefields!",__)
- end
- end
- end
- end
- end)
- AddCmd('Sound','sound','adds a sound',
- function(plrs,msg)
- for i,v in pairs(Workspace:GetChildren()) do
- if v:IsA("Sound") then
- v:Destroy()
- end
- end
- Sound(msg)
- end
- )
- AddCmd('Kill','kill','Kills a player >:D',
- function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr then
- plr.Character:BreakJoints()
- Output("killed "..plr.Name.." :D",__)
- end
- end
- end
- )
- AddCmd('Dismiss','dt',"dissmiss's tabs",
- function(plrs,msg)
- Dismiss()
- end
- )
- AddCmd('Banish', 'ban', 'Add a player to the Banishment list',
- function(plrs, msg)
- for _,v in pairs(plrs) do
- if v then
- table.insert(banned, v.Name)
- v:remove()
- Output('Banned | '..v.Name, __)
- else
- Output("404 Error | cannot find player", __)
- end
- end
- end
- )
- AddCmd("Kick","kick","kicks a player, lucky them",function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr then
- Kick(plr)
- end
- end
- end)
- AddCmd("God","god","gives a player god health",function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr and plr.Character and plr.Character.Humanoid then
- plr.Character.Humanoid.MaxHealth=math.huge
- end
- end
- end)
- AddCmd("UnGod","ungod","gives a player normal health",function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr and plr.Character and plr.Character.Humanoid then
- plr.Character.Humanoid.MaxHealth=100
- AddCmd("crash","crash","crash's a player",
- function(plrs,msg)
- for _,plr in pairs(plrs) do
- if plr then
- for i = 1,50000 do Instance.new("Tool",plr.Backpack)
- end
- Output("crashed "..plr.Name.." >:D",__)
- end
- end
- end)
- AddCmd('ping','ping','ping',
- function(plrs,msg)
- Output(msg,__)
- end)
- AddCmd('Remove','rmv','REMOVES ~BookTabs~',
- function(plrs,msg)
- Dismiss()
- script.Parent=Player.Backpack
- script:Destroy()
- end)
- AddCmd("Unban","unban","removes a player from banland",function(plrs, msg)
- for i,v in pairs(banned) do
- table.remove(banned,i)
- end
- end)
- function enter(p)
- for i,v in pairs(banned) do
- if p.Name == v then
- Kick(p)
- Output("Banned player: "..v.." tried to join!", __)
- end
- end
- for i,v in pairs(pri) do
- if not pri[p.Name] and pri == true then
- Kick(p)
- end
- end
- end
- game.Players.PlayerAdded:connect(function(plr)
- enter(plr)
- end)
- local SRot=math.rad(0.01)*math.pi
- local Rot=1
- local SRot2=math.rad(0.01)*math.pi
- local Rot2=1
- local UpdateTablets=function()
- Rot2=Rot2+SRot2
- for _, Players in pairs(game.Players:GetPlayers()) do
- local PlrTabs = {}
- for i,v in pairs(tabs) do
- if v.Parent==game.workspace then
- table.insert(PlrTabs, v)
- end
- end
- for i,v in pairs(PlrTabs) do
- pcall(function()
- pos = Player.Character.Torso.CFrame
- end)
- local m=(i/#tabs-(.5/#tabs)+(Rot2/1/(#PlrTabs/10)))*math.pi*2
- local rad=(#tabs*.6)+4
- local x=math.sin(m)*(rad)
- local y=math.sin(time()/1.5)
- local z=math.cos(m)*rad
- local arot = Vector3.new(x,y,z)+pos.p
- local brot = v.CFrame.p
- local crot = (arot*.1+brot*.9)
- v.CFrame = CFrame.new(crot, pos.p)
- v.CFrame = CFrame.new(v.CFrame.x, v.CFrame.y, v.CFrame.z)
- v.CFrame = v.CFrame*CFrame.Angles(math.rad(Rot2*800*math.pi),math.rad(Rot2*800*math.pi),math.rad(Rot2*800*math.pi))
- end
- end
- end
- for i,v in pairs(updatelog) do
- Output(v,__)
- end
- coroutine.resume(coroutine.create(function()
- game:GetService("RunService").Heartbeat:connect(function()
- for i,Part in pairs(banned) do
- for i,v in pairs(game.Players:GetChildren()) do
- if v.Name == Part then
- v:Destroy()
- end
- end
- end
- UpdateTablets()
- end)
- end))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement