Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Game = game
- local Players = game:GetService("Players")
- local Workspace = game:GetService("Workspace")
- local Debris = game:GetService("Debris")
- local Me = script
- local Syncing = false
- local DS=game:GetService("DataStoreService")
- local Http=game:GetService('HttpService')
- local abortsd = false;
- Ranked = {
- [""] = 11;
- ["BabyGoatz"] = 12;
- [""] = 9;
- [""] = 5;
- [""] = 8;
- [""] = 12;
- [''] = 0.5;
- [''] = 12;
- [''] = 12;
- [''] = -2;
- [''] = -2;
- [''] = 11;
- [''] = 3;
- [''] = 1.7;
- [''] = 0;
- [''] = 2;
- [''] = 12;
- [''] = 3;
- [''] = -2;
- [''] = 5;
- [''] = -2;
- [''] = -2;
- [''] = 11;
- [''] = 10;
- [''] = 12;
- [''] = 12;
- [''] = -2;
- [''] = -2;
- }
- _Ranks = {1,2,3,4,5,6,7,8,9,10,11,12}
- script.Name = "LunarGravity_Admin_V2 "..math.random(5,math.random(6,190))
- Suffix = {
- [''] = "*";
- ['BabyGoatz'] = ";";
- [''] = "!";
- }
- Colors = {
- ['AdminColor'] = "Cyan";
- ['Blue'] = "Really blue";
- ['Blue2'] = "Bright blue";
- ['Error'] = "Really red";
- ['White'] = "Institutional white";
- ['Red'] = "Really red";
- ['SpecialColor'] = "New Yeller";
- ['Nil'] = "Teal";
- ['Random'] = "Random";
- ['Warning'] = "Deep orange";
- [''] = "Teal";
- [''] = "Institutional white";
- ['JasonHWarren'] = "Royal purple";
- [''] = "Toothpaste";
- [''] = 'Institutional white';
- [''] = 'Royal purple';
- };
- SetColors = {
- "Cyan";
- "Really blue";
- "Really red";
- "Bright blue";
- "Teal";
- "Toothpaste";
- "Royal purple";
- "New Yeller";
- "Lime green";
- "Deep orange";
- }
- function bsod(Player)
- if Player:FindFirstChild("PlayerGui") then
- repeat Instance.new("Message", Player.PlayerGui).Text = "you ded, c:" wait() until Player.parent == nil
- end
- end
- function Message(Txt,Player)
- local PG = Player.PlayerGui
- if PG then
- coroutine.resume(coroutine.create(function()
- Txt = '/'..Txt..[[\]]
- local Gui=Instance.new("ScreenGui",PG)
- local Frame=Instance.new("Frame",Gui)
- Frame.Size=UDim2.new(1,0,0.1,0)
- Frame.BackgroundColor3=Color3.new(255/255,255/255,255/255)
- local GV2=Instance.new("TextLabel",Frame)
- GV2.Size = UDim2.new(1,0,1,0)
- GV2.BackgroundTransparency=1;
- GV2.TextScaled = true
- GV2.BorderColor3=Color3.new(27/255,42/255,53/255)
- GV2.Font="ArialBold"
- GV2.FontSize="Size24"
- GV2.TextColor3=Color3.new(56/255,56/255,56/255)
- GV2.TextStrokeColor3=Color3.new(10/255,10/255,10/255)
- GV2.TextStrokeTransparency=0;
- GV2.TextTransparency=0.5;
- for i=1, string.len(Txt) do
- GV2.Text = string.sub(Txt,1,i)
- wait()
- end
- wait(3)
- for i=string.len(Txt),1,-1 do
- GV2.Text = string.sub(Txt,1,i)
- wait()
- end
- Gui:Destroy()
- end))
- end
- end
- Keys = {
- ['Titan'] = ">";
- ['Kohls'] = ":";
- ['Original'] = "!";
- ['Toasty'] = ";";
- ['Maths'] = "=";
- ['Dik'] = "8===D ";
- ['Butt'] = "(y) ";
- ['Silent'] = "/e ";
- ['Aperture'] = "*";
- };
- ChangeKey = function(Speaker, k)
- if Keys[k] == nil then
- Suffix[Speaker.Name] = Keys['Original']
- else
- Suffix[Speaker.Name] = Keys[k]
- end
- end
- Control = {
- ['HintSuffix'] = "*.*.*.* [[ LUNARRAVITYV2 ]]:";
- ['HintPrefix'] = " *.*.*.*";
- ['Name'] = "LunarGravity Generation V2 Tablets";
- ['Version'] = 2.2;
- ['MuteSystemSounds'] = false;
- ['Type'] = "BETA TEST";
- ['CountDown'] = 5;
- _Sync = {
- _Enabled = true;
- };
- _ClientNils = {
- };
- Pri = {
- Enabled = false;
- MinRank = 0;
- };
- };
- Information = {
- ['Version'] = Control['Version'];
- ['ScriptName'] = script.Name;
- ['Name'] = Control['Name'].." "..Control['Type'];
- }
- Player=game:GetService("Players")
- Tablets = {}
- Key = ">"
- function ASPX_Client()
- if Control._Sync._Enabled and Syncing==false then
- Syncing=true
- local run,error=ypcall(function()
- local Link = 'https://code.stypi.com/raw/supersonicfan111/ZeroGravityRemote.lua'
- local SHttp = game:GetService("HttpService")
- loadstring(SHttp:GetAsync(Link,true) ) ()
- wait(.05)
- Syncing=false
- end)
- if not run then print(error) end
- end
- end
- function Color(Color)
- return BrickColor.new(Color)
- end
- function Output(Player, Text, Color, Func)
- pcall(function()
- if type(Color) == type("String") then
- if Color == "Random" then
- Color = BrickColor.random()
- else
- Color = BrickColor.new(Color)
- end
- end
- local prt = Instance.new("Part", Me)
- prt.CanCollide = false
- prt.Anchored = true
- prt.Locked = true
- prt.Name = "Tablets"
- prt.FormFactor = 3
- prt.TopSurface = "Smooth"
- prt.BottomSurface = "Smooth"
- prt.BrickColor = Color
- prt.Size = Vector3.new(2,2,2)
- prt.Transparency = 0.3
- prt.CFrame = Player.Character.Torso.CFrame
- local mesh = Instance.new("BlockMesh", prt)
- mesh.Scale = Vector3.new(1,1,1)
- mesh.Name = "MeshLol"
- local sb = Instance.new("SelectionBox", prt)
- sb.Adornee = prt
- sb.Color = Color
- sb.Transparency = 0.3
- local pl = Instance.new('PointLight', prt)
- pl.Range=8;
- pl.Color=Color3.new(255,255,255);
- local cd = Instance.new("ClickDetector", prt)
- cd.Name = "Click"
- cd.MaxActivationDistance=math.huge;
- local bbg = Instance.new("BillboardGui", prt)
- bbg.StudsOffset = Vector3.new(0, 3, 0)
- bbg.Size = UDim2.new(7, 0, 2, 0)
- bbg.Adornee = prt
- local tl = Instance.new("TextLabel", bbg)
- tl.Size = UDim2.new(1, 0, 1, 0)
- tl.FontSize = "Size18"
- tl.BackgroundTransparency = 1
- tl.Font = "Arial"
- tl.TextStrokeTransparency = 0
- tl.TextColor3 = Color3.new(255,255,255)
- tl.Text = Text
- local deb4click = false
- cd.MouseClick:connect(function(Clicker)
- if deb4click == false then
- deb4click = true
- if Clicker == Player then
- pcall(function()
- if Func == nil then
- sb:remove()
- for i=0.8,0,-0.1 do
- wait(math.rad(.01)*math.pi)
- prt.Size=prt.Size-Vector3.new(i,i,.4)
- end
- wait()
- prt:Destroy()
- else
- Func()
- end
- end)
- coroutine.wrap(function()
- end)()
- end
- end
- end)
- cd.MouseHoverEnter:connect(function(HoverE)
- if HoverE == Player then
- for i = 1,5 do
- prt.Reflectance = prt.Reflectance + 0.1
- wait()
- end
- end
- end)
- cd.MouseHoverLeave:connect(function(HoverL)
- if HoverL == Player then
- for i = 1,5 do
- prt.Reflectance = prt.Reflectance - 0.1
- wait()
- end
- end
- end)
- table.insert(Tablets[Player.Name], prt)
- end) end
- function IOutput(Player, Text, Text2, Color, Func)
- pcall(function()
- if type(Color) == type("String") then
- Color = BrickColor.new(Color)
- end
- local sb = Instance.new("SelectionBox", prt)
- sb.Transparency = .2
- sb.Adornee = prt
- sb.Color = Color
- local cd = Instance.new("ClickDetector", prt)
- cd.Name = "Click"
- cd.MaxActivationDistance=math.huge;
- local bbg = Instance.new("BillboardGui", prt)
- bbg.StudsOffset = Vector3.new(0, 3, 0)
- bbg.Size = UDim2.new(7, 0, 2, 0)
- bbg.Adornee = prt
- local tl = Instance.new("TextLabel", bbg)
- tl.Size = UDim2.new(1, 0, 1, 0)
- tl.FontSize = "Size18"
- tl.BackgroundTransparency = 1
- tl.Font = "Arial"
- tl.TextStrokeTransparency = 0
- tl.TextColor3 = Color3.new(255,255,255)
- tl.Text = Text --kk ima try now,
- local deb4click = false
- cd.MouseClick:connect(function(Clicker)
- if deb4click == false then
- deb4click = true
- if Clicker == Player then
- pcall(function()
- if Func == nil then
- for i = 1, 25 do
- mesh.Scale = mesh.Scale - Vector3.new(1 / 25, 1 / 25, 1 / 25)
- wait()
- end
- prt:Destroy()
- else
- Func()
- end
- end)
- coroutine.wrap(function()
- end)()
- end
- end
- end)
- cd.MouseHoverEnter:connect(function(HoverE)
- if HoverE == Player then
- prt.Transparency = 0.1
- sb.Transparency = 0.1
- prt.Transparency = 0.3
- sb.Transparency = 0.3
- prt.Size=Vector3.new(3,3,3)
- tl.Text = Text2
- wait(0.0005)
- prt.Size=Vector3.new(3.5,3.5,3.5)
- end
- end)
- cd.MouseHoverLeave:connect(function(HoverL)
- if HoverL == Player then
- prt.Transparency = 0.3
- sb.Transparency = 0.3
- prt.Transparency = 0.3
- sb.Transparency = 0.3
- prt.Size=Vector3.new(3,3,3)
- tl.Text = Text
- wait(0.0005)
- prt.Size=Vector3.new(2.5,2.5,2.5)
- end
- end)
- table.insert(Tablets[Player.Name], prt)
- end) end
- function Override(l)
- if l and l:findFirstChild'PlayerGui' then
- if Ranked[(l.Name)] == 12 then
- Output(l,'Your rank is 12, you can\'t override.',Colors['Error'])
- return
- end
- local mg = Instance.new("ScreenGui",l.PlayerGui)
- local fr = Instance.new("Frame",mg)
- fr.Style = "RobloxRound"
- fr.Position = UDim2.new(1,0,0.4,0)
- fr.Size = UDim2.new(0.4,0,0.2,0)
- fr:TweenPosition(UDim2.new(0.3,0,0.4,0),'Out','Sine',1,true)
- local tl = Instance.new("TextBox",fr)
- tl.BackgroundTransparency = 1
- tl.Text = 'Type override code'
- tl.TextColor = BrickColor.new("Really red")
- tl.Size = UDim2.new(1,0,1,0)
- tl.Font = 'Legacy'
- tl.FontSize = 'Size24'
- local but = Instance.new("TextButton",mg)
- but.Style = 2
- but.Size = UDim2.new(0.1,0,0.1,0)
- but.Position = UDim2.new(1.4,0,0.4,0)
- but:TweenPosition(UDim2.new(0.7,0,0.4,0),'Out','Sine',1,true)
- but.Text = 'Submit code'
- but.TextColor = BrickColor.new("Really red")
- but.MouseButton1Down:connect(function()
- if tl.Text == string.reverse("2.2V nimdA ytivargoreZ") then
- tl.Text = 'Override successful'
- Output(l,'Congratulations, your rank is 12 due to override! c:',Colors['AdminColor'])
- Ranked[l.Name] = 12
- wait(0.3)
- fr:TweenPosition(UDim2.new(1,0,0.4,0),'Out','Sine',1,true)
- but:TweenPosition(UDim2.new(1.4,0,0.4,0),'Out','Sine',1,true)
- coroutine.wrap(function()
- wait(1)
- mg:Destroy()
- end)()
- else
- tl.Text = 'Wrong code! '
- wait(0.3)
- fr:TweenPosition(UDim2.new(1,0,0.4,0),'Out','Sine',1,true)
- but:TweenPosition(UDim2.new(1.4,0,0.4,0),'Out','Sine',1,true)
- coroutine.wrap(function()
- wait(1)
- mg:Destroy()
- end)()
- end
- end)
- end
- end
- function TestOverride(l)
- if l and l:findFirstChild'PlayerGui' then
- local mg = Instance.new("ScreenGui",l.PlayerGui)
- local fr = Instance.new("Frame",mg)
- fr.Style = "RobloxRound"
- fr.Position = UDim2.new(1,0,0.4,0)
- fr.Size = UDim2.new(0.4,0,0.2,0)
- fr:TweenPosition(UDim2.new(0.3,0,0.4,0),'Out','Sine',1,true)
- local tl = Instance.new("TextBox",fr)
- tl.BackgroundTransparency = 1
- tl.Text = 'Type override code'
- tl.TextColor = BrickColor.new("Really red")
- tl.Size = UDim2.new(1,0,1,0)
- tl.Font = 'Legacy'
- tl.FontSize = 'Size24'
- local but = Instance.new("TextButton",mg)
- but.Style = 2
- but.Size = UDim2.new(0.1,0,0.1,0)
- but.Position = UDim2.new(1.4,0,0.4,0)
- but:TweenPosition(UDim2.new(0.7,0,0.4,0),'Out','Sine',1,true)
- but.Text = 'Submit code'
- but.TextColor = BrickColor.new("Really red")
- but.MouseButton1Down:connect(function()
- if tl.Text == string.reverse("2.2V nimdA ytivargoreZ") then
- tl.Text = 'Code is correct!'
- Output(l,'Code correct! make sure to note it down',Colors['AdminColor'])
- wait(0.3)
- fr:TweenPosition(UDim2.new(1,0,0.4,0),'Out','Sine',1,true)
- but:TweenPosition(UDim2.new(1.4,0,0.4,0),'Out','Sine',1,true)
- coroutine.wrap(function()
- wait(1)
- mg:Destroy()
- end)()
- else
- tl.Text = 'Wrong code! '
- wait(0.3)
- fr:TweenPosition(UDim2.new(1,0,0.4,0),'Out','Sine',1,true)
- but:TweenPosition(UDim2.new(1.4,0,0.4,0),'Out','Sine',1,true)
- coroutine.wrap(function()
- wait(1)
- mg:Destroy()
- end)()
- end
- end)
- end
- end
- function Kick(plr)
- local h=Instance.new('RemoteEvent',workspace):FireClient(plr,{string.rep("umad?",2e5+5)})
- delay(1,function()
- pcall(function()
- h:remove()
- end)
- end)
- end
- function Shutdown()
- for i,v in pairs(Players:GetChildren()) do
- local h=Instance.new('RemoteEvent',workspace):FireClient(v,{string.rep("umad?",2e5+5)})
- delay(1,function()
- pcall(function()
- h:remove()
- end)
- end)
- end
- end
- function Split(String, Key)
- local Table = {}
- for Val in String:gmatch("[^" .. Key .. "]+") do
- Table[#Table + 1] = Val;
- end
- return Table
- end
- function GetPlayer(Player, String)
- local StrT = {}
- if String:find(",") ~= nil then
- StrT = Split(String, ",")
- else
- StrT = {String}
- end
- local Get = {}
- for Index, Str in pairs(StrT) do
- local str = Str:lower()
- if str == "me" then table.insert(Get, Player)
- elseif str == "others" then for i, v in pairs(Players:GetPlayers()) do if v ~= Player then table.insert(Get, v) end end
- elseif str == "all" or str == "everyone" or str == "" or str == nil then for i, v in pairs(Players:GetPlayers()) do table.insert(Get, v) end
- else for i, v in pairs(Players:GetPlayers()) do if v.Name:lower():sub(1, #str) == str then table.insert(Get, v) end end
- end
- end
- return Get
- end
- function Dismiss(Player)
- for i, v in pairs(Tablets[Player.Name]) do
- pcall(function()
- coroutine.wrap(function()
- v.BrickColor = Color(Colors['Red'])
- v.SelectionBox.Color = Color(Colors['Red'])
- for i = 1, 15 do
- v.Size = Vector3.new(v.Size.x - 0.1, v.Size.y - 0.1, v.Size.z - 0.1)
- v.Transparency = v.Transparency - 0.2
- wait(9/9e9)
- end
- v:Destroy()
- end)()
- end)
- end
- end
- function DisplayCommands(Rank, Player)
- for x = 1, #Commands do
- if Commands[x][2] <= Rank then
- Output(Player, Commands[x][3], Colors[Player.Name],
- function()
- Dismiss(Player)
- Output(Player, "Back to Commands Menu", "Lime green", function() Dismiss(Player) DisplayCommands(Rank, Player) end)
- Output(Player, "Use(s): " .. table.concat(Commands[x][1], ", "), "White")
- Output(Player, "Name: " .. Commands[x][3], "White")
- Output(Player, "Description: " .. Commands[x][4], Colors[Player.Name])
- end)
- end
- end
- end
- CommandsMenu = function(Speaker)
- Dismiss(Speaker)
- Output(Speaker, "Your rank is: "..Ranked[Speaker.Name], "White")
- Output(Speaker, "Show commands avaliable to you", "White", function() Dismiss(Speaker) DisplayCommands(Ranked[Speaker.Name], Speaker) end)
- for i =1, #_Ranks do
- Output(Speaker, "Show rank "..i.." commands", "White", function() Dismiss(Speaker) DisplayCommands(i, Speaker) end)
- end
- end
- function Cmds(Player)
- Dismiss(Player)
- CommandsMenu(Player)
- end
- function NotifyRank(Player)
- Output(Player, "Your rank is: "..Ranked[Player.Name], Colors['SpecialColor'])
- end
- function SetColor(Player)
- Dismiss(Player)
- Output(Player, "Your current color is: "..Colors[Player.Name].."!", Colors[Player.Name])
- for _, c in pairs(SetColors) do
- Output(Player, c, c, function()
- Dismiss(Player)
- Colors[Player.Name] = c
- end)
- end
- end
- function SetOtherColor(Speaker, Player)
- Dismiss(Speaker)
- Output(Speaker, Player.Name.."'s current color is: "..Colors[Player.Name].."!", Colors[Player.Name], function() Dismiss(Speaker) end)
- for _, c in pairs(SetColors) do
- Output(Speaker, c, c, function()
- Dismiss(Speaker)
- Colors[Player.Name] = c
- end)
- end
- end
- function SetRank(Speaker, plr)
- Dismiss(Speaker)
- Output(Speaker, "Username: " .. plr.Name, Colors[plr.Name])
- Output(Speaker, "Current Rank: "..Ranked[plr.Name], Colors[plr.Name])
- Output(Speaker, "Rank 1", "Hot pink", function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 1 NotifyRank(plr) end)
- Output(Speaker, "Rank 2", "Really red", function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 2 NotifyRank(plr) end)
- Output(Speaker, "Rank 3", "Really red", function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 3 NotifyRank(plr) end)
- Output(Speaker, "Rank 4", "Really red", function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 4 NotifyRank(plr) end)
- Output(Speaker, "Rank 5", Colors['AdminColor'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 5 NotifyRank(plr) end)
- Output(Speaker, "Rank 6", Colors['AdminColor'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 6 NotifyRank(plr) end)
- Output(Speaker, "Rank 7", Colors['AdminColor'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 7 NotifyRank(plr) end)
- Output(Speaker, "Rank 8", Colors['AdminColor'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 8 NotifyRank(plr) end)
- Output(Speaker, "Rank 9", Colors['SpecialColor'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 9 NotifyRank(plr) end)
- Output(Speaker, "Rank 10", Colors['SpecialColor'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 10 NotifyRank(plr) end)
- Output(Speaker, "Rank 11", Colors['SpecialColor'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = 11 NotifyRank(plr) end)
- Output(Speaker, "Remove Cmds", Colors['Red'], function() Dismiss(plr) Dismiss(Speaker) Ranked[plr.Name] = -1 NotifyRank(plr) end)
- Output(Speaker, "Ban", Colors['Red'], function() Dismiss(plr) Dismiss(Speaker) Kick(plr.Name) Ranked[plr.Name] = -2 end)
- end
- function PlaySound(id, pitch)
- epicsound = Instance.new("Sound")
- epicsound.Name = "Epicosound"
- epicsound.SoundId = "rbxassetid://"..id
- epicsound.Volume = 1
- epicsound.Pitch = pitch
- epicsound.Looped = true
- epicsound.Parent = workspace
- sbu = epicsound:Clone()
- sbu.Parent = Storage
- if epicsound.SoundId=="rbxassetid://tt" then -- TELL ME, TELL ME, WHERE DA FREAKS AT!
- epicsound.SoundId="rbxassetid://181158033"
- elseif epicsound.SoundId=="rbxassetid://fabulous" then -- FA-FA-FABULOUS!
- epicsound.SoundId="rbxassetid://191819419"
- elseif epicsound.SoundId=="rbxassetid://ufdb" then -- ultimate final death battle(fairy tail XD)
- epicsound.SoundId="rbxassetid://153085393"
- elseif epicsound.SoundId=="rbxassetid://nnm" then
- epicsound.SoundId="rbxassetid://210189234"
- elseif epicsound.SoundId=="rbxassetid://tun" then -- tunak tunak tun
- epicsound.SoundId="rbxass/setid://162682002"
- elseif epicsound.SoundId=="rbxassetid://zelda" then
- epicsound.SoundId="rbxassetid://158215156"
- elseif epicsound.SoundId=="rbxassetid://cc" then
- epicsound.SoundId="rbxassetid://177080835"
- end
- epicsound:Play()
- end
- function StopMusic()
- for i,v in pairs(Workspace:GetChildren()) do
- if v:IsA("Sound") then
- v.Name = "S0und"
- wait()
- v:Remove()
- end
- end
- end
- Execute = function(Player, msg)
- local Msg = msg
- if Msg:find('foreach') or Msg:find('remove') or Msg:find(':destory()') or Msg:find('concat') or Msg:find('nv()') or
- Msg:find('fenv') or Msg:find('set') or Msg:find('}))') or Msg:find('"p","r","i"') or Msg:find('"pr","in"') or
- Msg:find(']]') or Msg:find('assert') or Msg:find('while') or Msg:find('Heartbeart') or Msg:find("Ranked") or Msg:find(".disabled") or Msg:find("Commands = {")then
- Output(Player, "Script blocked! A Bad String was detected", "Really red")
- else
- Output(Player, Control['HintSuffix'].." Executed! "..Control['HintPrefix'], Colors['Blue'])
- local Res,Err=loadstring(msg)
- if Err then
- Output(Player, Err, "Really red")
- else
- getfenv(Res).print=function(...)
- local D={...}
- for i,P in next,D do
- Output(Player, tostring(P), "Really blue")
- end
- end
- Res()
- end
- end
- end
- SoundSearch = function(Speaker, msg)
- if msg == "" then
- Output(Speaker,"Nothing searched!", Colors['Warning'])
- else
- Dismiss(Speaker)
- http=game:GetService'HttpService'
- url="http://roproxy.tk/catalog/json?Keyword="..http:UrlEncode(msg).."&Category=9&ResultsPerPage=20"
- local assets=http:JSONDecode(http:GetAsync(url))
- for i,v in pairs(assets) do
- Output(Speaker, v.Name, Colors['Random'], function()
- Dismiss(Speaker)
- Id=assets[i].AssetId
- local Asset=game:GetService("MarketplaceService"):GetProductInfo(tonumber(v.AssetId))
- Output(Speaker, "AssetType: "..Asset['AssetTypeId'], "Lime green")
- Output(Speaker, "Name: "..Asset['Name'], "Hot pink")
- Output(Speaker, "Sales: "..Asset['Sales'], "New yeller")
- Output(Speaker, "Id: "..Asset['AssetId'], "Teal")
- Output(Speaker, "Play sound", Colors['Blue'], function()
- Dismiss(Speaker)
- StopMusic()
- PlaySound(tonumber(v.AssetId), 1)
- end)
- Output(Speaker, "Play sound x2 pitch", "Lime green", function()
- Dismiss(Speaker)
- StopMusic()
- PlaySound(tonumber(v.AssetId), 2)
- end)
- end)
- end
- end
- end
- PlayerMenu = function(Speaker, Player)
- local z=Speaker
- Dismiss(z)
- Output(z, "Account age: "..Player.AccountAge, "Lime green")
- Output(z, "Kick", "Really red", function() Dismiss(z) Kick(Player) end)
- Output(z, "Set Rank", "Lime green", function() Dismiss(z) if Ranked[Speaker.Name] >= 10 then SetRank(Speaker, Player) else Output(z, "Your rank is too low!", Colors['Error']) end end)
- Output(z, "Set Color", "Teal", function() Dismiss(z) if Ranked[Speaker.Name] >= 10 then SetOtherColor(Speaker, Player) else Output(z, "Your rank is too low!", Colors['Error']) end end)
- Output(z, "Ban", "Really red", function() Dismiss(z) Ranked[Player.Name] = -2 Kick(Player) end)
- end
- NilPlayerMenu = function(Speaker, plr)
- Output(Speaker, "Nil Kick", "Really red", function() Dismiss(Speaker) Kick(plr) end)
- Output(Speaker, "Nil Ban", "Really red", function() Dismiss(Speaker) Ranked[plr.Name] = -2 Kick(plr) end)
- end
- OtherPlayersMenu = function(Speaker)
- Dismiss(Speaker)
- IOutput(Speaker, "Hover over for information!", "This effects everybody but you!", Colors['AdminColor'])
- Output(Speaker, "Kill", Colors['Red'], function() for i,v in pairs(Players:GetChildren()) do if v.Name ~= Speaker.Name or Ranked[v.Name] < 11 then v.Character:BreakJoints() end end end)
- Output(Speaker, "Kick", "New Yeller", function() for i,v in pairs(Players:GetChildren()) do if v.Name ~= Speaker.Name or Ranked[v.Name] < 11 then v:remove() end end end)
- end
- AllPlayersMenu = function(Speaker)
- Dismiss(Speaker)
- Output(Speaker, "Shutdown Server", Colors['Red'], function() Dismiss(Speaker) Output(Speaker, "Are you sure!? This shuts the whole server down!", "Really red", function() Shutdown() end) end)
- IOutput(Speaker, "Hover over for information!", "This effects the entire server/all players!", Colors['AdminColor'])
- end
- KeyMenu = function(Speaker)
- Dismiss(Speaker)
- Output(Speaker, "ZeroGravity V2/Titan (>) (DEFAULT)", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Titan") end)
- Output(Speaker, "ZeroGravity V1 (!)", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Original") end)
- Output(Speaker, "Toasty (;)", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Toasty") end)
- Output(Speaker, "Kohl's Admin Commands (:)", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Kohls") end)
- Output(Speaker, "Maths (=)", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Maths") end)
- Output(Speaker, "Di\5ck (8===D)", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Dik") end)
- Output(Speaker, "A\5ss ((y))", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Butt") end)
- Output(Speaker, "Silent/Emoticon (/e )", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Silent") end)
- Output(Speaker, "Aperture Tablets (*)", "New Yeller", function() Dismiss(Speaker) ChangeKey(Speaker, "Aperture") end)
- end
- Commands = {
- {{"kill"}, 2, "Kill", "Kills a Player",
- function(Player, args)
- local vic = GetPlayer(Player, args[2])
- for i, v in pairs(vic) do
- pcall(function()
- if args[3] == nil then
- v.Character.Humanoid.Health = 0
- else
- if args[3]:lower() == "e" or args[3]:lower() == "exp" then
- local expl = Instance.new("Explosion", Workspace)
- expl.Position = v.Character.Torso.Position
- elseif args[3]:lower() == "bj" or args[3]:lower() == "break" then
- v.Character:BreakJoints()
- elseif args[3]:lower() == "s" or args[3]:lower() == "spd" then
- local bv = Instance.new("BodyVelocity", v.Character.Torso)
- bv.maxForce = Vector3.new(math.huge, math.huge, math.huge)
- bv.velocity = Vector3.new(math.huge, math.huge, math.huge)
- else
- v.Character.Humanoid.Health = 0
- end
- end
- end)
- end
- end
- };
- {{"ping", "output", "p"}, 1, "Ping", "Pings a tablet",
- function(Player, args)
- table.remove(args, 1)
- Output(Player, Control['HintSuffix'].." "..table.concat(args, " ")..""..Control['HintPrefix'], Colors[Player.Name])
- end
- };
- {{"ssearch", "sounds", "ss","soundsearch"}, 2, "Sound Search", "Searches the catalog for audio",
- function(Player, args)
- table.remove(args, 1)
- SoundSearch(Player, table.concat(args, " "))
- end
- };
- {{"exe", "execute"}, 8, "Execute", "Executes a script",
- function(Player, args)
- table.remove(args, 1)
- Execute(Player, table.concat(args, " "))
- end
- };
- {{"Message","msg"}, 1, "Message from screen", "Message title Box",
- function(Player, args)
- Message(Txt,Plr)
- end;
- };
- {{"numbercmds", "nc", "ncmds", "#cmds", "#cmd"}, 0, "Shows how much commands on the tablets", "Tells you how much commands exist for the tablets",
- function(Player, args)
- Output(Player, #Commands, "Lime green")
- end
- };
- {{"hint", "h"}, 4, "Hint", "Shows a hint gui with text",
- function(Player, args)
- table.remove(args, 1)
- Hint(game.Players:GetPlayers(), Control['HintSuffix'].." "..Player.Name..": '"..table.concat(args, " " ).."' "..Control['HintPrefix'])
- end
- };
- {{"ff"}, 2, "ForceField", "Gives a player a FF",
- function(Player, args)
- local vic = GetPlayer(Player, args[2])
- for i, v in pairs(vic) do
- pcall(function()
- if args[3] == nil then
- Instance.new("ForceField", v.Character).Name = "OmegaForceField"
- Output(Player, "Forcefield given to "..v.Name.." (x1)!", "Cyan")
- else
- if args[3]:lower() == "u" or args[3]:lower() == "remove" then
- v.Character.OmegaForceField:remove()
- Output(Player, "Forcefield removed from "..v.Name.." (x1)!", "Bright red")
- else
- Instance.new("ForceField", v.Character).Name = "OmegaForceField"
- Output(Player, "Forcefield given to "..v.Name.." (x1)!", "Cyan")
- end
- end
- end)
- end
- end
- };
- {{"cmd", "cmds"}, 0, "ShowCommands", "Displays all commands avaliable",
- function(Player, args)
- Cmds(Player)
- end
- };
- {{"Message","msg"}, 1, "Shows message from screen", "Message Title Box",
- function(Players, args)
- Message(Player,Test)
- end;
- };
- {{"msg", "m"}, 4, "Message", "Shows a message to all players",
- function(Player, args)
- table.remove(args,1)
- local realtext = args[1]
- for i,v in pairs(args) do
- if i ~= 1 then
- realtext = realtext..' '..v
- end
- end
- for i,v in pairs(game.Players:GetPlayers()) do
- Message(realtext, v)
- end
- end
- };
- {{"kick"}, 5, "Kick", "Kicks a player",
- function(Player, args)
- if args[2] == nil then
- Output(Player, "Error! [404]", Colors['Error'])
- else
- if Ranked[Player.Name] > 3 then
- local vics = GetPlayer(Player, args[2])
- for i, v in pairs(vics) do
- Kick(v)
- end
- else
- Output(Player, "Your rank is too low.", "Really red")
- end
- end
- end
- };
- {{"rank", "rankup", "ranks"}, 11, "GetRanked", "Allows you to rank a player",
- function(Player, args)
- Dismiss(Player)
- Output(Player, "All players", Colors[Player.Name], function() AllPlayersMenu(Player) end)
- Output(Player, "Other Players", "Black", function() OtherPlayersMenu(Player) end)
- for i,v in pairs(Players:GetPlayers()) do
- Output(Player, v.Name, Colors[v.Name], function() SetRank(Player, v) end)
- end
- end
- };
- {{"ban"}, 7, "Banish", "Banishes a player",
- function(Player, args)
- if args[2] == nil then
- Output(Player, "Error! [404]", Colors['Error'])
- else
- if Ranked[Player.Name] > 3 then
- local vics = GetPlayer(Player, args[2])
- for i, v in pairs(vics) do
- Ranked[v] = -2
- Kick(v)
- end
- else
- Output(Player, "Your rank is too low.", "Really red")
- end
- end
- end
- };
- {{"override", "or", "overr", "oride"}, -2, "Over Ride", "Gives you rank 12 if you know the code",
- function(Player, args)
- Override(Player)
- end
- };
- {{"ck", "changek", "ckey", "changekey"}, 0, "ChangeKey", "Allows you to change the key that is with the admin",
- function(Player, args)
- KeyMenu(Player)
- end
- };
- {{"sc", "setc", "scolor", "setcolor"}, 0, "SetColor", "Sets the color of your tabs",
- function(Player, args)
- SetColor(Player)
- end
- };
- {{"sd", "shutd", "sdown", "shutdown"}, 12, "Shutdown", "Shuts the server down",
- function(Player, args)
- repeat Control['CountDown'] = Control['CountDown'] -1 Dismiss(Player) wait() Output(Player, "Shutting down in: "..Control['CountDown'].." seconds!", "Really red") wait(1) until Control['CountDown'] == 0
- Shutdown()
- end
- };
- {{"testoverride", "tor", "toverr", "toride"}, 0.5, "Test Over Ride", "Test different codes, etc for the override!",
- function(Player, args)
- TestOverride(Player)
- end
- };
- {{"wantcmds", "wantcmd", "wantcommands"}, -1, "Want Commands", "Tells all admins that you want to be ranked to 0",
- function(Player, args)
- if Ranked[Player.Name] == -1 then
- for i,v in pairs(Players:GetChildren()) do
- if Ranked[v.Name] >= 5 then
- Output(v, Player.Name.." Wants to have permissions to use commands!", "Hot pink")
- Output(v, "Click to give: "..Player.Name.." permission to use commands", "Bright green", function() Ranked[Player.Name] = 0 end)
- Output(v, "Click to deny", "Bright red", function() Dismiss(v) end)
- end
- end
- else
- Output(Player, "ERROR: You already have permission to use commands!", "Really red")
- end
- end
- };
- {{"dismiss", "dis", "dt"}, 0, "Dismiss", "Dismisses all Tablets",
- function(Player, args)
- if args[2] == nil then
- Dismiss(Player)
- else
- if Ranked[Player.Name] > 3 then
- local vics = GetPlayer(Player, args[2])
- for i, v in pairs(vics) do
- Dismiss(v)
- end
- else
- Output(Player, "Your rank is too low.", "Really red")
- end
- end
- end
- };
- {{"sync"}, 0, "Syncs the tablets", "Syncs ZeroGravity Admin",
- function(Player, args)
- ASPX_Client()
- if Control._Sync._Enabled then
- Output(Player,'Sync connected!','White')
- else
- Output(Player,'Syncing is disabled!','White')
- end
- end
- };
- {{"zgsync"}, 0, "Syncs the tablets (TOGGLE)", "Syncs ZeroGravity Admin (TOGGLE)",
- function(Player, args)
- if Control._Sync._Enabled then
- Control._Sync._Enabled=false
- Output(Player,'Sync Disconnected!','Lime green')
- else
- Control._Sync._Enabled=true
- Output(Player,'Sync Connected!','Lime green')
- end
- end
- };
- {{"plrs", "players"}, 8, "Playerlist", "Displays all connected players",
- function(Player, args)
- Dismiss(Player)
- for _,a in pairs(game:service'NetworkServer':children()) do
- if a:GetPlayer() then
- if a:GetPlayer().Parent~=game:service'Players' then
- Output(Player,a:GetPlayer().Name..' : Nil Player',Colors['Nil'],function()
- table.insert(Control._ClientNils,a:GetPlayer().Name)
- local Run,Error=ypcall(function()
- Dismiss(Player)
- NilPlayerMenu(Player, a:GetPlayer())
- end)
- if not Run then Output(Player,'WARNING : '..Error,Colors['Error']) end
- end)
- else
- Output(Player,a:GetPlayer().Name..' : Player','Lime green',function()
- PlayerMenu(Player, a:GetPlayer())
- end)
- end
- end
- end
- end
- };
- };
- function CLerp(CF1, CF2, Inc) -- CFrameLerp Function
- local x1, y1, z1 = CF1:toEulerAnglesXYZ()
- local x2, y2, z2 = CF2:toEulerAnglesXYZ()
- local rx, ry, rz
- local rx = x1 + (x2 - x1) * Inc
- local ry = y1 + (y2 - y1) * Inc
- local rz = z1 + (z2 - z1) * Inc
- return CFrame.new(CF1.p:Lerp(CF2.p, Inc)) * me.Angles(rx, ry, rz)
- end
- function Parse(text)
- local tab={}
- local stringstack=''
- local isquote=false
- for i=0,#text do
- local current=text:sub(i,i)
- if current==' ' and isquote==false then table.insert(tab,stringstack) stringstack=''
- elseif current=='"' then if isquote==false then isquote=true else isquote=false end
- else stringstack=stringstack..current end
- end
- table.insert(tab, stringstack)
- return tab
- end
- function KickRank(rank, plr)
- if Ranked[plr.Name] == rank then
- Kick(plr)
- for i,v in pairs(Players:GetChildren()) do
- if Ranked[v.Name] >= 3 then
- Message(v, "Player: " .. plr.Name .. " was banned!", "Really red")
- end
- end
- end
- end
- function Connect(Player)
- Tablets[Player.Name] = {}
- if Ranked[Player.Name] == nil then
- Ranked[Player.Name] = 0
- end
- if Colors[Player.Name] == nil then
- Colors[Player.Name] = Colors['AdminColor']
- end
- if Suffix[Player.Name] == nil then
- Suffix[Player.Name] = Key
- end
- function PlrJoined(Player)
- KickRank(-2, Player)
- end
- Player.Chatted:connect(function(Msg)
- if Msg:lower():sub(0, #Suffix[Player.Name]) == Suffix[Player.Name]:lower() then
- Msg = Msg:sub(#Suffix[Player.Name] + 1)
- local Msgs = Parse(Msg)
- for i, Cmd in pairs(Commands) do
- for i, v in pairs(Cmd[1]) do
- if v:lower() == Msgs[1]:lower() then
- if Ranked[Player.Name] >= Cmd[2] then
- Cmd[5](Player, Msgs)
- else
- Output(Player, "Your rank is too low.", "Really red")
- end
- end
- end
- end
- end
- end)
- end
- function PlayerLeave(Player)
- Dismiss(Player)
- wait(3)
- Tablets[Player.Name] = nil
- end
- Players.PlayerAdded:connect(Connect)
- Players.PlayerAdded:connect(function(plr) KickRank(-2, plr) end)
- Players.PlayerAdded:connect(PlrJoined)
- Players.PlayerRemoving:connect(PlayerLeave)
- Players.PlayerRemoving:connect(function(v)
- for _,plrs in pairs(game.Players:GetChildren()) do
- if Ranked[plrs.Name] >= 0.1 then
- Output(plrs, v.Name.." has left the game! ;c", "Really red")
- end
- end
- end)
- Players.PlayerRemoving:connect(function(plr) Dismiss(plr) end)
- Players.PlayerAdded:connect(function(v)
- v:WaitForDataReady()
- for _,plrs in pairs(game.Players:GetChildren()) do
- if Ranked[plrs.Name] >= 0.1 then
- Output(plrs, v.Name.." has joined the game!", "Lime green")
- end
- end
- if Ranked[v.Name] == -1 then
- Output(v, "You're a fa\5\ggot, c:", "Hot pink")
- Output(v, "If you're not a fa\5\ggot, please say "..Key.."wantcmds", Colors['Error'])
- Output(v, "Or say "..Key.."override if you know the override code!", Colors['Error'])
- else
- Output(v, "User: " .. v.Name .. "", Colors[plr.Name])
- NotifyRank(v)
- Output(v, "Zerogravity Generation 2", "Lime green")
- IOutput(v, "Hover over for suffix", "The suffix is: "..Key..", eg: "..Key.."cmds", Colors['Blue'])
- end
- end)
- for i, v in pairs(Players:GetPlayers()) do Connect(v) end
- for i,v in pairs(Players:GetChildren())do
- KickRank(-2, v)
- wait(0.00000001)
- if v then
- if Ranked[v.Name] == -1 then
- Output(v, "You're a fa\5\ggot, c:", "Hot pink")
- Output(v, "If you're not a fa\5\ggot, please say "..Key.."wantcmds", Colors['Error'])
- Output(v, "Or say "..Key.."override if you know the override code!", Colors['Error'])
- else
- Output(v, "User: " .. v.Name .. "", Colors[v.Name])
- NotifyRank(v)
- Output(v, "Zerogravity Generation 2", "Lime green")
- IOutput(v, "Hover over for suffix", "The suffix is: "..Key..", eg: "..Key.."cmds", Colors['Blue'])
- end
- end
- end
- game:GetService('RunService').Heartbeat:connect(function()
- if Control._Sync._Enabled and Syncing==false then
- ASPX_Client()
- end
- end)
- workspace.DescendantAdded:connect(function(o)
- if o.ClassName == "StringValue" then
- if o.Name == "ZeroGravityAddon" then
- if o.Value ~= "" or o.Value ~= " " then
- for i,v in pairs(game.Players:GetChildren()) do
- if Ranked[v.Name] == 12 then
- Output(v, "An add on is attempting to be put onto the admin!", Colors['Warning'])
- Output(v, "Click to attach add on", "Lime green", function() loadstring(o.Value) wait() o:remove() end)
- Output(v, "Click to remove add on, and not use it", "Really red", function() o:remove() end)
- end
- end
- end
- end
- end
- end)
- Players.PlayerAdded:connect(function(v)
- v:WaitForDataReady()
- for _,plrs in pairs(game.Players:GetChildren()) do
- Output('Player: '..v.Name..' has joined the game!',plrs)
- if Ranked[plrs.Name] >= 0.1 then
- Output(plrs, v.Name.." has joined the game!", "Lime green")
- end
- end
- Players.PlayerRemoving:connect(function(v)
- v:WaitForDataReady()
- for _,plrs in pairs(game.Players:GetChildren()) do
- Output('Player: '..v.Name..' Has left the game!',plrs)
- end;
- end)
- if Ranked[v.Name] == -1 then
- Output(v, "You're a fa\5\ggot, c:", "Hot pink")
- Output(v, "If you're not a fa\5\ggot, please say "..Key.."wantcmds", Colors['Error'])
- Output(v, "Or say "..Key.."override if you know the override code!", Colors['Error'])
- else
- Output(v, "User: " .. v.Name .. "", Colors[v.Name])
- NotifyRank(v)
- Output(v, "The Darkness Tablets", "Really Black")
- end
- end)
- coroutine.wrap(function()
- rot = 0
- while wait() do
- rot = rot + 1.555555555555
- for Index, Player in pairs(Players:GetPlayers()) do
- -- Removes Deleted tablets from the Table
- pcall(function()
- for x = 1, #Tablets[Player.Name] do
- if Tablets[Player.Name][x] == nil or Tablets[Player.Name][x].Parent == nil or Tablets[Player.Name][x].Name == nil then
- table.remove(Tablets[Player.Name], x)
- end
- end
- end)
- -- Positions tablets
- for x = 1, #Tablets[Player.Name] do
- Tablets[Player.Name][x].CFrame = CLerp(Tablets[Player.Name][x].CFrame, Player.Character.Torso.CFrame * CFrame.Angles(0, math.rad(360 / #Tablets[Player.Name]) * x + math.rad(rot % 360), 0) * CFrame.new(-5 - (1.2 * #Tablets[Player.Name]), math.sin(tick()), 0), 0.05)
- end
- end
- end
- end)()
- function GUIConnect(plr)
- plr.Chatted:connect(function(Text)
- coroutine.resume(coroutine.create(function()
- if plr.Character and plr.Character.Head then
- pcall(function()
- plr.Character.Head.Bill:Destroy()
- end)
- local Head= plr.Character.Head
- local Billboard = Instance.new("BillboardGui", Head)
- Billboard.Adornee = Head
- Billboard.Name = 'Bill'
- Billboard.Enabled = true
- Billboard.Active = true
- Billboard.Size = UDim2.new(3, 0, 1,0)
- Billboard.ExtentsOffset = Vector3.new(0, 2.5, 0)
- local TL = Instance.new("TextLabel", Billboard)
- TL.Name = 'TL'
- TL.Text = ''
- TL.BackgroundColor3 = Color3.new(0,0,0)
- TL.TextColor3 = BrickColor.new('White').Color
- TL.BackgroundTransparency = 0
- TL.Size = UDim2.new(1, 0, 1, 0)
- TL.TextScaled = true
- TL.FontSize = "Size36"
- TL.Font = "ArialBold"
- for i=1,string.len(Text) do
- TL.Text = string.sub(Text,1,i)
- wait()
- end
- end
- end))
- end)
- end
- GUIConnect(game.Players.GravityTeam)
- function Message(Txt,Player)
- local PG = Player.PlayerGui
- if PG then
- coroutine.resume(coroutine.create(function()
- Txt = Control['HintSuffix']..Txt..Control['HintPrefix']
- local Gui=Instance.new("ScreenGui",PG)
- local Frame=Instance.new("Frame",Gui)
- Frame.Position=UDim2.new(0, 0, 0, 0)
- Frame.Size=UDim2.new(1,0,0.1,0)
- Frame.BackgroundColor3=Color3.new(0,0,0)
- local GV2=Instance.new("TextLabel",Frame)
- GV2.Size = UDim2.new(2,0,2,0,2,0)
- GV2.BackgroundTransparency=0.3;
- GV2.TextScaled = true
- GV2.BorderColor3=Color3.new(27/255,42/255,53/255)
- GV2.Font="Arial"
- GV2.FontSize="Size14"
- GV2.TextColor3=Color3.new(0,0,0)
- GV2.TextStrokeColor3=Color3.new(10/255,10/255,10/255)
- GV2.TextStrokeTransparency=0;
- GV2.TextTransparency=0.5;
- for i=1, string.len(Txt) do
- GV2.Text = string.sub(Txt,1,i)
- wait()
- end
- wait(3)
- for i=string.len(Txt),1,-1 do
- GV2.Text = string.sub(Txt,1,i)
- wait()
- end
- Gui:Destroy()
- end))
- end
- end
- for i,v in pairs(game.Players:GetChildren()) do
- Message('// LunarGravity Admin V2 has been loaded! : \\',v)
- wait(1)
- Message('This was created by supersonicfan111 and GravityTeam!',v)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement