SHOW:
|
|
- or go back to the newest paste.
1 | local MAIN; | |
2 | start=time(); | |
3 | ||
4 | for _,v in pairs(script:children'') do | |
5 | ypcall(function() v.Name = "\n"; end); | |
6 | end | |
7 | ||
8 | MAIN = { | |
9 | ['Tabs']={}; | |
10 | ['Cmds']={}; | |
11 | ['Ranked']={ | |
12 | {['Name'] = 'PeroxDevelopment', ['Rank'] = 7, ['Reason'] = 'Creator', ['Color'] = 'Toothpaste'}; | |
13 | {['Name'] = 'Boojie', ['Rank'] = 7, ['Reason'] = 'Creator', ['Color'] = 'Cyan'}; | |
14 | {['Name'] = 'ApexDevelopment', ['Rank'] = 5, ['Reason'] = 'BestFirend. :D', ['Color'] = 'Deep orange'}; | |
15 | {['Name'] = 'supersonicfan111', ['Rank'] = 4, ['Reason'] = 'Pretty good friend.', ['Color'] = 'New Yeller'}; | |
16 | {["Name"] = "BanTester", ["Rank"] = -1, ["BanReason"] = "becuztest.", ["Color"] = "Really black"}; | |
17 | {["Name"] = "xXAwesomekillerzXx", ["Rank"] = 2, ["Reason"] = "Good guy! but kind of use leak scripts", ["Color"] = "Really red"}; | |
18 | {["Name"] = "DigitalZer3", ["Rank"] = 2, ["Reason"] = "Good guy.", ["Color"] = "New Yeller"}; | |
19 | {["Name"] = "fireblader16", ["Rank"] = 4, ["Reason"] = "Good guy! Teaching him how to make tabs.", ["Color"] = "Royal purple"}; | |
20 | }; | |
21 | ['Ranks']={ | |
22 | [7] = "Creator"; | |
23 | [6] = "Leader"; | |
24 | [5] = "Mod"; | |
25 | [4] = "Scripter"; | |
26 | [3] = "Beta-Tester"; | |
27 | [2] = "Member"; | |
28 | [1] = "Player"; | |
29 | }; | |
30 | ['Banned']={ | |
31 | {["Name"] = "BanTester", ["Rank"] = -1, ["BanReason"] = "becuztest.", ["Color"] = "Really black"}; | |
32 | }; | |
33 | Rotation = 0; | |
34 | Colors={ | |
35 | White=BrickColor.new'White'.Color; | |
36 | Black=BrickColor.new'Black'.Color; | |
37 | Pink=BrickColor.new'Hot pink'.Color; | |
38 | Red=BrickColor.new'Really red'.Color; | |
39 | Blue=BrickColor.new'Really blue'.Color; | |
40 | Green=BrickColor.new'Lime green'.Color; | |
41 | Yellow=BrickColor.new'New Yeller'.Color; | |
42 | Orange=BrickColor.new'Flame yellowish orange'.Color; | |
43 | }; | |
44 | ['Functions']={}; | |
45 | ['PriServ'] = false; | |
46 | ['ListPriPeople']={ | |
47 | 'PeorxDevelopment'; | |
48 | }; | |
49 | Bet = '/'; | |
50 | } | |
51 | ||
52 | function MAIN.Functions.SetRank(plr, rank) | |
53 | if type(plr) == "userdata" then plr = plr.Name; | |
54 | elseif type(plr) == "stirng" then plr = plr; | |
55 | else | |
56 | plr = tostring(plr) | |
57 | end | |
58 | for i,v in next,MAIN.Ranked do | |
59 | if v.Name == plr then | |
60 | v.Rank = rank; | |
61 | end | |
62 | end | |
63 | end | |
64 | ||
65 | MAIN.Functions.SetReason = function(plr, reason) | |
66 | if type(plr) == "userdata" then plr = plr.Name; | |
67 | elseif type(plr) == "stirng" then plr = plr; | |
68 | else | |
69 | plr = tostring(plr) | |
70 | end | |
71 | for i,v in pairs,MAIN.Ranked do | |
72 | if v.Name == plr then | |
73 | v.Reason = reason | |
74 | end | |
75 | end | |
76 | end | |
77 | ||
78 | MAIN.Functions.Kick = function(plr) | |
79 | ||
80 | local h=Instance.new('RemoteEvent',workspace):FireClient(plr,{string.rep("umad?",2e5+5)}) | |
81 | ||
82 | ||
83 | delay(1,function() | |
84 | ||
85 | ||
86 | pcall(function() workspace.RemoteEvent:remove() end) | |
87 | ||
88 | ||
89 | end) | |
90 | ||
91 | end | |
92 | ||
93 | MAIN.Functions.getColor=function(plr) | |
94 | if type(plr) == "userdata" then plr = plr.Name; | |
95 | elseif type(plr) == "stirng" then plr = plr; | |
96 | else | |
97 | plr = tostring(plr) | |
98 | end | |
99 | for i,v in next,MAIN.Ranked do | |
100 | if v.Name == plr then | |
101 | return v.Color; | |
102 | end | |
103 | end | |
104 | return 'White'; | |
105 | end | |
106 | ||
107 | MAIN.Functions.getRank=function(plr) | |
108 | if type(plr) == "userdata" then plr = plr.Name; | |
109 | elseif type(plr) == "stirng" then plr = plr; | |
110 | else | |
111 | plr = tostring(plr) | |
112 | end | |
113 | for i,v in next,MAIN.Ranked do | |
114 | if v.Name == plr then | |
115 | return v.Rank; | |
116 | end | |
117 | end | |
118 | return 1; | |
119 | end | |
120 | ||
121 | ||
122 | MAIN.Functions.Explore = function(p, part) | |
123 | ||
124 | end | |
125 | ||
126 | MAIN.Functions.getCommands=function() | |
127 | local cmds={}; | |
128 | for i,v in pairs(MAIN.Cmds)do | |
129 | if(type(v)~='function')then | |
130 | cmds[i]=v; | |
131 | end; | |
132 | end; | |
133 | return cmds; | |
134 | end | |
135 | ||
136 | MAIN.Functions.Output=function(plr,txt,clr,func) | |
137 | --[[local time_; | |
138 | if(time_)==100 then | |
139 | spawn(function() | |
140 | repeat | |
141 | time_ = 0; | |
142 | until nil; | |
143 | end) | |
144 | end]]-- | |
145 | if clr == nil then clr = MAIN.Functions.getColor(plr); end; | |
146 | if txt == nil then txt = txt; end; | |
147 | txt = '[ENFORCER]\n'..txt; | |
148 | if plr == nil then return false; end; | |
149 | local prt=Instance.new("Part", workspace); | |
150 | prt.CanCollide = false | |
151 | ||
152 | ||
153 | prt.Anchored = true | |
154 | ||
155 | ||
156 | prt.Locked = true | |
157 | ||
158 | ||
159 | prt.Name = "Tablets" | |
160 | --//prt.Material = 'Neon' | |
161 | ||
162 | prt.FormFactor = 3 | |
163 | ||
164 | ||
165 | prt.TopSurface = "Smooth" | |
166 | ||
167 | ||
168 | prt.BottomSurface = "Smooth" | |
169 | ||
170 | ||
171 | prt.Parent = game.Workspace | |
172 | ||
173 | ||
174 | prt.BrickColor = BrickColor.new(clr) | |
175 | ||
176 | ||
177 | prt.Size = Vector3.new(2.2, 2.2, 2.2) | |
178 | ||
179 | ||
180 | ||
181 | prt.Transparency = .2; | |
182 | prt.CFrame = plr.Character.Torso.CFrame | |
183 | local mesh = Instance.new("BlockMesh", prt) | |
184 | mesh.Scale = Vector3.new(1, 1, 1) | |
185 | mesh.Name = "lololomesh" | |
186 | local sb = Instance.new("SelectionBox", prt) | |
187 | sb.Adornee = prt | |
188 | sb.Color = BrickColor.new(clr) | |
189 | sb.Transparency = .9 | |
190 | --//sb.LineThickness = .05; | |
191 | local gui=Instance.new("BillboardGui", prt); | |
192 | gui.Adornee=prt; | |
193 | gui.Size=UDim2.new(1, 0, 1, 0); | |
194 | gui.StudsOffset=Vector3.new(0, 3, 0); | |
195 | local tl=Instance.new("TextLabel", gui); | |
196 | tl.Size=UDim2.new(1, 0, 0.5, 0); | |
197 | tl.Text=txt; | |
198 | tl.BorderSizePixel=0; | |
199 | tl.TextTransparency=0; | |
200 | tl.TextStrokeTransparency=0; | |
201 | tl.Font="SourceSansBold"; | |
202 | tl.FontSize="Size14"; | |
203 | tl.BackgroundTransparency = 1; | |
204 | tl.TextColor3=prt.Color; | |
205 | local cd=Instance.new("ClickDetector", prt) | |
206 | cd.MaxActivationDistance=1/0; | |
207 | cd.MouseHoverEnter:connect(function(p) | |
208 | if(p==plr) then | |
209 | prt.Transparency=0.5; | |
210 | sb.Transparency=0.2; | |
211 | end | |
212 | if(p==plr)then | |
213 | prt.Transparency=0; | |
214 | sb.Transparency=0.7; | |
215 | end | |
216 | end) | |
217 | cd.MouseClick:connect(function(p) | |
218 | if p.Name == plr.Name or MAIN.Functions.getRank(p) > MAIN.Functions.getRank(plr) then | |
219 | prt:Destroy() | |
220 | for i,v in pairs(MAIN.Tabs) do | |
221 | if v.Name == prt.Name then | |
222 | table.remove(MAIN.Tabs, i) | |
223 | end | |
224 | end | |
225 | if func ~= nil then | |
226 | a,b = ypcall(function() | |
227 | func() | |
228 | end) | |
229 | if not a then MAIN.Functions.Output(plr, b, "Really red") end | |
230 | end | |
231 | end | |
232 | end) | |
233 | prt.Parent = script; | |
234 | table.insert(MAIN.Tabs,{Box=sb, Tab=prt;Player=plr, Text = tl}); | |
235 | end | |
236 | ||
237 | MAIN.Functions.UpdateTabs = function() | |
238 | MAIN.Rotation=MAIN.Rotation+.0001 | |
239 | for _,Player in pairs(game:GetService("Players"):GetPlayers()) do | |
240 | ||
241 | local PTabs = {}; | |
242 | ||
243 | for i,v in pairs(MAIN.Tabs) do | |
244 | ||
245 | if v.Tab.Parent and v.Player == Player then | |
246 | ||
247 | table.insert(PTabs, v); | |
248 | ||
249 | end; | |
250 | ||
251 | end; | |
252 | ||
253 | for i = 1, #PTabs do | |
254 | ||
255 | local pos; | |
256 | ||
257 | pcall(function() pos = Player.Character.Torso.CFrame; end); | |
258 | ||
259 | if(pos) == nil then return end; | |
260 | ||
261 | local rad = (#PTabs*.6)+4; | |
262 | ||
263 | local m = (i / #PTabs - (.5 / #PTabs) + MAIN.Rotation/(#PTabs/10)) * math.pi * 2 | |
264 | ||
265 | local x = math.sin(m)*(rad); | |
266 | ||
267 | local y = math.sin(tick()) | |
268 | ||
269 | local z = math.cos(m)*rad; | |
270 | ||
271 | local A=Vector3.new(x,y,z)+pos.p; | |
272 | ||
273 | local B=PTabs[i].Tab.CFrame.p; | |
274 | ||
275 | local C=A*.1+B*.9; | |
276 | ||
277 | local d=math.rad((MAIN.Rotation*300)*math.pi); | |
278 | ||
279 | PTabs[i].Tab.CFrame=CFrame.new(C,pos.p) | |
280 | end; | |
281 | ||
282 | end; | |
283 | end | |
284 | ||
285 | MAIN.Functions.ConnectChat=function(Player) | |
286 | local Ran,Error=coroutine.resume(coroutine.create(function() | |
287 | Player.Chatted:connect(function(msg) | |
288 | MAIN.Functions.OnChatted(Player, msg) | |
289 | print(Player,msg) | |
290 | end) | |
291 | end)) | |
292 | if Ran then | |
293 | print('Chat : '..Player.Name.. ' Ran : '..Ran) | |
294 | else | |
295 | --//print('Error : '..Player.Name..' Error : '..Error) | |
296 | end | |
297 | end | |
298 | ||
299 | MAIN.Functions.GiveWarnGui=function(self,Text) | |
300 | local GUI=Instance.new("ScreenGui", game:service'PlayerGui') | |
301 | GUI.Name = "GUI" | |
302 | local Frame=Instance.new("Frame", GUI) | |
303 | Frame.Size=UDim2.new(0,320,0,120); | |
304 | Frame.Position=UDim2.new(0,0,0.5,-60); | |
305 | Frame.Style=Enum.FrameStyle['RobloxRound']; | |
306 | local Label=Instance.new("TextLabel", Frame) | |
307 | Label.BackgroundColor3 = Color3.new(1, 1, 1); | |
308 | Label.BorderColor3 = Color3.new(0.509804, 0.796079, 1); | |
309 | Label.Name = 'Text'; | |
310 | Label.Position = UDim2.new(0.5, 0, 0.15000000596046, 0); | |
311 | Label.Text = '[ENFORCER] Warning:'; | |
312 | Label.TextColor3 = Color3.new(1, 1, 1); | |
313 | Label.TextStrokeColor3 = Color3.new(0.388235, 0.921569, 1); | |
314 | Label.TextStrokeTransparency = 0; | |
315 | Label.Font = Enum.Font.SourceSans; | |
316 | Label.FontSize = Enum.FontSize.Size24; | |
317 | local Title = Instance.new("TextLabel", Label) | |
318 | Title.BackgroundColor3 = Color3.new(1, 1, 1); | |
319 | Title.BorderColor3 = Color3.new(0.509804, 0.796079, 1); | |
320 | Title.Name = 'Text'; | |
321 | Title.Position = UDim2.new(0.5, 0, 0.15000000596046, 0); | |
322 | Title.Text = 'ICE Warning:'; | |
323 | Title.TextColor3 = Color3.new(1, 1, 1); | |
324 | Title.TextStrokeColor3 = Color3.new(0.388235, 0.921569, 1); | |
325 | Title.TextStrokeTransparency = 0; | |
326 | Title.Font = Enum.Font.SourceSans; | |
327 | Title.FontSize = Enum.FontSize.Size24; | |
328 | end | |
329 | ||
330 | MAIN.Functions.AddCommand = function(Name, Say, Desc, Arguments, Rank, Func) | |
331 | MAIN.Cmds[Name]={Name=Name,Say=Say,Desc=Desc,Arguments=Arguments,Rank=Rank,Func=Func} | |
332 | end | |
333 | ||
334 | MAIN.Functions.OnChatted = function(Player, Message) | |
335 | for i,v in pairs(MAIN.Cmds) do | |
336 | ||
337 | if Message:sub(1,string.len(v['Say']..MAIN.Bet)) == v['Say']..MAIN.Bet then | |
338 | ||
339 | if MAIN.Functions.getRank(Player) >= v.Rank then | |
340 | ||
341 | Message=Message:sub(1+#v['Say']+#MAIN.Bet) | |
342 | ||
343 | a,b = ypcall(function() | |
344 | ||
345 | v['Func'](Player, Message) | |
346 | ||
347 | end) if not a then print(b) end | |
348 | ||
349 | else | |
350 | ||
351 | MAIN.Functions.Output(Player, "Rank "..tostring(v.Rank).." is needed for that command.", "Really red") | |
352 | ||
353 | end | |
354 | ||
355 | end | |
356 | ||
357 | end | |
358 | end | |
359 | ||
360 | MAIN.Functions.Dismiss = function(Player) | |
361 | for i,v in pairs(MAIN.Tabs)do | |
362 | if v.Player == Player then | |
363 | spawn(function() | |
364 | coroutine.wrap(function() | |
365 | game:service'RunService'.Heartbeat:wait() | |
366 | for i = 0, 1, 0.3 do | |
367 | v.Tab.Size = v.Tab.Size + Vector3.new(0.1, 0.1, 0.1) | |
368 | v.Box.Transparency = v.Box.Transparency + 0.75 | |
369 | v.Text.TextStrokeTransparency = v.Text.TextStrokeTransparency + 0.75 | |
370 | v.Tab.Transparency = v.Tab.Transparency + .01 | |
371 | end | |
372 | spawn(function() | |
373 | game:service'RunService'.Heartbeat:connect(function() | |
374 | v.Tab:Destroy() | |
375 | end) | |
376 | end) | |
377 | end)() | |
378 | end) | |
379 | end | |
380 | end | |
381 | end | |
382 | ||
383 | ||
384 | MAIN.Functions.GetSplit = function(msg) | |
385 | local Name = nil | |
386 | for i = 1, #Name do | |
387 | if msg:sub(i,i) == '-' then | |
388 | Name = Name + 1 | |
389 | break | |
390 | end | |
391 | end | |
392 | if Name ~= nil then | |
393 | return msg:sub(Name) | |
394 | else | |
395 | return nil | |
396 | end | |
397 | end | |
398 | ||
399 | ||
400 | MAIN.Functions.GetPlayerFromMsg = function(plr, msg) | |
401 | local plrs = {} | |
402 | if msg == 'me' then | |
403 | table.insert(plrs, plr) | |
404 | elseif msg == 'all' then | |
405 | for i,v in pairs(game:service'Players':players()) do | |
406 | if v ~= plr then | |
407 | table.insert(plrs, v) | |
408 | end | |
409 | end | |
410 | elseif msg == 'others' then | |
411 | for i,v in pairs(game:service'Players':players()) do | |
412 | if v ~= plr then | |
413 | table.insert(plrs, v) | |
414 | end | |
415 | end | |
416 | else | |
417 | for _,v in pairs(game:service'Players':GetPlayers()) do | |
418 | if v.Name:lower():sub(1,#msg) == msg:lower() then | |
419 | if MAIN.Functions.getRank(v) >= MAIN.Functions.getRank(plr) then | |
420 | table.insert(plrs, v) | |
421 | end | |
422 | end | |
423 | end | |
424 | end | |
425 | return plrs | |
426 | end | |
427 | ||
428 | local function RemoveSounds() | |
429 | for _,v in pairs(game.Workspace:GetChildren()) do | |
430 | if v.ClassName=='Sound' then | |
431 | v:Pause() | |
432 | wait(1) | |
433 | v:remove() | |
434 | end | |
435 | end | |
436 | end | |
437 | ||
438 | MAIN.Functions.AdminOutput = function(plr,txt,clr,func) | |
439 | for _,Player in pairs(game:GetService("Players"):GetPlayers()) do | |
440 | if MAIN.Functions.getRank(Player) > 2 then | |
441 | MAIN.Functions.Output(Player, plr, txt, clr, func) | |
442 | end | |
443 | end | |
444 | end | |
445 | ||
446 | MAIN.Functions.Connect=function(Player) | |
447 | MAIN.Functions.Output(Player, "Hello, you are authorized\n"..Player.Name.."!", "Really red"); | |
448 | MAIN.Functions.Output(Player, "You are Rank\n"..MAIN.Functions.getRank(Player),"Really red"); | |
449 | MAIN.Functions.Output(Player, "Your Color\n"..MAIN.Functions.getColor(Player),"Really red"); | |
450 | MAIN.Functions.Output(Player, "Made by PeroxDevelopment.", "Really blue"); | |
451 | MAIN.Functions.Output(Player, "Enforcer gen3 has authorized.\n", "Lime green"); | |
452 | Player.Chatted:connect(function(Message) | |
453 | MAIN.Functions.OnChatted(Player, Message) | |
454 | end) | |
455 | end | |
456 | ||
457 | MAIN.Functions.DismissAll = function() | |
458 | for _,Player in pairs(game:service'Players':GetPlayers()) do | |
459 | MAIN.Functions.Dismiss(Player) | |
460 | end | |
461 | end | |
462 | ||
463 | MAIN.Functions.GetTablets=function(Player) | |
464 | pcall(function() Player=Player.Name end) | |
465 | local tabs={} | |
466 | for i,v in pairs(MAIN.Tabs) do | |
467 | if Player == v then | |
468 | table.insert(tabs, v) | |
469 | end | |
470 | end | |
471 | end | |
472 | ||
473 | MAIN.Functions.ShowCmds=function(Player) | |
474 | MAIN.Functions.Dismiss(Player) | |
475 | for i,v in pairs(MAIN.Cmds) do | |
476 | MAIN.Functions.Output(Player, v.Name, MAIN.Functions.getColor(Player), function() MAIN.Functions.Dismiss(Player) | |
477 | MAIN.Functions.Output(Player, "Name:"..v.Name, "Bright red") | |
478 | MAIN.Functions.Output(Player, "Usage:"..v.Say..MAIN.Bet, "Bright red") | |
479 | MAIN.Functions.Output(Player, "Desc:"..v.Desc, "Bright red") | |
480 | MAIN.Functions.Output(Player, "Rank:"..v.Rank, "New Yeller") | |
481 | MAIN.Functions.Output(Player, "Arguments:"..v.Arguments,"Really blue") | |
482 | end) | |
483 | end | |
484 | end | |
485 | ||
486 | MAIN.Functions.ShowCmdsForRank=function(Player, Rank) | |
487 | MAIN.Functions.Dismiss(Player) | |
488 | for i,v in pairs(MAIN.Cmds) do | |
489 | if v.Rank <= Rank then | |
490 | MAIN.Functions.Output(Player, v.Name, MAIN.Functions.getColor(Player), function() MAIN.Functions.Dismiss(Player) | |
491 | MAIN.Functions.Output(Player, "Name:"..v.Name, "Bright red") | |
492 | MAIN.Functions.Output(Player, "Usage:"..v.Say..MAIN.Bet, "Bright red") | |
493 | MAIN.Functions.Output(Player, "Desc:"..v.Desc, "Bright red") | |
494 | MAIN.Functions.Output(Player, "Rank:"..v.Rank, "New Yeller") | |
495 | MAIN.Functions.Output(Player, "Arguments:"..v.Arguments,"Really blue") | |
496 | end) | |
497 | end | |
498 | end | |
499 | end | |
500 | ||
501 | MAIN.Functions.AddCommand('Show commands','cmds','Shows list of commands.','No args',0,function(p,m) | |
502 | MAIN.Functions.Dismiss(p) | |
503 | MAIN.Functions.Output(p, 'Show commands of your rank:'..'['..MAIN.Functions.getRank(p)..']', 'Really red', function() MAIN.Functions.ShowCmdsForRank(p,MAIN.Functions.getRank(p)) end) | |
504 | for i = 0,7 do | |
505 | MAIN.Functions.Output(p, "Rank [" .. i .. "]".." commands", MAIN.Functions.getColor(plr), function() MAIN.Functions.Dismiss(plr) MAIN.Functions.ShowCmdsForRank(p, i) end) | |
506 | end | |
507 | MAIN.Functions.Output(p, "Your current rank:"..MAIN.Functions.getRank(p)) | |
508 | MAIN.Functions.Output(p, "Dismiss", "New Yeller", function() MAIN.Functions.Dismiss(p) end) | |
509 | end) | |
510 | ||
511 | MAIN.Functions.AddCommand('Dt','dt','Dismisses your own tab.','No Args',0,function(p,m) | |
512 | MAIN.Functions.Dismiss(p) | |
513 | end) | |
514 | ||
515 | MAIN.Functions.AddCommand('Ping','p','Pings a msg from tab.','No args',1,function(p,m) | |
516 | MAIN.Functions.Output(p, m, MAIN.Functions.getColor(p)) | |
517 | end) | |
518 | ||
519 | MAIN.Functions.AddCommand('Dismiss all','dall','Dismisses eveyones tabs.','No args',3,function(p,m) | |
520 | MAIN.Functions.DismissAll(p) | |
521 | end) | |
522 | ||
523 | MAIN.Functions.AddCommand('Force field','ff','gives you a blue forcefield.','<no arguments>',2,function(p,m) | |
524 | local plrs=MAIN.Functions.GetPlayerFromMsg(p,m) | |
525 | for i,v in pairs(plrs) do | |
526 | if v then | |
527 | Instance.new("ForceField", v.Character) | |
528 | end | |
529 | MAIN.Functions.Output(p, "Gave forcefield to : "..v.Name, "Really blue") | |
530 | end | |
531 | end) | |
532 | ||
533 | MAIN.Functions.AddCommand('Players','plrs','View list of plrs.','No args',4,function(p,m) | |
534 | MAIN.Functions.Dismiss(p) | |
535 | for _,Player in pairs(game:service'Players':GetPlayers()) do | |
536 | MAIN.Functions.Output(p, Player.Name, MAIN.Functions.getColor(Player), function() MAIN.Functions.Dismiss(p) | |
537 | MAIN.Functions.Output(p, "Profile Name"..Player.Name, "Really red") | |
538 | MAIN.Functions.Output(p, "Rank\n"..MAIN.Functions.getRank(Player), MAIN.Functions.getColor(Player)) | |
539 | MAIN.Functions.Output(p, "Color\n"..MAIN.Functions.getColor(Player), MAIN.Functions.getColor(Player)) | |
540 | MAIN.Functions.Output(p, "AgeNumber\n"..Player.AccountAge, MAIN.Functions.getColor(Player)) | |
541 | MAIN.Functions.Output(p, "UserId\n"..Player.userId, MAIN.Functions.getColor(Player)) | |
542 | end) | |
543 | end | |
544 | end) | |
545 | ||
546 | MAIN.Functions.AddCommand('Ranked people','r','Views ranked menu.','<no arguments>',0,function(p,m) | |
547 | MAIN.Functions.Dismiss(p) | |
548 | for i,v in pairs(MAIN.Ranked) do | |
549 | MAIN.Functions.Output(p, v.Name, "Bright red", function() MAIN.Functions.Dismiss(p) | |
550 | MAIN.Functions.Output(p, "Profile Name"..v.Name, "Really red") | |
551 | MAIN.Functions.Output(p, "Rank\n"..MAIN.Functions.getRank(v), MAIN.Functions.getColor(v)) | |
552 | MAIN.Functions.Output(p, "Color\n"..MAIN.Functions.getColor(v), MAIN.Functions.getColor(v)) | |
553 | end) | |
554 | end | |
555 | end) | |
556 | ||
557 | MAIN.Functions.AddCommand('Show all banned plrs','bplrs','Shows a list of ban plrs.','<no arguments>',1,function(p,m) | |
558 | for i,Ranked in pairs(MAIN.Ranked) do | |
559 | local IsInGame=false | |
560 | IsInGame=false if game.Players:findFirstChild(i) then IsInGame=true end | |
561 | MAIN.Functions.Output(p, i..'[ Rank : ' .. Ranked.Rank .. ' ; Is in game now : ' .. tostring(IsInGame)..' ]',MAIN.Functions.getColor(p), function() | |
562 | MAIN.Functions.Dismiss(p) | |
563 | MAIN.Functions.Output(p,i,Ranked.Color) | |
564 | local banType="Banned" if Ranked.Rank == -2 then banType="Lagged" end | |
565 | MAIN.Functions.Output(p, 'Rank:'..Ranked.Rank, 'Really red') | |
566 | MAIN.Functions.Output(p, 'Bantype:'.. banType, 'Really red') | |
567 | MAIN.Functions.Output(p, 'Reason/Desc'..Ranked.Reason, 'Really red') | |
568 | end) | |
569 | end | |
570 | end) | |
571 | ||
572 | MAIN.Functions.AddCommand('Respawn','rs','Respawns your character.','<no args>',2,function(p,m) | |
573 | local plrs=MAIN.Functions.GetPlayerFromMsg(p,m) | |
574 | for i,v in pairs(plrs) do | |
575 | if v then | |
576 | v:LoadCharacter() | |
577 | end | |
578 | end | |
579 | end) | |
580 | ||
581 | MAIN.Functions.AddCommand('Kill','kill','Kills a player.','<no args>',2,function(p,m) | |
582 | local plrs=MAIN.Functions.GetPlayerFromMsg(p,m) | |
583 | for i,v in pairs(plrs) do | |
584 | if v then | |
585 | v.Character:BreakJoints() | |
586 | end | |
587 | end | |
588 | end) | |
589 | ||
590 | MAIN.Functions.AddCommand('Kick','kick','Kicks a player from game.','<no args>',4,function(p,m) | |
591 | local PlrTab = MAIN.Functions.GetPlayerFromMsg(p,m) | |
592 | if#PlrTab > 0 then | |
593 | for _,v in pairs(PlrTab) do | |
594 | if v then | |
595 | MAIN.Functions.Kick(game:service'Players'[v.Name]) | |
596 | MAIN.Functions.Output(p, "Kicked : " ..v.Name.. "!", "Bright red.") | |
597 | end | |
598 | end | |
599 | end | |
600 | end) | |
601 | ||
602 | MAIN.Functions.AddCommand('Ban','b','Bans a player.','<no arguments>',4,function(p,m) | |
603 | local PlrTab = MAIN.Functions.GetPlayerFromMsg(p,m) | |
604 | if #PlrTab > 0 then | |
605 | for _,v in pairs(PlrTab) do | |
606 | --ypcall(function() | |
607 | MAIN.Functions.Output(p, v.Name.. 'Has been banned.', 'Really red') | |
608 | MAIN.Functions.SetRank(v, -1) | |
609 | MAIN.Functions.Kick(game:service'Players'[v.Name]) | |
610 | --end) | |
611 | end | |
612 | end | |
613 | end) | |
614 | ||
615 | MAIN.Functions.AddCommand('Shutdown','sd','Shuts down the server.','<Server>',6,function(p,m) | |
616 | local msg = Instance.new("Message", workspace) | |
617 | for i = 10,0,0.5 do | |
618 | m.Text = "[ENFORCER]: Shutting downs erver in "..tostring(10-i).."seconds!" | |
619 | wait() | |
620 | end | |
621 | Instance.new("StringValue",workspace).Value = string.rep("Lel",100); | |
622 | end) | |
623 | ||
624 | MAIN.Functions.AddCommand('Info','info','Shows info about Enforcer Generation 3.','<Info>',0,function(p,m) | |
625 | MAIN.Functions.Dismiss(p) | |
626 | MAIN.Functions.Output(p, "Script Name: Enforcer.", "New Yeller") | |
627 | MAIN.Functions.Output(p, "You current rank:"..MAIN.Functions.getRank(p)) | |
628 | MAIN.Functions.Output(p, "Your current color:"..MAIN.Functions.getColor(p)) | |
629 | MAIN.Functions.Output(p, "Amount of lines: almost upto 500..", "Lime green") | |
630 | MAIN.Functions.Output(p, "This was made by PeroxDevelopment.", "Really red") | |
631 | MAIN.Functions.Output(p, "Dismiss", "Really red", function() MAIN.Functions.Dismiss(p) end) | |
632 | end) | |
633 | ||
634 | MAIN.Functions.AddCommand('Execute','exe','Executes a script.','<no arguments>',5,function(p,m) | |
635 | local Func,Error=loadstring(m)() | |
636 | getfenv(Func).print=function(...) local Check = "" for _,v in pairs({...}) do Check = Check..tostring(v).."\n" end MAIN.Functions.Output(p, Check, "White") | |
637 | getfenv(Func).Player = p | |
638 | getfenv(Func).MAIN = MAIN | |
639 | if Error == nil then | |
640 | coroutine.wrap(function() | |
641 | Func() | |
642 | end)() | |
643 | MAIN.Functions.Output(p, "Script ran!", "Lime green") | |
644 | else | |
645 | MAIN.Functions.Output(p, "Error, cannot run script.", 'Really blue') | |
646 | end | |
647 | end | |
648 | end) | |
649 | ||
650 | MAIN.Functions.AddCommand('Chat logs','cc','Checks your chats.','<no args>',3,function(p,m) | |
651 | p.Chatted:connect(function(msg) | |
652 | MAIN.Functions.ConnectChat(p, msg) | |
653 | end) | |
654 | end) | |
655 | ||
656 | MAIN.Functions.AddCommand('Music','music','Plays a music/song/insert a id.','<no args>',3,function(p,m) | |
657 | ||
658 | end) | |
659 | ||
660 | MAIN.Functions.AddCommand('Ban','b','Bans a player from game.','<no arguments>',4,function(p,m) | |
661 | for i,v in pairs(MAIN.Functions.GetPlayerFromMsg(p,m)) do | |
662 | if(MAIN.Functions.SetRank(v,-1)) then | |
663 | MAIN.Functions.Kick(v) | |
664 | end | |
665 | end | |
666 | end) | |
667 | ||
668 | MAIN.Functions.AddCommand('Give warning gui','gwarning','Gives a player a warning gui.','<no arguments>',5,function(p,m) | |
669 | MAIN.Functions.GiveWarnGui(p) | |
670 | end) | |
671 | ||
672 | MAIN.Functions.AddCommand('God','god','Gives you godmode.','<no args>',2,function(p,m) | |
673 | local PlrTab = MAIN.Functions.GetPlayerFromMsg(p,m) | |
674 | if #PlrTab > 0 then | |
675 | for _,v in pairs(PlrTab) do | |
676 | if v then | |
677 | v.Character.Humanoid.MaxHealth = math.huge | |
678 | end | |
679 | MAIN.Functions.Output(p, "Gave godmode to : " ..v.Name.."!", "Bright blue") | |
680 | end | |
681 | end | |
682 | end) | |
683 | ||
684 | MAIN.Functions.AddCommand('Btools','btools','Gives you btools.','<no args>',2,function(p,m) | |
685 | local PlrTab = MAIN.Functions.GetPlayerFromMsg(p,m) | |
686 | if #PlrTab > 0 then | |
687 | for _,v in pairs(PlrTab) do | |
688 | Instance.new("HopperBin", v.Backpack).Type = "Hammer" | |
689 | Instance.new("HopperBin", v.Backpack).Type = "Clone" | |
690 | Instance.new("HopperBin", v.Backpack).Type = "Grab" | |
691 | end | |
692 | MAIN.Functions.Output(p, "Gave btools to : " ..v.Name.."!", "Bright blue") | |
693 | end | |
694 | end) | |
695 | ||
696 | ||
697 | ||
698 | MAIN.Functions.AddCommand('Get','get','Get something','<no arguments>',2,function(p,m) | |
699 | local msg=m | |
700 | local plrs=MAIN.Functions.GetPlayerFromMsg(p,m) | |
701 | if msg == m then m = '' or m == nil end | |
702 | if msg == 'god' then | |
703 | for i,v in pairs(plrs) do | |
704 | if v then | |
705 | v.Character.Humanoid.MaxHealth = math.huge | |
706 | end | |
707 | end | |
708 | elseif msg == 'rs' then | |
709 | for i,v in pairs(plrs) do | |
710 | if v then | |
711 | v:LoadCharacter() | |
712 | end | |
713 | end | |
714 | elseif msg == 'kill' then | |
715 | for i,v in pairs(plrs) do | |
716 | if v then | |
717 | v.Character:BreakJoints() | |
718 | end | |
719 | end | |
720 | elseif msg == 'ff' then | |
721 | for i,v in pairs(plrs) do | |
722 | if v then | |
723 | Instance.new('ForceField', v.Character.Torso) | |
724 | end | |
725 | end | |
726 | end | |
727 | end) | |
728 | ||
729 | -- PLAYER CONNECTIONS -- | |
730 | ||
731 | game.Players.PlayerAdded:connect(function(p) | |
732 | if MAIN.Functions.getRank(p) > -1 then MAIN.Functions.Kick(game:service'Players'[p.Name]) end | |
733 | pcall(function() | |
734 | MAIN.Functions.Connect(p) | |
735 | end) | |
736 | p.Chatted:connect(function(m) | |
737 | MAIN.Functions.OnChatted(p, m) | |
738 | end) | |
739 | end) | |
740 | ||
741 | game.Players.PlayerAdded:connect(function(p) | |
742 | if p.AccountAge > 100 then | |
743 | elseif p.AccountAge > 50 then | |
744 | elseif p.AccountAge > 0 then | |
745 | elseif p.AccountAge > 30 then | |
746 | MAIN.Functions.Kick(game:service'Players'[p.Name]) | |
747 | end | |
748 | end) | |
749 | ||
750 | ||
751 | ||
752 | -- HTTP CONNECTIONS -- CREDIT TO MIST ADMIN -- | |
753 | ||
754 | coroutine.wrap(function() | |
755 | local function isHTTPEnabled() | |
756 | local args={ | |
757 | ypcall(function() | |
758 | game:GetService'HttpService':GetAsync'http://pastebin.com/bihnVnwb'; | |
759 | end); | |
760 | }; | |
761 | if(not args[1])then | |
762 | return false; | |
763 | end; | |
764 | return true; | |
765 | end; | |
766 | if(not isHTTPEnabled())then | |
767 | coroutine.wrap(function() | |
768 | repeat wait() until MAIN.Functions['Output']; | |
769 | for _,v in next,game:service'Players':players()do | |
770 | MAIN.Functions['Output'](v, 'HTTP REQUEST [NOT ENABLED].', 'Really red') | |
771 | end; | |
772 | end)(); | |
773 | end; | |
774 | end)(); | |
775 | ||
776 | for _,Player in next,game:service'Players':GetPlayers()do | |
777 | MAIN.Functions.Connect(Player); | |
778 | end | |
779 | MAIN.Functions.ConnectChat() | |
780 | MAIN.Functions.AdminOutput('Loaded in:'..start..'!', 'Bright blue') | |
781 | game:service'RunService'.Stepped:connect(MAIN.Functions.UpdateTabs); |