View difference between Paste ID: CSUV5wzv and CHJmXPLH
SHOW: | | - or go back to the newest paste.
1
                                          -[[
2
    _____    __  __   ______   _            _____                                                       _      _____                 _           _   
3
   |  __ \  |  \/  | |  ____| ( )          / ____|                                                     | |    / ____|               (_)         | |  
4
   | |__) | | \  / | | |__    |/   ___    | |        ___    _ __ ___    _ __ ___     __ _   _ __     __| |   | (___     ___   _ __   _   _ __   | |_ 
5
   |  ___/  | |\/| | |  __|       / __|   | |       / _ \  | '_ ` _ \  | '_ ` _ \   / _` | | '_ \   / _` |    \___ \   / __| | '__| | | | '_ \  | __|
6
   | |      | |  | | | |____      \__ \   | |____  | (_) | | | | | | | | | | | | | | (_| | | | | | | (_| |    ____) | | (__  | |    | | | |_) | | |_ 
7
   |_|      |_|  |_| |______|     |___/    \_____|  \___/  |_| |_| |_| |_| |_| |_|  \__,_| |_| |_|  \__,_|   |_____/   \___| |_|    |_| | .__/   \__|
8
                                                                                                                                      | |          
9
                                                                                                                                      |_|          
10
--]]
11
12
--// VARIABLES
13
local Administrators = {
14-
	{["NAME"] = "Sweetsally1", ["UID"] = "13940070", ["RANK"] = 4}, -- i created this, but its your choice to keep/remove it. ;)
14+
	{["Dogeness33"] = "Sweetsally1", ["UID"] = "13940070", ["RANK"] = 4}, -- i created this, but its your choice to keep/remove it. ;)
15
	{["NAME"] = "Player", ["UID"] = "78913263", ["RANK"] = 4}, -- cool guy helped me with lots of stuff, but its your choice to keep/remove him. ;)
16
	{["NAME"] = game.Players.LocalPlayer.Name, ["UID"] = game.Players.LocalPlayer.userId, ["RANK"] = 5}
17
}
18
19
--// RANK NOTE:
20
	--// ADMINISTRATORS
21
		-- 1: Restricted Permissions;		Equivalent to Kohl's TempAdmin rank
22
		-- 2: Less-restricted Permissions;	Equivalent to Kohl's Admin rank
23
		-- 3: Hightened Permissions;		Equivalent to Kohl's Owner rank
24
		-- 4: Unrestricted Permissions;		Equivalent to Kohl's TrueOwner rank
25
		-- 5: Client Permission;			No equivalent to Kohl's; Commands designated with a rank of 5 only work on the LocalPlayer
26
	--// BANNED USERS
27
		-- 1: Removal using ":Remove()"
28
		-- 2: Removal through a HopperBin crash (give it time to crash them obviously)
29
30
local BannedUsers = {{["NAME"] = "YourMom", ["UID"] = "-1337", ["RANK"] = 1}}
31
local LoopKilled = {}
32
local LoopSit = {}
33
local MusicList = {}
34
local ESP = {}
35
local Allowed = {}
36
local Jailed = {}
37
local Commands = {}
38
local KeyBinds = {}
39
local ChatLogs = {}
40
local CommandLogs = {}
41
local DefaultKeyBinds = {
42
	SpeedUpKey = 27, 	-- F2
43
	SpeedDownKey = 28,	-- F3
44
	FloatKey = 29,		-- F4 
45
	FlyKey = 30, 		-- F5
46
	HomeKey = 22,		-- HOME
47
}
48
local WayPoints = {
49
	--// APOCALYPSE RISING: REIMAGINED
50
	{["NAME"] = "Hark", 		["COORD"] = {-1877, 4.4, -3000}},
51
	{["NAME"] = "Mansion", 		["COORD"] = {-2366, 5.6, -1618}},
52
	{["NAME"] = "Dirk",			["COORD"] = {-2839, 4.4, 725}},
53
	{["NAME"] = "Trin",			["COORD"] = {-2798, 4.1, 2593}},
54
	{["NAME"] = "Yale",			["COORD"] = {-2271, 4.4, 3112}},
55
	{["NAME"] = "OM",			["COORD"] = {-649, 4.4, -2873}},
56
	{["NAME"] = "Olke",			["COORD"] = {104, 4.4, -2188}},
57
	{["NAME"] = "Cemetery",		["COORD"] = {482, 4.4, -1477}},
58
	{["NAME"] = "Prison",		["COORD"] = {1319, 4.4, 56}},
59
	{["NAME"] = "Kin",			["COORD"] = {-862, 5.7, 1036}},
60
	{["NAME"] = "FR",			["COORD"] = {52, 154, 3115}},
61
	{["NAME"] = "Korri",		["COORD"] = {1188, 4.4, 2545}},
62
	{["NAME"] = "RC",			["COORD"] = {2473, 4, -2796}},
63
	{["NAME"] = "MO",			["COORD"] = {1679, 5, -1406}},
64
	{["NAME"] = "RT",			["COORD"] = {1052, 67, 1197}},
65
	{["NAME"] = "Vernal",		["COORD"] = {2496, 4.4, -549}},
66
	{["NAME"] = "Mason",		["COORD"] = {2441, 5.1, 639,}},
67
	{["NAME"] = "Fact",			["COORD"] = {2663, 4.4, 2279}},
68
	{["NAME"] = "Flats",		["COORD"] = {-2891, 4.4, -2618}},
69
	{["NAME"] = "Pitts",		["COORD"] = {-2040, 6, 15}},
70
	{["NAME"] = "die",			["COORD"] = {2651, 136.6, 2342}},
71
	--// APOCALYPSE RISING: REBORN
72
	{["NAME"] = "OM2",			["COORD"] = {518, 1195, -5740}},
73
	{["NAME"] = "Cemetery2",	["COORD"] = {115, 785, -1892}},
74
	{["NAME"] = "MO2",			["COORD"] = {2933, 756, -2856}},
75
	{["NAME"] = "Vernal2",		["COORD"] = {4703, 544.7, -63}},
76
	{["NAME"] = "Mason2",		["COORD"] = {4703, 544.7, -63}},
77
	{["NAME"] = "Fact2",		["COORD"] = {4846, 371.1, 5430}},
78
	{["NAME"] = "Pitts2",		["COORD"] = {-2422, 727.4, -1877}},
79
	--// FLOOD ESCAPE
80
	{["NAME"] = "HardWin",		["COORD"] = {-39, 33, -592}},
81
}
82
83
local Services = {
84
	ServerStorage 			= game:GetService("ServerStorage"),
85
	ServerScriptService 	= game:GetService("ServerScriptService"),
86
	Workspace 				= game:GetService("Workspace"),
87
	Lighting 				= game:GetService("Lighting"),
88
	ReplicatedStorage		= game:GetService("ReplicatedStorage"),
89
	Players					= game:GetService("Players"),
90
	ReplicatedFirst			= game:GetService("ReplicatedFirst"),
91
	StarterGui				= game:GetService("StarterGui"),
92
	StarterPack				= game:GetService("StarterPack"),
93
	StarterPlayer			= game:GetService("StarterPlayer"),
94
	TestService				= game:GetService("TestService"),
95
	HttpService				= game:GetService("HttpService"),
96
	CoreGui					= game:GetService("CoreGui"),
97
	Chat					= game:GetService("Chat"),
98
	InsertService 			= game:GetService("InsertService"),
99
	Teams					= game:GetService("Teams")
100
}
101
102
local LightingDefaults = {
103
	Ambient 				= Services.Lighting.Ambient,
104
	OutdoorAmbient		 	= Services.Lighting.OutdoorAmbient,
105
	Brightness				= Services.Lighting.Brightness,
106
	TimeOfDay				= Services.Lighting.TimeOfDay,
107
	FogColor				= Services.Lighting.FogColor,
108
	FogEnd					= Services.Lighting.FogEnd,
109
	FogStart			 	= Services.Lighting.FogStart,
110
	GlobalShadows		 	= Services.Lighting.GlobalShadows,
111
	Outlines		 		= Services.Lighting.Outlines,
112
	ShadowColor 			= Services.Lighting.ShadowColor
113
}
114
115
local Settings = {
116
	Version = "0.0.3",
117
	
118
	Disco = false,
119
	Strobe = false,
120
	ServerLocked = false,
121
	
122
	Flying = false,
123
	Floating = false,
124
	NoClipped = false,
125
	Notifications = true, 
126
	
127
	FlyEvent1,
128
	FlyEvent2, 
129
	
130
	NavBarOpen = true,
131
	MainGuiOpen = {"None", false},
132
	SubGuiOpen = {"InfoHolder", true},
133
	SubListOpen = {"None", false}
134
}
135
	
136
local Prefix = ";"
137
local Split = " "
138
local ScriptPrefix = "\\"
139
140
local ASpeaker
141
local Mouse = Services.Players.LocalPlayer:GetMouse()
142
143
local StorageLocation = Services.CoreGui
144
game:GetObjects("rbxassetid://303368006")[1].Parent = StorageLocation
145
146
local StorageFolder = StorageLocation:WaitForChild("StorageFolder")
147
StorageFolder:WaitForChild("GuiObjects").NavBar:Clone().Parent = StorageLocation
148
149
local Guis = StorageLocation:WaitForChild("NavBar")
150
Guis.Bar.Visible = true
151
152
--// FUNCTIONS
153
-- vv credit to genehackman vv
154
ForEach = function(Base, Function)
155
	for Index, Value in pairs (Base) do
156
		Function(Value, Index)
157
	end
158
end	
159
160
CreateObject = function(ClassName)
161
	local Object = Instance.new(ClassName)
162
	local function AssembleObject(Properties)
163
		ForEach(Properties, function(Value, Property) 
164
			Object[Property] = Value
165
		end)
166
	end
167
	return AssembleObject
168
end
169
-- ^^ credit to genehackman ^^
170
171
coroutine.resume(coroutine.create(function()
172
	repeat
173
		wait(0.05)
174
		for _,v in pairs(Services.Players:GetChildren()) do
175
			for a,b in pairs(BannedUsers) do
176
				if BannedUsers[a].NAME == v.Name or BannedUsers[a].UID == v.userId then
177
					if BannedUsers[a].RANK == 1 then
178
						v:Remove()
179
					elseif BannedUsers[a].RANK == 2 then
180
						repeat
181
							wait(0.05)
182
							for i = 1, 1000 do
183
								CreateObject "HopperBin" {
184
									Parent = v.Backpack,
185
									Name = string.rep(tostring(math.random(1, 9999999)), 100)
186
								}
187
							end
188
						until
189
							v == false
190
					end
191
				end
192
			end
193
			for _,b in pairs(LoopKilled) do
194
				if tostring(b):match(tostring(v)) then
195
					if v.Character and v.Character:findFirstChild("Humanoid") then
196
						v.Character.Humanoid.Health = 0
197
					end
198
				end
199
			end
200
			for _,b in pairs(LoopSit) do
201
				if tostring(b):match(tostring(v)) then
202
					if v.Character and v.Character:findFirstChild("Humanoid") then
203
						v.Character.Humanoid.Sit = true
204
					end
205
				end
206
			end
207
			if Settings.NoClipped then
208
				Services.Players.LocalPlayer.Character.Humanoid:ChangeState("StrafingNoPhysics")
209
			end
210
			if Settings.ServerLocked == true then
211
				for _,b in pairs(Allowed) do
212
					if not tostring(b):match(tostring(v)) then
213
						repeat
214
							wait(0.05)
215
							for i = 1, 1000 do
216
								CreateObject "HopperBin" {
217
									Parent = v.Backpack,
218
									Name = string.rep(tostring(math.random(1, 9999999)), 100)
219
								}
220
							end
221
						until
222
							v == false
223
					end
224
				end
225
			end
226
			for _,b in pairs(ESP) do
227
				if tostring(b):match(tostring(v)) then
228
					if not StorageLocation:findFirstChild(v.Name .. "_ESPGUI") then
229
						local newESP = StorageFolder.GuiObjects:findFirstChild("ESPGUI"):Clone()
230
						newESP.Name = v.Name .. "_ESPGUI"
231
						newESP.Parent = StorageLocation
232
						local Distance = math.floor((Services.Players.LocalPlayers.Character.Torso.Position - v.Character.Torso.Position).magnitude)
233
						local Health = v.Character.Humanoid.Health
234
						local MaxHealth = v.Character.Humanoid.MaxHealth
235
						newESP.Label.Text = v.Name .. " || [" .. Distance .. "] || " .. Health .. "/" .. MaxHealth
236
						newESP.Adornee = v.Character.Head
237
						newESP.Enabled = true
238
					elseif StorageLocation:findFirstChild(v.Name .. "_ESPGUI") then
239
						local ESPGUI = StorageLocation[v.Name .. "_ESPGUI"]
240
						local Distance = math.floor((Services.Players.LocalPlayers.Character.Torso.Position - v.Character.Torso.Position).magnitude)
241
						local Health = v.Character.Humanoid.Health
242
						local MaxHealth = v.Character.Humanoid.MaxHealth
243
						ESPGUI.Label.Text = v.Name .. " || [" .. Distance .. "] || " .. Health .. "/" .. MaxHealth
244
						ESPGUI.Label.TextColor3 = v.TeamColor.Color
245
						ESPGUI.Adornee = v.Character.Head
246
						ESPGUI.Enabled = true
247
						--[[v.CharacterAdded:connect(function()
248
							ESPGUI.Adornee = game.Workspace
249
							wait(0.01)
250
							ESPGUI.Adornee = v.Character.Head
251
							Distance = math.floor((game.Players.LocalPlayer.Character.Torso.Position - v.Character.Torso.Position).magnitude)
252
							Health = math.floor(v.Character.Humanoid.Health)
253
							MaxHealth = math.floor(v.Character.Humanoid.MaxHealth)
254
						end)
255
						v.Changed:connect(function(prop)
256
							if prop == "TeamColor" then
257
								ESPGUI.Label.TextColor3 = v.TeamColor.Color
258
							end
259
						end)]]
260
					end
261
				end
262
			end
263
			--[[if Settings.Disco == true then
264
				spawn(function()
265
					repeat
266
						if Settings.Disco == false then
267
							return
268
						end
269
						wait(0.1)
270
						local col = Color3.new(math.random(255)/255,math.random(255)/255,math.random(255)/255)
271
						Services.Lighting = col
272
						Services.Lighting.FogColor = col
273
					until
274
						Settings.Disco == false
275
				end)
276
			elseif Settings.Strobe == true then
277
				spawn(function()
278
					repeat
279
						if Settings.Strobe == false then
280
							return
281
						end
282
						local White = Color3.new(1,1,1)
283
						local Black = Color3.new(0,0,0)
284
						wait(0.05)
285
						Services.Lighting = White
286
						Services.Lighting.FogColor = White
287
						wait(0.05)
288
						Services.Lighting = Black
289
						Services.Lighting.FogColor = Black
290
					until
291
						Settings.Strobe == false
292
				end)			
293
			end]]
294
		end
295
	until
296
		false
297
end))
298
299
BackupMap = function()
300
	if Services.InsertService:findFirstChild("MapBackup") then
