View difference between Paste ID: VQ1GqQ1f and EE3YyBXk
SHOW: | | - or go back to the newest paste.
1-
-- Apex Administration V4 by ApexDevelopment (awesomedude739)
1+
-- Apex Administration made by /Roblox/Vfen/ Paste Bin/MlgMatthew/ 
2
3
4
Kick = function(plr)
5
local h=Instance.new('RemoteEvent',workspace):FireClient(plr,{string.rep("umad?",2e5+5)}) 
6
delay(1,function()
7
        pcall(function()
8
                h:remove()
9
        end)
10
end)
11
end
12
13
wait()
14
script.Parent = Instance.new('Glue') -- Anti h4x0rz
15
16
Rot1 = math.rad(0)*math.pi*2
17
Rot2 = math.rad(0)*math.pi*2
18
Lerp_Rot = .1
19
20
Apex = {
21
        Tablets = {};
22
        Commands = {};
23
        Rot_1 = math.rad(0)*math.pi*2;
24
        Rot_2 = math.rad(0)*math.pi*2;
25
        Prefix = ".";
26
        Suffix = "/";
27
        Functions = {};
28-
        Version = "[VENGEANCE]";
28+
        Version = "[VENGANCE]";
29
        Logs = {
30
                ScriptLogs = {};
31
                ChatLogs = {};
32
                ErrorLogs = {};
33
                OtherPlayerLogs = {};
34
        },
35
        Fake = {
36
                _G = {};
37
                shared = {};
38
                Functions = {};
39
        },
40
        Settings = {
41
                Tablet = false;
42
                AgeEnabled = false;
43
                ScriptEnabled = false;
44
                HttpEnabled = false;
45
                LoadstringEnabled = false;
46
                PrivateServerEnabled = false;
47
                Scripts = false;
48
				HttpCommands = true;
49
        },
50
        _Ranked = {
51-
                {Nme="ApexDevelopment",Rank=1337,Description="Creator.",Color="Really red"};
51+
                {Nme="Vfen",Rank=1337,Description="Creator.",Color="Really red"};
52-
                {Nme="Player1",Rank=4,Description="For Studio testing.",Color="Really red"};
52+
                {Nme="Idk",Rank=4,Description="For Studio testing.",Color="Really red"};
53-
                {Nme="PeroxDevelopment",Rank=3,Description="Good friend and a good scripter.",Color="White"};
53+
                {Nme="Doge",Rank=3,Description="Good friend and a good scripter.",Color="White"};
54-
                {Nme="supersonicfan111",Rank=3,Description="Good friend and a good scripter.",Color="White"};
54+
                {Nme="Hax0r",Rank=3,Description="Good friend and a good scripter.",Color="White"};
55
		{Nme="Euonix",Rank=-1,Description="Really annoying.",Color="Really black"};
56-
                {Nme="meunumbertwo",Rank=-1,Description="Abuser, REALLY annoying.",Color="Really black"};
56+
                {Nme="Yolo",Rank=-1,Description="Abuser, REALLY annoying.",Color="Really black"};
57-
		{Nme="nmoom1",Rank=-1,Description="Abuser, REALLY annoying.",Color="Really black"};
57+
		{Nme="DamnDaniel",Rank=-1,Description="Abuser, REALLY annoying.",Color="Really black"};
58
        },
59
        Get = {};
60
        Set = {};
61
        Updates = {
62-
                "This was made by ApexDevelopment (awesomedude739).";
62+
                "This was made by Vfen";
63
        };
64
};
65
Notify = function(plr,msg)
66
        if msg==nil then msg = "Nil message." end
67
        local pg = plr.PlayerGui;
68
        local Gui = Instance.new("ScreenGui", pg);
69
        local frame = Instance.new("Frame", pg);
70
        frame.Size = UDim2.new(1,0,0.5,0);
71
        frame.Position = UDim2.new(0,0,0);
72
        frame.Draggable = true;
73
        frame.Active = true;
74
        local text = Instance.new("TextLabel", frame);
75
        text.Size = UDim2.new(.99,0,0,2.5);
