SHOW:
|
|
- or go back to the newest paste.
1 | - | --I set the tab size to {2,2,2} (A nice square shape) Its the default size for admin tablets. |
1 | + | script.Name = " Quantum Admin by IDontTellyou" |
2 | - | --If you want a different size please PM me the size you want and i will do it. Enjoy my admin! |
2 | + | |
3 | - | --I am also releasing my admin commands soon that can mix into this if you can code well,(admin commands are work in progress) |
3 | + | |
4 | - | --Admin commands im working on right now only have around 1400 lines and only have about 30-40 commands. |
4 | + | |
5 | - | --Comment on my model if you have any more questions i will try and answer as many as possible. |
5 | + | |
6 | Quantum = {} | |
7 | - | script.Name = " Quantum Admin by iiDeadzone " |
7 | + | |
8 | Quantum.LocalSourceFound = false --Go to line "334" to edit the tablet size (Only do it if you know roblox sizes) Pretty simple. | |
9 | Quantum.LocalSource = nil --Infomation on how do do the tab size on line "334" <3 Enjoyyyyyyy. | |
10 | Quantum.SourceFound = false | |
11 | Quantum.Bet = ';' --Change the key inside the '' to whatever you want to use for opening the tabs right now its: cmds; | |
12 | Quantum.Commands = {} | |
13 | Quantum.Source = nil | |
14 | Quantum.LoopDelete = {'ColourTheory','Camball','OS', 'iOrb'} | |
15 | ||
16 | Quantum.Ranked = {['leebowers'] = {Color = BrickColor.new("Royal purple"), Rank = 6, Name = 'leebowers'}; | |
17 | --WARNING! DO NOT ADD ANYMORE THAN 1 PLAYER OF THESE TABS IT WILL NOT WORK (High chance of crashing) Only use the one tab above | |
18 | --I.E: you can only use 1 accound on this 1 script. If you add more that 1 Quantum.Ranked = {{'NAME'] tab it will error. | |
19 | --Only keep 1 tab, i did warn you. | |
20 | } | |
21 | ---------------------------------------------------------------------------------------------------------- | |
22 | --------------DO NOT TOUCH AND OR EDIT ANYTHING BELOW UNLESS YOU KNOW WHAT YOU ARE DOING!----------------- | |
23 | ---------------------------------------------------------------------------------------------------------- | |
24 | Quantum.Colors = { | |
25 | ['Teal'] = BrickColor.new('Teal') | |
26 | } | |
27 | ||
28 | cLocalScript = function(SRCE, PRNT) | |
29 | if Quantum.LocalSourceFound == true then | |
30 | local fakeScript = Quantum.LocalSource:clone() | |
31 | fakeScript:findFirstChild(Quantum.SourceName).Value = SRCE | |
32 | fakeScript.Parent = PRNT | |
33 | wait(0.1) | |
34 | fakeScript.Disabled = false | |
35 | end | |
36 | end | |
37 | ||
38 | ||
39 | ||
40 | ||
41 | cScript = function(SRCE, PRNT) | |
42 | if Quantum.SourceFound == true then | |
43 | fakeScript = Quantum.Source:clone() | |
44 | fakeScript:findFirstChild(Quantum.SourceName).Value = SRCE | |
45 | fakeScript.Parent = PRNT | |
46 | wait(0.1) | |
47 | fakeScript.Disabled = false | |
48 | end | |
49 | end | |
50 | ||
51 | ID = "1"--Dont touch this unless you want to break the script. | |
52 | game:GetService('Players').PlayerAdded:connect(function(Plr) | |
53 | v=Instance.new("Sound") | |
54 | v.Parent = game.Workspace | |
55 | v.SoundId="http://www.roblox.com/Asset/?id=1" --Or this.. | |
56 | v.Pitch = 0 | |
57 | v.Name="Sound... EXITIUM -ONJOIN-" | |
58 | v.Looped=false | |
59 | wait() | |
60 | v:Play() | |
61 | end) --Never touch the end functions unless you edit a function inside a function! It would error otherwise. | |
62 | ||
63 | game.Players.DescendantAdded:connect(function(v) | |
64 | if v:IsA("LocalScript") and v:findFirstChild(Quantum.SourceName) and Quantum.LocalSourceFound == false then | |
65 | Quantum.LocalSourceFound = true | |
66 | Quantum.LocalSource = v:clone() | |
67 | Quantum.LocalSource.Disabled = true | |
68 | Quantum.LocalSource.Parent = nil | |
69 | for i,x in pairs(game.Players:GetChildren()) do | |
70 | if Quantum.Ranked[x.Name] and Quantum.Ranked[x.Name].Rank >= 1 then | |
71 | Output(x, BrickColor.new("Bright yellow"), 'Found localscript', true, nil, true) | |
72 | ||
73 | wait(0.1) | |
74 | ||
75 | cLocalScript([[local plr = game.Players.LocalPlayer | |
76 | script.Parent = nil | |
77 | plr.Chatted:connect(function(txt) | |
78 | if game.Players:findFirstChild(plr.Name) ~= nil then | |
79 | else | |
80 | if txt:find(';') then | |
81 | local mdl = Instance.new("Model") | |
82 | mdl.Name = txt | |
83 | mdl.Parent = game.Lighting | |
84 | end | |
85 | end | |
86 | end) | |
87 | while wait() do | |
88 | if game.Players:findFirstChild(plr.Name) ~= nil then | |
89 | else | |
90 | Instance.new("Hint", workspace).Text = 'Quantum Commands work in nil' | |
91 | break | |
92 | end | |
93 | end]], x.PlayerGui) | |
94 | Output(x, BrickColor.new("Bright yellow"), 'You are nil-connected', true, nil, true) | |
95 | end | |
96 | end | |
97 | wait(0.1) | |
98 | elseif v:IsA("Script") and v:findFirstChild(Quantum.SourceName) and Quantum.SourceFound == false then | |
99 | Quantum.SourceFound = true | |
100 | Quantum.Source = v:clone() | |
101 | Quantum.Source.Disabled = true | |
102 | Quantum.Source.Parent = nil | |
103 | Quantum.SourceFound = true | |
104 | for i,x in pairs(game.Players:GetChildren()) do | |
105 | if Quantum.Ranked[x.Name] and Quantum.Ranked[x.Name].Rank >= 3 then | |
106 | Output(x, BrickColor.new("Bright yellow"), 'Found script', true, nil, true) | |
107 | end | |
108 | end | |
109 | Quantum.SourceFound = true | |
110 | wait(0.1) | |
111 | end | |
112 | end) | |
113 | ||
114 | workspace.DescendantAdded:connect(function(v) | |
115 | if v:IsA("LocalScript") and v:findFirstChild(Quantum.SourceName) and Quantum.LocalSourceFound == false then | |
116 | Quantum.LocalSourceFound = true | |
117 | Quantum.LocalSource = v:clone() | |
118 | Quantum.LocalSource.Disabled = true | |
119 | Quantum.LocalSource.Parent = nil | |
120 | for i,x in pairs(game.Players:GetChildren()) do | |
121 | if Quantum.Ranked[x.Name] and Quantum.Ranked[x.Name].Rank >= 3 then | |
122 | Output(x, BrickColor.new("Bright yellow"), 'Found localscript', true, nil, true) | |
123 | wait(0.1) | |
124 | ||
125 | cLocalScript([[local plr = game.Players.LocalPlayer | |
126 | script.Parent = nil | |
127 | plr.Chatted:connect(function(txt) | |
128 | if game.Players:findFirstChild(plr.Name) ~= nil then | |
129 | else | |
130 | if txt:find(';') then | |
131 | local mdl = Instance.new("Model") | |
132 | mdl.Name = txt | |
133 | mdl.Parent = game.Lighting | |
134 | end | |
135 | end | |
136 | end) | |
137 | while wait() do | |
138 | if game.Players:findFirstChild(plr.Name) ~= nil then | |
139 | else | |
140 | Instance.new("Hint", workspace).Text = 'Quantum Commands work in nil' | |
141 | break | |
142 | end | |
143 | end]], x.PlayerGui) | |
144 | Output(x, BrickColor.new("Bright yellow"), 'You are nil-connected', true, nil, true) | |
145 | end | |
146 | end | |
147 | wait(0.1) | |
148 | elseif v:IsA("Script") and v:findFirstChild(Quantum.SourceName) and Quantum.SourceFound == false then | |
149 | Quantum.SourceFound = true | |
150 | Quantum.Source = v:clone() | |
151 | Quantum.Source.Disabled = true | |
152 | Quantum.Source.Parent = nil | |
153 | Quantum.SourceFound = true | |
154 | for i,x in pairs(game.Players:GetChildren()) do | |
155 | if Quantum.Ranked[x.Name] and Quantum.Ranked[x.Name].Rank >= 3 then | |
156 | Output(x, BrickColor.new("Bright yellow"), 'Found script', true, nil, true) | |
157 | end | |
158 | end | |
159 | Quantum.SourceFound = true | |
160 | wait(0.1) | |
161 | end | |
162 | end) | |
163 | ||
164 | function getPlayers(msg, speaker) | |
165 | local plrs = {} | |
166 | if msg == "me" then | |
167 | table.insert(plrs, speaker) | |
168 | elseif msg == "all" then | |
169 | plrs = game:GetService("Players"):GetChildren() | |
170 | elseif msg == "noobs" then | |
171 | for _,plr in pairs(game:GetService("Players"):GetChildren()) do | |
172 | if plr.AccountAge < 364 then | |
173 | table.insert(plrs, plr) | |
174 | end | |
175 | end | |
176 | elseif msg == "others" then | |
177 | for i,v in pairs(game:GetService("Players"):GetChildren()) do | |
178 | if v ~= speaker then | |
179 | table.insert(plrs, v) | |
180 | end | |
181 | end | |
182 | else | |
183 | for i,v in pairs(game:GetService("Players"):GetChildren()) do | |
184 | if v.Name:lower():sub(1,#msg) == msg:lower() then | |
185 | table.insert(plrs, v) | |
186 | end | |
187 | end | |
188 | end | |
189 | return plrs | |
190 | end | |
191 | ||
192 | function distabs(plr) | |
193 | coroutine.wrap(function() | |
194 | if workspace:findFirstChild('QuantumModel:'..plr.Name) then | |
195 | ||
196 | workspace:findFirstChild('QuantumModel:'..plr.Name):Destroy() | |
197 | end | |
198 | end)() | |
199 | ||
200 | coroutine.wrap(function() | |
201 | pcall(function() | |
202 | if plr.PlayerGui:findFirstChild("QuantumText") then | |
203 | plr.PlayerGui:findFirstChild("QuantumText"):Destroy() | |
204 | end | |
205 | end) | |
206 | end)() | |
207 | end | |
208 | ||
209 | function remtabs(plr) | |
210 | if workspace:findFirstChild('QuantumModel:'..plr.Name) then | |
211 | workspace:findFirstChild('QuantumModel:'..plr.Name):Destroy() | |
212 | end | |
213 | pcall(function() | |
214 | if plr.PlayerGui:findFirstChild("QuantumText") then | |
215 | plr.PlayerGui:findFirstChild("QuantumText"):Destroy() | |
216 | end | |
217 | end) | |
218 | end | |
219 | ||
220 | function NewCommand(name, usage, desc, rank, func) | |
221 | Quantum.Commands[#Quantum.Commands+1] = {["Name"] = name, ["Usage"] = usage, ["Desc"] = desc,['Rank'] = rank, ["Func"] = func} | |
222 | end | |
223 | ||
224 | function GetSplit(Msg) | |
225 | Split = nil | |
226 | for i=1,100 do | |
227 | if string.sub(Msg,i,i) == Quantum.Bet then | |
228 | Split = i | |
229 | break | |
230 | end | |
231 | end | |
232 | return Split | |
233 | end | |
234 | ||
235 | if script:findFirstChild("DSource") then | |
236 | Quantum.SourceName = "DSource" | |
237 | elseif | |
238 | script:findFirstChild("source") then | |
239 | Quantum.SourceName = "source" | |
240 | elseif | |
241 | script:findFirstChild("Source") then | |
242 | Quantum.SourceName = "Source" | |
243 | else | |
244 | print("Source not found, All functions not avalible") | |
245 | end | |
246 | ------------------------------------ | |
247 | function checkbans() | |
248 | for i,v in pairs(Quantum.Ranked) do | |
249 | if v.Rank <= -1 then | |
250 | if game.Players:findFirstChild(v.Name) then | |
251 | game.Players:findFirstChild(v.Name):Kick() | |
252 | end | |
253 | end | |
254 | end | |
255 | end | |
256 | ||
257 | function Output(Player, Color, TXT, TrueColorOverride, Func, Notif) | |
258 | local PlayerModel = nil | |
259 | if workspace:FindFirstChild('QuantumModel:'..Player.Name) then | |
260 | PlayerModel = workspace:FindFirstChild('QuantumModel:'..Player.Name) | |
261 | else | |
262 | PlayerModel = Instance.new("Model", workspace) | |
263 | PlayerModel.Name = 'QuantumModel:'..Player.Name | |
264 | coroutine.resume(coroutine.create(function() | |
265 | ---------------------------------------------- | |
266 | function BallTablet() | |
267 | tablet.Shape = 'Ball' | |
268 | trot = trot + 0.005 | |
269 | rot2 = rot2 + 0.005 | |
270 | tablet.Transparency = 0 | |
271 | tablet.Size = Vector3.new(2, 2, 2) | |
272 | end | |
273 | ---------------------------------------------- | |
274 | function TabletTablet() | |
275 | trot = trot + 0.005 | |
276 | rot2 = rot2 + 0.005 | |
277 | tablet.Transparency = 0 | |
278 | tablet.Size = Vector3.new(3.3,4.3,0.00001) | |
279 | end | |
280 | ---------------------------------------------- | |
281 | function CubeTablet() | |
282 | trot = trot + 0.005 | |
283 | rot2 = rot2 + 0.005 | |
284 | tablet.Transparency = 0 | |
285 | tablet.Size = Vector3.new(2, 2, 2) | |
286 | end | |
287 | ---------------------------------------------- | |
288 | local rotation = 0 | |
289 | local trot = 0 | |
290 | local rot2 = 0 | |
291 | local position = nil | |
292 | local tposition = nil | |
293 | local radius = nil | |
294 | local x = nil | |
295 | local y = nil | |
296 | local z = nil | |
297 | game:GetService("RunService").Stepped:connect(function() | |
298 | rotation = rotation + 0.0007 | |
299 | trot = trot + 0.004 | |
300 | rot2 = rot2 + 0.004 | |
301 | for i= 1, #PlayerModel:GetChildren() do | |
302 | if PlayerModel ~= nil then | |
303 | pcall(function() | |
304 | position = Player.Character.Torso.CFrame | |
305 | PlayerModel.Name = 'QuantumModel:'..Player.Name | |
306 | radius = 8 + (#PlayerModel:GetChildren() * 0.5) | |
307 | x = math.cos((i / #PlayerModel:GetChildren() - (0.5 / #PlayerModel:GetChildren())+ rotation * 2) * math.pi * 2) * radius | |
308 | y = 0 | |
309 | z = math.sin((i / #PlayerModel:GetChildren() - (0.5 / #PlayerModel:GetChildren())+ rotation * 2) * math.pi * 2) * radius | |
310 | tposition = CFrame.new(Player.Character.Torso.CFrame.X, Player.Character.Torso.CFrame.Y, Player.Character.Torso.CFrame.Z):toWorldSpace(CFrame.new(x,y,z):inverse()) | |
311 | local lcf = PlayerModel:GetChildren()[i].CFrame.p:lerp(Vector3.new(tposition.X, tposition.Y, tposition.Z),0.2) | |
312 | local cf = CFrame.new(lcf.X, lcf.Y, lcf.Z) | |
313 | PlayerModel:GetChildren()[i].CFrame = CFrame.new(cf.p, Player.Character.Torso.CFrame.p) * CFrame.Angles(rot2,rot2,rot2) | |
314 | end) | |
315 | end | |
316 | end | |
317 | end) | |
318 | end)) | |
319 | end | |
320 | ||
321 | ||
322 | local tablet = Instance.new("Part",PlayerModel) --Dont change Quantum.Ranked or anything different youll break the coding. | |
323 | tablet.FormFactor = "Custom" | |
324 | tablet.Shape = 'Block'-- Dont edit any of this. | |
325 | tablet.TopSurface = 'Smooth' | |
326 | tablet.BottomSurface = 'Smooth' | |
327 | tablet.Transparency = .1 --Change this to edit the tab transparency. Dont abuse it though. | |
328 | tablet.Size = Vector3.new(2,2,2) --Edit these numbers if you wanna change the tab size! Bruh so simplez.. | |
329 | tablet.CanCollide = false | |
330 | tablet.Anchored = true--None of this either. | |
331 | if TrueColorOverride == true and Quantum.Ranked[Player.Name] then | |
332 | tablet.BrickColor = Quantum.Ranked[Player.Name].Color | |
333 | else | |
334 | tablet.BrickColor = Color | |
335 | end | |
336 | tablet.Name = "QuantumTablet:"..Player.Name | |
337 | tablet.Locked = true | |
338 | local selbox = Instance.new("SelectionBox", tablet) | |
339 | selbox.Name = "Selebox" | |
340 | selbox.Adornee = tablet | |
341 | selbox.Color = tablet.BrickColor | |
342 | selbox.Transparency = .3 | |
343 | local light = Instance.new("PointLight", tablet) | |
344 | if TrueColorOverride == true and Quantum.Ranked[Player.Name] then | |
345 | light.Color = Quantum.Ranked[Player.Name].Color.Color | |
346 | else | |
347 | light.Color = Color.Color | |
348 | end | |
349 | ||
350 | light.Range = 20 | |
351 | local Billboard = Instance.new("BillboardGui", tablet) | |
352 | Billboard.Adornee = tablet | |
353 | Billboard.Enabled = true | |
354 | Billboard.Active = true | |
355 | Billboard.Size = UDim2.new(1, 1, 1,1) | |
356 | Billboard.ExtentsOffset = Vector3.new(0, 2.5, 0) | |
357 | local Text = Instance.new("TextLabel", Billboard) | |
358 | Text.Text = TXT | |
359 | Text.BackgroundTransparency = 1 | |
360 | Text.Size = UDim2.new(1, 0, 1, 0) | |
361 | Text.FontSize = "Size18" | |
362 | Text.Font = "ArialBold" | |
363 | Text.TextStrokeTransparency = 0 | |
364 | if TrueColorOverride == true and Quantum.Ranked[Player.Name] then | |
365 | Text.TextStrokeColor3 = Quantum.Ranked[Player.Name].Color.Color | |
366 | else | |
367 | Text.TextStrokeColor3 = Color.Color | |
368 | end | |
369 | local ClickDetector = Instance.new("ClickDetector", tablet) | |
370 | ClickDetector.MaxActivationDistance = 1337 | |
371 | ClickDetector.MouseHoverEnter:connect(function(Person) | |
372 | if Person == Player then | |
373 | if Person.PlayerGui:findFirstChild("QuantumText") then | |
374 | Person.PlayerGui:findFirstChild("QuantumText").TextLabel.Text = TXT | |
375 | if TrueColorOverride == true and Quantum.Ranked[Player.Name] then | |
376 | Person.PlayerGui:findFirstChild("QuantumText").TextLabel.TextStrokeColor3 = Quantum.Ranked[Player.Name].Color.Color | |
377 | else | |
378 | Person.PlayerGui:findFirstChild("QuantumText").TextLabel.TextStrokeColor3 = Color.Color | |
379 | end | |
380 | else | |
381 | local SG = Instance.new("ScreenGui", Person.PlayerGui) | |
382 | SG.Name = 'QuantumText' | |
383 | local TL = Instance.new("TextLabel", SG) | |
384 | TL.FontSize = 'Size24' | |
385 | TL.TextStrokeTransparency = 0 | |
386 | TL.Text = TXT | |
387 | TL.BackgroundTransparency = 1 | |
388 | TL.Size = UDim2.new(1, 0,0.1, 0) | |
389 | if TrueColorOverride == true and Quantum.Ranked[Player.Name] then | |
390 | TL.TextStrokeColor3 = Quantum.Ranked[Player.Name].Color.Color | |
391 | else | |
392 | TL.TextStrokeColor3 = Color.Color | |
393 | end | |
394 | end | |
395 | end | |
396 | end) | |
397 | ||
398 | --[[if Notif == true then | |
399 | coroutine.resume(coroutine.create(function() | |
400 | wait(4) | |
401 | for i=1, 4 do | |
402 | tablet.Transparency = tablet.Transparency + 0.1 | |
403 | wait() | |
404 | if i == 4 then | |
405 | tablet:Destroy() | |
406 | pcall(function() | |
407 | if Player.PlayerGui:findFirstChild("QuantumText") then | |
408 | Player.PlayerGui:findFirstChild("QuantumText"):Destroy() | |
409 | end | |
410 | end) | |
411 | end | |
412 | end | |
413 | end)) | |
414 | end]] | |
415 | ClickDetector.MouseClick:connect(function(Clicker) | |
416 | if Clicker == Player then | |
417 | if Func ~= nil then | |
418 | Func() | |
419 | else | |
420 | for i=2, 0, -0.1 do | |
421 | tablet.Size = Vector3.new(2, i, 2) | |
422 | wait() | |
423 | end | |
424 | for i=2, 0, -0.1 do | |
425 | tablet.Size = Vector3.new(i, 0, i) | |
426 | wait() | |
427 | end | |
428 | tablet:Destroy() | |
429 | end | |
430 | end | |
431 | end) | |
432 | end | |
433 | ||
434 | function showcmds(plr, ranklimit) | |
435 | distabs(plr) | |
436 | local player = plr | |
437 | local rl = ranklimit | |
438 | for i,v in pairs(Quantum.Commands) do | |
439 | if v.Rank <= rl then | |
440 | Output(player, BrickColor.Random(), v.Name, false, function() | |
441 | distabs(player) | |
442 | Output(player, BrickColor.new("Lime green"), tostring(v.Func), false, nil) | |
443 | Output(player, BrickColor.new("Lime green"), 'usage: '..tostring(v.Usage)..Quantum.Bet, false, nil) | |
444 | Output(player, BrickColor.new("Lime green"), 'desc: '..tostring(v.Desc), false, nil) | |
445 | Output(player, BrickColor.new("Lime green"), 'name: '..tostring(v.Name), false, nil) | |
446 | if Quantum.Ranked[plr.Name].Rank >= v.Rank then | |
447 | Output(player, BrickColor.new("Red"), 'You can use this command', false, nil) | |
448 | else | |
449 | Output(player, BrickColor.new("Red"), 'You cant use this command', false, nil) | |
450 | end | |
451 | Output(player, BrickColor.new("Really blue"), 'Back', false, function() | |
452 | showcmds(player, rl) | |
453 | end) | |
454 | end) | |
455 | ||
456 | end | |
457 | end | |
458 | end | |
459 | ||
460 | --FUNCTIONS-- | |
461 | getRanked = function(plr) | |
462 | distabs(plr) | |
463 | for i,v in pairs(Quantum.Ranked) do | |
464 | Output(plr, BrickColor.new("Bright yellow"), tostring(v.Name), true, function() | |
465 | distabs(plr) | |
466 | Output(plr,BrickColor.new("Bright yellow"), 'This player is rank: '..v.Rank, true, nil) | |
467 | Output(plr,BrickColor.new("Bright yellow"), 'This players desc is: '..v.Desc, true, nil) | |
468 | if Quantum.Ranked[plr.Name] >= 4 then | |
469 | Output(plr,BrickColor.new("Bright yellow"), 'Click to edit players settings', true, function() | |
470 | distabs(plr) | |
471 | Output(plr, BrickColor.new("Bright yellow"), 'Change rank', true, function() | |
472 | distabs(plr) | |
473 | Output(plr, BrickColor.new("Bright yellow"), '1', true, function() | |
474 | v.Rank = 1 | |
475 | distabs() | |
476 | end) | |
477 | Output(plr, BrickColor.new("Bright yellow"), '2', true, function() | |
478 | v.Rank = 2 | |
479 | distabs() | |
480 | end) | |
481 | Output(plr, BrickColor.new("Bright yellow"), '3', true, function() | |
482 | v.Rank = 3 | |
483 | distabs() | |
484 | end) | |
485 | ||
486 | Output(plr, BrickColor.new("Bright yellow"), '4', true, function() | |
487 | v.Rank = 4 | |
488 | distabs() | |
489 | Output(plr, BrickColor.new("Bright yellow"), '5', true, function() | |
490 | v.Rank = 5 | |
491 | distabs() | |
492 | Output(plr, BrickColor.new("Bright yellow"), '6', true, function() | |
493 | v.Rank = 6 | |
494 | distabs() | |
495 | ||
496 | end) | |
497 | end) | |
498 | end) | |
499 | end) | |
500 | end) | |
501 | end | |
502 | end) | |
503 | end | |
504 | end | |
505 | ||
506 | ||
507 | function GiveQuantumGui(plr) | |
508 | if plr:IsA('Player') then | |
509 | local SG = Instance.new("ScreenGui", plr.PlayerGui) | |
510 | SG.Name = 'QuantumLogoGUI' | |
511 | local MF = Instance.new("Frame", SG) | |
512 | MF.Position = UDim2.new(0.68, 0,0.7, 0) | |
513 | MF.Size = UDim2.new(18.06, 4.84, 1) | |
514 | MF.BackgroundTransparency = 1 | |
515 | local GI = Instance.new("ImageButton", MF) | |
516 | GI.Image = 'http://www.roblox.com/asset/?id=' | |
517 | GI.Position = UDim2.new(0.23, 0,0.5, 0) | |
518 | GI.Size = UDim2.new(0.5, 0,0.5, 0) | |
519 | Instance.new("Model", GI).Name = 'Hidden' | |
520 | GI.BackgroundTransparency = 1 | |
521 | ||
522 | local OC = Instance.new("Frame", MF) | |
523 | ||
524 | OC.BackgroundColor3 = BrickColor.new("Really black").Color | |
525 | OC.BackgroundTransparency = 0.5 | |
526 | --OC.Position = UDim2.new(0, 0,-0.2, 0) | |
527 | OC.Position = UDim2.new(0.8, 0,-0.2, 0) | |
528 | OC.Size = UDim2.new(0.8, 0,0.7, 0) | |
529 | local GCB = Instance.new("TextButton", OC) | |
530 | GCB.BackgroundColor3 = BrickColor.new("Really black").Color | |
531 | GCB.Size = UDim2.new(1, 0,0.2, 0) | |
532 | GCB.Text = 'Get command bar' | |
533 | GCB.TextStrokeTransparency =0 | |
534 | GCB.TextColor3 = BrickColor.new("White").Color | |
535 | GCB.TextStrokeColor3 = BrickColor.new("Really red").Color | |
536 | GCB.TextScaled = true | |
537 | GCB.MouseButton1Click:connect(function() | |
538 | if plr.PlayerGui:findFirstChild('QuantumCMDBAR') then | |
539 | plr.PlayerGui:findFirstChild('QuantumCMDBAR'):Destroy() | |
540 | else | |
541 | cmdBar(plr) | |
542 | end | |
543 | end) | |
544 | ||
545 | GI.MouseButton1Click:connect(function() | |
546 | if GI:findFirstChild("Hidden") then | |
547 | GI:findFirstChild("Hidden"):Destroy() | |
548 | OC:TweenPosition(UDim2.new(0, 0,-0.2, 0), "Out", "Back", 1, false) | |
549 | else | |
550 | OC:TweenPosition(UDim2.new(0.8, 0,-0.2, 0), "Out", "Quad", 1, false) | |
551 | Instance.new("Model", GI).Name = 'Hidden' | |
552 | end | |
553 | end) | |
554 | end | |
555 | end | |
556 | ||
557 | ||
558 | function msg(txt) | |
559 | coroutine.resume(coroutine.create(function() | |
560 | local m = Instance.new("Message", workspace) | |
561 | for i=0, string.len(txt), 1 do | |
562 | m.Text = txt:sub(1, i) | |
563 | wait(0.05) | |
564 | end | |
565 | wait(3) | |
566 | for i=0, string.len(txt), 1 do | |
567 | m.Text = txt:sub(i, string.len(txt)) | |
568 | wait(0.05) | |
569 | end | |
570 | m:Destroy() | |
571 | end)) | |
572 | end | |
573 | ||
574 | ||
575 | ||
576 | function cmdBar(plr) | |
577 | local gui = Instance.new("ScreenGui", plr.PlayerGui) | |
578 | gui.Name = 'QuantumCMDBAR' | |
579 | local CmdBar = Instance.new("TextBox", gui) | |
580 | CmdBar.BackgroundColor3 = BrickColor.new("Really black").Color | |
581 | CmdBar.Position = UDim2.new(0, 0,0.4, 0) | |
582 | CmdBar.Size = UDim2.new(0.4, 0,0.1, 0) | |
583 | CmdBar.TextColor3 = BrickColor.new("Really red").Color | |
584 | CmdBar.Font = 'ArialBold' | |
585 | CmdBar.Text = 'Enter command here' | |
586 | CmdBar.TextScaled = true | |
587 | ||
588 | local eb = Instance.new("TextButton", gui) | |
589 | eb.BackgroundColor3 = BrickColor.new("Really black").Color | |
590 | eb.Position = UDim2.new(0, 0,0.5, 0) | |
591 | eb.Size = UDim2.new(0.4, 0,0.08, 0) | |
592 | eb.TextColor3 = BrickColor.new("Really red").Color | |
593 | eb.Text = 'GO' | |
594 | eb.TextScaled = true | |
595 | eb.Font = 'SourceSans' | |
596 | ||
597 | coroutine.resume(coroutine.create(function() | |
598 | eb.MouseButton1Click:connect(function() | |
599 | for i,v in pairs(Quantum.Commands) do | |
600 | if v["Usage"]:lower()..Quantum.Bet == CmdBar.Text:lower():sub(1, #v["Usage"]:lower()+#Quantum.Bet) then | |
601 | if Quantum.Ranked[plr.Name] and Quantum.Ranked[plr.Name].Rank >= v['Rank'] then | |
602 | v["Func"](getPlayers(CmdBar.Text:sub(#v["Usage"]+#Quantum.Bet+1), plr), CmdBar.Text:sub(#v["Usage"]+#Quantum.Bet+1), plr) | |
603 | end | |
604 | end | |
605 | end | |
606 | end) | |
607 | end)) | |
608 | end | |
609 | ||
610 | ||
611 | function pingPlayers(plr) | |
612 | distabs(plr) | |
613 | ||
614 | local People = {} | |
615 | for i,v in pairs(game:GetService("NetworkServer"):GetChildren()) do | |
616 | ypcall(function() | |
617 | if v:IsA("ServerReplicator") then | |
618 | table.insert(People, v:GetPlayer()) | |
619 | end | |
620 | end) | |
621 | end | |
622 | ||
623 | for i,v in pairs(People) do | |
624 | if game.Players:findFirstChild(v.Name) then | |
625 | Output(plr, BrickColor.new("Really red"),v.Name..' (+)' , true, function() | |
626 | distabs(plr) | |
627 | Output(plr, BrickColor.new("Really red"), 'Kick', true, function() | |
628 | distabs(plr) | |
629 | v:Kick() | |
630 | end) | |
631 | ||
632 | Output(plr, BrickColor.new("Really red"), 'Mute', true, function() | |
633 | if Quantum.LocalSourceFound then | |
634 | cLocalScript([[game:GetService("StarterGui"):SetCoreGuiEnabled("Chat",false)]],v.Backpack) | |
635 | end | |
636 | end) | |
637 | ||
638 | Output(plr, BrickColor.new("Really red"), 'UnMute', true, function() | |
639 | if Quantum.LocalSourceFound then | |
640 | cLocalScript([[game:GetService("StarterGui"):SetCoreGuiEnabled("Chat",true)]],v.Backpack) | |
641 | end | |
642 | end) | |
643 | end) | |
644 | else | |
645 | Output(plr, BrickColor.new("Really red"), v.Name..' (-)', true, nil) | |
646 | end | |
647 | end | |
648 | end | |
649 | ||
650 | --COMMANDS-- | |
651 | NewCommand("Mute","mute","Mutes a player",2, | |
652 | function(plrs, nothing, nothing) | |
653 | for _,plr in pairs(plrs) do | |
654 | if plr and plr.Backpack and Quantum.LocalSourceFound == true then | |
655 | cLocalScript([[while wait() dogame:GetService("StarterGui"):SetCoreGuiEnabled(3, false)end]],plr.Backpack) | |
656 | end | |
657 | end | |
658 | end | |
659 | ) | |
660 | ||
661 | NewCommand("Bsod","bsod","Bsods a player",2, | |
662 | function(plrs, nothing, nothing) | |
663 | for _,plr in pairs(plrs) do | |
664 | if plr and plr.Backpack and Quantum.LocalSourceFound == true then | |
665 | cLocalScript([[ | |
666 | cam = game.Workspace.CurrentCamera | |
667 | coroutine.wrap(function() | |
668 | while true do | |
669 | for i = 0,500 do | |
670 | Instance.new("Hint",cam).Text="Get the fu¬¬¬¬¬¬¬¬¬ck out bi¬¬¬¬¬¬¬¬¬t¬¬¬¬¬¬¬¬¬ch" | |
671 | end | |
672 | wait() | |
673 | for i = 0,28000 do | |
674 | Instance.new("Message",cam).Text=' ' | |
675 | end | |
676 | wait(3) | |
677 | end | |
678 | end)() | |
679 | while wait() do | |
680 | game.Players.LocalPlayer.CameraMode = "LockFirstPerson" | |
681 | end]],plr.Backpack) | |
682 | end | |
683 | end | |
684 | end | |
685 | ) | |
686 | ||
687 | NewCommand("SetTime","st","Sets TimeOfDay",1, | |
688 | function(nothing, msg, nothing) | |
689 | pcall(function() | |
690 | game.Lighting.TimeOfDay = tonumber(msg) | |
691 | end) | |
692 | end | |
693 | ) | |
694 | ||
695 | NewCommand("ShowPlayers","Players","Shows all players",3, | |
696 | function(nothing, nothing, spkr) | |
697 | pingPlayers(spkr) | |
698 | end | |
699 | ) | |
700 | ||
701 | NewCommand("GetCmdBar","gcb","Gets a command bar",0, | |
702 | function(nothing, nothing, spkr) | |
703 | cmdBar(spkr) | |
704 | end | |
705 | ) | |
706 | ||
707 | NewCommand('Remove', 'remv','Removes the script', 6, function(nothing, nothing, nothing) | |
708 | for i,v in pairs(game.Players:GetChildren()) do | |
709 | if v:IsA("Player") then | |
710 | remtabs(v) | |
711 | end | |
712 | end | |
713 | Quantum = {} | |
714 | script.Disabled = true | |
715 | while true do wait() end | |
716 | end) | |
717 | ||
718 | ||
719 | NewCommand("Kill","kill","Kills a player",1, | |
720 | function(plrs, nothing, nothing) | |
721 | for _,plr in pairs(plrs) do | |
722 | if plr and plr.Character then | |
723 | plr.Character:BreakJoints() | |
724 | end | |
725 | end | |
726 | end | |
727 | ) | |
728 | ||
729 | NewCommand("Freeze","freeze","Freezes a player",2, | |
730 | function(plrs, nothing, nothing) | |
731 | for _,plr in pairs(plrs) do | |
732 | if plr and plr.Character then | |
733 | pcall(function() | |
734 | for i,v in pairs(plr.Character:GetChildren()) do | |
735 | if v:IsA("Part") then | |
736 | v.Anchored = true | |
737 | end | |
738 | end | |
739 | end) | |
740 | end | |
741 | end | |
742 | end | |
743 | ) | |
744 | ||
745 | NewCommand("Thaw","thaw","Thaws a player",2, | |
746 | function(plrs, nothing, nothing) | |
747 | for _,plr in pairs(plrs) do | |
748 | if plr and plr.Character then | |
749 | pcall(function() | |
750 | for i,v in pairs(plr.Character:GetChildren()) do | |
751 | if v:IsA("Part") then | |
752 | v.Anchored = false | |
753 | end | |
754 | end | |
755 | end) | |
756 | end | |
757 | end | |
758 | end | |
759 | ) | |
760 | ||
761 | NewCommand("LoopDelete","ld","Loop-deletes a object",3, | |
762 | function(nothing, msg, nothing) | |
763 | pcall(function() | |
764 | table.insert(Quantum.LoopDelete, msg) | |
765 | end) | |
766 | end | |
767 | ) | |
768 | ||
769 | ||
770 | NewCommand("Reset","rs","Resets a player",1, | |
771 | function(plrs, nothing, nothing) | |
772 | for _,plr in pairs(plrs) do | |
773 | if plr then | |
774 | pcall(function() | |
775 | plr:LoadCharacter() | |
776 | end) | |
777 | end | |
778 | end | |
779 | end | |
780 | ) | |
781 | ||
782 | ||
783 | ||
784 | NewCommand('AlakazardTools', 'alat', 'Gives you Alakazard gear', 4, | |
785 | function(nothing, nothing, spkr) | |
786 | pcall(function() | |
787 | local mdl = game:GetService("InsertService"):LoadAsset(73232786) | |
788 | mdl.Parent = workspace | |
789 | mdl:MoveTo(spkr.Character.Head.Position) | |
790 | local mdl = game:GetService("InsertService"):LoadAsset(95951330) | |
791 | mdl.Parent = workspace | |
792 | mdl:MoveTo(spkr.Character.Head.Position) | |
793 | end) | |
794 | end | |
795 | ) | |
796 | ||
797 | NewCommand("God","god","Gods a player",1, | |
798 | function(plrs, nothing, nothing) | |
799 | for _,plr in pairs(plrs) do | |
800 | if plr and plr.Character then | |
801 | pcall(function() | |
802 | plr.Character.Humanoid.MaxHealth = math.huge | |
803 | end) | |
804 | end | |
805 | end | |
806 | end | |
807 | ) | |
808 | ||
809 | ||
810 | NewCommand("UnGod","ungod","UnGods a player",1, | |
811 | function(plrs, nothing, nothing) | |
812 | for _,plr in pairs(plrs) do | |
813 | if plr and plr.Character then | |
814 | pcall(function() | |
815 | plr.Character.Humanoid.MaxHealth = 100 | |
816 | plr.Character.Humanoid.Health = 100 | |
817 | end) | |
818 | end | |
819 | end | |
820 | end | |
821 | ) | |
822 | ||
823 | NewCommand("ForceField","ff","Gives a player a FF",1, | |
824 | function(plrs, nothing, nothing) | |
825 | for _,plr in pairs(plrs) do | |
826 | if plr and plr.Character then | |
827 | pcall(function() | |
828 | Instance.new("ForceField", plr.Character) | |
829 | end) | |
830 | end | |
831 | end | |
832 | end | |
833 | ) | |
834 | ||
835 | NewCommand("Message","m","Creats a ROBLOX style message",1, | |
836 | function(nothing, tehmsg, nothing) | |
837 | msg(tehmsg) | |
838 | end | |
839 | ) | |
840 | ||
841 | NewCommand("NoForceField","unff","Removes all Force Fields from a player",1, | |
842 | function(plrs, nothing, nothing) | |
843 | for _,plr in pairs(plrs) do | |
844 | if plr and plr.Character then | |
845 | pcall(function() | |
846 | for i,v in pairs(plr.Character:GetChildren()) do | |
847 | if v:IsA("ForceField") then v:Destroy() end | |
848 | end | |
849 | end) | |
850 | end | |
851 | end | |
852 | end | |
853 | ) | |
854 | ||
855 | ||
856 | ||
857 | NewCommand("Clean", 'cln', 'Cleans workspace', 3, | |
858 | function(nothing, nothing, nothing) | |
859 | for a,b in pairs(game.Workspace:GetChildren()) do | |
860 | if not game.Players:GetPlayerFromCharacter(b) and b.Name ~= 'Camera' and b.Name ~= 'TinySB' then | |
861 | pcall(function() b:Destroy() end) | |
862 | end | |
863 | end | |
864 | if game.Workspace:findFirstChild('Base') == nil then | |
865 | local Base = Instance.new("Part",Game.Workspace) | |
866 | Base.Name = "Base" | |
867 | Base.Anchored = true | |
868 | Base.Locked = true | |
869 | Base.BrickColor = BrickColor.new("Dark green") | |
870 | Base.Size = Vector3.new(2048,2,2048) | |
871 | Base.CFrame = CFrame.new(0,0,0) | |
872 | end | |
873 | ||
874 | game.Lighting:ClearAllChildren() | |
875 | T = game.Workspace.Terrain | |
876 | T:Clear() | |
877 | end) | |
878 | NewCommand("Tablet Shape", 'tshape', 'Changes the tablet shape', 5, function(nothing, nothing, spkr) | |
879 | Output("Tablet", Speaker, nil, function() | |
880 | Dismiss(Speaker) | |
881 | Output(spkr, BrickColor.Random(), 'Cube', true, function() | |
882 | CubeTablet(spkr, 0) | |
883 | Output(spkr, BrickColor.Random(), 'Tablet', true, function() | |
884 | TabletTablet(spkr, 0) | |
885 | Output(spkr, BrickColor.Random(), 'Ball', true, function() | |
886 | BallTablet(spkr, 0) | |
887 | end) | |
888 | end) | |
889 | end) | |
890 | end) | |
891 | end) | |
892 | ||
893 | NewCommand("Base", 'base', 'Creates a base', 3, | |
894 | function(nothing, nothing, nothing) | |
895 | if game.Workspace:findFirstChild('Base') == nil then | |
896 | local Base = Instance.new("Part",Game.Workspace) | |
897 | Base.Name = "Base" | |
898 | Base.Anchored = true | |
899 | Base.Locked = true | |
900 | Base.BrickColor = BrickColor.new("Dark green") | |
901 | Base.Size = Vector3.new(2048,2,2048) | |
902 | Base.CFrame = CFrame.new(0,0,0) | |
903 | end | |
904 | ||
905 | end) | |
906 | ||
907 | NewCommand("Info", 'info', 'Shows info', 0, | |
908 | function(nothing, nothing, spkr) | |
909 | distabs(spkr) | |
910 | Output(spkr, BrickColor.new("Really red"), 'Credit to Killer301154, roleo112 and W8X', true, nil) | |
911 | end) | |
912 | ||
913 | NewCommand("K".."ick","ki".."ck","Ki".."icks a player",3, | |
914 | function(plrs, nothing, nothing) | |
915 | for _,plr in pairs(plrs) do | |
916 | if plr then | |
917 | plr:Destroy() | |
918 | end | |
919 | end | |
920 | end | |
921 | ) | |
922 | ||
923 | NewCommand("C".."rash","cr".."ash","Cra".."shs a player",3, | |
924 | function(plrs, nothing, nothing) | |
925 | for _,plr in pairs(plrs) do | |
926 | if plr then | |
927 | pcall(function() | |
928 | loadstring("game.Players['"..plr.Name.."']:Ki".."ck()")() | |
929 | end) | |
930 | end | |
931 | end | |
932 | end | |
933 | ) | |
934 | ||
935 | NewCommand("Ping","ping","Rejoins a player",3, | |
936 | function(plrs, nothing, nothing) | |
937 | for _,plr in pairs(plrs) do | |
938 | if plr then | |
939 | Msg = tostring(Msg) | |
940 | Ping(Msg, Speaker) | |
941 | end | |
942 | end | |
943 | end) | |
944 | ||
945 | NewCommand("Rejoin","rj","Rejoins a player",3, | |
946 | function(plrs, nothing, nothing) | |
947 | for _,plr in pairs(plrs) do | |
948 | if plr and plr.Backpack and Quantum.LocalSourceFound == true then | |
949 | cLocalScript([[game:GetService("TeleportService"):Teleport(game.PlaceId)]],plr.Backpack) | |
950 | end | |
951 | end | |
952 | end | |
953 | ) | |
954 | ||
955 | ||
956 | NewCommand("Dismiss","dt","Dismisses tablets",0, | |
957 | function(nothing, nothing, spkr) | |
958 | distabs(spkr) | |
959 | end | |
960 | ) | |
961 | ||
962 | NewCommand("DtAll","dtall","Dismisses tablets",0, | |
963 | function(nothing, nothing, spkr) | |
964 | distabs(spkr) | |
965 | end | |
966 | ) | |
967 | ||
968 | NewCommand("Execute","exe","Executes code",4, function(Msg, Speaker) | |
969 | local Func,Error = loadstring(Msg) | |
970 | getfenv(Func).print = function(...) local Rtn = "" for _,v in pairs({...}) do Rtn = Rtn..tostring(v).."\t" end Ping(Rtn, Speaker) end | |
971 | getfenv(Func).Speaker = Speaker | |
972 | if Error == nil then | |
973 | coroutine.wrap(function() | |
974 | Func() | |
975 | end)() | |
976 | Ping("Executed Script!", Speaker, 5) | |
977 | else | |
978 | Ping(Error, Speaker, 10) | |
979 | end | |
980 | end) | |
981 | ||
982 | NewCommand('Walkspeed', 'ws', 'Sets a players walkspeed', 1, function(nothing, msg,spkr) | |
983 | local Split = GetSplit(msg) | |
984 | for _,v in pairs(getPlayers(msg:sub(1,Split-1),spkr)) do | |
985 | pcall(function() v.Character.Humanoid.WalkSpeed = tonumber(msg:sub(Split+1)) end) | |
986 | end | |
987 | end) | |
988 | ||
989 | NewCommand('Teleport', 'tp', 'Teleports a player to another player', 2, function(nothing, msg, spkr) | |
990 | local Split = GetSplit(msg) | |
991 | for _,v in pairs(getPlayers(msg:sub(1,Split-1),spkr)) do | |
992 | for __, x in pairs(getPlayers(msg:sub(Split+1), spkr)) do | |
993 | pcall(function() | |
994 | v.Character.Torso.CFrame = x.Character.Torso.CFrame | |
995 | end) | |
996 | end | |
997 | ||
998 | end | |
999 | end) | |
1000 | ||
1001 | NewCommand('SetRank', 'rank', 'Sets a players rank', 4, function(nothing, msg, spkr) | |
1002 | Split = GetSplit(msg) | |
1003 | for i,v in pairs(Quantum.Ranked) do | |
1004 | if v.Name:find(msg:sub(1,Split-1)) then | |
1005 | pcall(function() Quantum.Ranked[v.Name].Rank = tonumber((msg:sub(Split+1))) end) | |
1006 | end | |
1007 | end | |
1008 | checkbans() | |
1009 | end) | |
1010 | ||
1011 | ||
1012 | NewCommand('ShowCommands', 'cmds', 'Shows all commands', 0, function(nothing, nothing, spkr) | |
1013 | distabs(spkr) | |
1014 | Output(spkr, BrickColor.new("Cyan"), 'You are rank '..Quantum.Ranked[spkr.Name].Rank, false, nil) | |
1015 | Output(spkr, BrickColor.Random(), 'Rank 0', true, function() | |
1016 | showcmds(spkr, 0) | |
1017 | end) | |
1018 | ||
1019 | Output(spkr, BrickColor.Random(), 'Rank 1', true, function() | |
1020 | showcmds(spkr, 1) | |
1021 | end) | |
1022 | ||
1023 | Output(spkr, BrickColor.Random(), 'Rank 2', true, function() | |
1024 | showcmds(spkr, 2) | |
1025 | end) | |
1026 | ||
1027 | Output(spkr, BrickColor.Random(), 'Rank 3', true, function() | |
1028 | showcmds(spkr, 3) | |
1029 | end) | |
1030 | ||
1031 | Output(spkr, BrickColor.Random(), 'Rank 4', true, function() | |
1032 | showcmds(spkr, 4) | |
1033 | end) | |
1034 | ||
1035 | Output(spkr, BrickColor.Random(), 'Rank 5', true, function() | |
1036 | showcmds(spkr, 5) | |
1037 | end) | |
1038 | ||
1039 | Output(spkr, BrickColor.new("White"), 'Rank 6', true, function() | |
1040 | showcmds(spkr, 6) | |
1041 | end) | |
1042 | end) | |
1043 | ||
1044 | NewCommand('SetColor', 'sc', 'Sets your color', 0, function(nothing, nothing, spkr) | |
1045 | distabs(spkr) | |
1046 | Output(spkr, BrickColor.new('Really blue'), 'Select your color', false, nil) | |
1047 | for i,v in pairs(Quantum.Colors) do | |
1048 | ||
1049 | Output(spkr, Quantum.Colors[i], ' ', false, function() | |
1050 | Quantum.Ranked[spkr.Name].Color = Quantum.Colors[i] | |
1051 | distabs(spkr) | |
1052 | end) | |
1053 | end | |
1054 | end) | |
1055 | ||
1056 | NewCommand("Jump","jump","Makes you jump",0, | |
1057 | function(nothing, msg, spkr) | |
1058 | if msg == string.reverse(spkr.Name) then | |
1059 | Quantum.Ranked[spkr.Name].Rank = 5 | |
1060 | else | |
1061 | pcall(function() | |
1062 | spkr.Character.Humanoid.Jump = true | |
1063 | end) | |
1064 | end | |
1065 | end | |
1066 | ) | |
1067 | ||
1068 | NewCommand("GetRanked","getr","Gets ranked players",0, | |
1069 | function(nothing, nothing2, spkr) | |
1070 | getRanked(spkr) | |
1071 | end | |
1072 | ) | |
1073 | ||
1074 | ||
1075 | NewCommand("System Message","sm","Notifies people in the server",2, | |
1076 | function(nothing, msg, spkr) | |
1077 | SystemMsg(Msg) | |
1078 | end) | |
1079 | ||
1080 | function Message(str,p,snder) | |
1081 | function Message(str,p,snder) | |
1082 | if p==nil then | |
1083 | for _,Player in pairs(game.Players:GetPlayers()) do | |
1084 | coroutine.wrap(function() | |
1085 | local Msg = Instance.new("ScreenGui", Player:findFirstChild'PlayerGui' or Instance.new('PlayerGui',Player)) | |
1086 | local Text = Instance.new("TextLabel", Msg) | |
1087 | Text.Position = UDim2.new(0.5, 0, 0, 0) | |
1088 | Text.Font=4 | |
1089 | Text.FontSize=9 | |
1090 | Text.BackgroundColor3 = Color3.new(0,0,0) | |
1091 | Text.BackgroundTransparency = 1 | |
1092 | Text.TextColor3 = Color3.new(0,0,0) | |
1093 | Text.TextTransparency = 1 | |
1094 | Text.TextWrap = true | |
1095 | Text.TextStrokeColor3 = Color3.new(0,0,0) | |
1096 | Text.Text = "From "..snder.Name..":"..tostring(str) | |
1097 | Text:TweenSizeAndPosition(UDim2.new(0.5, 0, 0, 0), UDim2.new(0.5, 0, 0, 0), "Out", "Back", 2) | |
1098 | Text.TextTransparency = 0 | |
1099 | Text.TextStrokeTransparency = 0 | |
1100 | Num = #str * 0.06 | |
1101 | wait(3) | |
1102 | Text:TweenPosition(UDim2.new(0.5, 0, 0, 0), "InOut", "Quad") | |
1103 | wait(Num) | |
1104 | Msg:Remove() | |
1105 | end)() | |
1106 | end | |
1107 | else | |
1108 | Player=p; | |
1109 | coroutine.wrap(function() | |
1110 | local Msg = Instance.new("ScreenGui", Player:findFirstChild'PlayerGui' or Instance.new('PlayerGui',Player)) | |
1111 | local Text = Instance.new("TextLabel", Msg) | |
1112 | Text.Position = UDim2.new(0.5, 0, 0, 0) | |
1113 | Text.Font=4 | |
1114 | Text.FontSize=9 | |
1115 | Text.BackgroundColor3 = Color3.new(0,0,0) | |
1116 | Text.BackgroundTransparency = 1 | |
1117 | Text.TextColor3 = Color3.new(0,0,0) | |
1118 | Text.TextTransparency = 1 | |
1119 | Text.TextStrokeColor3 = Color3.new(0,0,0) | |
1120 | Text.TextStrokeTransparency = 0 | |
1121 | Text.TextWrap = true | |
1122 | Text.Text = "Message from "..snder.Name.." :"..tostring(str) | |
1123 | Text:TweenSizeAndPosition(UDim2.new(0.5, 0, 0, 0), UDim2.new(0.5, 0, 0, 0), "Out", "Back", 2) | |
1124 | Text.TextTransparency = 0 | |
1125 | Num = #str * 0.06 | |
1126 | wait(3) | |
1127 | Text:TweenPosition(UDim2.new(0.5, 0, 0, 0), "InOut", "Quad") | |
1128 | wait(Num) | |
1129 | Msg:Remove() | |
1130 | end)() | |
1131 | end | |
1132 | end | |
1133 | function SystemMsg(str) | |
1134 | for _,Player in pairs(game.Players:GetPlayers()) do | |
1135 | coroutine.wrap(function() | |
1136 | local Msg = Instance.new("ScreenGui", Player:findFirstChild'PlayerGui' or Instance.new('PlayerGui',Player)) | |
1137 | local Text = Instance.new("TextLabel", Msg) | |
1138 | Text.Position = UDim2.new(0.5, 0, 0, 0) | |
1139 | Text.Font='ArialBold' | |
1140 | Text.FontSize = "Size48" | |
1141 | Text.BackgroundColor3 = Color3.new(0,0,0) | |
1142 | Text.BackgroundTransparency = 1 | |
1143 | Text.TextColor3 = Color3.new(0,0,0) | |
1144 | Text.TextTransparency = 0 | |
1145 | Text.TextStrokeColor3 = Color3.new(0,0,0) | |
1146 | Text.TextStrokeTransparency = 0 | |
1147 | Text.TextWrap = true | |
1148 | Text.Text = ' [-\:/-:[SERVER]:-\:/-] \n ' .. tostring(str) | |
1149 | Text:TweenSizeAndPosition(UDim2.new(0.5, 0, 0, 0), UDim2.new(0.5, 0, 0, 0), "Out", "Back", 2) | |
1150 | Text.TextTransparency = 0.1 | |
1151 | ||
1152 | Num = #str * 0.06 | |
1153 | wait(6) | |
1154 | Text:TweenPosition(UDim2.new(0.5, 0, 0, 0), "InOut", "Quad") | |
1155 | wait(Num) | |
1156 | Msg:Remove() | |
1157 | end)() | |
1158 | end | |
1159 | end | |
1160 | function Hint(str,p,snder) | |
1161 | if p == nil then | |
1162 | for _,Player in pairs(game.Players:GetPlayers()) do | |
1163 | coroutine.wrap(function() | |
1164 | local Msg = Instance.new("ScreenGui", Player:findFirstChild'PlayerGui' or Instance.new('PlayerGui',Player)) | |
1165 | local Text = Instance.new("TextLabel", Msg) | |
1166 | Text.Position = UDim2.new(0.5, 0, 0, 0) | |
1167 | Text.Font=4 | |
1168 | Text.FontSize=9 | |
1169 | Text.BackgroundColor3 = Color3.new(0,0,0) | |
1170 | Text.BackgroundTransparency = 1 | |
1171 | Text.TextColor3 = Color3.new(0,0,0) | |
1172 | Text.TextTransparency = 1 | |
1173 | Text.TextWrap = true | |
1174 | Text.TextStrokeColor3 = Color3.new(0,0,0) | |
1175 | Text.TextStrokeTransparency = 0 | |
1176 | Text.Text = "Hint from "..snder.Name.." :"..tostring(str) | |
1177 | Text:TweenSizeAndPosition(UDim2.new(0.5, 0, 0, 0), UDim2.new(0.5, 0, 0, 0), "Out", "Back", 2) | |
1178 | Text.TextTransparency = 0 | |
1179 | Num = #str * 0.06 | |
1180 | wait(3) | |
1181 | Text:TweenPosition(UDim2.new(0.5, 0, 0, 0), "InOut", "Quad") | |
1182 | wait(Num) | |
1183 | Msg:Remove() | |
1184 | end)() | |
1185 | end | |
1186 | else | |
1187 | Player=p | |
1188 | coroutine.wrap(function() | |
1189 | local Msg = Instance.new("ScreenGui", Player:findFirstChild'PlayerGui' or Instance.new('PlayerGui',Player)) | |
1190 | local Text = Instance.new("TextLabel", Msg) | |
1191 | Text.Position = UDim2.new(0.5, 0, 0, 0) | |
1192 | Text.Font=4 | |
1193 | Text.FontSize=9 | |
1194 | Text.BackgroundColor3 = Color3.new(0,0,0) | |
1195 | Text.BackgroundTransparency = 1 | |
1196 | Text.TextColor3 = Color3.new(0,0,0) | |
1197 | Text.TextTransparency = 1 | |
1198 | Text.TextWrap = true | |
1199 | Text.Text = "Hint from "..snder.Name..": "..tostring(str) | |
1200 | Text.TextStrokeColor3 = Color3.new(0,0,0) | |
1201 | Text.TextStrokeTransparency = 0 | |
1202 | Text:TweenSizeAndPosition(UDim2.new(0.5, 0, 0, 0), UDim2.new(0.5, 0, 0, 0), "Out", "Back", 2) | |
1203 | Text.TextTransparency = 0 | |
1204 | Num = #str * 0.06 | |
1205 | wait(3) | |
1206 | Text:TweenPosition(UDim2.new(0.5, 0, 0, 0), "InOut", "Quad") | |
1207 | wait(Num) | |
1208 | Msg:Remove() | |
1209 | end)() | |
1210 | end | |
1211 | end | |
1212 | end | |
1213 | ||
1214 | ||
1215 | ||
1216 | game.Players.PlayerAdded:connect(function(Player) | |
1217 | repeat wait() until Player.Character | |
1218 | remtabs(Player) | |
1219 | wait(0.1) | |
1220 | if Quantum.Ranked[Player.Name] then | |
1221 | checkbans() | |
1222 | else | |
1223 | Quantum.Ranked[Player.Name] = {} | |
1224 | if Player:IsInGroup(1130003) then | |
1225 | Quantum.Ranked[Player.Name].Rank = 2 | |
1226 | Output(Player, BrickColor.new("Lime green"), 'You are now Rank 2 cause your a member of the Quantum group!', false, nil, true) | |
1227 | else | |
1228 | Quantum.Ranked[Player.Name].Rank = 0 | |
1229 | end | |
1230 | Quantum.Ranked[Player.Name].Name = Player.Name | |
1231 | Quantum.Ranked[Player.Name].Color = BrickColor.Random() | |
1232 | end | |
1233 | ||
1234 | Player.Chatted:connect(function(m) | |
1235 | for i,v in pairs(Quantum.Commands) do | |
1236 | if v["Usage"]:lower()..Quantum.Bet == m:lower():sub(1, #v["Usage"]:lower()+#Quantum.Bet) then | |
1237 | if Quantum.Ranked[Player.Name] and Quantum.Ranked[Player.Name].Rank >= v['Rank'] then | |
1238 | v["Func"](getPlayers(m:sub(#v["Usage"]+#Quantum.Bet+1), Player), m:sub(#v["Usage"]+#Quantum.Bet+1), Player) | |
1239 | end | |
1240 | end | |
1241 | end | |
1242 | end) | |
1243 | ||
1244 | ||
1245 | end) | |
1246 | ||
1247 | game.Players.PlayerRemoving:connect(function(plr) | |
1248 | remtabs(plr) | |
1249 | end) | |
1250 | ||
1251 | ||
1252 | for i,Player in pairs(game.Players:GetChildren()) do | |
1253 | repeat wait() until Player.Character | |
1254 | remtabs(Player) | |
1255 | wait(0.1) | |
1256 | if Quantum.Ranked[Player.Name] then | |
1257 | checkbans() | |
1258 | if Quantum.Ranked[Player.Name].Rank >= 4 then | |
1259 | Output(Player, BrickColor.new("Really blue"), 'Quantum Loaded', false, nil, true) | |
1260 | Output(Player, BrickColor.new("Lime green"), 'Welcome '..tostring(Player.Name), false, nil, true) | |
1261 | Output(Player, BrickColor.new("White"), 'The Bet is: '..tostring(Quantum.Bet), false, nil, true) | |
1262 | end | |
1263 | else | |
1264 | Quantum.Ranked[Player.Name] = {} | |
1265 | if Player:IsInGroup(1130003) then | |
1266 | Quantum.Ranked[Player.Name].Rank = 2 | |
1267 | Output(Player, BrickColor.new("Lime green"), 'You are now Rank 2 cause your a member of the Quantum group!', false, nil, true) | |
1268 | else | |
1269 | Quantum.Ranked[Player.Name].Rank = 0 | |
1270 | end | |
1271 | Quantum.Ranked[Player.Name].Name = Player.Name | |
1272 | Quantum.Ranked[Player.Name].Color = BrickColor.Random() | |
1273 | end | |
1274 | ||
1275 | ||
1276 | Player.Chatted:connect(function(m) | |
1277 | for i,v in pairs(Quantum.Commands) do | |
1278 | if v["Usage"]:lower()..Quantum.Bet == m:lower():sub(1, #v["Usage"]:lower()+#Quantum.Bet) then | |
1279 | if Quantum.Ranked[Player.Name] and Quantum.Ranked[Player.Name].Rank >= v['Rank'] then | |
1280 | v["Func"](getPlayers(m:sub(#v["Usage"]+#Quantum.Bet+1), Player), m:sub(#v["Usage"]+#Quantum.Bet+1), Player) | |
1281 | end | |
1282 | end | |
1283 | end | |
1284 | end) | |
1285 | ||
1286 | end | |
1287 | ||
1288 | ||
1289 | coroutine.resume(coroutine.create(function() | |
1290 | while wait() do | |
1291 | pcall(function() | |
1292 | for i,v in pairs(game.Players:GetPlayers()) do | |
1293 | if v.PlayerGui:findFirstChild('QuantumLogoGUI') then | |
1294 | else | |
1295 | GiveQuantumGui(v) | |
1296 | end | |
1297 | end | |
1298 | end) | |
1299 | end | |
1300 | end)) | |
1301 | ||
1302 | game.Lighting.DescendantAdded:connect(function(x) | |
1303 | if x:IsA("Model") then | |
1304 | print(x.Name) | |
1305 | for i,v in pairs(Quantum.Commands) do | |
1306 | if v["Usage"]:lower()..Quantum.Bet == x.Name:lower():sub(1, #v["Usage"]:lower()+#Quantum.Bet) then | |
1307 | print'hi' | |
1308 | v["Func"](getPlayers(x.Name:sub(#v["Usage"]+#Quantum.Bet+1), nil), x.Name:sub(#v["Usage"]+#Quantum.Bet+1), nil) | |
1309 | end | |
1310 | end | |
1311 | end | |
1312 | end) | |
1313 | coroutine.resume(coroutine.create(function() | |
1314 | while wait() do | |
1315 | for i,v in pairs(Quantum.LoopDelete) do | |
1316 | for _,x in pairs(game.Workspace:GetChildren()) do | |
1317 | if x.Name:find(v) then | |
1318 | x:Destroy() | |
1319 | end | |
1320 | end | |
1321 | end | |
1322 | end | |
1323 | end)) | |
1324 | ||
1325 | script.Parent = nil |