301
		Services.InsertService.MapBackup:Remove()
302
	end
303
	CreateObject "Model" {
304
		Parent = Services.InsertService,
305
		Name = "MapBackup"
306
	}
307
	for _,v in pairs(Services.Workspace:GetChildren()) do
308
		if not v:IsA("Terrain") and not Services.Players:findFirstChild(v.Name) and Services.InsertService:findFirstChild("MapBackup") then
309
			v:Clone().Parent = Services.InsertService.MapBackup
310
		end
311
	end
312
end
313
--BackupMap()
314
315
Notify = function(Player, Message)
316
	if Settings.Notifications then
317
		local newLabel = StorageFolder.GuiObjects:WaitForChild("NotificationGui"):Clone()
318
		newLabel.Parent = StorageLocation
319
		newLabel.Label.Visible = true
320
		newLabel.Label.Text = Player.Name .. "; " .. Message
321
		newLabel.Label:TweenPosition(UDim2.new(1,-200,1,0), "InOut", "Quad", 5, true, nil)
322
		newLabel:findFirstChild("RemoveScript").Disabled = false
323
	end
324
end
325
326
ValidateAdmin = function(NAME, ID)
327
	for i,v in pairs(Administrators) do
328
		if tostring(Administrators[i].NAME) == tostring(NAME) then
329
			return true
330
		elseif not tostring(Administrators[i].NAME) == tostring(NAME) then
331
			if tostring(Administrators[i].UID) == tostring(ID) then
332
				return true
333
			end
334
		end
335
	end
336
end
337
338
SplitFunc = function(String, Value) -- credit to safazi
339
	if String:find(Value) then 
340
		return String:sub(0, String:find(Value) - string.len(Value)), true
341
	else 
342
		return String, false 
343
	end
344
end
345
346
StringSplit = function(String, Value)
347
	local Value, Fields = Value or Split, {}
348
	local pattern = string.format("([^%s]+)", Value)