76
        text.Position = UDim2.new(.005,0,0,2.5);
77
        text.Text = "-=[ Apex Vengance ]=- "..msg;
78
        text.Font = "Arial";
79
        text.FontSize = "Size18";
80
        text.TextScaled = true;
81
        text.TextWrapped = false;
82
end;
83
84
Update = function(plr,msg)
85
        if msg==nil then msg = "Nil message." end
86
        local pg=plr.PlayerGui;
87
        if plr and pg:FindFirstChild("PlayerGui") then
88
                coroutine.resume(coroutine.create(function()
89
                        local Gui=Instance.new("ScreenGui",pg);
90
                        local Frame=Instance.new("Frame",Gui);
91
                        Frame.Size = UDim2.new(1,0,1,0);
92
                        Frame.BackgroundTransparency = 1;
93
                        Frame.BorderColor3=Color3.new(0,0,0);
94
                        Frame.Style = "Custom";
95
                        Frame.BorderSizePixel = 0;
96
                        local Text = Instance.new("TextLabel",Frame);
97
                        Text.BackgroundTransparency=1;
98
            Text.Size=UDim2.new(1,0,1,0);
99
            Text.Text='-=[ Apex Vengance ]=- '..msg;
100
            Text.Font='Arial';
101
            Text.FontSize='Size12';
102
            Text.BorderColor3=Color3.new(0,0,0);
103
            Text.BackgroundColor3=Color3.new(255,255,255);
104
            Text.TextScaled=true;
105
            Text.TextWrapped=false;
106
            Text.TextStrokeColor3=Color3.new(1,1,1);
107
            Text.TextStrokeTransparency=0;
108
            Text.TextTransparency=0;
109
                end));
110
        end;
111
end;
112
113
GetTablets = function(plr)
114
        local Table = {};
115
        pcall(function() plr = plr.Name end);
116
        for _,Tablet in next,Apex.Tablets do
117
                if(Tablet.Owner==plr.Name) then
118
                        table.insert(Table,plr.Name);
119
                end;
120
                return Table;
121
        end;
122
end;
123
GetScript = function(plr)
124
        local Scripts = {};
125
        pcall(function() plr = plr.Name end);
126
        for _,Script in next,Apex.Settings.Scripts do
127
                if(Script.Disabled == true or Script.Disabled == false) then
128
                        table.remove(Scripts,script);
129
                end;
130
                return Scripts;
131
        end;
132
end;
133
Output = function(time,Player,Text,Color,Func)
134
		wait()
135
        if Color == nil then Color = "Institutional white" end;
136
        if Func == nil then Func=function() end; end;
137
        if Text == nil then Text="Nil text." end;
138
        local Part = Instance.new("Part", game.Workspace);
139
        Part.FormFactor = "Custom";
140
		Part.CFrame = CFrame.new(0,80,0);
141
        Part.CanCollide = false;
142
        Part.Locked = true;
143
        Part.Anchored = true;
144
        Part.Name = "Apex V4 VENGANCE Tablet";
145
        Part.Transparency = 0.3;
146
        Part.BrickColor = BrickColor.new(Color);
147
        Part.Size = Vector3.new(2,2,2);
148
        Part.TopSurface = "Smooth";
149
        Part.BottomSurface = "Smooth";
150
        local Box = Instance.new("SelectionBox",Part);
151
        Box.Adornee = Part;
152
        Box.Color = BrickColor.new("Really black");
153
        Box.Transparency  = 0.3;
154
        local Gui = Instance.new("BillboardGui",Part);
155
		wait()
156
        Gui.Adornee = Part;
157
        Gui.StudsOffset = Vector3.new(0,3,0);
158
        Gui.Size = UDim2.new(1,0,1,0);
159
        Gui.Name = "Gui";
160
        local Gyro = Instance.new("BodyGyro",Part);
161
        local TextLabel = Instance.new("TextLabel",Gui);
162
		wait()
163
        TextLabel.Text = Text;
164
        TextLabel.BackgroundTransparency = 1;
165
        TextLabel.Size = UDim2.new(1,0,1,0);
166
        TextLabel.FontSize = "Size18";
167
        TextLabel.Font = "ArialBold";
168
        TextLabel.TextColor3 = BrickColor.new(Color).Color;
169
        local Click = Instance.new("ClickDetector",Part);
170
		wait()
171
        Click.MouseClick:connect(function(plr)
172
                if plr.userId == Player.userId then
173
                        pcall(function() time=0 end)
174
                        coroutine.wrap(function()
175
                                spawn(function()
176
                                        for _ = 0.5,1,0.05 do
177
                                                pcall(function()
178
                                                        TextLabel.TextStrokeTransparency = TextLabel.TextStrokeTransparency+0.1
179
                                                        Part.Size = Part.Size-Vector3.new(0.4,0.4,0.4)
180
                                                        Box.Transparency = Box.Transparency+0.1
181
                                                        Part.Transparency = Part.Transparency+0.05
182
                                                end)
183
                                                wait()
184
                                        end
185
                                        pcall(function()
186
                                                Part:Destroy()
187
                                        end)
188
                                end)
189
                        end)()
190
                        Func=Func Func()
191
                end
192
        end)
193
        Click.MouseHoverEnter:connect(function(plr)
194
                if plr.userId == Player.userId then
195
                        Box.Transparency = 0.1
196
                        Part.Size = Vector3.new(1.6,1.6,1.6)
197
                end
198
        end)
199
        Click.MouseHoverLeave:connect(function(plr)
200
                if plr.userId == Player.userId then
201
                        Box.Transparency = 0.3
202
                        Part.Size = Vector3.new(2,2,2)
203
                end
204
        end)
205
        table.insert(Apex.Tablets,{Tab=Part,Player=Player.userId,Box=Box,Gyro=Gyro,Text=TextLabel})
206
                Part.Parent=script;
207
        GetRank = function(plr)
208
                local Rk=0;
209
                for _,data in pairs(Apex["_Ranked"]) do
210
                        if plr.Name == data.Nme then
211
                                Rk = data.Rank
212
                        end;
213
                end;
214
                return Rk;
215
        end;
216
        GetColor = function(plr)
217
                local Color = "Really black";
218
                for _,data in pairs(Apex["_Ranked"]) do
219
                        if plr.Name == data.Name then
220
                                Color = data.Color
221
                        end;
222
                end;
223
                return Color;
224
        end;
225
        Broadcast_All = function(time,Player,Text,Color,Func)
226
                table.insert(Apex.Tablets,{Tab=Part,Player=Player.userId,Box=Box,Gyro=Gyro,Text=TextLabel})
227
                        Part.Parent=script;
228
        end;
229
end;
230
231
function findPlayer(str, spkr)
232
        local result = {}
233
        for _, person in pairs(game.Players:GetChildren()) do
234
                if person.Name:lower():find(str) == 1 then
235
                        result[person] = person
236
                end
237
        end
238-
        if str == "me" then result = {spkr} end
238+
        if str == "all" then result = {spkr} end
239
        if str == "all" then
240
                for _, person in pairs(game.Players:GetChildren()) do
241
                        result[person] = person
242
                end
243
        end
244
        if str == "others" then
245
                for _, person in pairs(game.Players:GetChildren()) do
246
                        if person.userId ~= spkr.userId then
247
                                result[person] = person
248
                        end
249
                end
250
        end
251
        return result
252
end
253
254
function UpdateTabPos()
255
        Rot1=Rot1+Rot2
256
        for _,Player in pairs(game:service'Players':GetPlayers()) do
257
                local CollectionTabs = {}
258
                local Player_Pos = nil
259
                        for i,v in pairs(Apex.Tablets) do
260
                                if v.Tab.Parent ~= nil and v.Player == Player.userId then
261
                                        table.insert(CollectionTabs,v)
262
                                end
263
                        end
264
                pcall(function()
265
                        if Player.Character ~= nil and Player.Character.Torso ~= nil then
266
                                pcall(function()
267
									Player_Pos = Player.Character.Torso.CFrame
268
								end)
269
                        end
270
                end)
271
                        for i,v in pairs(CollectionTabs) do