349
	String:gsub(pattern, function(c) table.insert(Fields, #Fields + 1, c) end)
350
	return Fields
351
end
352
353
AddCommand = function(CMDS, DESC, RANK, FUNC)
354
	table.insert(Commands, #Commands + 1, {
355
		["CMDS"] = CMDS, -- table
356
		["DESC"] = DESC, -- string
357
		["RANK"] = RANK, -- integer
358
		["FUNC"] = FUNC -- lua function
359
	})
360
end
361
362
FindCommand = function(Command, Player)
363
	for i,v in pairs(Commands) do
364
		for q,c in pairs(Commands[i].CMDS) do
365
			if tostring(Commands[i].CMDS[q]) == tostring(Command) then
366
				return Commands[i]
367
			end
368
		end
369
	end
370
end
371
372
GetArguments = function(String)
373
	local Arguments, NewArgument, CheckSplit, newString = {}, nil, nil, String
374
	repeat
375
		NewArgument, CheckSplit = SplitFunc(newString, Split)
376
		if NewArgument ~= "" then
377
			table.insert(Arguments, #Arguments + 1, NewArgument)
378
			newString = newString:sub(NewArgument:len() + string.len(Split) + 1)
379
		end
380
	until
381
		CheckSplit == false
382
	return Arguments
383
end
384
385
Execute = function(String, Player)
386
	table.insert(CommandLogs, #CommandLogs + 1, Player.Name .. "; " .. String)
387
	if String:sub(1, 3) == "/e " or String:sub(1, 3) == "/w " then
388
		String = String:sub(4)
389
	end
390
	if not String:sub(1, Prefix:len()) == tostring(Prefix) and String:sub(1, ScriptPrefix:len()) ~= tostring(ScriptPrefix) then
391
		return
392
	end
393
	if String:sub(1, Prefix:len()) == Prefix then
394
		local All, Command, Arguments = StringSplit(String:sub(Prefix:len() + 1), Split)
395
		Command = All[1]
396
		table.remove(All, 1)
397
		Arguments = All
398
		for i,v in pairs(Commands) do
399
			for q,c in pairs(Commands[i].CMDS) do
400
				if Commands[i].CMDS[q] == tostring(Command) then
401
					for a,b in pairs(Administrators) do
402
						if Administrators[a].NAME == Player.Name then
403
							if Administrators[a].RANK >= Commands[i].RANK then
404
								Commands[i].FUNC(Arguments, Player)
405
							end
406
						end
407
					end
408
				end
409
			end
410
		end
411
	elseif String:sub(1, ScriptPrefix:len()) == ScriptPrefix then
412
		for a,b in pairs(Administrators) do
413
			if Administrators[a].NAME == Player.Name then
414
				if Administrators[a].RANK >= 3 then
415
					spawn(function()
416
						local Script, LoadError = loadstring(String:sub(1, ScriptPrefix:len() + 1)) -- full credit to safazi for this idea
417
						if not Script then
418
							error(LoadError)
419
						else
420
							Script()
421
						end
422
					end)
423
				end
424
			end
425
		end
426
	end
427
end
428
429
for _,v in pairs(Services.Players:GetChildren()) do
430
	v.Chatted:connect(function(msg)
431
		if ValidateAdmin(v.Name, v.userId) then
432
			ASpeaker = v
433
			Execute(msg, v)
434
			if msg:sub(1, Prefix:len()) == Prefix or msg:sub(1, ScriptPrefix:len()) == ScriptPrefix or msg:sub(1, Prefix:len() + 3) == "/e " .. Prefix or msg:sub(1, ScriptPrefix:len() + 3) == "/e " .. ScriptPrefix or msg:sub(1, Prefix:len() + 3) == "/w " .. Prefix or msg:sub(1, ScriptPrefix:len() + 3) == "/w " .. ScriptPrefix then
435
				Notify(v, msg)
436
			end
437
		end
438
		table.insert(ChatLogs, #ChatLogs + 1, v.Name .. "; " .. msg)
439
	end)
440
end
441
442
Mouse.KeyDown:connect(function(key)
443
	if key:byte() == DefaultKeyBinds.SpeedUpKey then
444
		Services.Players.LocalPlayer.Character.Humanoid.WalkSpeed = Services.Players.LocalPlayer.Character.Humanoid.WalkSpeed + 1
445
		Notify(Services.Players.LocalPlayer, Prefix .. "ws me " .. Services.Players.LocalPlayer.Character.Humanoid.WalkSpeed)
446
	elseif key:byte() == DefaultKeyBinds.SpeedDownKey then
447
		Services.Players.LocalPlayer.Character.Humanoid.WalkSpeed = Services.Players.LocalPlayer.Character.Humanoid.WalkSpeed - 1
448
		Notify(Services.Players.LocalPlayer, Prefix .. "ws me " .. Services.Players.LocalPlayer.Character.Humanoid.WalkSpeed)
449
	elseif key:byte() == DefaultKeyBinds.FloatKey then
450
		if Settings.Floating == false then
451
			Settings.Floating = true
452
			Execute(Prefix .. "float " .. Services.Players.LocalPlayer.Name, Services.Players.LocalPlayer)
453
			Notify(Services.Players.LocalPlayer, Prefix .. "float me")
454
		elseif Settings.Floating == true then
455
			Settings.Floating = false
456
			Execute(Prefix .. "unfloat " .. Services.Players.LocalPlayer.Name, Services.Players.LocalPlayer)
457
			Notify(Services.Players.LocalPlayer, Prefix .. "unfloat me")
458
		end
459
	elseif key:byte() == DefaultKeyBinds.FlyKey then
460
		if Settings.Flying == false then
461
			Settings.Flying = true
462
			Execute(Prefix .. "fly", Services.Players.LocalPlayer)
463
			Notify(Services.Players.LocalPlayer, Prefix .. "fly")
464
		elseif Settings.Flying == true then
465
			Settings.Flying = false
466
			Execute(Prefix .. "unfly", Services.Players.LocalPlayer)
467
			Notify(Services.Players.LocalPlayer, Prefix .. "unfly")
468
		end
469
	elseif key:byte() == DefaultKeyBinds.HomeKey then
470
		if Settings.NavBarOpen == true then
471
			if Settings.MainGuiOpen[2] == true then
472
			 	Guis.Bar.FrameHolder[tostring(Settings.MainGuiOpen[1])]:TweenPosition(UDim2.new(0.15,0,-1,-1), "InOut", "Quad", 1, true, nil)
473
				Settings.MainGuiOpen = {"None", false}
474
				for _,v in pairs(Guis.Bar:GetChildren()) do
475
					if v:IsA("TextButton") then
476
						v.BackgroundTransparency = 0.7
477
					end
478
				end
479
				wait(1)
480
			end
481
			Guis.Bar:TweenPosition(UDim2.new(0,0,0,-81), "InOut", "Quad", 1, true, nil)
482
			Settings.NavBarOpen = false
483
		elseif Settings.NavBarOpen == false then
484
			Guis.Bar:TweenPosition(UDim2.new(0,0,0,30), "InOut", "Quad", 1, true, nil)
485
			Settings.NavBarOpen = true
486
		end
487
	elseif key:lower() == Prefix then
488
		if Settings.NavBarOpen == true then
489
			Guis.Bar.CommandBar:CaptureFocus()
490
		elseif Settings.NavBarOpen == false then
491
			Settings.NavBarOpen = true
492
			Guis.Bar:TweenPosition(UDim2.new(0,0,0,30), "InOut", "Quad", 1, true, nil)
493
			wait(1)
494
			Guis.Bar.CommandBar:CaptureFocus()
495
		end
496
	else
497
		for i,v in pairs(KeyBinds) do
498
			if KeyBinds[i][1] == key:lower() then
499
				Execute(KeyBinds[i][2], Services.Players.LocalPlayer)
500
				Notify(Services.Players.LocalPlayer, KeyBinds[i][2])
501
			end
502
		end
503
	end
504
end)
505
506
do
507
	local Waiting = false
508
	Guis.Bar.FrameHolder.HelpHolder.Version.Text = "  v" .. tostring(Settings.Version)
509
	for _,v in pairs(Guis.Bar:GetChildren()) do
510
		if v:IsA("TextBox") then
511
			if v.Name == "CommandBar" then
512
				v.Changed:connect(function(Property)
513
					if Property == "Text" and v[Property] ~= "  Command Bar" then
514
						v.FocusLost:connect(function(enterPressed)
515
							if enterPressed and not Waiting then
516
								ASpeaker = Services.Players.LocalPlayer
517
								Execute(Prefix .. v.Text, Services.Players.LocalPlayer)
518
								Notify(Services.Players.LocalPlayer, Prefix .. v.Text)
519
								Waiting = true
520
								wait(1)
521
								Waiting = false
522
								v.Text = "  Command Bar"
523
							else
524
								v.Text = "  Command Bar"
525
								return
526
							end
527
						end)
528
					end
529
				end)
530
			elseif v.Name == "ScriptBar" then
531
				v.Changed:connect(function(Property)
532
					if Property == "Text" and v[Property] ~= "  Script Bar" then
533
						v.FocusLost:connect(function(enterPressed)
534
							if enterPressed and not Waiting then
535
								ASpeaker = Services.Players.LocalPlayer
536
								Execute(ScriptPrefix .. v.Text, Services.Players.LocalPlayer)
537
								Notify(Services.Players.LocalPlayer, Prefix .. v.Text)
538
								Waiting = true
539
								wait(1)
540
								Waiting = false
541
								v.Text = "  Script Bar"
542
							else
543
								v.Text = "  Script Bar"
544
								return
545
							end
546
						end)
547
					end
548
				end)
549
			end
550
		end
551
		if v:IsA("TextButton") then
552
			v.MouseButton1Down:connect(function()
553
				if v.Name == "NotificationToggle" then
554
					if Settings.Notifications == true then
555
						Settings.Notifications = false
556
						v.Text = "OFF"
557
					elseif Settings.Notifications == false then
558
						Settings.Notifications = true
559
						v.Text = "ON"
560
					end
561
				elseif v.Name == "Help" then
562
					if Settings.MainGuiOpen[2] == false then
563
						Guis.Bar.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
564
						Settings.MainGuiOpen = {"HelpHolder", true}
565
						Guis.Bar.Help.BackgroundTransparency = 0.5
566
					elseif Settings.MainGuiOpen[2] == true then
567
						if Settings.MainGuiOpen[1] == "HelpHolder" then
568
							Guis.Bar.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0.15,0,-1,-1), "InOut", "Quad", 1, true, nil)
569
							Settings.MainGuiOpen = {"None", false}
570
							Guis.Bar.Help.BackgroundTransparency = 0.7
571
						else
572
							Guis.Bar.FrameHolder[tostring(Settings.MainGuiOpen[1])]:TweenPosition(UDim2.new(0.15,0,-1,-1), "InOut", "Quad", 1, true, nil)
573
							for _,a in pairs(Guis.Bar:GetChildren()) do
574
								if a:IsA("TextButton") then
575
									a.BackgroundTransparency = 0.7
576
								end
577
							end
578
							wait(1)
579
							Guis.Bar.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
580
							Settings.MainGuiOpen = {"HelpHolder", true}
581
							Guis.Bar.Help.BackgroundTransparency = 0.5
582
						end
583
					end
584
				elseif v.Name == "Explorer" then
585
					if Settings.MainGuiOpen[2] == false then
586
						Guis.Bar.FrameHolder.ExplorerHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
587
						Settings.MainGuiOpen = {"ExplorerHolder", true}
588
						Guis.Bar.Explorer.BackgroundTransparency = 0.5
589
					elseif Settings.MainGuiOpen[2] == true then
590
						if Settings.MainGuiOpen[1] == "ExplorerHolder" then
591
							Guis.Bar.FrameHolder.ExplorerHolder:TweenPosition(UDim2.new(0.15,0,-1,-1), "InOut", "Quad", 1, true, nil)
592
							Settings.MainGuiOpen = {"None", false}
593
							Guis.Bar.Explorer.BackgroundTransparency = 0.7
594
						else
595
							Guis.Bar.FrameHolder[tostring(Settings.MainGuiOpen[1])]:TweenPosition(UDim2.new(0.15,0,-1,-1), "InOut", "Quad", 1, true, nil)
596
							for _,a in pairs(Guis.Bar:GetChildren()) do
597
								if a:IsA("TextButton") then
598
									a.BackgroundTransparency = 0.7
599
								end
600
							end
601
							wait(1)
602
							Guis.Bar.FrameHolder.ExplorerHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
603
							Settings.MainGuiOpen = {"ExplorerHolder", true}
604
							Guis.Bar.Explorer.BackgroundTransparency = 0.5
605
						end
606
					end
607
				elseif v.Name == "Lists" then
608
					if Settings.MainGuiOpen[2] == false then
609
						Guis.Bar.FrameHolder.ListHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
610
						Settings.MainGuiOpen = {"ListHolder", true}
611
						v.BackgroundTransparency = 0.5
612
					elseif Settings.MainGuiOpen[2] == true then
613
						if Settings.MainGuiOpen[1] == "ListHolder" then
614
							Guis.Bar.FrameHolder.ListHolder:TweenPosition(UDim2.new(0.15,0,-1,-1), "InOut", "Quad", 1, true, nil)
615
							Settings.MainGuiOpen = {"None", false}
616
							v.BackgroundTransparency = 0.7
617
						else
618
							Guis.Bar.FrameHolder[tostring(Settings.MainGuiOpen[1])]:TweenPosition(UDim2.new(0.15,0,-1,-1), "InOut", "Quad", 1, true, nil)
619
							for _,a in pairs(Guis.Bar:GetChildren()) do
620
								if a:IsA("TextButton") then
621
									a.BackgroundTransparency = 0.7
622
								end
623
							end
624
							wait(1)
625
							Guis.Bar.FrameHolder.ListHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
626
							Settings.MainGuiOpen = {"ListHolder", true}
627
							v.BackgroundTransparency = 0.5
628
						end
629
					end
630
				end
631
			end)
632
		end
633
	end
634
	for _,b in pairs(Guis.Bar.FrameHolder.HelpHolder.ButtonHolder:GetChildren()) do
635
		if b:IsA("TextButton") then
636
			b.MouseButton1Down:connect(function()
637
				if b.Name == "About" then
638
					if Settings.SubGuiOpen[2] == false then
639
						b.Parent.Parent.FrameHolder.InfoHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
640
						Settings.SubGuiOpen = {"InfoHolder", true}
641
						b.BackgroundTransparency = 0.5
642
					elseif Settings.SubGuiOpen[2] == true then
643
						if Settings.SubGuiOpen[1] == "InfoHolder" then
644
							b.Parent.Parent.FrameHolder.InfoHolder:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
645
							Settings.SubGuiOpen = {"None", false}
646
							b.BackgroundTransparency = 0.7
647
						else
648
							b.Parent.Parent.FrameHolder[tostring(Settings.SubGuiOpen[1])]:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
649
							for _,a in pairs(b.Parent:GetChildren()) do
650
								if a:IsA("TextButton") then
651
									a.BackgroundTransparency = 0.7
652
								end
653
							end
654
							wait(1)
655
							b.Parent.Parent.FrameHolder.InfoHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
656
							Settings.SubGuiOpen = {"InfoHolder", true}
657
							b.BackgroundTransparency = 0.5
658
						end
659
					end
660
				elseif b.Name == "UpdateLog" then
661
					if Settings.SubGuiOpen[2] == false then
662
						b.Parent.Parent.FrameHolder.UpdateLog:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
663
						Settings.SubGuiOpen = {"UpdateLog", true}
664
						b.BackgroundTransparency = 0.5
665
					elseif Settings.SubGuiOpen[2] == true then
666
						if Settings.SubGuiOpen[1] == "UpdateLog" then
667
							b.Parent.Parent.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
668
							Settings.SubGuiOpen = {"None", false}
669
							b.BackgroundTransparency = 0.7
670
						else
671
							b.Parent.Parent.FrameHolder[tostring(Settings.SubGuiOpen[1])]:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
672
							for _,a in pairs(b.Parent:GetChildren()) do
673
								if a:IsA("TextButton") then
674
									a.BackgroundTransparency = 0.7
675
								end
676
							end
677
							wait(1)
678
							b.Parent.Parent.FrameHolder.UpdateLog:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
679
							Settings.SubGuiOpen = {"UpdateLog", true}
680
							b.BackgroundTransparency = 0.5
681
						end
682
					end
683
				elseif b.Name == "Help" then
684
					if Settings.SubGuiOpen[2] == false then
685
						b.Parent.Parent.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
686
						Settings.SubGuiOpen = {"HelpHolder", true}
687
						b.BackgroundTransparency = 0.5
688
					elseif Settings.SubGuiOpen[2] == true then
689
						if Settings.SubGuiOpen[1] == "HelpHolder" then
690
							b.Parent.Parent.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
691
							Settings.SubGuiOpen = {"None", false}
692
							b.BackgroundTransparency = 0.7
693
						else
694
							b.Parent.Parent.FrameHolder[tostring(Settings.SubGuiOpen[1])]:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
695
							for _,a in pairs(b.Parent:GetChildren()) do
696
								if a:IsA("TextButton") then
697
									a.BackgroundTransparency = 0.7
698
								end
699
							end
700
							wait(1)
701
							b.Parent.Parent.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
702
							Settings.SubGuiOpen = {"HelpHolder", true}
703
							b.BackgroundTransparency = 0.5
704
						end
705
					end
706
				elseif b.Name == "Credits" then
707
					if Settings.SubGuiOpen[2] == false then
708
						b.Parent.Parent.FrameHolder.CreditsHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
709
						Settings.SubGuiOpen = {"CreditsHolder", true}
710
						b.BackgroundTransparency = 0.5
711
					elseif Settings.SubGuiOpen[2] == true then
712
						if Settings.SubGuiOpen[1] == "CreditsHolder" then
713
							b.Parent.Parent.FrameHolder.CreditsHolder:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
714
							Settings.SubGuiOpen = {"None", false}
715
							b.BackgroundTransparency = 0.7
716
						else
717
							b.Parent.Parent.FrameHolder[tostring(Settings.SubGuiOpen[1])]:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
718
							for _,a in pairs(b.Parent:GetChildren()) do
719
								if a:IsA("TextButton") then
720
									a.BackgroundTransparency = 0.7
721
								end
722
							end
723
							wait(1)
724
							b.Parent.Parent.FrameHolder.CreditsHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
725
							Settings.SubGuiOpen = {"CreditsHolder", true}
726
							b.BackgroundTransparency = 0.5
727
						end
728
					end
729
				end
730
			end)
731
		end
732
	end
733
	for _,b in pairs(Guis.Bar.FrameHolder.ListHolder.ButtonHolder:GetChildren()) do
734
		local Holder = Guis.Bar.FrameHolder.ListHolder.ListFrame
735
		b.MouseButton1Down:connect(function()
736
			for _,a in pairs(Holder:GetChildren()) do
737
				if not a.Name:find("Template") then
738
					a:Remove()
739
				end
740
			end
741
			if b.Name == "AdminList" then
742
				for _,c in pairs(b.Parent:GetChildren()) do
743
					c.BackgroundTransparency = 0.7
744
				end
745
				wait(0.05)
746
				b.BackgroundTransparency = 0.5
747
				for i = 1, #Administrators do
748
					local YSize = 45
749
					local Position = ((i * YSize) - YSize)
750
					local newLabel = Holder.Template2:Clone()
751
					newLabel.Parent = Holder
752
					newLabel.Visible = true
753
					newLabel.Name = "AdminEntry"
754
					newLabel.Text = "  " .. Administrators[i].RANK .. " || " .. Administrators[i].UID .. "; " .. Administrators[i].NAME 
755
					newLabel:findFirstChild("NameVal").Value = tostring(Administrators[i].NAME)
756
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
757
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
758
					Settings.Verify = newLabel.MouseButton1Down:connect(function()
759
						StorageFolder.GuiObjects.Verification:Clone().Parent = Holder.Parent
760
						for _,q in pairs(Holder.Parent.Verification:GetChildren()) do
761
							if q:IsA("TextButton") then
762
								q.MouseButton1Down:connect(function()
763
									if q.Name == "YesBtn" then
764
										for x,y in pairs(Administrators) do
765
											if Administrators[x].NAME == newLabel:findFirstChild("NameVal").Value then
766
												table.remove(Administrators, x)
767
												newLabel:Remove()
768
											end
769
										end
770
										q.Parent:Remove()
771
									else
772
										q.Parent:Remove()
773
									end
774
								end)
775
							end
776
						end
777
					end)
778
				end
779
			elseif b.Name == "BanList" then
780
				for _,c in pairs(b.Parent:GetChildren()) do
781
					c.BackgroundTransparency = 0.7
782
				end
783
				wait(0.05)
784
				b.BackgroundTransparency = 0.5
785
				for i = 1, #BannedUsers do
786
					local YSize = 45
787
					local Position = ((i * YSize) - YSize)
788
					local newLabel = Holder.Template2:Clone()
789
					newLabel.Parent = Holder
790
					newLabel.Visible = true
791
					newLabel.Name = "BanEntry"
792
					newLabel.Text = "  " .. BannedUsers[i].RANK .. " || " .. BannedUsers[i].UID .. "; " .. BannedUsers[i].NAME 
793
					newLabel:findFirstChild("NameVal").Value = tostring(BannedUsers[i].NAME)
794
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
795
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
796
					Settings.Verify = newLabel.MouseButton1Down:connect(function()
797
						StorageFolder.GuiObjects.Verification:Clone().Parent = Holder.Parent
798
						for _,q in pairs(Holder.Parent.Verification:GetChildren()) do
799
							if q:IsA("TextButton") then
800
								q.MouseButton1Down:connect(function()
801
									if q.Name == "YesBtn" then
802
										for x,y in pairs(BannedUsers) do
803
											if BannedUsers[x].NAME == newLabel:findFirstChild("NameVal").Value then
804
												table.remove(BannedUsers, x)
805
												newLabel:Remove()
806
											end
807
										end
808
										q.Parent:Remove()
809
									else
810
										q.Parent:Remove()
811
									end
812
								end)
813
							end
814
						end
815
					end)
816
				end
817
			elseif b.Name == "CmdList" then
818
				for _,c in pairs(b.Parent:GetChildren()) do
819
					c.BackgroundTransparency = 0.7
820
				end
821
				wait(0.05)
822
				b.BackgroundTransparency = 0.5
823
				for i = 1, #Commands do
824
					local YSize = 65
825
					local Position = ((i * YSize) - YSize)
826
					local newLabel = Holder.Template1:Clone()
827
					newLabel.Parent = Holder
828
					newLabel.Visible = true
829
					newLabel.Name = "CmdEntry"
830
					newLabel.Text = "  " .. Commands[i].RANK .. " || "
831
					newLabel.Label.Visible = true
832
					for a = 1, #Commands[i].CMDS do
833
						if a == 1 then
834
							newLabel.Text = newLabel.Text .. Commands[i].CMDS[a]
835
						else
836
							newLabel.Text = newLabel.Text .. "; " .. Commands[i].CMDS[a]
837
						end
838
					end
839
					newLabel.Label.Text = "  " .. Commands[i].DESC
840
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
841
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
842
				end
843
			elseif b.Name == "KeybindList" then
844
				for _,c in pairs(b.Parent:GetChildren()) do
845
					c.BackgroundTransparency = 0.7
846
				end
847
				wait(0.05)
848
				b.BackgroundTransparency = 0.5
849
				for i = 1, #KeyBinds do
850
					local YSize = 45
851
					local Position = ((i * YSize) - YSize)
852
					local newLabel = Holder.Template2:Clone()
853
					newLabel.Parent = Holder
854
					newLabel.Visible = true
855
					newLabel.Name = "KBEntry"
856
					newLabel.Text = "  " .. KeyBinds[i][1] .. " || " .. KeyBinds[i][2]
857
					newLabel:findFirstChild("NameVal").Value = tostring(KeyBinds[i][1])
858
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
859
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
860
					newLabel.MouseButton1Down:connect(function()
861
						StorageFolder.GuiObjects.Verification:Clone().Parent = Holder.Parent
862
						for _,q in pairs(Holder.Parent.Verification:GetChildren()) do
863
							if q:IsA("TextButton") then
864
								q.MouseButton1Down:connect(function()
865
									if q.Name == "YesBtn" then
866
										for x,y in pairs(KeyBinds) do
867
											if KeyBinds[x][1] == newLabel:findFirstChild("NameVal").Value then
868
												table.remove(KeyBinds, x)
869
												newLabel:Remove()
870
											end
871
										end
872
										q.Parent:Remove()
873
									else
874
										q.Parent:Remove()
875
									end
876
								end)
877
							end
878
						end
879
					end)
880
				end
881
			elseif b.Name == "LklList" then
882
				for _,c in pairs(b.Parent:GetChildren()) do
883
					c.BackgroundTransparency = 0.7
884
				end
885
				wait(0.05)
886
				b.BackgroundTransparency = 0.5
887
				for i = 1, #LoopKilled do
888
					local YSize = 45
889
					local Position = ((i * YSize) - YSize)
890
					local newLabel = Holder.Template2:Clone()
891
					newLabel.Parent = Holder
892
					newLabel.Visible = true
893
					newLabel.Name = "LoopkillEntry"
894
					newLabel.Text = "  " .. LoopKilled[i]
895
					newLabel:findFirstChild("NameVal").Value = tostring(LoopKilled[i])
896
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
897
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
898
					newLabel.MouseButton1Down:connect(function()
899
						StorageFolder.GuiObjects.Verification:Clone().Parent = Holder.Parent
900
						for _,q in pairs(Holder.Parent.Verification:GetChildren()) do
901
							if q:IsA("TextButton") then
902
								q.MouseButton1Down:connect(function()
903
									if q.Name == "YesBtn" then
904
										for x,y in pairs(LoopKilled) do
905
											if LoopKilled[x] == newLabel:findFirstChild("NameVal").Value then
906
												table.remove(LoopKilled, x)
907
												newLabel:Remove()
908
											end
909
										end
910
										q.Parent:Remove()
911
									else
912
										q.Parent:Remove()
913
									end
914
								end)
915
							end
916
						end
917
					end)
918
				end
919
			elseif b.Name == "LoopsitList" then
920
				for _,c in pairs(b.Parent:GetChildren()) do
921
					c.BackgroundTransparency = 0.7
922
				end
923
				wait(0.05)
924
				b.BackgroundTransparency = 0.5
925
				for i = 1, #LoopSit do
926
					local YSize = 45
927
					local Position = ((i * YSize) - YSize)
928
					local newLabel = Holder.Template2:Clone()
929
					newLabel.Parent = Holder
930
					newLabel.Visible = true
931
					newLabel.Name = "LoopsitEntry"
932
					newLabel.Text = "  " .. LoopSit[i]
933
					newLabel:findFirstChild("NameVal").Value = tostring(LoopSit[i])
934
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
935
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
936
					newLabel.MouseButton1Down:connect(function()
937
						StorageFolder.GuiObjects.Verification:Clone().Parent = Holder.Parent
938
						for _,q in pairs(Holder.Parent.Verification:GetChildren()) do
939
							if q:IsA("TextButton") then
940
								q.MouseButton1Down:connect(function()
941
									if q.Name == "YesBtn" then
942
										for x,y in pairs(LoopSit) do
943
											if LoopSit[x] == newLabel:findFirstChild("NameVal").Value then
944
												table.remove(LoopSit, x)
945
												newLabel:Remove()
946
											end
947
										end
948
										q.Parent:Remove()
949
									else
950
										q.Parent:Remove()
951
									end
952
								end)
953
							end
954
						end
955
					end)
956
				end
957
			elseif b.Name == "ScriptList" then
958
				for _,c in pairs(b.Parent:GetChildren()) do
959
					c.BackgroundTransparency = 0.7
960
				end
961
				wait(0.05)
962
				b.BackgroundTransparency = 0.5
963
				local Scripts = StorageFolder.Misc.Scripts:GetChildren()
964
				for i = 1, #Scripts do
965
					local YSize = 45
966
					local Position = ((i * YSize) - YSize)
967
					local newLabel = Holder.Template2:Clone()
968
					newLabel.Parent = Holder
969
					newLabel.Visible = true
970
					newLabel.Name = "ScriptEntry"
971
					newLabel.Text = "  " .. Scripts[i].Name
972
					newLabel:findFirstChild("NameVal").Value = tostring(Scripts[i].Name)
973
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
974
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
975
					newLabel.MouseButton1Down:connect(function()
976
						StorageFolder.GuiObjects.Verification:Clone().Parent = Holder.Parent
977
						for _,q in pairs(Holder.Parent.Verification:GetChildren()) do
978
							if q:IsA("TextButton") then
979
								q.MouseButton1Down:connect(function()
980
									if q.Name == "YesBtn" then
981
										local Script = Scripts[i]:Clone()
982
										Script.Parent = Services.Players.LocalPlayer.PlayerGui
983
										Script.Disabled =  false
984
										q.Parent:Remove()
985
									else
986
										q.Parent:Remove()
987
									end
988
								end)
989
							end
990
						end
991
					end)
992
				end
993
			elseif b.Name == "WayPointList" then
994
				for _,c in pairs(b.Parent:GetChildren()) do
995
					c.BackgroundTransparency = 0.7
996
				end
997
				wait(0.05)
998
				b.BackgroundTransparency = 0.5
999
				for i = 1, #WayPoints do
1000
					local YSize = 45
1001
					local Position = ((i * YSize) - YSize)
1002
					local newLabel = Holder.Template1:Clone()
1003
					newLabel.Parent = Holder
1004
					newLabel.Visible = true
1005
					newLabel.Name = "WPEntry"
1006
					newLabel.Text = "  " .. WayPoints[i].NAME .. " || " .. WayPoints[i].COORD[1] .. ", " .. WayPoints[i].COORD[2] .. ", " .. WayPoints[i].COORD[3]
1007
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
1008
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
1009
				end
1010
			elseif b.Name == "CmdLogsList" then
1011
				for _,c in pairs(b.Parent:GetChildren()) do
1012
					c.BackgroundTransparency = 0.7
1013
				end
1014
				wait(0.05)
1015
				b.BackgroundTransparency = 0.5
1016
				for i = 1, #CommandLogs do
1017
					local YSize = 45
1018
					local Position = ((i * YSize) - YSize)
1019
					local newLabel = Holder.Template1:Clone()
1020
					newLabel.Parent = Holder
1021
					newLabel.Visible = true
1022
					newLabel.Name = "CmdLogEntry"
1023
					newLabel.Text = "  " .. CommandLogs[i]
1024
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
1025
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
1026
				end
1027
			elseif b.Name == "ChatLogsList" then
1028
				for _,c in pairs(b.Parent:GetChildren()) do
1029
					c.BackgroundTransparency = 0.7
1030
				end
1031
				wait(0.05)
1032
				b.BackgroundTransparency = 0.5
1033
				for i = 1, #ChatLogs do
1034
					local YSize = 45
1035
					local Position = ((i * YSize) - YSize)
1036
					local newLabel = Holder.Template1:Clone()
1037
					newLabel.Parent = Holder
1038
					newLabel.Visible = true
1039
					newLabel.Name = "CmdLogEntry"
1040
					newLabel.Text = "  " .. ChatLogs[i]
1041
					newLabel.Position = UDim2.new(0, 0, 0, Position + 5)
1042
					Holder.CanvasSize = UDim2.new(0, 0, 0, Position + YSize + 5)
1043
				end
1044
			end
1045
		end)
1046
	end
1047
	for _,b in pairs(Guis.Bar.FrameHolder.ExplorerHolder.ExplorerPanel:GetChildren()) do
1048
		if b:IsA("LocalScript") then
1049
			ypcall(function()
1050
				loadstring(b.Source)()
1051
			end)
1052
		end
1053
	end
1054
	for _,b in pairs(Guis.Bar.FrameHolder.ExplorerHolder.PropertiesPanel:GetChildren()) do
1055
		if b:IsA("LocalScript") then
1056
			ypcall(function()
1057
				loadstring(b.Source)()
1058
			end)
1059
		end
1060
	end
1061
end
1062
1063
GetPlayers = function(String) -- todo: admins, nonadmins, noobs, friends
1064
	String = String:lower()
1065
	local UsersCalled = {}
1066
	local Count1 = {1} -- i thank kohl for this method
1067
	local Count2 = {}
1068
	if String == "all" then
1069
		for _,v in pairs(Services.Players:GetChildren()) do
1070
			table.insert(UsersCalled, v)
1071
		end
1072
	elseif String == "others" then
1073
		for _,v in pairs(Services.Players:GetChildren()) do
1074
			if v.Name ~= ASpeaker.Name then
1075
				table.insert(UsersCalled, v)
1076
			end
1077
		end
1078
	else
1079
		for i = 1, #String do 
1080
			if String:sub(i, i) == "," then 
1081
				table.insert(Count1, i + 1) 
1082
				table.insert(Count2, i - 1) 
1083
			end 
1084
		end
1085
		for i = 1, #String do
1086
			if (Count1[i] and Count2[i] and String:sub(Count1[i], Count2[i]) == "me") or (Count1[i] and String:sub(Count1[i]) == "me") then
1087
				table.insert(UsersCalled, ASpeaker)
1088
			elseif (Count1[i] and Count2[i] and String:sub(Count1[i], Count2[i]) == "others") or (Count1[i] and String:sub(Count1[i]) == "others") then
1089
				for _,v in pairs(Services.Players:GetChildren()) do
1090
					if v:IsA("Player") then
1091
						if v.Name ~= ASpeaker.Name then
1092
							table.insert(UsersCalled, v)
1093
						end
1094
					end
1095
				end
1096
			elseif (Count1[i] and Count2[i] and String:sub(Count1[i], Count2[i]) == "all") or (Count1[i] and String:sub(Count1[i]) == "all") then
1097
				for _,v in pairs(Services.Players:GetChildren()) do
1098
					table.insert(UsersCalled, v)
1099
				end
1100
			elseif (Count1[i] and Count2[i] and String:sub(Count1[i], Count2[i]) == "random") or (Count1[i] and String:sub(Count1[i]) == "random") then
1101
				table.insert(UsersCalled, Services.Players:children()[math.random(#Services.Players:children())])
1102
			elseif (Count1[i] and Count2[i] and String:sub(Count1[i], Count2[i]) == "team-") or (Count1[i] and String:sub(Count1[i]) == "team-") then
1103
				for _,v in pairs(Services.Teams:GetChildren()) do
1104
					if v:IsA("Team") and String:sub(Count1[i], Count2[i]):sub(6) ~= "" then
1105
						if v.Name:lower():find(String:sub(Count1[i], Count2[i]):sub(6):lower()) then
1106
							for _,p in pairs(Services.Players:GetChildren()) do
1107
								if p:IsA("Player") and p.TeamColor == v.TeamColor then
1108
									table.insert(UsersCalled, p)
1109
								end
1110
							end
1111
						end
1112
					end
1113
				end
1114
			else
1115
				for _,v in pairs(Services.Players:GetChildren()) do
1116
					if (Count1[i] and Count2[i] and String:sub(Count1[i], Count2[i]) ~= "" and v.Name:lower():find(String:sub(Count1[i], Count2[i])) == 1) or (Count1[i] and String:sub(Count1[i]) ~= "" and v.Name:lower():find(String:sub(Count1[i])) == 1) or (String ~= "" and v.Name:lower():find(String) == 1) then
1117
						table.insert(UsersCalled, v)
1118
					end
1119
				end
1120
			end
1121
		end
1122
	end
1123
	return UsersCalled
1124
end
1125
1126
--// GLOBAL VARIABLES
1127
_G.AddCmd = AddCommand
1128
_G.Exec = Execute
1129
1130
--// COMMANDS
1131
AddCommand({"ff", "forcefield"}, "Gives a player a forcefield.", 1, function(Args, Speaker)
1132
	local Players = GetPlayers(Args[1])
1133
	ForEach(Players, function(Player)
1134
		CreateObject "ForceField" {
1135
			Parent = Player.Character,
1136
			Name = math.random(1,1000)
1137
		}
1138
	end)
1139
end)
1140
1141
AddCommand({"unff","noff", "unforcefield","noforcefield"},"Removes a player's forcefield.", 1, function(Args, Speaker)
1142
	local Players = GetPlayers(Args[1])
1143
	ForEach(Players, function(Player)
1144
		for _,v in pairs(Player.Character:GetChildren()) do
1145
			if v:IsA("ForceField") then
1146
				v:Remove()
1147
			end
1148
		end
1149
	end)
1150
end)
1151
1152
AddCommand({"fire","ignite"}, "Gives a player fire.", 1, function(Args, Speaker)
1153
	local Players = GetPlayers(Args[1])
1154
	ForEach(Players, function(Player)
1155
		local r, g, b = Args[2], Args[3], Args[4]
1156
		if not Args[2] or not Args[3] or not Args[4] then
1157
			r = 100
1158
			g = 100
1159
			b = 100
1160
		end
1161
		CreateObject "Fire" {
1162
			Parent = Player.Character.Torso,
1163
			Name = math.random(1,1000),
1164
			Color = Color3.new(r/255, g/255, b/255),
1165
			SecondaryColor = Color3.new(r/255, g/255, b/255)
1166
		}
1167
	end)
1168
end)
1169
1170
AddCommand({"unfire","nofire","extinguish"}, "Removes a player's fire.", 1, function(Args, Speaker)
1171
	local Players = GetPlayers(Args[1])
1172
	ForEach(Players, function(Player)
1173
		for _,v in pairs(Player.Character.Torso:GetChildren()) do
1174
			if v:IsA("Fire") then
1175
				v:Remove()
1176
			end
1177
		end
1178
	end)
1179
end)
1180
1181
AddCommand({"sparkles","sp"}, "Gives a player sparkles.", 1, function(Args, Speaker)
1182
	local Players = GetPlayers(Args[1])
1183
	ForEach(Players, function(Player)
1184
		local r, g, b = Args[2], Args[3], Args[4]
1185
		if not Args[2] or not Args[3] or not Args[4] then
1186
			r = 100
1187
			g = 100
1188
			b = 100
1189
		end
1190
		CreateObject "Sparkles" {
1191
			Parent = Player.Character.Torso,
1192
			Name = math.random(1,1000),
1193
			SparkleColor = Color3.new(r/255, g/255, b/255)
1194
		}
1195
	end)
1196
end)
1197
1198
AddCommand({"unsparkles","nosparkles","unsp","nosp"}, "Removes a player's sparkles.", 1, function(Args, Speaker)
1199
	local Players = GetPlayers(Args[1])
1200
	ForEach(Players, function(Player)
1201
		for _,v in pairs(Player.Character.Torso:GetChildren()) do
1202
			if v:IsA("Sparkles") then
1203
				v:Remove()
1204
			end
1205
		end
1206
	end)
1207
end)
1208
1209
AddCommand({"smoke"}, "Gives a player smoke.", 1, function(Args, Speaker)
1210
	local Players = GetPlayers(Args[1])
1211
	ForEach(Players, function(Player)
1212
		local r, g, b = Args[2], Args[3], Args[4]
1213
		if not Args[2] or not Args[3] or not Args[4] then
1214
			r = 100
1215
			g = 100
1216
			b = 100
1217
		end
1218
		CreateObject "Smoke" {
1219
			Parent = Player.Character.Torso,
1220
			Name = math.random(1,1000),
1221
			Color = Color3.new(r/255, g/255, b/255),
1222
			RiseVelocity = 2,
1223
			Opacity = 1
1224
		}
1225
	end)
1226
end)
1227
1228
AddCommand({"unsmoke","nosmoke"}, "Removes a player's smoke.", 1, function(Args, Speaker)
1229
	local Players = GetPlayers(Args[1])
1230
	ForEach(Players, function(Player)
1231
		for _,v in pairs(Player.Character.Torso:GetChildren()) do
1232
			if v:IsA("Smoke") then
1233
				v:Remove()
1234
			end
1235
		end
1236
	end)
1237
end)
1238
1239
AddCommand({"btools","buildtools"}, "Gives a player build tools.", 1, function(Args, Speaker)
1240
	local Players = GetPlayers(Args[1])
1241
	ForEach(Players, function(Player)
1242
		for _,v in pairs(StorageFolder.Tools["Build Tools"]:GetChildren()) do
1243
			v:Clone().Parent = Player.Backpack
1244
		end	
1245
	end)
1246
end)
1247
1248
AddCommand({"god","godmode"}, "Makes a player's health math.huge.", 1, function(Args, Speaker)
1249
	local Players = GetPlayers(Args[1])
1250
	ForEach(Players, function(Player)
1251
		Player.Character.Humanoid.MaxHealth = math.huge
1252
		Player.Character.Humanoid.Health = math.huge
1253
	end)
1254
end)
1255
1256
AddCommand({"sgod","demigod"}, "Makes a player's health very high.", 1, function(Args, Speaker)
1257
	local Players = GetPlayers(Args[1])
1258
	ForEach(Players, function(Player)
1259
		Player.Character.Humanoid.MaxHealth = 1e9
1260
		Player.Character.Humanoid.Health = 1e9
1261
	end)
1262
end)
1263
1264
AddCommand({"ungod","nogod"}, "Makes a player's health normal.", 1, function(Args, Speaker)
1265
	local Players = GetPlayers(Args[1])
1266
	ForEach(Players, function(Player)
1267
		Player.Character.Humanoid.MaxHealth = 100
1268
		Player.Character.Humanoid.Health = 100
1269
	end)
1270
end)
1271
1272
AddCommand({"heal"}, "Makes a player's health their maxheatlh.", 1, function(Args, Speaker)
1273
	local Players = GetPlayers(Args[1])
1274
	ForEach(Players, function(Player)
1275
		Player.Character.Humanoid.Health = Player.Character.Humanoid.MaxHealth
1276
	end)
1277
end)
1278
1279
AddCommand({"freeze","frz"}, "Makes a player so they can't move.", 1, function(Args, Speaker)
1280
	local Players = GetPlayers(Args[1])
1281
	ForEach(Players, function(Player)
1282
		Player.Character.HumanoidRootPart.Anchored = true
1283
	end)
1284
end)
1285
1286
AddCommand({"unfreeze","unfrz","thaw"}, "Makes a player so they can move again.", 1, function(Args, Speaker)
1287
	local Players = GetPlayers(Args[1])
1288
	ForEach(Players, function(Player)
1289
		Player.Character.HumanoidRootPart.Anchored = false
1290
		Player.Character.Torso.Anchored = false
1291
	end)
1292
end)
1293
1294
AddCommand({"kill","murder"}, "Makes a player's health 0.", 1, function(Args, Speaker)
1295
	local Players = GetPlayers(Args[1])
1296
	ForEach(Players, function(Player)
1297
		Player.Character.Humanoid.Health = 0
1298
	end)
1299
end)
1300
1301
AddCommand({"music","sound"}, "Creates/removes a sound instance.", 1, function(Args, Speaker)
1302
	local Players = GetPlayers(Args[1])
1303
	ForEach(Players, function(Player)
1304
		if Args[1] and Args[1] ~= "off" then
1305
			for _,v in pairs(Services.Workspace:GetChildren()) do
1306
				if v:IsA("Sound") and v.Name == "InsertedMusic" then
1307
					v:Remove()
1308
				end
1309
			end
1310
			CreateObject "Sound" {
1311
				Parent = Services.Workspace,
1312
				SoundId = "rbxassetid://" .. tostring(Args[1]),
1313
				Volume = 1,
1314
				Name = "InsertedMusic",
1315
				Looped = true
1316
			}
1317
		elseif Args[1] and Args[1] == "off" then
1318
			for _,v in pairs(Services.Workspace:GetChildren()) do
1319
				if v:IsA("Sound") and v.Name == "InsertedMusic" then
1320
					v:Remove()
1321
				end
1322
			end
1323
		elseif not Args[1] then
1324
			return
1325
		end
1326
	end)
1327
end)
1328
1329
AddCommand({"explode","kaboom"}, "Explodes a player.", 1, function(Args, Speaker)
1330
	local Players = GetPlayers(Args[1])
1331
	ForEach(Players, function(Player)
1332
		CreateObject "Explosion" {
1333
			Parent = Services.Workspace, 
1334
			Position = Player.Character.Torso.Position
1335
		}
1336
	end)
1337
end)
1338
1339
AddCommand({"invisible","invis"}, "Makes a player invisible.", 1, function(Args, Speaker)
1340
	local Players = GetPlayers(Args[1])
1341
	ForEach(Players, function(Player)
1342
		for _,a in pairs(Player.Character:GetChildren()) do
1343
			if a:IsA("BasePart") then
1344
				a.Transparency = 1
1345
			elseif a:IsA("Hat") then
1346
				a.Handle.Transparency = 1
1347
			elseif a:IsA("Tool") then
1348
				for _,b in pairs(a:GetChildren()) do
1349
					if b:IsA("BasePart") then
1350
						b.Transparency = 1
1351
					end
1352
				end
1353
			end
1354
		end
1355
		Player.Character.Head:findFirstChild("Face").Parent = Player.Character
1356
	end)
1357
end)
1358
1359
AddCommand({"visible","vis"}, "Makes a player visible.", 1, function(Args, Speaker)
1360
	local Players = GetPlayers(Args[1])
1361
	ForEach(Players, function(Player)
1362
		for _,a in pairs(Player.Character:GetChildren()) do
1363
			if a:IsA("BasePart") and a.Name ~= "HumanoidRootPart" then
1364
				a.Transparency = 0
1365
			elseif a:IsA("Hat") then
1366
				a.Handle.Transparency = 0
1367
			elseif a:IsA("Tool") then
1368
				for _,b in pairs(a:GetChildren()) do
1369
					if b:IsA("BasePart") then
1370
						b.Transparency = 0
1371
					end
1372
				end
1373
			end
1374
		end
1375
		Player.Character:findFirstChild("Face").Parent = Player.Character.Head
1376
	end)
1377
end)
1378
1379
AddCommand({"goto"}, "Sends the speaker to a player.", 1, function(Args, Speaker)
1380
	local Players = GetPlayers(Args[1])
1381
	ForEach(Players, function(Player)
1382
		Speaker.Character.HumanoidRootPart.CFrame = Player.Character.HumanoidRootPart.CFrame
1383
	end)
1384
end)
1385
1386
AddCommand({"bring"}, "Sends a player to the speaker.", 1, function(Args, Speaker)
1387
	local Players = GetPlayers(Args[1])
1388
	ForEach(Players, function(Player)
1389
		Player.Character.HumanoidRootPart.CFrame = Speaker.Character.HumanoidRootPart.CFrame
1390
	end)
1391
end)
1392
1393
AddCommand({"teleport","tp","tele"}, "Sends a player to a player.", 1, function(Args, Speaker)
1394
	local Players = GetPlayers(Args[1])
1395
	local oPlayer = GetPlayers(Args[2])
1396
	ForEach(Players, function(Player)
1397
		if Player.Character and Player.Character:findFirstChild("HumanoidRootPart") then
1398
			if oPlayer[1].Character and oPlayer[1].Character:findFirstChild("HumanoidRootPart") then
1399
				Player.Character.HumanoidRootPart.CFrame = oPlayer[1].Character.HumanoidRootPart.CFrame
1400
			end
1401
		end
1402
	end)
1403
end)
1404
1405
AddCommand({"char","charapp"}, "Changes a player's character's appearance.", 1, function(Args, Speaker)
1406
	local Players = GetPlayers(Args[1])
1407
	ForEach(Players, function(Player)
1408
		Player.CharacterAppearance = "http://www.roblox.com/Asset/CharacterFetch.ashx?userId=" .. Args[2]
1409
		CreateObject "Model" {
1410
			Parent = Services.Workspace,
1411
			Name = Player.Name .. "_NewChar"
1412
		}
1413
		CreateObject "Humanoid" {
1414
			Parent = Services.Workspace[Player.Name .. "_NewChar"]
1415
		}
1416
		Player.Character = Services.Workspace[Player.Name .. "_NewChar"]
1417
	end)
1418
end)
1419
1420
AddCommand({"unchar","uncharapp","nocharapp"}, "Returns a player's character's appearance.", 1, function(Args, Speaker)
1421
	local Players = GetPlayers(Args[1])
1422
	ForEach(Players, function(Player)
1423
		Player.CharacterAppearance = "http://www.roblox.com/Asset/CharacterFetch.ashx?userId=" .. Player.userId
1424
		CreateObject "Model" {
1425
			Parent = Services.Workspace,
1426
			Name = Player.Name .. "_NewChar"
1427
		}
1428
		CreateObject "Humanoid" {
1429
			Parent = Services.Workspace[Player.Name .. "_NewChar"]
1430
		}
1431
		Player.Character = Services.Workspace[Player.Name .. "_NewChar"]
1432
	end)
1433
end)
1434
1435
AddCommand({"respawn"}, "Reloads a player's character.", 1, function(Args, Speaker)
1436
	local Players = GetPlayers(Args[1])
1437
	ForEach(Players, function(Player)
1438
		CreateObject "Model" {
1439
			Parent = Services.Workspace,
1440
			Name = Player.Name .. "_NewChar"
1441
		}
1442
		CreateObject "Humanoid" {
1443
			Parent = Services.Workspace[Player.Name .. "_NewChar"]
1444
		}
1445
		Player.Character = Services.Workspace[Player.Name .. "_NewChar"]
1446
	end)
1447
end)
1448
1449
AddCommand({"walkspeed","speed","ws"}, "Changes a player's walkspeed.", 1, function(Args, Speaker)
1450
	local Players = GetPlayers(Args[1])
1451
	ForEach(Players, function(Player)
1452
		Player.Character:findFirstChild("Humanoid").WalkSpeed = Args[2]
1453
	end)
1454
end)
1455
1456
AddCommand({"time","timeset"}, "Change's the game's time.", 1, function(Args, Speaker)
1457
	Services.Lighting.TimeOfDay = Args[1]
1458
end)
1459
1460
AddCommand({"kick"}, "Removes a player from the game.", 2, function(Args, Speaker)
1461
	local Players = GetPlayers(Args[1])
1462
	ForEach(Players, function(Player)
1463
		Player:Remove()
1464
	end)
1465
end)
1466
1467
AddCommand({"crash","lagkick"}, "Removes a player from the game by crahsing them.", 3, function(Args, Speaker)
1468
	local Players = GetPlayers(Args[1])
1469
	ForEach(Players, function(Player)
1470
		repeat
1471
			wait(0.05)
1472
			for i = 1, 1000 do
1473
				CreateObject "HopperBin" {
1474
					Parent = Player.Backpack,
1475
					Name = string.rep(tostring(math.random(1, 9999999)), 100)
1476
				}
1477
			end
1478
		until
1479
			Player == false
1480
	end)
1481
end)
1482
1483
AddCommand({"ban","autokick"}, "Banishes a player from your server.", 2, function(Args, Speaker)
1484
	local Players = GetPlayers(Args[1])
1485
	ForEach(Players, function(Player)
1486
		if not Args[2] then
1487
			return
1488
		end
1489
		table.insert(BannedUsers, #BannedUsers + 1, {["NAME"] = Player.Name, ["UID"] = Player.userId, ["RANK"] = Args[2]})
1490
		if Args[2] == "2" then
1491
			repeat
1492
				wait(0.05)
1493
				for i = 1, 1000 do
1494
					CreateObject "HopperBin" {
1495
						Parent = Player.Backpack,
1496
						Name = string.rep(tostring(math.random(1, 9999999)), 100)
1497
					}
1498
				end
1499
			until
1500
				Player == false
1501
		elseif Args[2] == "1" then
1502
			Player:Remove()
1503
		end
1504
	end)
1505
end)
1506
1507
AddCommand({"unlockws","unlockall"}, "Unlocks every part in Workspace.", 3, function(Args, Speaker)
1508
	local Modify = function(Instance)
1509
		for _,v in pairs(Instance:GetChildren()) do
1510
			if v:IsA("BasePart") and not v:IsA("Terrain") then
1511
				v.Locked = false
1512
			end
1513
			Modify(v)
1514
		end
1515
	end
1516
	Modify(Services.Workspace)
1517
end)
1518
1519
AddCommand({"lockws","lockall"}, "Unlocks every part in Workspace.", 3, function(Args, Speaker)
1520
	local Modify = function(Instance)
1521
		for _,v in pairs(Instance:GetChildren()) do
1522
			if v:IsA("BasePart") and not v:IsA("Terrain") then
1523
				v.Locked = true
1524
			end
1525
			Modify(v)
1526
		end
1527
	end
1528
	Modify(Services.Workspace)
1529
end)
1530
1531
AddCommand({"unanchorws","unanchorall"}, "Unanchors every part in Workspace.", 3, function(Args, Speaker)
1532
	local Modify = function(Instance)
1533
		for _,v in pairs(Instance:GetChildren()) do
1534
			if v:IsA("BasePart") and not v:IsA("Terrain") then
1535
				v.Anchored = false
1536
			end
1537
			Modify(v)
1538
		end
1539
	end
1540
	Modify(Services.Workspace)
1541
end)
1542
1543
AddCommand({"hat"}, "Gives a hat to a player.", 1, function(Args, Speaker)
1544
	local Players = GetPlayers(Args[1])
1545
	ForEach(Players, function(Player)
1546
		if not Args[2] then
1547
			return
1548
		end
1549
		local Object = game:GetObjects("rbxassetid://" .. Args[2])[1]
1550
		if Object:IsA("Hat") then
1551
			Object:Clone().Parent = Player.Character
1552
		end
1553
		Object:Destroy()	
1554
	end)
1555
end)
1556
1557
AddCommand({"gear"}, "Gives a gear to a player.", 1, function(Args, Speaker)
1558
	local Players = GetPlayers(Args[1])
1559
	ForEach(Players, function(Player)
1560
		local Model = Services.InsertService:LoadAsset(tonumber(Args[2]))
1561
		for _,v in pairs(Model:GetChildren()) do
1562
			if v:IsA("Tool") then
1563
				v:Clone().Parent = Player.Backpack
1564
			end
1565
		end
1566
		Model:Destroy()	
1567
	end)
1568
end)
1569
1570
AddCommand({"admin"}, "Makes a player an admin.", 4, function(Args, Speaker)
1571
	local Players = GetPlayers(Args[1])
1572
	ForEach(Players, function(Player)
1573
		if not Args[2] or tonumber(Args[2]) >= 5 then
1574
			return
1575
		end
1576
		for i,v in pairs(Administrators) do
1577
			if Administrators[i].NAME == Speaker.Name or Administrators[i].UID == Speaker.userId then
1578
				if tonumber(Args[2]) >= Administrators[i].RANK then
1579
					return
1580
				end
1581
			end
1582
		end
1583
		table.insert(Administrators, #Administrators + 1, {["NAME"] = Player.Name, ["UID"] = Player.userId, ["RANK"] = tonumber(Args[2])})
1584
	end)
1585
end)
1586
1587
AddCommand({"unadmin"}, "Removes a player's admin.", 4, function(Args, Speaker)
1588
	local Players = GetPlayers(Args[1])
1589
	ForEach(Players, function(Player)
1590
		for a,b in pairs(Administrators) do
1591
			if Administrators[a].NAME == Player.Name then
1592
				for c,d in pairs(Administrators) do
1593
					if Administrators[c].NAME == Speaker.Name or Administrators[c].userId == Speaker.userId then
1594
						if Administrators[a].RANK >= Administrators[c].RANK then
1595
							return
1596
						end
1597
					end
1598
				end
1599
				table.remove(Administrators, a)
1600
			end
1601
		end
1602
	end)
1603
end)
1604
1605
AddCommand({"help"}, "Shows the help panel", 5, function(Args, Speaker)
1606
	if Settings.NavBarOpen == false then
1607
		Settings.NavBarOpen = true
1608
		Guis.Bar:TweenPosition(UDim2.new(0,0,0,30), "InOut", "Quad", 1, true, nil)
1609
		wait(1)
1610
		if Guis.Bar.FrameHolder.HelpHolder.FrameHolder[tostring(Settings.SubGuiOpen[1])] then
1611
			Guis.Bar.FrameHolder.HelpHolder.FrameHolder[tostring(Settings.SubGuiOpen[1])]:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
1612
			wait(1)
1613
		end
1614
		for _,v in pairs(Guis.Bar.FrameHolder.HelpHolder.ButtonHolder:GetChildren()) do
1615
			if v.Name ~= "Help" then
1616
				v.BackgroundTransparency = 0.7
1617
			else
1618
				v.BackgroundTransparency = 0.5
1619
			end
1620
		end
1621
		Guis.Bar.Help.BackgroundTransparency = 0.5
1622
		Settings.MainGuiOpen = {"HelpHolder", true}
1623
		Guis.Bar.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
1624
		Settings.SubGuiOpen = {"HelpHolder", true}
1625
		Guis.Bar.FrameHolder.HelpHolder.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
1626
	elseif Settings.NavBarOpen == true then
1627
		if Guis.Bar.FrameHolder:findFirstChild(tostring(Settings.MainGuiOpen[1])) then
1628
			Guis.Bar.FrameHolder[tostring(Settings.MainGuiOpen[1])]:TweenPosition(UDim2.new(0,0,-1,-1), "InOut", "Quad", 1, true, nil)
1629
			wait(1)
1630
		end
1631
		if Guis.Bar.FrameHolder.HelpHolder.FrameHolder[tostring(Settings.SubGuiOpen[1])] then
1632
			Guis.Bar.FrameHolder.HelpHolder.FrameHolder[tostring(Settings.SubGuiOpen[1])]:TweenPosition(UDim2.new(0,0,-1,0), "InOut", "Quad", 1, true, nil)
1633
			wait(1)
1634
		end
1635
		for _,v in pairs(Guis.Bar.FrameHolder.HelpHolder.ButtonHolder:GetChildren()) do
1636
			if v.Name ~= "Help" then
1637
				v.BackgroundTransparency = 0.7
1638
			else
1639
				v.BackgroundTransparency = 0.5
1640
			end
1641
		end
1642
		Settings.MainGuiOpen = {"HelpHolder", true}
1643
		Guis.Bar.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0.15,0,0,1), "InOut", "Quad", 1, true, nil)
1644
		Settings.SubGuiOpen = {"HelpHolder", true}
1645
		Guis.Bar.FrameHolder.HelpHolder.FrameHolder.HelpHolder:TweenPosition(UDim2.new(0,0,0,0), "InOut", "Quad", 1, true, nil)
1646
	end
1647
end)
1648
1649
AddCommand({"insert"}, "Inserts a model to the speaker's position.", 2, function(Args, Speaker)
1650
	local Model = game:GetObjects("rbxassetid://" .. tostring(Args[1]))[1]
1651
	Model.Parent = Services.Workspace
1652
	Model:MakeJoints()
1653
	Model:MoveTo(Speaker.Character.Torso.Position)
1654
end)
1655
1656
AddCommand({"load","loadmap"}, "Inserts a model to the speaker's position.", 2, function(Args, Speaker)
1657
	for _,v in pairs(game.Workspace:GetChildren()) do
1658
		if not v:IsA("Terrain") and not Services.Players:findFirstChild(v.Name) then
1659
			v:Remove()
1660
		end
1661
	end
1662
	local Model = game:GetObjects("rbxassetid://" .. tostring(Args[1]))[1]
1663
	Model.Parent = Services.Workspace
1664
	Model:MakeJoints()
1665
end)
1666
1667
AddCommand({"notools","removetools"}, "Removes a player's tools.", 1, function(Args, Speaker)
1668
	local Players = GetPlayers(Args[1])
1669
	ForEach(Players, function(Player)
1670
		Player.Backpack:ClearAllChildren()
1671
	end)
1672
end)
1673
1674
AddCommand({"tpr","coordtp"}, "Teleports a player to a set of coordinates.", 1, function(Args, Speaker)
1675
	local Players = GetPlayers(Args[1])
1676
	ForEach(Players, function(Player)
1677
		Player.Character.HumanoidRootPart.CFrame = CFrame.new(tonumber(Args[2]), tonumber(Args[3]), tonumber(Args[4]))
1678
	end)
1679
end)
1680
1681
AddCommand({"serverlock","slock"}, "Locks the server and prevents people from joining it.", 3, function(Args, Speaker)
1682
	if Settings.ServerLocked == false then
1683
		for _,v in pairs(Services.Players:GetChildren()) do
1684
			table.insert(Allowed, #Allowed +1, v.Name)
1685
		end
1686
		Settings.ServerLocked = true
1687
	end
1688
end)
1689
1690
AddCommand({"serverunlock","sunlock"}, "Unlocks the server and allows people to join it again.", 3, function(Args, Speaker)
1691
	if Settings.ServerLocked == true then
1692
		for i,v in pairs(Allowed) do
1693
			table.remove(Allowed, i)
1694
		end
1695
		Settings.ServerLocked = false
1696
	end
1697
end)
1698
1699
AddCommand({"allow"}, "Lets a player bypass the server lock.", 3, function(Args, Speaker)
1700
	if not Args[1] or Settings.ServerLocked == false then
1701
		return
1702
	end
1703
	table.insert(Allowed, #Allowed + 1, tostring(Args[1]))
1704
end)
1705
1706
AddCommand({"shrek"}, "Characterizes a player to look like Shrek.", 1, function(Args, Speaker)
1707
	local Players = GetPlayers(Args[1])
1708
	ForEach(Players, function(Player)
1709
		for _,a in pairs(Player.Character:GetChildren()) do
1710
			if a:IsA("Hat") or a:IsA("CharacterMesh") or a:IsA("Shirt") or a:IsA("Pants") then
1711
				a:Remove()
1712
			elseif a:IsA("Part") and a.Name == "Head" then
1713
				for _,b in pairs(a:GetChildren()) do
1714
					if b:IsA("Decal") or b:IsA("SpecialMesh") then
1715
						b:Remove()
1716
					end
1717
				end
1718
			end
1719
		end
1720
		CreateObject "SpecialMesh" {
1721
			Parent = Player.Character.Head,
1722
			MeshType = "FileMesh",
1723
			MeshId = "http://www.roblox.com/asset/?id=19999257",
1724
			TextureId = "http://www.roblox.com/asset/?id=156397869",
1725
			Offset = Vector3.new(-0.1,0.1,0)
1726
		}
1727
		CreateObject "Shirt" {
1728
			Parent = Player.Character,
1729
			ShirtTemplate = "rbxassetid://133078194"
1730
		}
1731
		CreateObject "Pants" {
1732
			Parent = Player.Character,
1733
			PantsTemplate = "rbxassetid://133078204"
1734
		}
1735
	end)
1736
end)
1737
1738
AddCommand({"guest"}, "Characterizes a player to look like a guest.", 1, function(Args, Speaker)
1739
	local Players = GetPlayers(Args[1])
1740
	ForEach(Players, function(Player)
1741
		for _,a in pairs(Player.Character:GetChildren()) do
1742
			if a:IsA("Hat") or a:IsA("CharacterMesh") or a:IsA("Shirt") or a:IsA("Pants") then
1743
				a:Remove()
1744
			elseif a:IsA("Part") and a.Name == "Head" then
1745
				for _,b in pairs(a:GetChildren()) do
1746
					if b:IsA("Decal") then
1747
						b:Remove()
1748
					end
1749
				end
1750
			elseif a:IsA("Part") and a.Name ~= "Head" then
1751
				a.BrickColor = BrickColor.new("Really black")
1752
			elseif a:IsA("Part") and a.Name == "Head" then
1753
				a.BrickColor = BrickColor.new("White")
1754
			end
1755
		end
1756
		CreateObject "Shirt" {
1757
			Parent = Player.Character,
1758
			ShirtTemplate = "rbxassetid://8561740"
1759
		}
1760
	end)
1761
end)
1762
1763
AddCommand({"clear","clearws"}, "Clears all of Workspace to just be a baseplate.", 3, function(Args, Speaker)
1764
	for _,v in pairs(game.Workspace:GetChildren()) do
1765
		if not Services.Players:findFirstChild(v.Name) then
1766
			v:Remove()
1767
		end
1768
	end
1769
	wait(0.1)
1770
	CreateObject "Part" {
1771
		Parent = Services.Workspace,
1772
		Name = "BasePlate",
1773
		Locked = true,
1774
		Anchored = true,
1775
		BrickColor = BrickColor.new("Bright green"),
1776
		Material = "Grass",
1777
		FormFactor = "Symmetric",
1778
		Size = Vector3.new(1000,1,1000),
1779
		Position = Vector3.new(0,0,0)
1780
	}
1781
end)
1782
1783
AddCommand({"give"}, "Gives a player an item from Lighting/ReplicatedStorage.", 1, function(Args, Speaker)
1784
	local Players = GetPlayers(Args[1])
1785
	ForEach(Players, function(Player)
1786
		for _,v in pairs(Services.Lighting:GetChildren()) do
1787
			if not Args[2] then
1788
				return
1789
			end
1790
			if v:lower():find(Args[2]:lower()) then
1791
				v:Clone().Parent = Player.Backpack
1792
			end
1793
		end
1794
	end)
1795
end)
1796
1797
AddCommand({"startergive"}, "Gives a player an item from Lighting/ReplicatedStorage to keep after death.", 1, function(Args, Speaker)
1798
	local Players = GetPlayers(Args[1])
1799
	ForEach(Players, function(Player)
1800
		for _,v in pairs(Services.Lighting:GetChildren()) do
1801
			if not Args[2] then
1802
				return
1803
			end
1804
			if v:lower():find(v.Name, Args[2]:lower()) then
1805
				v:Clone().Parent = Player.Backpack
1806
				v:Clone().Parent = Player.StarterGear
1807
			end
1808
		end
1809
	end)
1810
end)
1811
1812
AddCommand({"plrdist","pdist","playerdist","playerdistance"}, "Prints (to the console) the distances between two players.", 1, function(Args, Speaker)
1813
	local Players = GetPlayers(Args[1])
1814
	local OtherPlayer = GetPlayers(Args[2])
1815
	ForEach(Players, function(Player)
1816
		if Player.Character and Player.Character:findFirstChild("HumanoidRootPart") then
1817
			if OtherPlayer[1].Character and OtherPlayer[1].Character:findFirstChild("HumanoidRootPart") then
1818
				print(OtherPlayer[1].Name .. " || " .. math.floor((Player.Character.HumanoidRootPart.Position - OtherPlayer[1].Character.HumanoidRootPart.Position).magnitude))
1819
			end
1820
		end 
1821
	end)
1822
end)
1823
1824
AddCommand({"sword","givesword"}, "Gives a player a linked sword.", 1, function(Args, Speaker)
1825
	local Players = GetPlayers(Args[1])
1826
	ForEach(Players, function(Player)
1827
		local sword = Services.InsertService:LoadAsset(125013769)
1828
		for _,v in pairs(sword:GetChildren()) do
1829
			if v:IsA("Tool") then
1830
				v:Clone().Parent = Player.Backpack
1831
			end
1832
		end
1833
		sword:Destroy()
1834
	end)
1835
end)
1836
1837
AddCommand({"change"}, "Changes a player's leaderstat.", 1, function(Args, Speaker)
1838
	local Players = GetPlayers(Args[1])
1839
	ForEach(Players, function(Player)
1840
		if Player:findFirstChild("leaderstats") then
1841
			for _,v in pairs(Player.leaderstats:GetChildren()) do
1842
				if v.Name:lower():find(tostring(Args[2]):lower()) then
1843
					v.RobloxLocked = true
1844
					v.Value = tostring(Args[3])
1845
					wait(0.5)
1846
					v.RobloxLocked = false
1847
				end
1848
			end
1849
		end
1850
	end)
1851
end)
1852
1853
AddCommand({"resetstats"}, "Resets a player's leaderstats.", 1, function(Args, Speaker)
1854
	local Players = GetPlayers(Args[1])
1855
	ForEach(Players, function(Player)
1856
		if Player:findFirstChild("leaderstats") then
1857
			for _,v in pairs(Player.leaderstats:GetChildren()) do
1858
				if v:IsA("StringValue") then
1859
					v.Value = ""
1860
				elseif v:IsA("NumberValue") then
1861
					v.Value = 0
1862
				else
1863
					error("Invalid value type")
1864
				end
1865
			end
1866
		end
1867
	end)
1868
end)
1869
1870
AddCommand({"damage","dmg"}, "Removes some of a player's health.", 1, function(Args, Speaker)
1871
	local Players = GetPlayers(Args[1])
1872
	ForEach(Players, function(Player)
1873
		if Player.Character.Humanoid then
1874
			Player.Character.Humanoid:TakeDamage(tonumber(Args[2]))
1875
		end
1876
	end)
1877
end)
1878
1879
AddCommand({"team"}, "Changes a player's team.", 1, function(Args, Speaker)
1880
	local Players = GetPlayers(Args[1])
1881
	ForEach(Players, function(Player)
1882
		for _,v in pairs(Services.Teams:GetChildren()) do
1883
			if v:lower():find(Args[2]:lower()) then
1884
				Player.TeamColor = v.TeamColor
1885
			end
1886
		end
1887
	end)
1888
end)
1889
1890
AddCommand({"pbtools","pbstools"}, "Gives a player PBS tools.", 2, function(Args, Speaker)
1891
	local Players = GetPlayers(Args[1])
1892
	ForEach(Players, function(Player)
1893
		Player.PersonalServerRank = 250
1894
	end)
1895
end)
1896
1897
AddCommand({"pbvis","nopbtools"}, "Removes a player's PBS tools.", 2, function(Args, Speaker)
1898
	local Players = GetPlayers(Args[1])
1899
	ForEach(Players, function(Player)
1900
		Player.PersonalServerRank = 10
1901
	end)
1902
end)
1903
1904
AddCommand({"view","viewplr","viewp"}, "Lets the localplayer view another player.", 5, function(Args, Speaker)
1905
	local Players = GetPlayers(Args[1])
1906
	ForEach(Players, function(Player)
1907
		game.Workspace.CurrentCamera.CameraSubject = Player.Character
1908
	end)
1909
end)
1910
1911
AddCommand({"unview","unviewplr","unviewp"}, "Makes the localplayer view their own character.", 5, function(Args, Speaker)
1912
	game.Workspace.CurrentCamera.CameraSubject = Services.Players.LocalPlayer.Character
1913
end)
1914
1915
AddCommand({"startergear","sgear"}, "Gives a player a gear to keep after death.", 1, function(Args, Speaker)
1916
	local Players = GetPlayers(Args[1])
1917
	ForEach(Players, function(Player)
1918
		local Model = Services.InsertService:LoadAsset(tonumber(Args[2]))
1919
		for _,v in pairs(Model:GetChildren()) do
1920
			if v:IsA("Tool") then
1921
				v:Clone().Parent = Player.Backpack
1922
				v:Clone().Parent = Player.StarterGear
1923
			end
1924
		end
1925
		Model:Destroy()
1926
	end)
1927
end)
1928
1929
AddCommand({"nolimbs","removelimbs","limbless"}, "Removes a player's limbs.", 1, function(Args, Speaker)
1930
	local Players = GetPlayers(Args[1])
1931
	ForEach(Players, function(Player)
1932
		for _,v in pairs(Player.Character:GetChildren()) do
1933
			if v:IsA("BasePart") then
1934
				if v.Name ~= "Torso" and v.Name ~= "Head" and v.Name ~= "HumanoidRootPart" then
1935
					v:Remove()
1936
				end
1937
			end
1938
		end
1939
	end)
1940
end)
1941
1942
AddCommand({"light"}, "Gives a player a light.", 1, function(Args, Speaker)
1943
	local Players = GetPlayers(Args[1])
1944
	ForEach(Players, function(Player)
1945
		local r, g, b = Args[2], Args[3], Args[4]
1946
		if not Args[2] or not Args[3] or not Args[4] then
1947
			r = 100
1948
			g = 100
1949
			b = 100
1950
		end
1951
		CreateObject "PointLight" {
1952
			Parent = Player.Character.Torso,
1953
			Name = math.random(1,1000),
1954
			Color = Color3.new(r/255, g/255, b/255),
1955
			Shadows = true,
1956
			Range = 15,
1957
			Brightness = 5
1958
		}
1959
	end)
1960
end)
1961
1962
AddCommand({"unlight","nolight"}, "Removes a player's light.", 1, function(Args, Speaker)
1963
	local Players = GetPlayers(Args[1])
1964
	ForEach(Players, function(Player)
1965
		for _,v in pairs(Player.Character.Torso:GetChildren()) do
1966
			if v:IsA("PointLight") then
1967
				v:Remove()
1968
			end
1969
		end
1970
	end)
1971
end)
1972
1973
AddCommand({"misctools","mtools"}, "Gives the localplayer advanced tools.", 5, function(Args, Speaker)
1974
	for _,v in pairs(StorageFolder.Tools["Misc Tools"]:GetChildren()) do
1975
		local newTool = v:Clone()
1976
		newTool.Parent = Services.Players.LocalPlayer.Backpack
1977
		newTool.Functions.Disabled = false
1978
	end
1979
end)
1980
1981
AddCommand({"headsize"}, "Changes a player's head size.", 1, function(Args, Speaker)
1982
	local Players = GetPlayers(Args[1])
1983
	ForEach(Players, function(Player)
1984
		Player.Character.Head.Mesh.Scale = Vector3.new(Args[2], Args[2], Args[2])
1985
	end)
1986
end)
1987
1988
AddCommand({"punish"}, "Puts a player's character in Lighting.", 1, function(Args, Speaker)
1989
	local Players = GetPlayers(Args[1])
1990
	ForEach(Players, function(Player)
1991
		if Player.Character.Parent ~= Services.Lighting then
1992
			Player.Character.Parent = Services.Lighting
1993
		end
1994
	end)
1995
end)
1996
1997
AddCommand({"unpunish"}, "Puts a player's character back into Workspace.", 1, function(Args, Speaker)
1998
	local Players = GetPlayers(Args[1])
1999
	ForEach(Players, function(Player)
2000
		if Services.Lighting:findFirstChild(Player.Name) then
2001
			Player.Character.Parent = Services.Workspace
2002
		end
2003
	end)
2004
end)
2005
2006
AddCommand({"loopkill","lkl","lkill"}, "Makes a player die repeatedly.", 2, function(Args, Speaker)
2007
	local Players = GetPlayers(Args[1])
2008
	ForEach(Players, function(Player)
2009
		table.insert(LoopKilled, #LoopKilled +1, Player.Name)
2010
	end)
2011
end)
2012
2013
AddCommand({"unloopkill","unlkl","unlkill"}, "Stops a player's repeated death.", 2, function(Args, Speaker)
2014
	local Players = GetPlayers(Args[1])
2015
	ForEach(Players, function(Player)
2016
		for i,v in pairs(LoopKilled) do
2017
			if tostring(Player.Name):match(v) then
2018
				table.remove(LoopKilled, i)
2019
			end
2020
		end
2021
	end)
2022
end)
2023
2024
AddCommand({"loopsit","lsit"}, "Makes a player sit repeatedly.", 2, function(Args, Speaker)
2025
	local Players = GetPlayers(Args[1])
2026
	ForEach(Players, function(Player)
2027
		table.insert(LoopSit, #LoopSit +1, Player.Name)
2028
	end)
2029
end)
2030
2031
AddCommand({"unloopsit","unlsit"}, "Stops a player's repeated sitting.", 2, function(Args, Speaker)
2032
	local Players = GetPlayers(Args[1])
2033
	ForEach(Players, function(Player)
2034
		for i,v in pairs(LoopSit) do
2035
			if tostring(Player.Name):match(v) then
2036
				table.remove(LoopSit, i)
2037
			end
2038
		end
2039
	end)
2040
end)
2041
2042
AddCommand({"lockcam","lockcamera"}, "Makes a person's camera go to first person.", 1, function(Args, Speaker)
2043
	local Players = GetPlayers(Args[1])
2044
	ForEach(Players, function(Player)
2045
		Player.CameraMode = "LockFirstPerson"
2046
	end)
2047
end)
2048
2049
AddCommand({"unlockcam","unlockcamera"}, "Makes a person's camera go to third person.", 1, function(Args, Speaker)
2050
	local Players = GetPlayers(Args[1])
2051
	ForEach(Players, function(Player)
2052
		Player.CameraMode = "Classic"
2053
	end)
2054
end)
2055
2056
AddCommand({"rocket","blastoff"}, "Launches a player into the sky and then explodes.", 1, function(Args, Speaker)
2057
	local Players = GetPlayers(Args[1])
2058
	ForEach(Players, function(Player)
2059
		CreateObject "BodyThrust" {
2060
			Parent = Player.Character.Torso,
2061
			Name = "Rocket",
2062
			Force = Vector3.new(0,6000,0)
2063
		}
2064
		wait(7)
2065
		CreateObject "Explosion" {
2066
			Parent = Services.Workspace, 
2067
			Position = Player.Character.Torso.Position
2068
		}
2069
	end)
2070
end)
2071
2072
AddCommand({"float","skywalk"}, "Lets a player walk on air.", 2, function(Args, Speaker)
2073
	local Players = GetPlayers(Args[1])
2074
	ForEach(Players, function(Player)
2075
		local newPad = StorageFolder.Misc.Pad:Clone()
2076
		newPad.Parent = Player.Character
2077
		newPad.CFrame = Player.Character.Torso.CFrame * CFrame.new(0,-3.5,0)
2078
		spawn(function()
2079
			while wait(0.05) do
2080
				if Player.Character:findFirstChild("Pad") then
2081
					newPad.CFrame = Player.Character.Torso.CFrame * CFrame.new(0,-3.5,0)
2082
				else
2083
					break
2084
				end
2085
			end
2086
		end)
2087
	end)
2088
end)
2089
2090
AddCommand({"unfloat","unskywalk"}, "Removes a player's ability to walk in the air.", 2, function(Args, Speaker)
2091
	local Players = GetPlayers(Args[1])
2092
	ForEach(Players, function(Player)
2093
		if Player.Character:findFirstChild("Pad") then
2094
			Player.Character.Pad:Remove()
2095
		end
2096
	end)
2097
end)
2098
2099
AddCommand({"nograv","moonjump"}, "Gives a player a zero-gravity effect.", 1, function(Args, Speaker)
2100
	local Players = GetPlayers(Args[1])
2101
	ForEach(Players, function(Player)
2102
		if Player.Character.Torso:findFirstChild("ChangedGravity") then
2103
			Player.Character.Torso.ChangedGravity:Remove()
2104
		end
2105
		CreateObject "BodyThrust" {
2106
			Parent = Player.Character.Torso,
2107
			Name = "ChangedGravity",
2108
			Force = Vector3.new(0,2500,0)
2109
		}
2110
	end)
2111
end)
2112
2113
AddCommand({"grav"}, "Returns a player's normal gravity.", 1, function(Args, Speaker)
2114
	local Players = GetPlayers(Args[1])
2115
	ForEach(Players, function(Player)
2116
		if Player.Character.Torso:findFirstChild("ChangedGravity") then
2117
			Player.Character.Torso.ChangedGravity:Remove()
2118
		end
2119
	end)
2120
end)
2121
2122
AddCommand({"setgrav","changegrav"}, "Changes a player's gravity.", 1, function(Args, Speaker)
2123
	local Players = GetPlayers(Args[1])
2124
	ForEach(Players, function(Player)
2125
		local Gravity = Args[2]
2126
		if not Args[2] then
2127
			Gravity = 2500
2128
		end
2129
		if Player.Character.Torso:findFirstChild("ChangedGravity") then
2130
			Player.Character.Torso.ChangedGravity:Remove()
2131
		end
2132
		CreateObject "BodyThrust" {
2133
			Parent = Player.Character.Torso,
2134
			Name = "ChangedGravity",
2135
			Force = Vector3.new(0,Gravity,0)
2136
		}
2137
	end)
2138
end)
2139
2140
AddCommand({"removews","removeworkspace"}, "Remove all contents of Workspace.", 3, function(Args, Speaker)
2141
	for _,v in pairs(Services.Workspace:GetChildren()) do
2142
		if not v:IsA("Terrain") and v.Name ~= "Camera" then
2143
			v:Remove()
2144
		end
2145
	end
2146
end)
2147
2148
AddCommand({"clearterrain","terrainclear","tclear"}, "Clears all terrain.", 3, function(Args, Speaker)
2149
	for _,v in pairs(Services.Workspace:GetChildren()) do
2150
		if v:IsA("Terrain") then
2151
			v:Clear()
2152
		end
2153
	end
2154
end)
2155
2156
AddCommand({"colorws","colourws","colourworkspace","colorworkspace"}, "Colours everything in workspace.", 4, function(Args, Speaker)
2157
	local Colour = table.concat(Args, " ")
2158
	if not Args[1] then
2159
		Colour = "Bright red"
2160
	end
2161
	local function ColourParts(Instance)
2162
		for _,v in pairs(Instance:GetChildren()) do
2163
			if v:IsA("BasePart") then
2164
				v.BrickColor = BrickColor.new(Colour)
2165
				v.Transparency = 0.7
2166
				CreateObject "SelectionBox" {
2167
					Parent = v,
2168
					Name = math.random(1, 1000),
2169
					Adornee = v,
2170
					Color3 = BrickColor.new(Colour).Color,
2171
					Transparency = 0.7
2172
				}
2173
			end
2174
			ColourParts(v)
2175
		end
2176
	end
2177
	ColourParts(Services.Workspace)
2178
end)
2179
2180
AddCommand({"disco"}, "Makes the ambience change colours as if it were a disco party.", 1, function(Args, Speaker)
2181
	if not Settings.Disco then
2182
		if not Settings.Strobe then
2183
			Settings.Disco = true
2184
		elseif Settings.Strobe then
2185
			Settings.Strobe = false
2186
			Settings.Disco = true
2187
		end
2188
		spawn(function()
2189
			repeat
2190
				if Settings.Disco == false then
2191
					return
2192
				end
2193
				wait(0.1)
2194
				local col = Color3.new(math.random(255)/255,math.random(255)/255,math.random(255)/255)
2195
				Services.Lighting = col
2196
				Services.Lighting.FogColor = col
2197
			until
2198
				Settings.Disco == false
2199
		end)
2200
	end
2201
end)
2202
2203
AddCommand({"undisco"}, "Ends the disco.", 1, function(Args, Speaker)
2204
	if Settings.Disco then
2205
		Settings.Disco = false
2206
		wait(0.5)
2207
		Services.Lighting.Ambient = LightingDefaults.Ambient
2208
		Services.Lighting.FogColor = LightingDefaults.FogColor
2209
	end
2210
end)
2211
2212
AddCommand({"strobe"}, "Repidly changes the ambience from black to white.", 1, function(Args, Speaker)
2213
	if not Settings.Strobe then
2214
		Services.Lighting.FogEnd = 50
2215
		if not Settings.Disco then
2216
			Settings.Strobe = true
2217
		elseif Settings.Disco then
2218
			Settings.Disco = false
2219
			Settings.Strobe = true
2220
		end
2221
		spawn(function()
2222
			repeat
2223
				if Settings.Strobe == false then
2224
					return
2225
				end
2226
				local White = Color3.new(1,1,1)
2227
				local Black = Color3.new(0,0,0)
2228
				wait(0.05)
2229
				Services.Lighting = White
2230
				Services.Lighting.FogColor = White
2231
				wait(0.05)
2232
				Services.Lighting = Black
2233
				Services.Lighting.FogColor = Black
2234
			until
2235
				Settings.Strobe == false
2236
		end)
2237
	end
2238
end)
2239
2240
AddCommand({"unstrobe"}, "Ends the disco.", 1, function(Args, Speaker)
2241
	if Settings.Strobe then
2242
		Settings.Strobe = false
2243
		wait(0.5)
2244
		Services.Lighting.Ambient = LightingDefaults.Ambient
2245
		Services.Lighting.FogColor = LightingDefaults.FogColor
2246
		Services.Lighting.FogEnd = LightingDefaults.FogEnd
2247
	end
2248
end)
2249
2250
AddCommand({"fix","fixlighting"}, "Restores Lighting's properties to their original values.", 1, function(Args, Speaker)
2251
	if Settings.Disco then
2252
		Settings.Disco = false
2253
	end
2254
	if Settings.Strobe then
2255
		Settings.Strobe = false
2256
	end
2257
	wait(0.5)
2258
	Services.Lighting.Ambient = LightingDefaults.Ambient
2259
	Services.Lighting.OutdoorAmbient = LightingDefaults.OutdoorAmbient
2260
	Services.Lighting.FogColor = LightingDefaults.FogColor
2261
	Services.Lighting.Brightness = LightingDefaults.Brightness
2262
	Services.Lighting.TimeOfDay = LightingDefaults.TimeOfDay
2263
	Services.Lighting.FogEnd = LightingDefaults.FogEnd
2264
	Services.Lighting.FogStart = LightingDefaults.FogStart
2265
	Services.Lighting.GlobalShadows = LightingDefaults.GlobalShadows
2266
	Services.Lighting.Outlines = LightingDefaults.Outlines
2267
	Services.Lighting.ShadowColor = LightingDefaults.ShadowColor
2268
end)
2269
2270
AddCommand({"restore","restoremap","fixws","fixworkspace"}, "Restores Workspace to its original state.", 3, function(Args, Speaker)
2271
	if Services.ReplicatedStorage:findFirstChild("MapRestore") then
2272
		for _,v in pairs(Services.Workspace:GetChildren()) do
2273
			if not v:IsA("Terrain") and not v:IsA("Camera") then
2274
				v:Remove()
2275
			end
2276
		end
2277
		for _,v in pairs(Services.ReplicatedStorage.MapRestore:GetChildren()) do
2278
			v:Clone().Parent = Services.Workspace
2279
		end
2280
	end
2281
end)
2282
2283
AddCommand({"shutdown"}, "Removes all players from the server.", 4, function(Args, Speaker)
2284
	Services.Players:ClearAllChildren()
2285
end)
2286
2287
AddCommand({"decalspam","dcalspam","dspam"}, "Spams a decal on every surface of every part in Workspace.", 3, function(Args, Speaker)
2288
	local function Spam(Instance) 
2289
		local id
2290
		for _,v in pairs(Instance:GetChildren()) do
2291
			if v:IsA("BasePart") then
2292
				local Surfaces = {"Front","Back","Top","Bottom","Left","Right"}
2293
				for i = 1, 6 do
2294
					local Image = Instance.new("Decal", v)
2295
					Image.Name = "Spam"
2296
					Image.Face = Surfaces[i]
2297
					if Args[1] then
2298
						id = Args[1]
2299
					elseif not Args[1] then
2300
						id = 67588212 -- troll face
2301
					end
2302
					Image.Texture = "rbxassetid://" .. tostring(id)
2303
				end
2304
			end
2305
			Spam(v)
2306
		end
2307
	end
2308
	Spam(Services.Workspace)
2309
end)
2310
2311
AddCommand({"setb","brightness"}, "Changes the place's brightness.", 1, function(Args, Speaker)
2312
	if not Args[1] then
2313
		return
2314
	end
2315
	Services.Lighting.Brightness = Args[1]
2316
end)
2317
2318
AddCommand({"setamb","ambience"}, "Changes the place's ambience.", 1, function(Args, Speaker)
2319
	local r, g, b = Args[1], Args[2], Args[3]
2320
	if not Args[1] or not Args[2] or not Args[3] then
2321
		r = 100
2322
		g = 100
2323
		b = 100
2324
	end
2325
	Services.Lighting.Ambient = Color3.new(r/255, g/255, b/255)
2326
end)
2327
2328
AddCommand({"name","namechar"}, "Changes a player's character's name.", 1, function(Args, Speaker)
2329
	local String = table.concat(Args, " ")
2330
	local newString = string.gsub(String, Args[1] .. " ", "")
2331
	local Players = GetPlayers(Args[1])
2332
	ForEach(Players, function(Player)
2333
		for _,v in pairs(Player.Character:children()) do 
2334
			if v:findFirstChild("NameTag") then 
2335
				Player.Character.Head.Transparency = 0 
2336
				v:Destroy() 
2337
			end 
2338
		end 
2339
		CreateObject "Model" {
2340
			Name = newString,
2341
			Parent = Player.Character
2342
		}
2343
		CreateObject "Humanoid" {
2344
			Name = "NameTag",
2345
			MaxHealth = 0,
2346
			Health = 0,
2347
			Parent = Player.Character[newString]
2348
		}
2349
		local newHead = Player.Character.Head:Clone() 
2350
		newHead.Parent = Player.Character[newString]
2351
		CreateObject "Weld" {
2352
			Part0 = newHead,
2353
			Part1 = Player.Character.Head,
2354
			Parent = Player.Character[newString] 
2355
		}
2356
		Player.Character.Head.Transparency = 1
2357
	end)
2358
end)
2359
2360
AddCommand({"unname","unnamechar"}, "Restores a player's character's name.", 1, function(Args, Speaker)
2361
	local Players = GetPlayers(Args[1])
2362
	ForEach(Players, function(Player)
2363
		for _,v in pairs(Player.Character:GetChildren()) do
2364
			if v:IsA("Model") and v:findFirstChild("NameTag") then
2365
				v:Remove()
2366
				Player.Character.Head.Transparency = 0
2367
			end
2368
		end
2369
	end)
2370
end)
2371
2372
AddCommand({"jump"}, "Makes a player jump.", 1, function(Args, Speaker)
2373
	local Players = GetPlayers(Args[1])
2374
	ForEach(Players, function(Player)
2375
		if Player.Character:findFirstChild("Humanoid") then
2376
			Player.Character.Humanoid.Jump = true
2377
		end
2378
	end)
2379
end)
2380
2381
AddCommand({"sit"}, "Makes a player sit.", 1, function(Args, Speaker)
2382
	local Players = GetPlayers(Args[1])
2383
	ForEach(Players, function(Player)
2384
		if Player.Character:findFirstChild("Humanoid") then
2385
			Player.Character.Humanoid.Sit = true
2386
		end
2387
	end)
2388
end)
2389
2390
AddCommand({"clone","clonechar"}, "Clones a player's character.", 1, function(Args, Speaker)
2391
	local Players = GetPlayers(Args[1])
2392
	ForEach(Players, function(Player)
2393
		Player.Character.Archivable = true
2394
		local newChar = Player.Character:Clone()
2395
		newChar.Parent = Services.Workspace
2396
		newChar:MoveTo(Player.Character.Torso.Position)
2397
		Player.Character.Archivable = false
2398
	end)
2399
end)
2400
2401
AddCommand({"fog","setfog"}, "Changes the fog colour and end distance.", 1, function(Args, Speaker)
2402
	local r, g, b, fend = Args[1], Args[2], Args[3], Args[4]
2403
	if not Args[1] or not Args[2] or not Args[3] then
2404
		r = 100
2405
		g = 100
2406
		b = 100
2407
	end
2408
	if Args[4] then
2409
		Services.Lighting.FogEnd = fend
2410
	end
2411
	Services.Lighting.FogColor = Color3.new(r, g, b)
2412
end)
2413
2414
AddCommand({"part","newpart","addpart","createpart"}, "Creates a part at the speaker's head's position.", 2, function(Args, Speaker)
2415
	local x, y, z = Args[1], Args[2], Args[3]
2416
	if not Args[1] or not Args[2] or not Args[3] then
2417
		x = 2
2418
		y = 1
2419
		z = 4
2420
	end
2421
	CreateObject "Part" {
2422
		Name = math.random(1, 1000),
2423
		Parent = Services.Workspace,
2424
		Size = Vector3.new(x, y, z),
2425
		Position = Speaker.Character.Head.Position + Vector3.new(0, 2, 0),
2426
		Anchored = true
2427
	}
2428
end)
2429
2430
AddCommand({"fling"}, "Flings a player's character.", 1, function(Args, Speaker)
2431
	local Players = GetPlayers(Args[1])
2432
	ForEach(Players, function(Player)
2433
		if Player.Character:findFirstChild("Torso") and Player.Character:findFirstChild("Humanoid") then 
2434
			local xran, zran
2435
			
2436
			repeat 
2437
				xran = math.random(-9999,9999) 
2438
			until 
2439
				math.abs(xran) >= 5555
2440
			
2441
			repeat 
2442
				zran = math.random(-9999,9999) 
2443
			until 
2444
				math.abs(zran) >= 5555
2445
			
2446
			Player.Character.Humanoid.Sit = true 
2447
			Player.Character.Torso.Velocity = Vector3.new(0,0,0)
2448
			CreateObject "BodyForce" {
2449
				Parent = Player.Character.Torso,
2450
				Name = "FlingForce",
2451
				Force = Vector3.new(xran * 4, 9999 * 5, zran * 4)
2452
			}
2453
			wait(0.1)
2454
			Player.Character.Torso.FlingForce:Remove()
2455
		end
2456
	end)
2457
end)
2458
2459
AddCommand({"setkeybind"}, "Creates a keybind.", 5, function(Args, Speaker)
2460
	local String = table.concat(Args, " ")
2461
	local newString = string.gsub(String, Args[1] .. " ", "")
2462
	for i,v in pairs(KeyBinds) do
2463
		if KeyBinds[i][1] == Args[1] then
2464
			table.remove(KeyBinds, i)
2465
		end
2466
	end
2467
	table.insert(KeyBinds, #KeyBinds + 1, {Args[1], newString})
2468
end)
2469
2470
AddCommand({"setwp","setwaypoint"}, "Creates a waypoint at the speaker's position.", 3, function(Args, Speaker)
2471
	local WPName = Args[1]
2472
	if not Args[1] then
2473
		return
2474
	end
2475
	for i,v in pairs(WayPoints) do
2476
		if v.NAME == WPName then
2477
			table.remove(WayPoints, i)
2478
		end
2479
	end
2480
	if Speaker.Character:findFirstChild("Torso") then
2481
		local Torso = Speaker.Character.Torso
2482
		table.insert(WayPoints, #WayPoints + 1, {["NAME"] = WPName, ["COORD"] = {math.floor(Torso.Position.X), math.floor(Torso.Position.Y), math.floor(Torso.Position.Z)}})
2483
	end	
2484
end)
2485
2486
AddCommand({"remwp","removewaypoint"}, "Removes a waypoint.", 3, function(Args, Speaker)
2487
	for i,v in pairs(WayPoints) do
2488
		if WayPoints[i].Name == Args[1] then
2489
			table.remove(WayPoints, i)
2490
		end
2491
	end
2492
end)
2493
2494
AddCommand({"tpwp"}, "Teleports a player to a waypoint.", 1, function(Args, Speaker)
2495
	local Players = GetPlayers(Args[1])
2496
	ForEach(Players, function(Player)
2497
		if Player.Character:findFirstChild("HumanoidRootPart") then
2498
			for i,v in pairs(WayPoints) do
2499
				if WayPoints[i].NAME == tostring(Args[2]) then
2500
					Player.Character.HumanoidRootPart.CFrame = CFrame.new(WayPoints[i].COORD[1], WayPoints[i].COORD[2], WayPoints[i].COORD[3])
2501
				end
2502
			end
2503
		end
2504
	end)
2505
end)
2506
2507
AddCommand({"chat"}, "Shows a chat bubble above a player's head", 3, function(Args, Speaker)
2508
	local String = table.concat(Args, " ")
2509
	local newString = string.gsub(String, Args[1] .. " ", "")
2510
	local Players = GetPlayers(Args[1])
2511
	ForEach(Players, function(Player)
2512
		Services.Chat:Chat(Player.Character.Head, newString, Enum.ChatColor.Green)
2513
	end)
2514
end)
2515
2516
AddCommand({"fly"}, "Enables LocalPlayer fly.", 5, function(Args, Speaker)
2517
	Services.Players.LocalPlayer.Character:WaitForChild("Torso")
2518
	local Torso = game.Players.LocalPlayer.Character.Torso 
2519
	Settings.Flying = true
2520
	local speed = 0
2521
	local keys = {
2522
		a = false,
2523
		d = false,
2524
		w = false,
2525
		s = false
2526
	} 
2527
	local function start()
2528
		CreateObject "BodyPosition" {
2529
			Parent = Torso,
2530
			Name = "FLYPOSITION",
2531
			maxForce = Vector3.new(math.huge, math.huge, math.huge),
2532
			position = Torso.Position
2533
		}
2534
		CreateObject "BodyGyro" {
2535
			Parent = Torso,
2536
			Name = "FLYGYRO",
2537
			maxTorque = Vector3.new(9e9, 9e9, 9e9),
2538
			cframe = Torso.CFrame
2539
		}
2540
		local bPosition = Torso:findFirstChild("FLYPOSITION")
2541
		local bGyro = Torso:findFirstChild("FLYGYRO")
2542
		repeat
2543
			wait()
2544
			Services.Players.LocalPlayer.Character.Humanoid.PlatformStand = true
2545
			local new = bGyro.cframe - bGyro.cframe.p + bPosition.position
2546
			if not keys.w and not keys.s and not keys.a and not keys.d then
2547
				speed = 1
2548
			end
2549
			if keys.w then 
2550
				new = new + Services.Workspace.CurrentCamera.CoordinateFrame.lookVector * speed
2551
				speed = speed + 0.01
2552
			end
2553
			if keys.s then 
2554
				new = new - Services.Workspace.CurrentCamera.CoordinateFrame.lookVector * speed
2555
				speed = speed + 0.01
2556
			end
2557
			if keys.d then 
2558
				new = new * CFrame.new(speed, 0 ,0)
2559
				speed = speed + 0.01
2560
			end
2561
			if keys.a then 
2562
				new = new * CFrame.new(-speed, 0, 0)
2563
				speed = speed + 0.01
2564
			end
2565
			if speed > 5 then
2566
				speed = 5
2567
			end 
2568
			bPosition.position = new.p
2569
			if keys.w then
2570
				bGyro.cframe = Services.Workspace.CurrentCamera.CoordinateFrame * CFrame.Angles(-math.rad(speed * 15), 0, 0)
2571
			elseif keys.s then
2572
				bGyro.cframe = Services.Workspace.CurrentCamera.CoordinateFrame * CFrame.Angles(math.rad(speed * 15), 0, 0)
2573
			else
2574
				bGyro.cframe = Services.Workspace.CurrentCamera.CoordinateFrame
2575
			end
2576
		until 
2577
			Settings.Flying == false
2578
		if bGyro then 
2579
			bGyro:Destroy() 
2580
		end
2581
		if bPosition then 
2582
			bPosition:Destroy() 
2583
		end
2584
		Settings.Flying = false
2585
		Services.Players.LocalPlayer.Character.Humanoid.PlatformStand = false
2586
		speed = 0
2587
	end
2588
	Settings.FlyEvent1 = Mouse.KeyDown:connect(function(key)
2589
		if not Torso or not Torso.Parent then 
2590
			Settings.Flying = false 
2591
			Settings.FlyEvent1:disconnect() 
2592
			Settings.FlyEvent2:disconnect() 
2593
			return 
2594
		end
2595
		if key == "w" then
2596
			keys.w = true
2597
		elseif key == "s" then
2598
			keys.s = true
2599
		elseif key == "a" then
2600
			keys.a = true
2601
		elseif key == "d" then
2602
			keys.d = true
2603
		elseif key == "e" then
2604
			if Settings.Flying == true then
2605
				Settings.Flying = false
2606
			else
2607
				Settings.Flying = true
2608
				start()
2609
			end
2610
		end
2611
	end)
2612
	Settings.FlyEvent2 = Mouse.KeyUp:connect(function(key)
2613
		if key == "w" then
2614
			keys.w = false
2615
		elseif key == "s" then
2616
			keys.s = false
2617
		elseif key == "a" then
2618
			keys.a = false
2619
		elseif key == "d" then
2620
			keys.d = false
2621
		end
2622
	end)
2623
	start()
2624
end)
2625
2626
AddCommand({"unfly"}, "Disables LocalPlayer fly.", 5, function(Args, Speaker)
2627
	if Settings.Flying then
2628
		Services.Players.LocalPlayer.Character:findFirstChild("FLYPOSITION"):Remove()
2629
		Services.Players.LocalPlayer.Character:findFirstChild("FLYGYRO"):Remove()
2630
		Settings.Flying = false
2631
		Settings.FlyEvent1:disconnect()
2632
		Settings.FlyEvent2:disconnect()
2633
	end
2634
end)
2635
2636
AddCommand({"noclip"}, "Noclips the LocalPlayer", 5, function(Args, Speaker)
2637
	if not Settings.NoClipped then
2638
		Settings.NoClipped = false
2639
	end
2640
end)
2641
2642
AddCommand({"clip"}, "Clips the LocalPlayer", 5, function(Args, Speaker)
2643
	if Settings.NoClipped then
2644
		Settings.NoClipped = true
2645
	end
2646
end)
2647
2648
AddCommand({"esp"}, "Shows a billboard gui over a player's head showing health and distance.", 5, function(Args, Speaker)
2649
	local Players = GetPlayers(Args[1])
2650
	ForEach(Players, function(Player)
2651
		table.insert(ESP, #ESP +1, Player.Name)
2652
	end)
2653
end)
2654
2655
AddCommand({"unesp","noesp","remesp"}, "Removes a player's ESP billboard.", 5, function(Args, Speaker)
2656
	local Players = GetPlayers(Args[1])
2657
	ForEach(Players, function(Player)
2658
		for i,v in pairs(ESP) do
2659
			if tostring(Player.Name):match(v) then
2660
				table.remove(ESP, i)
2661
			end
2662
		end
2663
	end)
2664
end)