272
                        if v.Tab.Parent == nil then
273
                            v.Tab:remove()
274
                        table.remove(CollectionTabs, i)
275
                        end
276
                                if v.Tab.Parent ~= nil and v.Player == Player.userId then
277
                                        pcall(function()
278
											if v.Tab.Parent ~= game.Workspace then v.Tab.Parent = game.Workspace end
279
                                        	local Radius1=CFrame.new(0,0,-4.5-#CollectionTabs)
280
                                        	local Radius2=Radius1*CFrame.Angles(math.rad(25),0,0)
281
                                        	local cfr = Player_Pos*CFrame.Angles(.001,math.rad((i*360/#CollectionTabs)+Rot1),0)*Radius2
282
                                        	local Pos = v.Tab.CFrame.p
283
                                        	Pos = Pos:Lerp(cfr.p,Lerp_Rot)
284
                                        	v.Tab.CFrame=CFrame.new(Pos)*v.Gyro.cframe
285
                                        	v.Gyro.cframe=v.Gyro.cframe*CFrame.Angles(math.rad(1),math.rad(1),math.rad(1))
286
										end)
287
                                end
288
                        end
289
        end
290
end;
291
292
AddCommand = function(Name,Usage,Desc,Rank,Func)
293
        table.insert(Apex.Commands,{Name=Name,Usage=Usage,Desc=Desc,Rank=Rank,Func=Func})
294
end;
295
296
Chat = function(plr,msg)
297
        local Ran,Error=ypcall(function()
298
                for _,data in pairs(Apex["Commands"]) do
299
                        if msg:sub(1,#(data["Usage"]:lower()..Apex.Suffix))==(data["Usage"]:lower()..Apex.Prefix) then
300
                                if GetRank(plr) >= data.Rank then
301
                                        msg = msg:sub(#data["Usage"]+#Apex.Suffix+1);
302
                                        local a,b=ypcall(function()
303
                                                data["Func"](plr,msg)
304
                                        end);
305
                                        if not a then
306
                                                Output(5,plr,"ERROR: "..b,"Really red",function() end); 
307
                                        end;
308
                                else
309
                                        Output(10,plr,"Your rank is too low for that command.","Really red",function() end);
310
                                end;
311
                        end;
312
                end;
313
        end);
314
        if not Ran then print(Error) end;
315
end;
316
317
for _,plr in pairs(game.Players:GetPlayers()) do
318
        plr.Chatted:connect(function(msg)
319
                Chat(plr,msg);
320
        end);
321
		Output(5,plr,"Apex V4 VENGANCE loaded.","Really red")
322
		wait()
323
		Output(5,plr,"Your rank is "..GetRank(plr)..'/4.',"Really black")
324
end
325
326
Dismiss = function(plr)
327
	wait()
328
    for i=1,4 do
329
                for _,v in pairs(Apex.Tablets) do
330
                    if v.Tab and v.Tab.Parent and v.Player == plr.userId then
331
                        v.Tab.Size = v.Tab.Size-Vector3.new(0.2,0.2,0.2)
332
                    end
333
                end
334
                wait(0.01)
335
        end
336
		wait(0.01)
337
        for _,v in pairs(Apex.Tablets) do
338
                if v.Player == plr.userId then
339
                        v.Tab:Destroy();
340
                end
341
        end
342
end
343
344
ShowCommands = function(plr)
345
        Dismiss(plr);
346
        for _,v in pairs(Apex.Commands) do
347
                Output(30,plr,v["Name"],"White",function()
348
                        Dismiss(plr);
349
                        Output(30,plr,'Name: '..v.Name,'White',function() end);
350
                        Output(30,plr,'Usage: '..v.Usage,'White',function() end);
351
                        Output(30,plr,'Description: '..v.Desc,'White',function() end);
352
                        Output(30,plr,'Rank needed: '..v.Rank,'Lime green',function() end);
353
                        Output(30,plr,'Back','Lime green',function() ShowCommands(plr); end);
354
                        Output(30,plr,'Dismiss','Really red',function() Dismiss(plr) end);
355
                end);
356
        end;
357
		if GetRank(plr)<4 then
358
        Output(30,plr,"Commands for rank "..GetRank(plr),'Lime green',function()
359
                Dismiss(plr);
360
                for _,v in pairs(Apex.Commands) do
361
                        if GetRank(plr) >= v.Rank then
362
                                Output(30,plr,v["Name"],"White",function()
363
                                        Dismiss(plr);
364
                                        Output(30,plr,'Name: '..v.Name,'White',function() end);
365
                                        Output(30,plr,'Usage: '..v.Usage,'White',function() end);
366
                                        Output(30,plr,'Description: '..v.Desc,'White',function() end);
367
                                        Output(30,plr,'Rank needed: '..v.Rank,'Lime green',function() end);
368
                                        Output(30,plr,'Back','Lime green',function() ShowCommands(plr); end);
369
                                        Output(30,plr,'Dismiss','Really red',function() Dismiss(plr) end);
370
                                end);
371
                        end;
372
                end;
373
        end);
374
		Output(30,plr,"Dismiss","Really red",function() Dismiss(plr) end)
375
		end;
376
end;
377
378
KickBannedPlayers = function()
379
        for _,plr in pairs(game.Players:GetChildren()) do
380
                for _,v in pairs(Apex['_Ranked']) do
381
                        if plr.Name == v.Nme and v.Rank == -1 then
382
                                Kick(game:service'Players'[plr.Name])
383
                        end
384
                end
385
        end
386
end
387
388
GetRankd = function(plr)
389
        Dismiss(plr);
390
        for _,v in pairs(Apex["_Ranked"]) do
391
                Output(30,plr,v["Nme"],"White",function()
392
                        Dismiss(plr);
393
                        Output(30,plr,'Name: '..v.Nme,v.Color,function() end);
394
                        Output(30,plr,'Rank: '..v.Rank,v.Color,function() end);
395
                        Output(30,plr,'Description: '..v.Description,v.Color,function() end);
396
                        Output(30,plr,'Dismiss','Really red',function() Dismiss(plr) end);
397
                        Output(30,plr,'Back','Lime green',function() GetRankd(plr) end);
398
                end);
399
        end;
400
end
401
402
AddCommand('Commands','cmds','Show all commands.',0,function(Speaker,Message)
403
        ShowCommands(Speaker);
404
end)
405
406
AddCommand('Ping','ping','Output a message.',0,function(Speaker,Message)
407
	if Message == nil then Message = "" end
408
	Output(10,Speaker,Message)
409
end)
410
411
AddCommand('Touch Kick','touchkick','Kick any player you touch.',3,function(Speaker,Message)
412
	Speaker.Character.Torso.Touched:connect(function(thing)
413
		if game.Players[thing.Parent.Name] then
414
			Kick(game:service'Players'[thing.Parent.Name])
415
		end
416
	end)
417
end)
418
419
AddCommand('Touch Ban','touchban','Ban any player you touch.',3,function(Speaker,Message)
420
	Speaker.Character.Torso.Touched:connect(function(thing)
421
		if game.Players[thing.Parent.Name] then
422
			Kick(game:service'Players'[thing.Parent.Name])
423
			table.insert(Apex['_Ranked'],{Nme=thing.Parent.Name,Rank=-1,Description="Touch Banned",'Really black'})
424
		end
425
	end)
426
end)
427
428
AddCommand('Dismiss','dt','Dismiss tablets.',0,function(Speaker,Message)
429
        Dismiss(Speaker);
430
end)
431
   
432
AddCommand('Dismiss all','dtall',"Dismiss every player's tablets.",3,function(Speaker,Message)
433
        for _,Player in next,game.Players:children() do
434
                Dismiss(Player);
435
        end;
436
end)
437
438
AddCommand('Get ranked','granked','Show all ranked players.',1,function(Speaker,Message)
439
        GetRankd(Speaker)
440
end)
441
442
AddCommand('Kill','kill','Kill a player.',2,function(Speaker,Message)
443
        local p = findPlayer(Message, Speaker)
444
        for _,plr in pairs(p) do
445
                plr.Character:BreakJoints()
446
                Output(5,Speaker,'Killed '..plr.Name)
447
        end
448
end)
449
450
AddCommand('ForceField','ff','Give a player a ForceField.',2,function(Speaker,Message)
451
        local p = findPlayer(Message, Speaker)
452
        for _,plr in pairs(p) do
453
                Instance.new("ForceField", plr.Character)
454
                Output(5,Speaker,'Gave '..plr.Name..' a ForceField.')
455
        end
456
end)
457
458
AddCommand('UnForceField','unff',"Remove a player's ForceField.",2,function(Speaker,Message)
459
        local p = findPlayer(Message, Speaker)
460
        for _,plr in pairs(p) do
461
                if plr.Character:FindFirstChild("ForceField") then
462
                        plr.Character.ForceField:Destroy()
463
                        Output(5,Speaker,'Removed '..plr.Name.."'s ForceField.")
464
                end
465
        end
466
end)
467
468
AddCommand('God','god','Gives a player a huge amount of health.',2,function(Speaker,Message)
469
        local p = findPlayer(Message, Speaker)
470
        for _,plr in pairs(p) do
471
                plr.Character.Humanoid.MaxHealth = math.huge
472
                plr.Character.Humanoid.Health = 9e9
473
                Output(5,Speaker,'Made '..plr.Name..' a god.')
474
        end
475
end)
476
477
AddCommand('Ungod','ungod','Returns a player to their normal health.',2,function(Speaker,Message)
478
        local p = findPlayer(Message, Speaker)
479
        for _,plr in pairs(p) do
480
                plr.Character.Humanoid.Health = 100
481
                plr.Character.Humanoid.MaxHealth = 100
482
                Output(5,Speaker,'Ungodded '..plr.Name..'.')
483
        end
484
end)
485
486
AddCommand('Kick','kick','Kick a player from the game.',3,function(Speaker,Message)
487
        local p = findPlayer(Message, Speaker)
488
        for _,plr in pairs(p) do
489
                Output(5,Speaker,'Kicking '..plr.Name..'.')
490
                Kick(game:service'Players'[plr.Name])
491
        end
492
end)
493
494
AddCommand('Ban','ban','Bans a player from the game.',3,function(Speaker,Message)
495
        local p = findPlayer(Message, Speaker)
496
        for _,plr in pairs(p) do
497
                table.insert(Apex['_Ranked'],{Nme=plr.Name,Rank=-1,Description="Banned",'Really black'})
498
                Output(5,Speaker,'Banned '..plr.Name..'.')
499
        end
500
end)
501
502
AddCommand('UnBan','unban','Un-Bans a player.',3,function(Speaker,Message)
503
        for _,plr in pairs(Apex['_Ranked']) do
504
                if plr.Nme == Message and plr.Rank < 0 then
505
                        plr.Rank = 0
506
                        Output(5,'Speaker','Unbanned '..plr.Nme..'.')
507
                end
508
        end
509
end)
510
511
AddCommand('NoCopyrightSounds','ncs','Play some great music.',2,function(Speaker,Message)
512
	pcall(function()
513
		if sound then sound:Stop() sound:Destroy() end
514
		sound = Instance.new("Sound",script);
515
		sound.Looped = true
516
		local url = "http://www.roblox.com/asset/?id="
517
		local ready = false
518
		Dismiss(Speaker)
519
		Output(30,Speaker,"NoCopyrightSounds","Really black");
520
		Output(30,Speaker,"Alan Walker - Fade","New Yeller",function() Dismiss(Speaker) sound.SoundId = url.."227475817" sound.Volume = 0.5 ready = true end)
521
		Output(30,Speaker,"Alan Walker - Spectre","New Yeller",function() Dismiss(Speaker) sound.SoundId = url.."219506834" sound.Volume = 0.5 ready = true end);
522
		Output(30,Speaker,"Codeko - Crest","New Yeller",function() Dismiss(Speaker) sound.SoundId = url.."186496535" sound.Volume = 0.2 ready = true end);
523
		Output(30,Speaker,"Itro - Panda","New Yeller",function() Dismiss(Speaker) sound.SoundId = url.."201573748" sound.Volume = 0.5 ready = true end);
524
		Output(30,Speaker,"Distrion and Electro-Light - Rubik","New Yeller",function() Dismiss(Speaker) sound.SoundId = url.."222338678" sound.Volume = 0.5 ready = true end);
525
		Output(30,Speaker,"Itro & Tobu - Cloud 9","New Yeller",function() Dismiss(Speaker) sound.SoundId = url.."181065299" sound.Volume = 0.5 ready = true end);
526
		while not ready do
527
			wait(2)
528
		end
529
		sound.Parent = Speaker.Character.Torso
530
		wait()
531
		Output(5,Speaker,"Playing music.")
532
		sound:Play()
533
	end)
534
end)
535
536
AddCommand('Music','music','Play music of your choice.',3,function(Speaker,Message)
537
	pcall(function()
538
		if sound then sound:Stop() sound:Destroy() end
539
		sound = Instance.new("Sound",script)
540
		sound.Looped = true
541
		local url = "http://www.roblox.com/asset/?id="..Message
542
		sound.SoundId = url
543
		sound.Parent = Speaker.Character.Torso
544
		Dismiss(Speaker)
545
		wait(2)
546
		Output(5,Speaker,"Click to play song "..Message,"New Yeller",function() sound:Play() end)
547
	end)
548
end)
549
550
AddCommand('Players','net','View people connected to the game (even nils).',4,function(Speaker,Message)
551
	for _,v in pairs(game.NetworkServer:GetChildren()) do
552
		if v.Parent == nil then
553
			Output(30,Speaker,v.Name.." <NIL>","Really red")
554
		else
555
			Output(30,Speaker,v.Name,"Lime green")
556
		end
557
	end
558
end)
559
560
AddCommand('Stop Music','stopmusic','Stop playing music.',2,function()
561
	pcall(function()
562
		if sound then sound:Stop() end
563
		sound:Destroy()
564
	end)
565
end)
566
567
AddCommand('Information','i','Get information about a player.',2,function(Speaker,Message)
568
	local p = findPlayer(Message, Speaker)
569
	for _,plr in pairs(p) do
570
		Output(30,Speaker,'Info on '..plr.Name,'Really black',function()
571
			Dismiss(Speaker)
572
			Output(30,Speaker,plr.Name)
573
			Output(30,Speaker,plr.AccountAge..' days old')
574
			Output(30,Speaker,'Rank '..GetRank(plr)..'/4')
575
			Output(30,Speaker,'Kick','Really red',function() Kick(game:service'Players'[plr.Name]) end)
576
		end)
577
	end
578
end)
579
580
AddCommand('Set Rank','setrank',"Sets a player's rank.",1,function(Speaker,Message)
581
        local p = findPlayer(Message, Speaker)
582
        Dismiss(Speaker)
583
        for _,otherp in pairs(p) do
584
                Output(30,Speaker,'Set '..otherp.Name.."'s rank",nil,function()
585
                        Dismiss(Speaker)
586
                        isrkd = false
587
                        for _,ppl in pairs(Apex['_Ranked']) do
588
                                if otherp.Name == ppl.Name then isrkd = true end
589
                        end
590
                        if isrkd == false then 
591
                                table.insert(Apex['_Ranked'],{Nme=otherp.Name,Rank=0,Description="User",'White'})
592
                        end
593
                        Output(30,Speaker,'Change '..otherp.Name.."'s rank to...",'Black',function() Dismiss(Speaker) end)
594
                        Output(30,Speaker,0,nil,function() if GetRank(Speaker)>GetRank(otherp) then
595
                                for _,plr in pairs(Apex['_Ranked']) do
596
                                        if plr.Name == otherp.Name then plr.Rank = 0; end
597
                                end
598
								Output(5,p,'You are now rank 0/4.','New Yeller');
599
                                end Dismiss(Speaker) end)
600
                        Output(30,Speaker,1,nil,function() if GetRank(Speaker)>GetRank(otherp) then
601
                                for _,plr in pairs(Apex['_Ranked']) do
602
                                        if plr.Name == otherp.Name then plr.Rank = 1; end
603
                                end
604
								Output(5,p,'You are now rank 1/4.','New Yeller');
605
                                end Dismiss(Speaker) end)
606
                        Output(30,Speaker,2,nil,function() if GetRank(Speaker)>GetRank(otherp) then
607
                                for _,plr in pairs(Apex['_Ranked']) do
608
                                        if plr.Name == otherp.Name then plr.Rank = 2; end
609
                                end
610
								Output(5,p,'You are now rank 2/4.','New Yeller');
611
                                end Dismiss(Speaker) end)
612
                        Output(30,Speaker,3,nil,function() if GetRank(Speaker)>GetRank(otherp) then
613
                                for _,plr in pairs(Apex['_Ranked']) do
614
                                        if plr.Name == otherp.Name then plr.Rank = 3; end
615
                                end
616
								Output(5,p,'You are now rank 3/4.','New Yeller');
617
                                end Dismiss(Speaker) end)
618
                        Output(30,Speaker,4,nil,function() if GetRank(Speaker)>GetRank(otherp) then
619
                                for _,plr in pairs(Apex['_Ranked']) do
620
                                        if plr.Name == otherp.Name then plr.Rank = 4; end
621
                                end
622
								Output(5,p,'You are now rank 4/4.','New Yeller');
623
                                end Dismiss(Speaker) end)
624
                end)
625
        end
626
end)
627
628
629
AddCommand('Loadstring','ls','Run some code.',3,function(Speaker,Message)
630
        local Ran,Error = ypcall(function()
631
                loadstring(Message)()
632
        end);
633
        if Error then Output(5,Speaker,Error,'Really red') end
634
        if not Ran then print(Error) end
635
end);
636
637
AddCommand('Shutdown','sd','Shut down the server.',4,function(Speaker,Message)
638
        for _,player in next,game:service'Players':GetPlayers() do
639
                Output(5,player,'Server will shut down in 3 seconds!','Really red')
640
        end
641
        wait(3)
642
end)
643
644
AddCommand('Http Commands','hcmds','Toggle commands over HTTP.',4,function(Speaker)
645
	Apex.Settings.HttpCommands = not Apex.Settings.HttpCommands
646
	Output(5,Speaker,'Toggled HTTP Commands to '..Apex.Settings.HttpCommands..'.')
647
end)
648
649
AddCommand('Credits','c','Show the credits.',0,function(Speaker,Message)
650-
        Output(10,Speaker,'Made by awesomedude739.','Lime green');
650+
        Output(10,Speaker,'Made by Vfen.','Lime green');
651-
        Output(10,Speaker,'Math credit to jillmiles1.','Lime green');
651+
        Output(10,Speaker,'Math credit to Vfen.','Lime green');
652-
        Output(10,Speaker,'Apex V4 VENGANCE','Really black');
652+
        Output(10,Speaker,'ROBLOX Advanced Apex Administration','Really black');
653
end)
654
655
game:GetService('RunService').Heartbeat:connect(function()
656
        UpdateTabPos();
657
        KickBannedPlayers();
658
end)
659
660
game:service'Players'.PlayerAdded:connect(function(plr)
661
        wait(1);
662
        plr.Chatted:connect(function(msg)
663
                Chat(plr,msg);
664
        end);
665
		Output(5,plr,"ROBLOX Advanced apex administration Loaded .","Really red")
666
		wait()
667
		Output(5,plr,"Your rank is "..GetRank(plr)..'/4.',"Really black")
668
end)
669
670
while true do
671
	wait(1)
672
	while Apex.Settings.HttpCommands do
673
		wait(5)
674
		local data = game:service'HttpService':GetAsync("http://pastebin.com/raw.php?i=Pn4ctSmE",true)
675
		data = tostring(data)
676
		local A, A2 = string.find(data, "START")
677
		local B, B2 = string.find(data, "END")
678
		local cmd = string.sub(data, A2+1, B-1)
679
		if string.sub(cmd,1,5)=="kick " then game.Players[string.sub(cmd,6)]:Destroy() end
680
	end
681
end