SHOW:
|
|
- or go back to the newest paste.
| 1 | --| |-- | |
| 2 | --| |-- | |
| 3 | - | --| Welcome to using Equinox Commands! |-- |
| 3 | + | --| Welcome to using iSpringfield's Commands! |-- |
| 4 | --| |-- | |
| 5 | --| |-- | |
| 6 | --| This script is created |-- | |
| 7 | --| by a group of mastered |-- | |
| 8 | --| game designers. This script |-- | |
| 9 | --| is fairly simple, as long |-- | |
| 10 | --| as you read the "README" |-- | |
| 11 | --| at line 51. It's basically |-- | |
| 12 | --| all you need to know about |-- | |
| 13 | --| this script! Enjoy! |-- | |
| 14 | --| |-- | |
| 15 | --| ~Game Maker Studios |-- | |
| 16 | ||
| 17 | ||
| 18 | ||
| 19 | ||
| 20 | ||
| 21 | ||
| 22 | -- \\ // -- | |
| 23 | -- {{CONFIGURATION}} --
| |
| 24 | -- // \\ -- | |
| 25 | ||
| 26 | ||
| 27 | -- ADMINS | |
| 28 | - | local owners = {"islam3aalt","kingblood1945","Redetzky","08C"} -- people who have most permissions, but CANNOT be unadmined.
|
| 28 | + | local owners = {"iSpringfield","kingblood1945","Redetzky","08C"} -- people who have most permissions, but CANNOT be unadmined.
|
| 29 | local admins = {"jnickib","ikiled"}
| |
| 30 | - | local Everybody_Has_Admin = true -- true if you want EVERYBODY (no spasific names, just everyone) to have admin. |
| 30 | + | local Everybody_Has_Admin = false -- true if you want EVERYBODY (no spasific names, just everyone) to have admin. |
| 31 | -- BANNED | |
| 32 | local banned = {"nubcaik","person you hate","noob"}
| |
| 33 | ||
| 34 | -- ECT. | |
| 35 | ||
| 36 | local Anti_Lag_Mode = false -- 'true' if you want the script to run in anti-lag mode. | |
| 37 | ||
| 38 | local Bet = ";" -- the thing that goes between the "kill;noob". Can only be 1 diget. | |
| 39 | ||
| 40 | local Auto_Updating = false -- recommended true, but sometimes people don't want the updated version. | |
| 41 | ||
| 42 | local Super_Safe_Chatter_Supported = false -- true if you're a safechatter (don't have a chat bar) | |
| 43 | ||
| 44 | local Can_Use_Cmdbar = true -- true if you want the admins/owners to be able to say "cmdbar;" | |
| 45 | ||
| 46 | local oldAnimationOnEnter = true -- true if you DON'T want the old character animation. | |
| 47 | ||
| 48 | -- \\ // -- | |
| 49 | -- {{README}} --
| |
| 50 | -- // \\ -- | |
| 51 | readMeFile = [==[ | |
| 52 | Thanks for using our script. This script was created by 3 great people: | |
| 53 | -08C, coded the script | |
| 54 | -Redetzky, command/interface ideas, advertising, images, and testing | |
| 55 | - | -Kingblood1945, vehicles, command/interface ideas, and testing |
| 55 | + | -iSpringfield, vehicles, command/interface ideas, and testing |
| 56 | ||
| 57 | ||
| 58 | This script ALSO supports safe-chatters. Due to it's ability | |
| 59 | to have a command bar - it can be used by any ROBLOX users. | |
| 60 | ||
| 61 | The `Bet` is meant to only be 1 diget. If it's more than 1 diget, | |
| 62 | the script will not reconize the command, and you won't be able to use the | |
| 63 | commands. | |
| 64 | ||
| 65 | Say "cmds;" to view the list of all commands, hover your mouse over a command | |
| 66 | of your interest to view an example of the command, with a short definition | |
| 67 | of what the command does. | |
| 68 | ||
| 69 | ||
| 70 | Please note that this script is NOT meant for use at ANY Script Builder. It requirs all | |
| 71 | it's internal components that are stored in this script - do not delete any stored objects inside of this script. | |
| 72 | ||
| 73 | ||
| 74 | This script is NOT leaked, nor gives it's creators unfair access. We are a honest group. | |
| 75 | ||
| 76 | ||
| 77 | This script is very unique, due to it's abilities and effects. Hope you enjoy. | |
| 78 | ||
| 79 | ]==]; | |
| 80 | ||
| 81 | -- \\ // -- | |
| 82 | -- {{UPDATE HISTORY}} --
| |
| 83 | -- // \\ -- | |
| 84 | ||
| 85 | updateHistory = [==[ | |
| 86 | -- Update V4 -- | |
| 87 | >fixed crashing when a player sits on a hover vehicle and then a player cleans server | |
| 88 | >removed "move" command due to errors | |
| 89 | >new auto-updating | |
| 90 | >new commands | |
| 91 | >fixed onEnter functions (ban, banlist, private server, ect.) which were apparently removed by Roblox...? anyways... | |
| 92 | >added "admins" command | |
| 93 | ||
| 94 | ||
| 95 | ||
| 96 | ]==]; | |
| 97 | ||
| 98 | ||
| 99 | ||
| 100 | ||
| 101 | -- \\ // -- | |
| 102 | -- {{DO NOT EDIT}} --
| |
| 103 | -- // \\ -- | |
| 104 | ||
| 105 | if not script:FindFirstChild("Script") and not script:FindFirstChild("Local") and not script:FindFirstChild("version") then
| |
| 106 | script.Disabled = true | |
| 107 | end | |
| 108 | ||
| 109 | local services = {
| |
| 110 | ["Players"] = game:GetService('Players') ;
| |
| 111 | ["Workspace"] = game:GetService('Workspace') ;
| |
| 112 | ["Lighting"] = game:GetService('Lighting') ;
| |
| 113 | ["Debris"] = game:GetService('Debris') ;
| |
| 114 | ["InsertService"] = game:GetService('InsertService') ;
| |
| 115 | } | |
| 116 | local clean = {}
| |
| 117 | ||
| 118 | _G.GameMakerStudios_cmds = {}
| |
| 119 | ||
| 120 | local yes,Yes,YES,no,No,NO = true,true,true,false,false,false | |
| 121 | ||
| 122 | local serverLock = false | |
| 123 | local props = script:FindFirstChild("props") or services["Lighting"]:FindFirstChild("props")
| |
| 124 | ||
| 125 | local soloGame = game:FindFirstChild("NetworkClient") == nil
| |
| 126 | ||
| 127 | local chats = {}
| |
| 128 | ||
| 129 | local adminConfig,AdminsConfig,OwnersConfig | |
| 130 | ||
| 131 | -- | |
| 132 | if soloGame then Super_Safe_Chatter_Supported = true end | |
| 133 | if Super_Safe_Chatter_Supported then Can_Use_Cmdbar = true end | |
| 134 | ||
| 135 | ||
| 136 | function fixadmins() | |
| 137 | local c = services["Lighting"]:FindFirstChild("GameMakerStudios_Admins")
| |
| 138 | if c then | |
| 139 | admins = {}
| |
| 140 | owners = {}
| |
| 141 | for _,a in pairs(c.Admins:GetChildren()) do | |
| 142 | if a:IsA("StringValue") then
| |
| 143 | table.insert(admins,a.Value) | |
| 144 | end | |
| 145 | end | |
| 146 | for _,o in pairs(c.Owners:GetChildren()) do | |
| 147 | if o:IsA("StringValue") then
| |
| 148 | table.insert(admins,o.Value) | |
| 149 | end | |
| 150 | end | |
| 151 | else | |
| 152 | adminConfig = Instance.new("Configuration",services["Lighting"])
| |
| 153 | adminConfig.Name = "GameMakerStudios_Admins" | |
| 154 | AdminsConfig = Instance.new("Configuration",adminConfig)
| |
| 155 | AdminsConfig.Name = "Admins" | |
| 156 | OwnersConfig = Instance.new("Configuration",adminConfig)
| |
| 157 | OwnersConfig.Name = "Owners" | |
| 158 | ||
| 159 | for _,v in pairs(admins) do | |
| 160 | local new = Instance.new("StringValue",AdminsConfig)
| |
| 161 | new.Name = "UNACCESSABLE" | |
| 162 | new.Value = v | |
| 163 | local t = Instance.new("StringValue",new)
| |
| 164 | t.Value = "Admin" | |
| 165 | t.Name = "RANK" | |
| 166 | end | |
| 167 | for _,v in pairs(owners) do | |
| 168 | local new = Instance.new("StringValue",OwnersConfig)
| |
| 169 | new.Name = "UNACCESSABLE" | |
| 170 | new.Value = v | |
| 171 | local t = Instance.new("StringValue",new)
| |
| 172 | t.Value = "Owner" | |
| 173 | t.Name = "RANK" | |
| 174 | end | |
| 175 | end | |
| 176 | end | |
| 177 | ||
| 178 | fixadmins() | |
| 179 | ||
| 180 | function isAdmin(player) | |
| 181 | if Everybody_Has_Admin then return true; end | |
| 182 | if isOwner(player) then return true end | |
| 183 | for _,ee in pairs(AdminsConfig:GetChildren()) do | |
| 184 | if ee.Value:lower() == player.Name:lower() then | |
| 185 | return true | |
| 186 | end | |
| 187 | end | |
| 188 | return false | |
| 189 | end | |
| 190 | function isOwner(player) | |
| 191 | if player.userId == game.CreatorId then return true; end | |
| 192 | for _,ee in pairs(OwnersConfig:GetChildren()) do | |
| 193 | if ee.Value:lower() == player.Name:lower() then | |
| 194 | return true | |
| 195 | end | |
| 196 | end | |
| 197 | return false | |
| 198 | end | |
| 199 | ||
| 200 | function addChat(text) | |
| 201 | table.insert(chats,{text,tick()})
| |
| 202 | end | |
| 203 | ||
| 204 | function addAdmin(player) | |
| 205 | if isAdmin(player) then return end | |
| 206 | local new = Instance.new("StringValue",AdminsConfig)
| |
| 207 | new.Value = player.Name | |
| 208 | new.Name = "UNACCESSABLE" | |
| 209 | local t = Instance.new("StringValue",new)
| |
| 210 | t.Name = "RANK" | |
| 211 | t.Value = "Admin" | |
| 212 | end | |
| 213 | function unAdmin(player) | |
| 214 | print("loading unadmin " .. player.Name)
| |
| 215 | for _,v in pairs(AdminsConfig:GetChildren()) do | |
| 216 | if v.Value:lower() == player.Name:lower() then v:Destroy() end | |
| 217 | end | |
| 218 | end | |
| 219 | ||
| 220 | function Animate(player) | |
| 221 | coroutine.resume(coroutine.create(function() | |
| 222 | while not player and not player.Parent and not player.Character do wait() end | |
| 223 | wait() | |
| 224 | if player.Character then | |
| 225 | for _,v in pairs(player.Character:GetChildren()) do if v.Name == "Animate" then v:Destroy() end end | |
| 226 | localscript([[ | |
| 227 | script.Name = "Animate" | |
| 228 | function waitForChild(parent, childName) | |
| 229 | local child = parent:findFirstChild(childName) | |
| 230 | if child then return child end | |
| 231 | while true do | |
| 232 | child = parent.ChildAdded:wait() | |
| 233 | if child.Name==childName then return child end | |
| 234 | end | |
| 235 | end | |
| 236 | ||
| 237 | -- ANIMATION | |
| 238 | ||
| 239 | -- declarations | |
| 240 | ||
| 241 | local Figure = script.Parent | |
| 242 | local Torso = waitForChild(Figure, "Torso") | |
| 243 | local RightShoulder = waitForChild(Torso, "Right Shoulder") | |
| 244 | local LeftShoulder = waitForChild(Torso, "Left Shoulder") | |
| 245 | local RightHip = waitForChild(Torso, "Right Hip") | |
| 246 | local LeftHip = waitForChild(Torso, "Left Hip") | |
| 247 | local Neck = waitForChild(Torso, "Neck") | |
| 248 | local Humanoid = waitForChild(Figure, "Humanoid") | |
| 249 | local pose = "Standing" | |
| 250 | ||
| 251 | local toolAnim = "None" | |
| 252 | local toolAnimTime = 0 | |
| 253 | ||
| 254 | local jumpMaxLimbVelocity = 0.75 | |
| 255 | ||
| 256 | -- functions | |
| 257 | ||
| 258 | function onRunning(speed) | |
| 259 | if speed>0 then | |
| 260 | pose = "Running" | |
| 261 | else | |
| 262 | pose = "Standing" | |
| 263 | end | |
| 264 | end | |
| 265 | ||
| 266 | function onDied() | |
| 267 | pose = "Dead" | |
| 268 | end | |
| 269 | ||
| 270 | function onJumping() | |
| 271 | pose = "Jumping" | |
| 272 | end | |
| 273 | ||
| 274 | function onClimbing() | |
| 275 | pose = "Climbing" | |
| 276 | end | |
| 277 | ||
| 278 | function onGettingUp() | |
| 279 | pose = "GettingUp" | |
| 280 | end | |
| 281 | ||
| 282 | function onFreeFall() | |
| 283 | pose = "FreeFall" | |
| 284 | end | |
| 285 | ||
| 286 | function onFallingDown() | |
| 287 | pose = "FallingDown" | |
| 288 | end | |
| 289 | ||
| 290 | function onSeated() | |
| 291 | pose = "Seated" | |
| 292 | end | |
| 293 | ||
| 294 | function onPlatformStanding() | |
| 295 | pose = "PlatformStanding" | |
| 296 | end | |
| 297 | ||
| 298 | function onSwimming(speed) | |
| 299 | if speed>0 then | |
| 300 | pose = "Running" | |
| 301 | else | |
| 302 | pose = "Standing" | |
| 303 | end | |
| 304 | end | |
| 305 | ||
| 306 | function moveJump() | |
| 307 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 308 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 309 | RightShoulder:SetDesiredAngle(3.14) | |
| 310 | LeftShoulder:SetDesiredAngle(-3.14) | |
| 311 | RightHip:SetDesiredAngle(0) | |
| 312 | LeftHip:SetDesiredAngle(0) | |
| 313 | end | |
| 314 | ||
| 315 | ||
| 316 | -- same as jump for now | |
| 317 | ||
| 318 | function moveFreeFall() | |
| 319 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 320 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 321 | RightShoulder:SetDesiredAngle(3.14) | |
| 322 | LeftShoulder:SetDesiredAngle(-3.14) | |
| 323 | RightHip:SetDesiredAngle(0) | |
| 324 | LeftHip:SetDesiredAngle(0) | |
| 325 | end | |
| 326 | ||
| 327 | function moveSit() | |
| 328 | RightShoulder.MaxVelocity = 0.15 | |
| 329 | LeftShoulder.MaxVelocity = 0.15 | |
| 330 | RightShoulder:SetDesiredAngle(3.14 /2) | |
| 331 | LeftShoulder:SetDesiredAngle(-3.14 /2) | |
| 332 | RightHip:SetDesiredAngle(3.14 /2) | |
| 333 | LeftHip:SetDesiredAngle(-3.14 /2) | |
| 334 | end | |
| 335 | ||
| 336 | function getTool() | |
| 337 | for _, kid in ipairs(Figure:GetChildren()) do | |
| 338 | if kid.className == "Tool" then return kid end | |
| 339 | end | |
| 340 | return nil | |
| 341 | end | |
| 342 | ||
| 343 | function getToolAnim(tool) | |
| 344 | for _, c in ipairs(tool:GetChildren()) do | |
| 345 | if c.Name == "toolanim" and c.className == "StringValue" then | |
| 346 | return c | |
| 347 | end | |
| 348 | end | |
| 349 | return nil | |
| 350 | end | |
| 351 | ||
| 352 | function animateTool() | |
| 353 | ||
| 354 | if (toolAnim == "None") then | |
| 355 | RightShoulder:SetDesiredAngle(1.57) | |
| 356 | return | |
| 357 | end | |
| 358 | ||
| 359 | if (toolAnim == "Slash") then | |
| 360 | RightShoulder.MaxVelocity = 0.5 | |
| 361 | RightShoulder:SetDesiredAngle(0) | |
| 362 | return | |
| 363 | end | |
| 364 | ||
| 365 | if (toolAnim == "Lunge") then | |
| 366 | RightShoulder.MaxVelocity = 0.5 | |
| 367 | LeftShoulder.MaxVelocity = 0.5 | |
| 368 | RightHip.MaxVelocity = 0.5 | |
| 369 | LeftHip.MaxVelocity = 0.5 | |
| 370 | RightShoulder:SetDesiredAngle(1.57) | |
| 371 | LeftShoulder:SetDesiredAngle(1.0) | |
| 372 | RightHip:SetDesiredAngle(1.57) | |
| 373 | LeftHip:SetDesiredAngle(1.0) | |
| 374 | return | |
| 375 | end | |
| 376 | end | |
| 377 | ||
| 378 | function move(time) | |
| 379 | local amplitude | |
| 380 | local frequency | |
| 381 | ||
| 382 | if (pose == "Jumping") then | |
| 383 | moveJump() | |
| 384 | return | |
| 385 | end | |
| 386 | ||
| 387 | if (pose == "FreeFall") then | |
| 388 | moveFreeFall() | |
| 389 | return | |
| 390 | end | |
| 391 | ||
| 392 | if (pose == "Seated") then | |
| 393 | moveSit() | |
| 394 | return | |
| 395 | end | |
| 396 | ||
| 397 | local climbFudge = 0 | |
| 398 | ||
| 399 | if (pose == "Running") then | |
| 400 | if (RightShoulder.CurrentAngle > 1.5 or RightShoulder.CurrentAngle < -1.5) then | |
| 401 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 402 | else | |
| 403 | RightShoulder.MaxVelocity = 0.15 | |
| 404 | end | |
| 405 | if (LeftShoulder.CurrentAngle > 1.5 or LeftShoulder.CurrentAngle < -1.5) then | |
| 406 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 407 | else | |
| 408 | LeftShoulder.MaxVelocity = 0.15 | |
| 409 | end | |
| 410 | amplitude = 1 | |
| 411 | frequency = 9 | |
| 412 | elseif (pose == "Climbing") then | |
| 413 | RightShoulder.MaxVelocity = 0.5 | |
| 414 | LeftShoulder.MaxVelocity = 0.5 | |
| 415 | amplitude = 1 | |
| 416 | frequency = 9 | |
| 417 | climbFudge = 3.14 | |
| 418 | else | |
| 419 | amplitude = 0.1 | |
| 420 | frequency = 1 | |
| 421 | end | |
| 422 | ||
| 423 | desiredAngle = amplitude * math.sin(time*frequency) | |
| 424 | ||
| 425 | RightShoulder:SetDesiredAngle(desiredAngle + climbFudge) | |
| 426 | LeftShoulder:SetDesiredAngle(desiredAngle - climbFudge) | |
| 427 | RightHip:SetDesiredAngle(-desiredAngle) | |
| 428 | LeftHip:SetDesiredAngle(-desiredAngle) | |
| 429 | ||
| 430 | ||
| 431 | local tool = getTool() | |
| 432 | ||
| 433 | if tool then | |
| 434 | ||
| 435 | animStringValueObject = getToolAnim(tool) | |
| 436 | ||
| 437 | if animStringValueObject then | |
| 438 | toolAnim = animStringValueObject.Value | |
| 439 | -- message recieved, delete StringValue | |
| 440 | animStringValueObject.Parent = nil | |
| 441 | toolAnimTime = time + .3 | |
| 442 | end | |
| 443 | ||
| 444 | if time > toolAnimTime then | |
| 445 | toolAnimTime = 0 | |
| 446 | toolAnim = "None" | |
| 447 | end | |
| 448 | ||
| 449 | animateTool() | |
| 450 | ||
| 451 | ||
| 452 | else | |
| 453 | toolAnim = "None" | |
| 454 | toolAnimTime = 0 | |
| 455 | end | |
| 456 | end | |
| 457 | ||
| 458 | ||
| 459 | -- connect events | |
| 460 | ||
| 461 | Humanoid.Died:connect(onDied) | |
| 462 | Humanoid.Running:connect(onRunning) | |
| 463 | Humanoid.Jumping:connect(onJumping) | |
| 464 | Humanoid.Climbing:connect(onClimbing) | |
| 465 | Humanoid.GettingUp:connect(onGettingUp) | |
| 466 | Humanoid.FreeFalling:connect(onFreeFall) | |
| 467 | Humanoid.FallingDown:connect(onFallingDown) | |
| 468 | Humanoid.Seated:connect(onSeated) | |
| 469 | Humanoid.PlatformStanding:connect(onPlatformStanding) | |
| 470 | Humanoid.Swimming:connect(onSwimming) | |
| 471 | -- main program | |
| 472 | ||
| 473 | local runService = game:service("RunService");
| |
| 474 | ||
| 475 | while Figure.Parent~=nil do | |
| 476 | local _, time = wait(0.1) | |
| 477 | move(time) | |
| 478 | end | |
| 479 | ]],player.Character) | |
| 480 | end | |
| 481 | end)) | |
| 482 | end | |
| 483 | ||
| 484 | ||
| 485 | ||
| 486 | function Script(source,parent) | |
| 487 | coroutine.resume(coroutine.create(function() | |
| 488 | local new = script:FindFirstChild("Script")
| |
| 489 | if new then | |
| 490 | local clone = new:Clone() | |
| 491 | clone.code.Value = source | |
| 492 | clone.Parent = parent | |
| 493 | clone.Disabled = false | |
| 494 | end | |
| 495 | end)) | |
| 496 | end | |
| 497 | function localscript(source,parent) | |
| 498 | coroutine.resume(coroutine.create(function() | |
| 499 | local new = script:FindFirstChild("Local")
| |
| 500 | if new then | |
| 501 | local clone = new:Clone() | |
| 502 | clone.code.Value = source | |
| 503 | clone.Parent = parent | |
| 504 | clone.Disabled = false | |
| 505 | end | |
| 506 | end)) | |
| 507 | end | |
| 508 | ||
| 509 | function waitForProperty(parent,name,waittime) | |
| 510 | local starttime=tick() | |
| 511 | while parent[name]==nil and (not waittime or tick()<starttime+waittime) do | |
| 512 | wait() | |
| 513 | end | |
| 514 | return parent[name] | |
| 515 | end | |
| 516 | ||
| 517 | function waitForChild(parent,name,waittime) | |
| 518 | local starttime=tick() | |
| 519 | while parent:FindFirstChild(name)==nil and (not waittime or tick()<starttime+waittime) do | |
| 520 | wait() | |
| 521 | end | |
| 522 | return parent:FindFirstChild(name) | |
| 523 | end | |
| 524 | ||
| 525 | ||
| 526 | function addCmd(keyword,desc,func) | |
| 527 | table.insert(_G.GameMakerStudios_cmds,{keyword,desc,func})
| |
| 528 | end | |
| 529 | ||
| 530 | function BannedAction(player) | |
| 531 | coroutine.resume(coroutine.create(function() | |
| 532 | for _,name in pairs(banned) do | |
| 533 | if name:lower() == player.Name:lower() then | |
| 534 | localscript("local player = game:GetService('Players').LocalPlayer\
| |
| 535 | player.Parent = nil\ | |
| 536 | wait()\ | |
| 537 | player.Parent = game:GetService('Players')",waitForChild(player,"Backpack",10000))
| |
| 538 | Announce("SYSTEM",(player.Name .. " has been removed due to banishment."))
| |
| 539 | end | |
| 540 | end | |
| 541 | ||
| 542 | player:WaitForDataReady();wait() | |
| 543 | if player:LoadBoolean("gameMakerStudios_BANNED") then
| |
| 544 | localscript("local player = game:GetService('Players').LocalPlayer\
| |
| 545 | player.Parent = nil\ | |
| 546 | wait()\ | |
| 547 | player.Parent = game:GetService('Players')",waitForChild(player,"Backpack",10000))
| |
| 548 | Announce("SYSTEM",(player.Name .. " has been removed due to banishment."))
| |
| 549 | end | |
| 550 | end)) | |
| 551 | end | |
| 552 | ||
| 553 | function Announce(head,msg) | |
| 554 | for _,player in pairs(services["Players"]:GetPlayers()) do | |
| 555 | coroutine.resume(coroutine.create(function() | |
| 556 | Message(player,head,msg,"C O N F I R M") | |
| 557 | end)) | |
| 558 | end | |
| 559 | end | |
| 560 | ||
| 561 | function Message(player,heading,message,buttonText) | |
| 562 | coroutine.resume(coroutine.create(function() | |
| 563 | localscript([[ | |
| 564 | for _,v in pairs(script.Parent:GetChildren()) do | |
| 565 | if v.Name == "gameMakerStudios_MSG" then | |
| 566 | coroutine.resume(coroutine.create(function() | |
| 567 | if v:IsA("ScreenGui") then
| |
| 568 | v.msg:TweenSizeAndPosition(UDim2.new(0,2,0,2),UDim2.new(0.5,0,0.5,0)) | |
| 569 | wait(1) | |
| 570 | v:Destroy() | |
| 571 | end | |
| 572 | if v:IsA("LocalScript") or v:IsA("Script") then v:Destroy() end
| |
| 573 | end)) | |
| 574 | end | |
| 575 | end | |
| 576 | ||
| 577 | script.Name = "gameMakerStudios_MSG" | |
| 578 | ||
| 579 | local gui = Instance.new("ScreenGui",script.Parent) gui.Name = "gameMakerStudios_MSG"
| |
| 580 | local frame = Instance.new("Frame",gui) frame.Name = "msg"
| |
| 581 | local tb = Instance.new("TextButton",frame) tb.Name = "Button"
| |
| 582 | local tl = Instance.new("TextLabel",frame) tl.Name = "Label"
| |
| 583 | local hdr = Instance.new("TextLabel",frame)
| |
| 584 | local decoration = Instance.new("Frame",tb)
| |
| 585 | ||
| 586 | ||
| 587 | frame.Style = "RobloxRound" | |
| 588 | frame.Position = UDim2.new(0.5,0,0.5,0) | |
| 589 | frame.ClipsDescendants = true | |
| 590 | ||
| 591 | tb.Position = UDim2.new(0.25,0,0.9) | |
| 592 | tb.Size = UDim2.new(0.5,0,0.1,0) | |
| 593 | tb.ZIndex = 2 | |
| 594 | tb.BackgroundColor3 = Color3.new(0,0,0) | |
| 595 | tb.BorderSizePixel = 0 | |
| 596 | tb.Text = "]] .. buttonText .. [[" | |
| 597 | tb.Font = "Legacy" | |
| 598 | tb.TextColor3 = Color3.new(1,1,1) | |
| 599 | tb.TextScaled = true | |
| 600 | tb.TextWrapped = true | |
| 601 | ||
| 602 | tl.BackgroundTransparency = 1 | |
| 603 | tl.BorderSizePixel = 0 | |
| 604 | tl.Position = UDim2.new(0,0,0,0) | |
| 605 | tl.Size = UDim2.new(1,0,0.8,0) | |
| 606 | tl.ZIndex = 2 | |
| 607 | tl.Font = "ArialBold" | |
| 608 | tl.FontSize = "Size18" | |
| 609 | tl.TextColor3 = Color3.new(1,1,1) | |
| 610 | tl.Text = "]] .. message .. [[" | |
| 611 | tl.TextWrapped = true | |
| 612 | ||
| 613 | hdr.Position = UDim2.new(0.5,0,0,0) | |
| 614 | hdr.BorderSizePixel = 0 | |
| 615 | hdr.ZIndex = 2 | |
| 616 | hdr.Font = "SourceSansBold" | |
| 617 | hdr.FontSize = "Size18" | |
| 618 | hdr.Text = "]] .. heading .. [[" | |
| 619 | hdr.TextColor3 = Color3.new(1,1,1) | |
| 620 | hdr.TextWrapped = true | |
| 621 | ||
| 622 | ||
| 623 | decoration.BackgroundTransparency = .7 | |
| 624 | decoration.Size = UDim2.new(1,0,0.5,0) | |
| 625 | decoration.BorderSizePixel = 0 | |
| 626 | decoration.ZIndex = 3 | |
| 627 | ||
| 628 | tb.MouseButton1Click:connect(function() | |
| 629 | frame:TweenSizeAndPosition(UDim2.new(0,2,0,2),UDim2.new(0.5,0,0.5,0)) | |
| 630 | wait(1) | |
| 631 | gui:Destroy() | |
| 632 | script:Destroy() | |
| 633 | end) | |
| 634 | ||
| 635 | frame:TweenSizeAndPosition(UDim2.new(0.6,0,0.6),UDim2.new(0.2,0,0.2,0)) | |
| 636 | ]],waitForChild(player,"PlayerGui",5)) | |
| 637 | end)) | |
| 638 | end | |
| 639 | ||
| 640 | -- auto-updating | |
| 641 | if Auto_Updating then | |
| 642 | print("Game Maker Studios_Updating - Updating.")
| |
| 643 | local id = 129547286 | |
| 644 | local update = services["InsertService"]:LoadAsset(id) | |
| 645 | print("Game Maker Studios_Updating - loaded updated version.")
| |
| 646 | if #update:GetChildren() <= 0 then update:Destroy() print("Game Maker Studios_Updating - Error while updating.") end
| |
| 647 | local new = update:FindFirstChild("admin")
| |
| 648 | if new then | |
| 649 | print("Game Maker Studios_Updating - Got new source.")
| |
| 650 | local newV = new:FindFirstChild("version")
| |
| 651 | if newV then | |
| 652 | print("Game Maker Studios_Updating - Got version.")
| |
| 653 | if script:FindFirstChild("version") then
| |
| 654 | print(type(newV.Value),type(script:FindFirstChild("version").Value))
| |
| 655 | if newV.Value > script:FindFirstChild("version").Value then
| |
| 656 | print("Game Maker Studios - An update has been found! Updating in progress...")
| |
| 657 | new.Parent = services["Workspace"] | |
| 658 | new.Disabled = false | |
| 659 | print("Game Maker Studios - Update successful!")
| |
| 660 | update:Destroy() | |
| 661 | script:Destroy() | |
| 662 | else | |
| 663 | print("Game Maker Studios_Updating - Update not required.")
| |
| 664 | end | |
| 665 | end | |
| 666 | end | |
| 667 | end | |
| 668 | end | |
| 669 | ||
| 670 | -- tweening | |
| 671 | function TransformModel(objects, center, new, recurse) | |
| 672 | for _,object in pairs(objects) do | |
| 673 | if object:IsA("BasePart") then
| |
| 674 | object.CFrame = new:toWorldSpace(center:toObjectSpace(object.CFrame)) | |
| 675 | end | |
| 676 | if recurse then | |
| 677 | TransformModel(object:GetChildren(), center, new, true) | |
| 678 | end | |
| 679 | end | |
| 680 | end | |
| 681 | function move(obj,cframe) | |
| 682 | if obj:IsA("BasePart") then
| |
| 683 | obj.CFrame = cframe | |
| 684 | end | |
| 685 | if obj:IsA("Model") or obj:IsA("Configuration") then
| |
| 686 | TransformModel(obj:GetChildren(),obj:GetModelCFrame(),cframe,true) | |
| 687 | end | |
| 688 | if obj:IsA("Weld") then
| |
| 689 | obj.C1 = cframe | |
| 690 | end | |
| 691 | end | |
| 692 | ||
| 693 | function QuaternionFromCFrame(cf) | |
| 694 | local mx, my, mz, | |
| 695 | m00, m01, m02, | |
| 696 | m10, m11, m12, | |
| 697 | m20, m21, m22 = cf:components() | |
| 698 | local trace = m00 + m11 + m22 | |
| 699 | if trace > 0 then | |
| 700 | local s = math.sqrt(1 + trace) | |
| 701 | local recip = 0.5/s | |
| 702 | return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5 | |
| 703 | else | |
| 704 | local i = 0 | |
| 705 | if m11 > m00 then i = 1 end | |
| 706 | if m22 > (i == 0 and m00 or m11) then i = 2 end | |
| 707 | if i == 0 then | |
| 708 | local s = math.sqrt(m00-m11-m22+1) | |
| 709 | local recip = 0.5/s | |
| 710 | return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip | |
| 711 | elseif i == 1 then | |
| 712 | local s = math.sqrt(m11-m22-m00+1) | |
| 713 | local recip = 0.5/s | |
| 714 | return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip | |
| 715 | elseif i == 2 then | |
| 716 | local s = math.sqrt(m22-m00-m11+1) | |
| 717 | local recip = 0.5/s | |
| 718 | return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip | |
| 719 | end | |
| 720 | end | |
| 721 | end | |
| 722 | function QuaternionToCFrame(px, py, pz, x, y, z, w) | |
| 723 | local xs, ys, zs = x + x, y + y, z + z | |
| 724 | local wx, wy, wz = w*xs, w*ys, w*zs | |
| 725 | -- | |
| 726 | local xx = x*xs | |
| 727 | local xy = x*ys | |
| 728 | local xz = x*zs | |
| 729 | local yy = y*ys | |
| 730 | local yz = y*zs | |
| 731 | local zz = z*zs | |
| 732 | -- | |
| 733 | return CFrame.new(px, py, pz, | |
| 734 | 1-(yy+zz), xy - wz, xz + wy, | |
| 735 | xy + wz, 1-(xx+zz), yz - wx, | |
| 736 | xz - wy, yz + wx, 1-(xx+yy)) | |
| 737 | end | |
| 738 | function QuaternionSlerp(a, b, t) | |
| 739 | local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4] | |
| 740 | local startInterp, finishInterp; | |
| 741 | if cosTheta >= 0.0001 then | |
| 742 | if (1 - cosTheta) > 0.0001 then | |
| 743 | local theta = math.acos(cosTheta) | |
| 744 | local invSinTheta = 1/math.sin(theta) | |
| 745 | startInterp = math.sin((1-t)*theta)*invSinTheta | |
| 746 | finishInterp = math.sin(t*theta)*invSinTheta | |
| 747 | else | |
| 748 | startInterp = 1-t | |
| 749 | finishInterp = t | |
| 750 | end | |
| 751 | else | |
| 752 | if (1+cosTheta) > 0.0001 then | |
| 753 | local theta = math.acos(-cosTheta) | |
| 754 | local invSinTheta = 1/math.sin(theta) | |
| 755 | startInterp = math.sin((t-1)*theta)*invSinTheta | |
| 756 | finishInterp = math.sin(t*theta)*invSinTheta | |
| 757 | else | |
| 758 | startInterp = t-1 | |
| 759 | finishInterp = t | |
| 760 | end | |
| 761 | end | |
| 762 | return a[1]*startInterp + b[1]*finishInterp, | |
| 763 | a[2]*startInterp + b[2]*finishInterp, | |
| 764 | a[3]*startInterp + b[3]*finishInterp, | |
| 765 | a[4]*startInterp + b[4]*finishInterp | |
| 766 | end | |
| 767 | function _G:TweenObject(object, a, b, length,C1OrC0IfWeld) | |
| 768 | if object:IsA("Weld") or object:IsA("Manualweld") or object:IsA("Motor6D") then
| |
| 769 | type_ = "weld" | |
| 770 | elseif object:IsA("BasePart") then
| |
| 771 | type_ = "part" | |
| 772 | else | |
| 773 | type_ = "model" | |
| 774 | end | |
| 775 | ||
| 776 | local qa = {QuaternionFromCFrame(a)}
| |
| 777 | local qb = {QuaternionFromCFrame(b)}
| |
| 778 | local ax, ay, az = a.x, a.y, a.z | |
| 779 | local bx, by, bz = b.x, b.y, b.z | |
| 780 | -- | |
| 781 | local c = 0 | |
| 782 | local tot = 0 | |
| 783 | -- | |
| 784 | local startTime = tick() | |
| 785 | while true do | |
| 786 | wait() | |
| 787 | local t = (tick()-startTime)/length | |
| 788 | local _t = 1-t | |
| 789 | if t > 1 then break end | |
| 790 | local startT = tick() | |
| 791 | local cf = QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz, | |
| 792 | QuaternionSlerp(qa, qb, t)) | |
| 793 | tot = tot+(tick()-startT) | |
| 794 | c = c + 1 | |
| 795 | if type_ == "weld" then | |
| 796 | object[C1OrC0IfWeld] = cf | |
| 797 | end | |
| 798 | if type_ == "model" then | |
| 799 | TransformModel(object:GetChildren(),object:GetModelCFrame(),cf,true) | |
| 800 | end | |
| 801 | if type_ == "part" then | |
| 802 | object.CFrame = cf | |
| 803 | end | |
| 804 | end | |
| 805 | if type_ == "weld" then | |
| 806 | object[C1OrC0IfWeld] = b | |
| 807 | end | |
| 808 | if type_ == "model" then | |
| 809 | TransformModel(object:GetChildren(),object:GetModelCFrame(),b,true) | |
| 810 | end | |
| 811 | if type_ == "part" then | |
| 812 | object.CFrame = b | |
| 813 | end | |
| 814 | end | |
| 815 | -- end of tweening | |
| 816 | ||
| 817 | ||
| 818 | local floor = math.floor | |
| 819 | local ceil = math.ceil | |
| 820 | local round = function(number)if floor(number) == number then return number end;if ceil(number) == number then return number end;local s = tostring(number);local decimal;local base;for i=1,#s do if s:sub(i,i) == "." then base = tonumber(s:sub(1,i-1));decimal = tonumber(s:sub(i));break;end;end;if decimal > .5 then return math.ceil(number) end;if decimal < .5 then return math.floor(number) end;if decimal == .5 then return math.floor(number) end;end | |
| 821 | ||
| 822 | ||
| 823 | function PlrIsAmin(player) | |
| 824 | coroutine.resume(coroutine.create(function() | |
| 825 | player:WaitForDataReady() | |
| 826 | if isAdmin(player) then | |
| 827 | while not player:FindFirstChild("PlayerGui") do wait() end
| |
| 828 | Message(player,"Game Maker Studios","You're an admin, congrats!","C O N F I R M") | |
| 829 | end | |
| 830 | end)) | |
| 831 | end | |
| 832 | ||
| 833 | ||
| 834 | function gp(speaker,text) | |
| 835 | local plr = speaker | |
| 836 | local str = text | |
| 837 | if str == "" then return {}; end
| |
| 838 | local plrz = {} str = str:lower()
| |
| 839 | if str == "all" then plrz = game.Players:children() | |
| 840 | elseif str == "others" then for i, v in pairs(game.Players:children()) do if v ~= plr then table.insert(plrz, v) end end | |
| 841 | else | |
| 842 | local sn = {1} local en = {}
| |
| 843 | for i = 1, #str do if str:sub(i,i) == "," then table.insert(sn, i+1) table.insert(en,i-1) end end | |
| 844 | for x = 1, #sn do | |
| 845 | if (sn[x] and en[x] and str:sub(sn[x],en[x]) == "me") or (sn[x] and str:sub(sn[x]) == "me") then table.insert(plrz, plr) | |
| 846 | elseif (sn[x] and en[x] and str:sub(sn[x],en[x]) == "random") or (sn[x] and str:sub(sn[x]) == "random") then table.insert(plrz, game.Players:GetPlayers()[math.random(#game.Players:GetPlayers())]) | |
| 847 | elseif (sn[x] and en[x] and str:sub(sn[x],en[x]) == "admins") or (sn[x] and str:sub(sn[x]) == "admins") then if isAdmin(plr) then for i, v in pairs(game.Players:GetPlayers()) do if isAdmin(v) then table.insert(plrz, v) end end end | |
| 848 | elseif (sn[x] and en[x] and str:sub(sn[x],en[x]) == "nonadmins") or (sn[x] and str:sub(sn[x]) == "nonadmins") then for i, v in pairs(game.Players:GetPlayers()) do if not isAdmin(v) then table.insert(plrz, v) end end | |
| 849 | elseif (sn[x] and en[x] and str:sub(sn[x],en[x]):sub(1,4) == "team") then | |
| 850 | if game:findFirstChild("Teams") then for a, v in pairs(game:GetService('Teams'):GetChildren()) do if v:IsA("Team") and str:sub(sn[x],en[x]):sub(6) ~= "" and v.Name:lower():find(str:sub(sn[x],en[x]):sub(6)) == 1 then
| |
| 851 | for q, p in pairs(game.Players:GetPlayers()) do if p.TeamColor == v.TeamColor then table.insert(plrz, p) end end break | |
| 852 | end end end | |
| 853 | elseif (sn[x] and str:sub(sn[x]):sub(1,4):lower() == "team") then | |
| 854 | if game:findFirstChild("Teams") then for a, v in pairs(game.Teams:children()) do if v:IsA("Team") and str:sub(sn[x],en[x]):sub(6) ~= "" and v.Name:lower():find(str:sub(sn[x]):sub(6)) == 1 then
| |
| 855 | for q, p in pairs(game.Players:GetPlayers()) do if p.TeamColor == v.TeamColor then table.insert(plrz, p) end end break | |
| 856 | end end end | |
| 857 | else | |
| 858 | for a, plyr in pairs(game.Players:GetPlayers()) do | |
| 859 | if (sn[x] and en[x] and str:sub(sn[x],en[x]) ~= "" and plyr.Name:lower():find(str:sub(sn[x],en[x])) == 1) or (sn[x] and str:sub(sn[x]) ~= "" and plyr.Name:lower():find(str:sub(sn[x])) == 1) or (str ~= "" and plyr.Name:lower():find(str) == 1) then | |
| 860 | table.insert(plrz, plyr) break | |
| 861 | end | |
| 862 | end | |
| 863 | end | |
| 864 | end | |
| 865 | end | |
| 866 | return plrz | |
| 867 | end | |
| 868 | ||
| 869 | ||
| 870 | ||
| 871 | function CmdBar(player) | |
| 872 | coroutine.resume(coroutine.create(function() | |
| 873 | Script([[ | |
| 874 | for _,v in pairs(script.Parent:GetChildren()) do if v.Name == "CMDBAR" then v:Destroy() end end | |
| 875 | ||
| 876 | ||
| 877 | local player = script.Parent.Parent | |
| 878 | script.Name = "CMDBAR" | |
| 879 | local gui = Instance.new("ScreenGui",script.Parent)
| |
| 880 | gui.Name = "CMDBAR" | |
| 881 | local tb = Instance.new("TextBox",gui)
| |
| 882 | local f = Instance.new("Frame",tb)
| |
| 883 | tb.Size = UDim2.new(0,220,0,30) | |
| 884 | tb.Position = UDim2.new(0,60,1,-30) | |
| 885 | tb.ZIndex = 2 | |
| 886 | tb.Visible = true | |
| 887 | tb.BackgroundTransparency = 1 | |
| 888 | tb.BorderSizePixel = 0 | |
| 889 | tb.Text = "Type your command here." | |
| 890 | tb.Font = "ArialBold" | |
| 891 | tb.TextColor3 = Color3.new(1,1,1) | |
| 892 | tb.FontSize = "Size18" | |
| 893 | f.Style = "RobloxRound" | |
| 894 | f.ZIndex = 1 | |
| 895 | f.Size = UDim2.new(1,4,1,4) | |
| 896 | f.Position = UDim2.new(0,-2,0,-2) | |
| 897 | f.BackgroundTransparency = 1 | |
| 898 | f.BorderSizePixel = 0 | |
| 899 | tb.Changed:connect( | |
| 900 | function() | |
| 901 | if tb.Text == "Type your command here." then return end | |
| 902 | _G:onChatted(player,tb.Text) | |
| 903 | tb.Text = "Type your command here." | |
| 904 | end | |
| 905 | )]],waitForChild(player,"PlayerGui",5)) | |
| 906 | end)) | |
| 907 | ||
| 908 | ||
| 909 | ||
| 910 | end | |
| 911 | ||
| 912 | addCmd("clone","clone" .. Bet .. "player | Clones the wanted player, moving the clone to their position.",function(msg,speaker)
| |
| 913 | local players = gp(speaker,msg) | |
| 914 | for _,player in pairs(players) do | |
| 915 | coroutine.resume(coroutine.create(function() | |
| 916 | if player.Character then | |
| 917 | player.Character.Archivable = true | |
| 918 | local clone = player.Character:Clone() | |
| 919 | player.Character.Archivable = false | |
| 920 | clone.Parent = services["Workspace"] | |
| 921 | table.insert(clean,clone) | |
| 922 | clone:MakeJoints() | |
| 923 | clone:MoveTo(player.Character:GetModelCFrame().p) | |
| 924 | end | |
| 925 | end)) | |
| 926 | end | |
| 927 | end) | |
| 928 | ||
| 929 | ||
| 930 | ||
| 931 | addCmd("cmdbar","cmdbar" .. Bet .. " | Gives the main command-bar.",function(msg,speaker)
| |
| 932 | if not Can_Use_Cmdbar then return end | |
| 933 | if Can_Use_Cmdbar then | |
| 934 | CmdBar(speaker) | |
| 935 | end | |
| 936 | end) | |
| 937 | ||
| 938 | addCmd("getout","getout" .. Bet .. "player | Shoots the player threw a door, then kills them.",function(msg,speaker)
| |
| 939 | local players = gp(speaker,msg) | |
| 940 | for _,player in pairs(players) do | |
| 941 | coroutine.resume(coroutine.create(function() | |
| 942 | if player.Character and player.Character:FindFirstChild("Torso") then
| |
| 943 | local new = props:FindFirstChild("door")
| |
| 944 | if new then | |
| 945 | local clone = new:Clone() | |
| 946 | clone.Parent = services["Workspace"] | |
| 947 | table.insert(clean,clone) | |
| 948 | move(clone, CFrame.new(player.Character.Torso.Position) * CFrame.new(20,0,0)) | |
| 949 | local bv = Instance.new("BodyPosition")
| |
| 950 | bv.maxForce = Vector3.new(1/0,1/0,1/0) | |
| 951 | bv.position = (clone:GetModelCFrame() * CFrame.new(60,0,0)).p | |
| 952 | bv.Parent = player.Character.Torso | |
| 953 | wait(.4) | |
| 954 | player.Character:breakJoints() | |
| 955 | if bv and bv.Parent then | |
| 956 | bv:Destroy() | |
| 957 | end | |
| 958 | wait(1) | |
| 959 | for i=0,1,.1 do | |
| 960 | coroutine.resume(coroutine.create(function() | |
| 961 | for _,v in pairs(clone:GetChildren()) do | |
| 962 | if v:IsA("BasePart") then
| |
| 963 | v.Transparency = i | |
| 964 | end | |
| 965 | end | |
| 966 | end)) | |
| 967 | wait() | |
| 968 | end | |
| 969 | clone:Destroy() | |
| 970 | end | |
| 971 | end | |
| 972 | end)) | |
| 973 | end | |
| 974 | end) | |
| 975 | ||
| 976 | addCmd("ground","ground" .. Bet .. "player | Shoots the player far into the ground.",function(msg,speaker)
| |
| 977 | local players = gp(speaker,msg) | |
| 978 | for _,player in pairs(players) do | |
| 979 | coroutine.resume(coroutine.create(function() | |
| 980 | if player.Character and player.Character:FindFirstChild("Head") and player.Character:FindFirstChild("Torso") then
| |
| 981 | Instance.new("BoolValue",player.Character.Head).Name = "GameMakerStudios_GROUND"
| |
| 982 | for _,v in pairs(player.Character:GetChildren()) do if v:IsA("BasePart") then v.Anchored = true end end
| |
| 983 | _G:TweenObject(player.Character,player.Character:GetModelCFrame(),CFrame.new(player.Character:GetModelCFrame().x,-10,player.Character:GetModelCFrame().z),4) | |
| 984 | wait() | |
| 985 | if player.Character then | |
| 986 | player.Character:breakJoints() | |
| 987 | end | |
| 988 | end | |
| 989 | end)) | |
| 990 | end | |
| 991 | end) | |
| 992 | ||
| 993 | addCmd("s","s" .. Bet .. "source | Runs a non-local script in Workspace",function(msg,speaker)
| |
| 994 | Script(msg,services["Workspace"]) | |
| 995 | end) | |
| 996 | addCmd("ls","ls" .. Bet .. "local-source | Runs a local script in the player's character",function(msg,speaker)
| |
| 997 | coroutine.resume(coroutine.create(function() | |
| 998 | Script(msg,waitForProperty(speaker,"Character",4)) | |
| 999 | end)) | |
| 1000 | end) | |
| 1001 | ||
| 1002 | addCmd("btools","btools" .. Bet .. "player | Sends a set of building tools to the wanted player.",function(msg,speaker)
| |
| 1003 | local players = gp(speaker,msg) | |
| 1004 | for _,player in pairs(players) do | |
| 1005 | coroutine.resume(coroutine.create(function() | |
| 1006 | if player and player.Character then | |
| 1007 | local function give(id) | |
| 1008 | local new = services["InsertService"]:LoadAsset(id) | |
| 1009 | if #new:GetChildren() <= 0 then new:Destroy() | |
| 1010 | else | |
| 1011 | for _,v in pairs(new:GetChildren()) do | |
| 1012 | coroutine.resume(coroutine.create(function() | |
| 1013 | if v:IsA("Tool") or v:IsA("HopperBin") then
| |
| 1014 | v.Parent = waitForChild(player,"Backpack",2) | |
| 1015 | end | |
| 1016 | end)) | |
| 1017 | end | |
| 1018 | end | |
| 1019 | end | |
| 1020 | ||
| 1021 | give(36738142) -- resize | |
| 1022 | give(73089190) -- delete | |
| 1023 | give(58921588) -- classic | |
| 1024 | give(55028088) -- stamper | |
| 1025 | give(18474459) -- paint | |
| 1026 | give(73089239) -- config | |
| 1027 | give(73089259) -- wiring | |
| 1028 | end | |
| 1029 | end)) | |
| 1030 | end | |
| 1031 | end) | |
| 1032 | ||
| 1033 | addCmd("sit","sit" .. Bet .. "player | Sits the wanted player.",function(msg,speaker)
| |
| 1034 | local players = gp(speaker,msg) | |
| 1035 | for _,player in pairs(players) do | |
| 1036 | coroutine.resume(coroutine.create(function() | |
| 1037 | if player and player.Character then | |
| 1038 | player.Character.Humanoid.Sit = true | |
| 1039 | end | |
| 1040 | end)) | |
| 1041 | end | |
| 1042 | end) | |
| 1043 | addCmd("stand","stand" .. Bet .. "player | Stands the wanted player.",function(msg,speaker)
| |
| 1044 | local players = gp(speaker,msg) | |
| 1045 | for _,player in pairs(players) do | |
| 1046 | coroutine.resume(coroutine.create(function() | |
| 1047 | if player and player.Character then | |
| 1048 | player.Character.Humanoid.PlatformStand = false | |
| 1049 | player.Character.Humanoid.Sit = false | |
| 1050 | end | |
| 1051 | end)) | |
| 1052 | end | |
| 1053 | end) | |
| 1054 | addCmd("jump","jump" .. Bet .. "player | Jumps the wanted player. Also reverses nojump.",function(msg,speaker)
| |
| 1055 | local players = gp(speaker,msg) | |
| 1056 | for _,player in pairs(players) do | |
| 1057 | coroutine.resume(coroutine.create(function() | |
| 1058 | if player and player.Character then | |
| 1059 | for _,v in pairs(player.Character:GetChildren()) do if v.Name == "GameMakerStudios_NOJUMP" then v:Destroy() end end | |
| 1060 | player.Character.Humanoid.PlatformStand = false | |
| 1061 | player.Character.Humanoid.Sit = false | |
| 1062 | player.Character.Humanoid.Jump = true | |
| 1063 | end | |
| 1064 | end)) | |
| 1065 | end | |
| 1066 | end) | |
| 1067 | addCmd("nojump","nojump" .. Bet .. "player | Makes the wanted player unable to jump.",function(msg,speaker)
| |
| 1068 | local players = gp(speaker,msg) | |
| 1069 | for _,player in pairs(players) do | |
| 1070 | coroutine.resume(coroutine.create(function() | |
| 1071 | if player and player.Character then | |
| 1072 | localscript([[ | |
| 1073 | script.Name = "GameMakerStudios_NOJUMP" | |
| 1074 | script.Parent.Humanoid.Changed:connect(function(change) | |
| 1075 | if change == "Jump" then | |
| 1076 | script.Parent.Humanoid.Jump = false | |
| 1077 | end | |
| 1078 | end)]],player.Character) | |
| 1079 | end | |
| 1080 | end)) | |
| 1081 | end | |
| 1082 | end) | |
| 1083 | ||
| 1084 | addCmd("invisible","invisible" .. Bet .. "player | Makes the wanted player invisible.",function(msg,speaker)
| |
| 1085 | local players = gp(speaker,msg) | |
| 1086 | for _,player in pairs(players) do | |
| 1087 | coroutine.resume(coroutine.create(function() | |
| 1088 | if player and player.Character then | |
| 1089 | local function trans(obj) | |
| 1090 | for _,v in pairs(obj:GetChildren()) do | |
| 1091 | if v:IsA("BasePart") then v.Transparency = 1 end
| |
| 1092 | trans(v) | |
| 1093 | end | |
| 1094 | end | |
| 1095 | trans(player.Character) | |
| 1096 | if player.Character.Head:FindFirstChild("face") then
| |
| 1097 | player.Character.Head.face.Transparency = 1 | |
| 1098 | end | |
| 1099 | end | |
| 1100 | end)) | |
| 1101 | end | |
| 1102 | end) | |
| 1103 | addCmd("visible","visible" .. Bet .. "player | Makes the wanted player visible.",function(msg,speaker)
| |
| 1104 | local players = gp(speaker,msg) | |
| 1105 | for _,player in pairs(players) do | |
| 1106 | coroutine.resume(coroutine.create(function() | |
| 1107 | if player and player.Character then | |
| 1108 | local function trans(obj) | |
| 1109 | for _,v in pairs(obj:GetChildren()) do | |
| 1110 | if v:IsA("BasePart") then v.Transparency = 0 end
| |
| 1111 | trans(v) | |
| 1112 | end | |
| 1113 | end | |
| 1114 | trans(player.Character) | |
| 1115 | if player.Character.Head:FindFirstChild("face") then
| |
| 1116 | player.Character.Head.face.Transparency = 0 | |
| 1117 | end | |
| 1118 | end | |
| 1119 | end)) | |
| 1120 | end | |
| 1121 | end) | |
| 1122 | ||
| 1123 | ||
| 1124 | addCmd("launch","launch" .. Bet .. "player | Launchs the wanted player into outter space on a stylish rocket.",function(msg,speaker)
| |
| 1125 | local players = gp(speaker,msg) | |
| 1126 | for _,player in pairs(players) do | |
| 1127 | coroutine.resume(coroutine.create(function() | |
| 1128 | local new = props:FindFirstChild("rocket")
| |
| 1129 | if new then | |
| 1130 | local clone = new:Clone() | |
| 1131 | clone.Parent = services["Workspace"] | |
| 1132 | clone:MakeJoints() | |
| 1133 | table.insert(clean,clone) | |
| 1134 | local base = clone:FindFirstChild("base")
| |
| 1135 | if base then | |
| 1136 | local bg = Instance.new("BodyGyro")
| |
| 1137 | bg.maxTorque = Vector3.new(1/0,0,1/0) | |
| 1138 | bg.cframe = bg.cframe | |
| 1139 | local bv = Instance.new("BodyVelocity")
| |
| 1140 | bv.maxForce = Vector3.new(1/0,1/0,1/0) | |
| 1141 | bv.velocity = Vector3.new(0,50,0) | |
| 1142 | bv.P = 2e3 -- 2k | |
| 1143 | bg.Parent,bv.Parent = base,base | |
| 1144 | local weld = Instance.new("Weld",base)
| |
| 1145 | weld.Part1 = base | |
| 1146 | weld.Part0 = player.Character.Torso | |
| 1147 | weld.C0 = CFrame.new(0,0,-4) | |
| 1148 | ||
| 1149 | end | |
| 1150 | end | |
| 1151 | end)) | |
| 1152 | end | |
| 1153 | end) | |
| 1154 | ||
| 1155 | addCmd("explode","explode" .. Bet .. "player | Explodes the wanted player.",function(msg,speaker)
| |
| 1156 | local players = gp(speaker,msg) | |
| 1157 | for _,player in pairs(players) do | |
| 1158 | coroutine.resume(coroutine.create(function() | |
| 1159 | if player.Character and player.Character:FindFirstChild("Torso") then
| |
| 1160 | if Anti_Lag_Mode then | |
| 1161 | local explosion = Instance.new("Explosion",services["Workspace"])
| |
| 1162 | explosion.BlastPressure = 0 | |
| 1163 | explosion.BlastRadius = 10 | |
| 1164 | wait() | |
| 1165 | player.Character:breakJoints() | |
| 1166 | else | |
| 1167 | local new = Instance.new("Part")
| |
| 1168 | new.Size = Vector3.new(3,3,3) | |
| 1169 | new.Anchored = true | |
| 1170 | new.CanCollide = false | |
| 1171 | new.TopSurface = "Smooth" | |
| 1172 | new.BottomSurface = "Smooth" | |
| 1173 | new.Transparency = .6 | |
| 1174 | table.insert(clean,new) | |
| 1175 | new.BrickColor = BrickColor.new("Br. yellowish orange") -- very long name for a color...
| |
| 1176 | local mesh = Instance.new("SpecialMesh",new)
| |
| 1177 | mesh.MeshType = "Sphere" | |
| 1178 | ||
| 1179 | new.Parent = services["Workspace"] | |
| 1180 | for i=20,0,-.5 do | |
| 1181 | new.CFrame = player.Character.Torso.CFrame | |
| 1182 | mesh.Scale = Vector3.new(i,i,i) | |
| 1183 | wait() | |
| 1184 | end | |
| 1185 | local explosion = Instance.new("Explosion",services["Workspace"])
| |
| 1186 | explosion.BlastPressure = 0 | |
| 1187 | explosion.BlastRadius = 10 | |
| 1188 | explosion.Position = player.Character.Torso.Position | |
| 1189 | wait() | |
| 1190 | player.Character:breakJoints() | |
| 1191 | new:Destroy() | |
| 1192 | end | |
| 1193 | end | |
| 1194 | end)) | |
| 1195 | end | |
| 1196 | end) | |
| 1197 | ||
| 1198 | addCmd("cycle","cycle" .. Bet .. "player | Gives the wanted player a motorcycle.",function(msg,speaker)
| |
| 1199 | local players = gp(speaker,msg) | |
| 1200 | for _,player in pairs(players) do | |
| 1201 | coroutine.resume(coroutine.create(function() | |
| 1202 | if player and player.Character then | |
| 1203 | local cycle = props:FindFirstChild("motorcycle")
| |
| 1204 | if cycle then | |
| 1205 | ||
| 1206 | local clone = cycle:Clone() | |
| 1207 | clone.Handle.Anchored = false | |
| 1208 | clone.Parent = player.Character | |
| 1209 | end | |
| 1210 | end | |
| 1211 | end)) | |
| 1212 | end | |
| 1213 | end) | |
| 1214 | ||
| 1215 | addCmd("wheeler","wheeler" .. Bet .. "player | Gives the wanted player a 4-wheeler.",function(msg,speaker)
| |
| 1216 | local players = gp(speaker,msg) | |
| 1217 | for _,player in pairs(players) do | |
| 1218 | coroutine.resume(coroutine.create(function() | |
| 1219 | if player and player.Character then | |
| 1220 | local cycle = props:FindFirstChild("fourWheeler")
| |
| 1221 | if cycle then | |
| 1222 | local clone = cycle:Clone() | |
| 1223 | localscript([[ | |
| 1224 | local cf = CFrame.new(]] .. unpack(player.Character:GetModelCFrame()) .. [[ | |
| 1225 | ||
| 1226 | for i=1,10 do | |
| 1227 | script.Parent.Handle.CFrame = cf | |
| 1228 | wait() | |
| 1229 | end | |
| 1230 | script:Destroy() | |
| 1231 | ]],clone) | |
| 1232 | clone.Handle.Anchored = false | |
| 1233 | clone.Parent = player.Character | |
| 1234 | end | |
| 1235 | end | |
| 1236 | end)) | |
| 1237 | end | |
| 1238 | end) | |
| 1239 | ||
| 1240 | ||
| 1241 | addCmd("car","car" .. Bet .. "player | Gives the wanted player a car.",function(msg,speaker)
| |
| 1242 | local players = gp(speaker,msg) | |
| 1243 | for _,player in pairs(players) do | |
| 1244 | coroutine.resume(coroutine.create(function() | |
| 1245 | if player and player.Character and player.Character:FindFirstChild("Torso") then
| |
| 1246 | local car = props:FindFirstChild("car")
| |
| 1247 | if car then | |
| 1248 | local clone = car:Clone() | |
| 1249 | if clone then | |
| 1250 | clone.Parent = services["Workspace"] | |
| 1251 | clone:MakeJoints() | |
| 1252 | clone:MoveTo(player.Character.Torso.Position + Vector3.new(0,0,10)) | |
| 1253 | table.insert(clean,clone) | |
| 1254 | for _,v in pairs(clone:GetChildren()) do | |
| 1255 | if v.Anchored then | |
| 1256 | v.Anchored = false | |
| 1257 | end | |
| 1258 | end | |
| 1259 | end | |
| 1260 | end | |
| 1261 | end | |
| 1262 | end)) | |
| 1263 | end | |
| 1264 | end) | |
| 1265 | ||
| 1266 | addCmd("admins","Shows the list of all avalable admins.",function(msg,speaker)
| |
| 1267 | coroutine.resume(coroutine.create(function() | |
| 1268 | Script([[ | |
| 1269 | for _,v in pairs(script.Parent:GetChildren()) do if v.Name == "GameMakerStudios_ADMINS" then v:Destroy() end end | |
| 1270 | ||
| 1271 | local me = script.Parent.Parent | |
| 1272 | ||
| 1273 | local owners = game:GetService('Lighting'):FindFirstChild("GameMakerStudios_Admins"):FindFirstChild("Owners"):GetChildren()
| |
| 1274 | local admins = game:GetService('Lighting'):FindFirstChild("GameMakerStudios_Admins"):FindFirstChild("Admins"):GetChildren()
| |
| 1275 | ||
| 1276 | local all = {}
| |
| 1277 | for _,v in pairs(owners) do table.insert(all,v) end | |
| 1278 | for _,v in pairs(admins) do table.insert(all,v) end | |
| 1279 | ||
| 1280 | ||
| 1281 | script.Name = "GameMakerStudios_CMDGUI" | |
| 1282 | local cmdGui = Instance.new("ScreenGui") cmdGui.Name = "GameMakerStudios_ADMINS"
| |
| 1283 | local frame = Instance.new("Frame",cmdGui)
| |
| 1284 | frame.Style = "Custom" | |
| 1285 | frame.Size = UDim2.new(0,400,0,200) | |
| 1286 | frame.BackgroundTransparency = 1 | |
| 1287 | frame.Position = UDim2.new(.5,-100,.5,-100) | |
| 1288 | frame.ZIndex = 1 | |
| 1289 | frame.ClipsDescendants = true -- uh uh | |
| 1290 | local de = Instance.new("Frame",frame) de.Style = "RobloxRound" de.Size = UDim2.new(0,200,1,0)
| |
| 1291 | local cf = Instance.new("Frame",frame)
| |
| 1292 | local b1 = Instance.new("ImageButton",frame)
| |
| 1293 | local b2 = Instance.new("ImageButton",frame)
| |
| 1294 | b1.Size,b2.Size = UDim2.new(0,20,0,20),UDim2.new(0,20,0,20) | |
| 1295 | b1.Position,b2.Position = UDim2.new(0, 180,0,0),UDim2.new(0, 180,0,30) | |
| 1296 | b1.Image,b2.Image = "http://www.roblox.com/asset/?id=35927648","http://www.roblox.com/asset/?id=35927632" | |
| 1297 | b1.ZIndex,b2.ZIndex = 4,4 | |
| 1298 | b1.BackgroundTransparency,b2.BackgroundTransparency = 1,1 | |
| 1299 | local mode = "none" | |
| 1300 | b1.MouseButton1Down:connect(function() | |
| 1301 | coroutine.resume(coroutine.create(function() | |
| 1302 | mode = "up" | |
| 1303 | while mode == "up" do | |
| 1304 | cf:TweenPosition(cf.Position + UDim2.new(0,0,0,18),"Out","Linear",.1,true) | |
| 1305 | wait(.1) | |
| 1306 | end | |
| 1307 | end)) | |
| 1308 | end) | |
| 1309 | b2.MouseButton1Down:connect(function() | |
| 1310 | coroutine.resume(coroutine.create(function() | |
| 1311 | mode = "down" | |
| 1312 | while mode == "down" do | |
| 1313 | cf:TweenPosition(cf.Position + UDim2.new(0,0,0,-18),"Out","Linear",.1,true) | |
| 1314 | wait(.1) | |
| 1315 | end | |
| 1316 | end)) | |
| 1317 | end) | |
| 1318 | b1.MouseButton1Up:connect(function() mode = "none" end) | |
| 1319 | b2.MouseButton1Up:connect(function() mode = "none" end) | |
| 1320 | local X = Instance.new("ImageButton",frame)
| |
| 1321 | X.Position = UDim2.new(0,0,1,-20) | |
| 1322 | X.Size = UDim2.new(0,20,0,20) | |
| 1323 | X.BackgroundTransparency = 1 | |
| 1324 | X.ZIndex = 4 | |
| 1325 | X.Image = "http://www.roblox.com/asset/?id=35636386" | |
| 1326 | X.MouseButton1Down:connect(function() | |
| 1327 | coroutine.resume(coroutine.create(function() | |
| 1328 | frame:TweenSizeAndPosition(UDim2.new(0,1,0,1),UDim2.new(.5,0,.5,0)) | |
| 1329 | wait(1) | |
| 1330 | cmdGui:Destroy() | |
| 1331 | script:Destroy() | |
| 1332 | end)) | |
| 1333 | end) | |
| 1334 | ||
| 1335 | ||
| 1336 | cf.BackgroundTransparency = 1 | |
| 1337 | cf.BorderSizePixel = 0 | |
| 1338 | cf.Size = UDim2.new(1,0,0,(#admins)*18) | |
| 1339 | cf.ZIndex = 2 | |
| 1340 | cf.Draggable = true | |
| 1341 | cf.DragBegin:connect(function(UDim2) | |
| 1342 | coroutine.resume(coroutine.create(function() | |
| 1343 | cf.Position = UDim2.new(0,0,0,UDim2.Y.Offset) | |
| 1344 | end)) | |
| 1345 | end) | |
| 1346 | ||
| 1347 | ||
| 1348 | ||
| 1349 | for i=1,#all do | |
| 1350 | delay(0, function () | |
| 1351 | local new = Instance.new("TextLabel",cf)
| |
| 1352 | new.ZIndex = 3 | |
| 1353 | new.BackgroundTransparency = 1 | |
| 1354 | new.FontSize = "Size18" | |
| 1355 | new.Font = "ArialBold" | |
| 1356 | new.BorderSizePixel = 0 | |
| 1357 | new.TextColor3 = Color3.new(1,1,1) | |
| 1358 | new.Size = UDim2.new(0,185,0,18) | |
| 1359 | new.Position = UDim2.new(0,0,0,(i*18)-18) | |
| 1360 | new.Name = all[i].Value | |
| 1361 | new.Text = all[i].Value | |
| 1362 | new.MouseEnter:connect(function() | |
| 1363 | coroutine.resume(coroutine.create(function() | |
| 1364 | for _,v in pairs(cf:GetChildren()) do v:ClearAllChildren() end | |
| 1365 | local inf = Instance.new("TextLabel",new)
| |
| 1366 | inf.Size = UDim2.new(0,200,0,54) | |
| 1367 | inf.Position = UDim2.new(0,195,0,0) | |
| 1368 | inf.TextScaled = true | |
| 1369 | inf.TextColor3 = Color3.new(1,1,1) | |
| 1370 | inf.BackgroundTransparency = .7 | |
| 1371 | inf.BackgroundColor3 = Color3.new(0,0,0) | |
| 1372 | inf.TextXAlignment = "Left" | |
| 1373 | inf.TextYAlignment = "Top" | |
| 1374 | inf.Font = "ArialBold" | |
| 1375 | inf.FontSize = "Size18" | |
| 1376 | inf.ZIndex = 4 | |
| 1377 | inf.Name = "GameMakerStudios_ADMINS" | |
| 1378 | local player = game:GetService('Players'):FindFirstChild(all[i].Value)
| |
| 1379 | if player then | |
| 1380 | local bc = "" | |
| 1381 | if player.MembershipType == Enum.MembershipType.None then bc = "NBC" end | |
| 1382 | if player.MembershipType == Enum.MembershipType.BuildersClub then bc = "BC" end | |
| 1383 | if player.MembershipType == Enum.MembershipType.TurboBuildersClub then bc = "TBC" end | |
| 1384 | if player.MembershipType == Enum.MembershipType.OutrageousBuildersClub then bc = "OBC" end | |
| 1385 | ||
| 1386 | ||
| 1387 | inf.Text = "AccountAge: " .. player.AccountAge .. "\ | |
| 1388 | " .. "BC: " .. bc .. "\ | |
| 1389 | " .. "Rank: " .. all[i]:FindFirstChild("RANK").Value
| |
| 1390 | else | |
| 1391 | inf.Text = "[ Player not in Server ]" | |
| 1392 | ||
| 1393 | end | |
| 1394 | end)) | |
| 1395 | end) | |
| 1396 | new.MouseLeave:connect(function() | |
| 1397 | coroutine.resume(coroutine.create(function() | |
| 1398 | new:ClearAllChildren() | |
| 1399 | end)) | |
| 1400 | end) | |
| 1401 | end) | |
| 1402 | end | |
| 1403 | ||
| 1404 | frame.Size = UDim2.new(0,1,0,1) | |
| 1405 | frame.Position = UDim2.new(.5,0,.5,0) | |
| 1406 | cmdGui.Parent = script.Parent | |
| 1407 | frame:TweenSizeAndPosition(UDim2.new(0,400,0,200),UDim2.new(.5,-100,.5,-100)) | |
| 1408 | ||
| 1409 | ||
| 1410 | ||
| 1411 | ]],waitForChild(speaker,"PlayerGui",2)) | |
| 1412 | ||
| 1413 | end)) | |
| 1414 | end) | |
| 1415 | ||
| 1416 | --[[addCmd("part","part" .. Bet .. "player" .. "sizeX" .. Bet .. "sizeY" .. Bet .. "sizeX | Makes a part on the player.",function(msg,speaker)
| |
| 1417 | local obj = {} -- this'll take a while...
| |
| 1418 | local broken = 0 | |
| 1419 | local st = msg:gsub(Bet,":") | |
| 1420 | for i=1,#st do | |
| 1421 | if i == ":" then | |
| 1422 | obj["plr"] = (st:sub(1,i-1)) | |
| 1423 | broken = i+1 | |
| 1424 | print(broken) | |
| 1425 | break | |
| 1426 | end | |
| 1427 | end | |
| 1428 | for i=broken,#st do | |
| 1429 | if st:sub(i,i) == ":" then | |
| 1430 | obj["sizeX"] = (st:sub(broken,i)) | |
| 1431 | broken = i+1 | |
| 1432 | print(broken) | |
| 1433 | end | |
| 1434 | end | |
| 1435 | for i=broken,#st do | |
| 1436 | if st:sub(i,i) == ":" then | |
| 1437 | obj["sizeY"] = (st:sub(broken,i)) | |
| 1438 | broken = i+1 | |
| 1439 | print(broken) | |
| 1440 | end | |
| 1441 | end | |
| 1442 | for i=broken,#st do | |
| 1443 | if st:sub(i,i) == ":" then | |
| 1444 | obj["sizeZ"] = (st:sub(broken,i)) | |
| 1445 | broken = i+1 | |
| 1446 | print(broken) | |
| 1447 | end | |
| 1448 | end | |
| 1449 | print(obj["plr"],obj["sizeX"],obj["sizeY"],obj["sizeZ"]) | |
| 1450 | ||
| 1451 | local players = gp(speaker,msg) | |
| 1452 | for _,player in pairs(players) do | |
| 1453 | coroutine.resume(coroutine.create(function() | |
| 1454 | if obj["plr"] and obj["sizeX"] and obj["sizeY"] and obj["sizeZ"] then | |
| 1455 | if player and player.Character then | |
| 1456 | local part = Instance.new("Part")
| |
| 1457 | part.FormFactor = "Custom" | |
| 1458 | part.Size = Vector3.new(obj["sizeX"],obj["sizeY"],obj["sizeZ"]) | |
| 1459 | part.Parent = services["Workspace"] | |
| 1460 | table.insert(clean,part) | |
| 1461 | part.Position = player.Character:GetModelCFrame().p | |
| 1462 | end | |
| 1463 | end | |
| 1464 | end)) | |
| 1465 | end | |
| 1466 | end) | |
| 1467 | ]] | |
| 1468 | ||
| 1469 | ||
| 1470 | ||
| 1471 | ||
| 1472 | addCmd("disablecmd","disablecmd" .. Bet .. "cmd | Disables the wanted command. Command cannot be re-enabled after that.",function(msg,speaker)
| |
| 1473 | for _,cmd in pairs(_G.GameMakerStudios_cmds) do | |
| 1474 | if cmd[1]:lower() == msg:lower() then | |
| 1475 | table.remove(_G.GameMakerStudios_cmds,_) | |
| 1476 | Announce("SYSTEM","Successfully removed the '" .. msg .. "' command!")
| |
| 1477 | end | |
| 1478 | end | |
| 1479 | end) | |
| 1480 | ||
| 1481 | addCmd("vehicle","vehicle" .. Bet .. "vehicle" .. Bet .. "player | Gives the wanted vehicle to the wanted player.",function(msg,speaker)
| |
| 1482 | local ids = {
| |
| 1483 | ["bus"] = 59524699; | |
| 1484 | ["car"] = 59524676; | |
| 1485 | ["police"] = 59524656; | |
| 1486 | ["truck"] = 59524606; | |
| 1487 | ["jeep"] = 59524622; | |
| 1488 | ["ufo"] = 59524729; | |
| 1489 | } | |
| 1490 | ||
| 1491 | ||
| 1492 | local vehicles = {}
| |
| 1493 | ||
| 1494 | local st = msg:gsub(Bet,":") | |
| 1495 | for i=1,#st do | |
| 1496 | if st:sub(i,i) == ":" then | |
| 1497 | vehicles["vehicle"] = st:sub(i+1) | |
| 1498 | vehicles["player"] = st:sub(1,i-1) | |
| 1499 | break | |
| 1500 | end | |
| 1501 | end | |
| 1502 | ||
| 1503 | local lol = ids[vehicles["vehicle"]] | |
| 1504 | ||
| 1505 | local players = gp(speaker,vehicles["player"]) | |
| 1506 | for _,player in pairs(players) do | |
| 1507 | coroutine.resume(coroutine.create(function() | |
| 1508 | if player.Character then | |
| 1509 | local new = services["InsertService"]:LoadAsset(lol) | |
| 1510 | while not new and not #new:GetChildren() <= 0 do wait() end | |
| 1511 | wait() | |
| 1512 | local ve = new:GetChildren()[1] | |
| 1513 | while not ve and not ve.Parent and not #ve:GetChildren() <= 0 do wait() end | |
| 1514 | wait() | |
| 1515 | ve.Parent = services["Workspace"] | |
| 1516 | table.insert(clean,ve) | |
| 1517 | ve:MakeJoints() | |
| 1518 | ve:MoveTo(player.Character:GetModelCFrame().p + Vector3.new(0,2,10)) | |
| 1519 | ||
| 1520 | end | |
| 1521 | end)) | |
| 1522 | end | |
| 1523 | ||
| 1524 | end) | |
| 1525 | ||
| 1526 | addCmd("flood","flood" .. Bet .. " | Sends a flood to the game that slowly floods everything.",function(msg,speaker)
| |
| 1527 | coroutine.resume(coroutine.create(function() | |
| 1528 | if speaker and speaker.Character and speaker.Character:FindFirstChild("Torso") then
| |
| 1529 | local new = Instance.new("Part")
| |
| 1530 | new.BrickColor = "Bright bluish green" | |
| 1531 | new.Material = "Ice" | |
| 1532 | new.Transparency = .7 | |
| 1533 | new.Anchored = true | |
| 1534 | new.CanCollide = false | |
| 1535 | new.Size = Vector3.new(2000,40,2000) | |
| 1536 | new.CFrame = CFrame.new(speaker.Character.Torso.Position) * CFrame.new(0,-50,0) | |
| 1537 | new.Parent = services["Workspace"] | |
| 1538 | table.insert(clean,new) | |
| 1539 | new:breakJoints() | |
| 1540 | local function onTouched(hit) | |
| 1541 | if hit.Parent then if services["Players"]:GetPlayerFromCharacter(hit.Parent) then hit:breakJoints() end end | |
| 1542 | end | |
| 1543 | local connection = new.Touched:connect(onTouched) | |
| 1544 | _G:TweenObject(new,new.CFrame,new.CFrame * CFrame.new(0,50),20) | |
| 1545 | new:breakJoints() | |
| 1546 | end | |
| 1547 | end)) | |
| 1548 | end) | |
| 1549 | ||
| 1550 | addCmd("serverlock","serverlock" .. Bet .. "on/off | Turns serverlock on or off.",function(msg,speaker)
| |
| 1551 | if msg:lower() == "true" or msg:lower() == "on" or msg:lower() == "active" then | |
| 1552 | serverLock = true | |
| 1553 | Message(speaker,"SYSTEM","Serverlock is now active.","C O N F I R M") | |
| 1554 | end | |
| 1555 | if msg:lower() == "false" or msg:lower() == "off" or msg:lower() == "inactive" then | |
| 1556 | serverLock = false | |
| 1557 | Message(speaker,"SYSTEM","Serverlock is now inactive.","C O N F I R M") | |
| 1558 | end | |
| 1559 | end) | |
| 1560 | ||
| 1561 | addCmd("time","time" .. Bet .. "number | Sets the time to what ever. From 1 to 24 (in hours)",function(msg,speaker)
| |
| 1562 | services["Lighting"].TimeOfDay = tostring(msg) | |
| 1563 | end) | |
| 1564 | ||
| 1565 | addCmd("kill","kill" .. Bet .. "player | Kills the wanted player.",function(msg,speaker)
| |
| 1566 | local players = gp(speaker,msg) | |
| 1567 | for _,player in pairs(players) do | |
| 1568 | coroutine.resume(coroutine.create(function() | |
| 1569 | if Anti_Lag_Mode then | |
| 1570 | if player.Character then | |
| 1571 | if player.Character:IsA("Model") then
| |
| 1572 | player.Character:breakJoints() | |
| 1573 | end | |
| 1574 | end | |
| 1575 | end | |
| 1576 | if not Anti_Lag_Mode then | |
| 1577 | local fist = Instance.new("Part")
| |
| 1578 | fist.FormFactor = "Custom" | |
| 1579 | fist.Size = Vector3.new(18,24,15) | |
| 1580 | fist.Anchored = true | |
| 1581 | fist.CanCollide = false | |
| 1582 | fist.Locked = true | |
| 1583 | fist.Transparency = 1 | |
| 1584 | table.insert(clean,fist) | |
| 1585 | local mesh = Instance.new("SpecialMesh",fist)
| |
| 1586 | mesh.MeshType = "FileMesh" | |
| 1587 | mesh.Scale = Vector3.new(60,60,60) | |
| 1588 | mesh.MeshId = "http://www.roblox.com/asset/?id=90718752" | |
| 1589 | mesh.TextureId = "http://www.roblox.com/asset/?id=90718949" | |
| 1590 | fist.CFrame = CFrame.new(player.Character.Head.Position) * CFrame.new(0,40,0) | |
| 1591 | fist.Parent = services["Workspace"] | |
| 1592 | ||
| 1593 | for i=1,0,-.1 do | |
| 1594 | fist.Transparency = i | |
| 1595 | wait() | |
| 1596 | end | |
| 1597 | _G:TweenObject(fist,fist.CFrame,CFrame.new(player.Character.Head.Position),.6) | |
| 1598 | local curc = fist.CFrame | |
| 1599 | player.Character:breakJoints() | |
| 1600 | for i=1,10 do | |
| 1601 | fist.CFrame = curc * CFrame.new(math.random(1,5),math.random(1,5),math.random(1,5)) | |
| 1602 | wait(.1) | |
| 1603 | end | |
| 1604 | ||
| 1605 | wait(1) | |
| 1606 | for i=0,1,.1 do | |
| 1607 | fist.Transparency = i | |
| 1608 | wait() | |
| 1609 | end | |
| 1610 | fist:Destroy() | |
| 1611 | end | |
| 1612 | end)) | |
| 1613 | end | |
| 1614 | end) | |
| 1615 | ||
| 1616 | addCmd("ff","ff" .. Bet .. "player | Puts a forcefield and sets the player's health to infinity.",function(msg,speaker)
| |
| 1617 | local players = gp(speaker,msg) | |
| 1618 | for _,player in pairs(players) do | |
| 1619 | coroutine.resume(coroutine.create(function() | |
| 1620 | if player.Character then | |
| 1621 | local charSize = player.Character:GetModelSize() | |
| 1622 | local effect = Instance.new("Part")
| |
| 1623 | effect.BrickColor = BrickColor.new("Really blue")
| |
| 1624 | effect.Anchored = true | |
| 1625 | effect.CanCollide = false | |
| 1626 | effect.FormFactor = "Custom" | |
| 1627 | effect.TopSurface = "Smooth" | |
| 1628 | effect.BottomSurface = "Smooth" | |
| 1629 | effect.Size = Vector3.new(1,1,1) | |
| 1630 | effect.Transparency = .6 | |
| 1631 | local mesh = Instance.new("SpecialMesh",effect)
| |
| 1632 | mesh.MeshType = "Sphere" | |
| 1633 | effect.Parent = player.Character | |
| 1634 | mesh.Scale = Vector3.new(1,1,1) | |
| 1635 | for i=1,25 do | |
| 1636 | effect.CFrame = player.Character:GetModelCFrame() | |
| 1637 | mesh.Scale = Vector3.new(i/5,i/5,i/5) | |
| 1638 | wait() | |
| 1639 | end | |
| 1640 | effect:Destroy() | |
| 1641 | local ff = Instance.new("ForceField",player.Character)
| |
| 1642 | player.Character.Humanoid.MaxHealth,player.Character.Humanoid.MaxHealth = 1/0,1/0 | |
| 1643 | end | |
| 1644 | end));end | |
| 1645 | end) | |
| 1646 | ||
| 1647 | ||
| 1648 | ||
| 1649 | addCmd("unff","unff" .. Bet .. "player | Removes the forcefield and sets the player's health to 100(normal).",function(msg,speaker)
| |
| 1650 | local players = gp(speaker,msg) | |
| 1651 | for _,player in pairs(players) do | |
| 1652 | coroutine.resume(coroutine.create(function() | |
| 1653 | if player.Character then | |
| 1654 | if player.Character:FindFirstChild("ForceField") then
| |
| 1655 | local charSize = player.Character:GetModelSize() | |
| 1656 | local effect = Instance.new("Part")
| |
| 1657 | effect.BrickColor = BrickColor.new("Really blue")
| |
| 1658 | effect.Anchored = true | |
| 1659 | effect.CanCollide = false | |
| 1660 | effect.FormFactor = "Custom" | |
| 1661 | effect.Size = Vector3.new(1,1,1) | |
| 1662 | effect.Transparency = .6 | |
| 1663 | local mesh = Instance.new("SpecialMesh",effect)
| |
| 1664 | mesh.MeshType = "Sphere" | |
| 1665 | effect.Parent = player.Character | |
| 1666 | mesh.Scale = Vector3.new(5,5,5) | |
| 1667 | player.Character.ForceField:Destroy() | |
| 1668 | for i=25,1,-1 do | |
| 1669 | effect.CFrame = player.Character:GetModelCFrame() | |
| 1670 | mesh.Scale = Vector3.new(i/4,i/4,i/4) | |
| 1671 | wait() | |
| 1672 | end | |
| 1673 | effect:Destroy() | |
| 1674 | player.Character.Humanoid.MaxHealth,player.Character.Humanoid.MaxHealth = 100,100 | |
| 1675 | end | |
| 1676 | end | |
| 1677 | end));end | |
| 1678 | end) | |
| 1679 | ||
| 1680 | addCmd("cmds","cmds" .. Bet .. " | Shows the list of all commands.",function(msg,speaker)
| |
| 1681 | coroutine.resume(coroutine.create(function() | |
| 1682 | if speaker:FindFirstChild("PlayerGui") then
| |
| 1683 | Script([[ | |
| 1684 | for _,v in pairs(script.Parent:GetChildren()) do if v.Name == "GameMakerStudios_CMDGUI" then v:Destroy() end end | |
| 1685 | ||
| 1686 | ||
| 1687 | local cmds = _G.GameMakerStudios_cmds | |
| 1688 | script.Name = "GameMakerStudios_CMDGUI" | |
| 1689 | local cmdGui = Instance.new("ScreenGui") cmdGui.Name = "GameMakerStudios_CMDGUI"
| |
| 1690 | local frame = Instance.new("Frame",cmdGui)
| |
| 1691 | frame.Style = "Custom" | |
| 1692 | frame.Size = UDim2.new(0,400,0,200) | |
| 1693 | frame.BackgroundTransparency = 1 | |
| 1694 | frame.Position = UDim2.new(.5,-100,.5,-100) | |
| 1695 | frame.ZIndex = 1 | |
| 1696 | frame.ClipsDescendants = true -- uh uh | |
| 1697 | local de = Instance.new("Frame",frame) de.Style = "RobloxRound" de.Size = UDim2.new(0,200,1,0)
| |
| 1698 | local cf = Instance.new("Frame",frame)
| |
| 1699 | local b1 = Instance.new("ImageButton",frame)
| |
| 1700 | local b2 = Instance.new("ImageButton",frame)
| |
| 1701 | b1.Size,b2.Size = UDim2.new(0,20,0,20),UDim2.new(0,20,0,20) | |
| 1702 | b1.Position,b2.Position = UDim2.new(0, 180,0,0),UDim2.new(0, 180,0,30) | |
| 1703 | b1.Image,b2.Image = "http://www.roblox.com/asset/?id=35927648","http://www.roblox.com/asset/?id=35927632" | |
| 1704 | b1.ZIndex,b2.ZIndex = 4,4 | |
| 1705 | b1.BackgroundTransparency,b2.BackgroundTransparency = 1,1 | |
| 1706 | local mode = "none" | |
| 1707 | b1.MouseButton1Down:connect(function() | |
| 1708 | coroutine.resume(coroutine.create(function() | |
| 1709 | mode = "up" | |
| 1710 | while mode == "up" do | |
| 1711 | cf:TweenPosition(cf.Position + UDim2.new(0,0,0,18),"Out","Linear",.1,true) | |
| 1712 | wait(.1) | |
| 1713 | end | |
| 1714 | end)) | |
| 1715 | end) | |
| 1716 | b2.MouseButton1Down:connect(function() | |
| 1717 | coroutine.resume(coroutine.create(function() | |
| 1718 | mode = "down" | |
| 1719 | while mode == "down" do | |
| 1720 | cf:TweenPosition(cf.Position + UDim2.new(0,0,0,-18),"Out","Linear",.1,true) | |
| 1721 | wait(.1) | |
| 1722 | end | |
| 1723 | end)) | |
| 1724 | end) | |
| 1725 | b1.MouseButton1Up:connect(function() mode = "none" end) | |
| 1726 | b2.MouseButton1Up:connect(function() mode = "none" end) | |
| 1727 | local X = Instance.new("ImageButton",frame)
| |
| 1728 | X.Position = UDim2.new(0,0,1,-20) | |
| 1729 | X.Size = UDim2.new(0,20,0,20) | |
| 1730 | X.BackgroundTransparency = 1 | |
| 1731 | X.ZIndex = 4 | |
| 1732 | X.Image = "http://www.roblox.com/asset/?id=35636386" | |
| 1733 | X.MouseButton1Down:connect(function() | |
| 1734 | coroutine.resume(coroutine.create(function() | |
| 1735 | frame:TweenSizeAndPosition(UDim2.new(0,1,0,1),UDim2.new(.5,0,.5,0)) | |
| 1736 | wait(1) | |
| 1737 | cmdGui:Destroy() | |
| 1738 | script:Destroy() | |
| 1739 | end)) | |
| 1740 | end) | |
| 1741 | ||
| 1742 | ||
| 1743 | cf.BackgroundTransparency = 1 | |
| 1744 | cf.BorderSizePixel = 0 | |
| 1745 | cf.Size = UDim2.new(1,0,0,(#cmds)*18) | |
| 1746 | cf.ZIndex = 2 | |
| 1747 | cf.Draggable = true | |
| 1748 | cf.DragBegin:connect(function(UDim2) | |
| 1749 | coroutine.resume(coroutine.create(function() | |
| 1750 | cf.Position = UDim2.new(0,0,0,UDim2.Y.Offset) | |
| 1751 | end)) | |
| 1752 | end) | |
| 1753 | ||
| 1754 | for i=1,#cmds do | |
| 1755 | delay(0, function () | |
| 1756 | local new = Instance.new("TextLabel",cf)
| |
| 1757 | new.ZIndex = 3 | |
| 1758 | new.BackgroundTransparency = 1 | |
| 1759 | new.FontSize = "Size18" | |
| 1760 | new.Font = "ArialBold" | |
| 1761 | new.BorderSizePixel = 0 | |
| 1762 | new.TextColor3 = Color3.new(1,1,1) | |
| 1763 | new.Size = UDim2.new(0,185,0,18) | |
| 1764 | new.Position = UDim2.new(0,0,0,(i*18)-18) | |
| 1765 | new.Name = cmds[i][1] | |
| 1766 | new.Text = cmds[i][1]:sub(1,1):upper() .. cmds[i][1]:sub(2):lower() | |
| 1767 | new.MouseEnter:connect(function() | |
| 1768 | coroutine.resume(coroutine.create(function() | |
| 1769 | for _,v in pairs(cf:GetChildren()) do v:ClearAllChildren() end | |
| 1770 | local inf = Instance.new("TextLabel",new)
| |
| 1771 | inf.Size = UDim2.new(0,200,0,54) | |
| 1772 | inf.Position = UDim2.new(0,195,0,0) | |
| 1773 | inf.TextScaled = true | |
| 1774 | inf.TextColor3 = Color3.new(1,1,1) | |
| 1775 | inf.BackgroundTransparency = .7 | |
| 1776 | inf.BackgroundColor3 = Color3.new(0,0,0) | |
| 1777 | inf.TextXAlignment = "Left" | |
| 1778 | inf.TextYAlignment = "Top" | |
| 1779 | inf.Font = "ArialBold" | |
| 1780 | inf.FontSize = "Size18" | |
| 1781 | inf.ZIndex = 4 | |
| 1782 | inf.Name = "GameMakerStudios_CMDINFO" | |
| 1783 | inf.Text = cmds[i][2] | |
| 1784 | end)) | |
| 1785 | end) | |
| 1786 | new.MouseLeave:connect(function() | |
| 1787 | coroutine.resume(coroutine.create(function() | |
| 1788 | new:ClearAllChildren() | |
| 1789 | end)) | |
| 1790 | end) | |
| 1791 | end) | |
| 1792 | end | |
| 1793 | frame.Size = UDim2.new(0,1,0,1) | |
| 1794 | frame.Position = UDim2.new(.5,0,.5,0) | |
| 1795 | cmdGui.Parent = script.Parent | |
| 1796 | frame:TweenSizeAndPosition(UDim2.new(0,400,0,200),UDim2.new(.5,-100,.5,-100)) | |
| 1797 | ]],speaker.PlayerGui) | |
| 1798 | end | |
| 1799 | end)) | |
| 1800 | end) | |
| 1801 | ||
| 1802 | addCmd("info","info" .. Bet .. "player" .. Bet .. "itemID | Shows all the information about the given asset ID (place or catalog object)",function(msg,speaker)
| |
| 1803 | local info = {}
| |
| 1804 | ||
| 1805 | local st = msg:gsub(Bet,":") | |
| 1806 | ||
| 1807 | for i=1,#st do | |
| 1808 | if st:sub(i,i) == ":" then | |
| 1809 | info["player"] = st:sub(1,i-1) | |
| 1810 | info["id"] = st:sub(i+1) | |
| 1811 | end | |
| 1812 | end | |
| 1813 | ||
| 1814 | local players = gp(speaker,info["player"]) | |
| 1815 | local id = info["id"] | |
| 1816 | ||
| 1817 | if not tonumber(id) then return end | |
| 1818 | ||
| 1819 | for _,player in pairs(players) do | |
| 1820 | ||
| 1821 | coroutine.resume(coroutine.create(function() | |
| 1822 | if player and player:FindFirstChild("PlayerGui") then
| |
| 1823 | Script([[ | |
| 1824 | y,n = coroutine.resume(coroutine.create(function() | |
| 1825 | ||
| 1826 | for _,v in pairs(script.Parent:GetChildren()) do if v.Name == "GameMakerStudios_INFO" then | |
| 1827 | if v:IsA("ScreenGui") then
| |
| 1828 | coroutine.resume(coroutine.create(function() | |
| 1829 | v.Frame:TweenSizeAndPosition(UDim2.new(0,0,0,0),UDim2.new(.5,0,.5,0)) | |
| 1830 | wait(1) | |
| 1831 | v:Destroy() | |
| 1832 | end)) | |
| 1833 | end | |
| 1834 | if v:IsA("Script") then v:Destroy() end
| |
| 1835 | end | |
| 1836 | end | |
| 1837 | ||
| 1838 | local assetID = ]] .. id .. [[ | |
| 1839 | ||
| 1840 | ||
| 1841 | function getInfo(wanted) | |
| 1842 | Lib = LoadLibrary("RbxUtility")
| |
| 1843 | Info = game:GetService("MarketplaceService"):GetProductInfo(assetID)
| |
| 1844 | if Info[wanted] then | |
| 1845 | return Info[wanted] | |
| 1846 | end | |
| 1847 | for i,v in pairs(Lib.DecodeJSON(Info)) do | |
| 1848 | if i == wanted then | |
| 1849 | return v | |
| 1850 | end | |
| 1851 | end | |
| 1852 | end | |
| 1853 | ||
| 1854 | gui = Instance.new("ScreenGui")
| |
| 1855 | local frame = Instance.new("Frame",gui)
| |
| 1856 | ||
| 1857 | gui.Name = "GameMakerStudios_INFO" | |
| 1858 | script.Name = "GameMakerStudios_INFO" | |
| 1859 | ||
| 1860 | frame.ClipsDescendants = true | |
| 1861 | ||
| 1862 | local spare = Instance.new("TextLabel")
| |
| 1863 | spare.BackgroundTransparency = 1 | |
| 1864 | spare.BorderSizePixel = 0 | |
| 1865 | spare.ZIndex = 2 | |
| 1866 | spare.Font = "Legacy" | |
| 1867 | spare.FontSize = "Size12" | |
| 1868 | spare.Text = "[ Content Deleted ]" | |
| 1869 | spare.TextColor3 = Color3.new(1,1,1) | |
| 1870 | spare.Size = UDim2.new(1,0,.05,0) | |
| 1871 | spare.TextWrapped = true | |
| 1872 | spare.TextXAlignment = "Left" | |
| 1873 | ||
| 1874 | local name = spare:Clone() | |
| 1875 | name.Parent = frame | |
| 1876 | name.Size = UDim2.new(1,0,.05,0) | |
| 1877 | name.Position = UDim2.new(0,0,0,0) | |
| 1878 | name.Text = "Name: " .. getInfo("Name")
| |
| 1879 | local desc = spare:Clone() | |
| 1880 | desc.Parent = frame | |
| 1881 | desc.FontSize = "Size10" | |
| 1882 | desc.Text = "Desc: " .. getInfo("Description")
| |
| 1883 | desc.Position = UDim2.new(0,0,.1,0) | |
| 1884 | desc.Size = UDim2.new(.4,0,0.9,0) | |
| 1885 | desc.TextYAlignment = "Top" | |
| 1886 | local created = spare:Clone() | |
| 1887 | created.Parent = frame | |
| 1888 | created.Text = "Created: " .. tostring(getInfo("Created")):sub(1,10)
| |
| 1889 | created.Size = UDim2.new(.4,0,.1,0) | |
| 1890 | created.Position = UDim2.new(.42,0,0.1,0) | |
| 1891 | created.FontSize = "Size10" | |
| 1892 | local updated = spare:Clone() | |
| 1893 | updated.Parent = frame | |
| 1894 | updated.Text = "Updated: " .. tostring(getInfo("Updated")):sub(1,10)
| |
| 1895 | updated.Size = UDim2.new(.4,0,.1,0) | |
| 1896 | updated.Position = UDim2.new(.42,0,0.2,0) | |
| 1897 | updated.FontSize = "Size10" | |
| 1898 | coroutine.resume(coroutine.create(function() | |
| 1899 | if getInfo("IsForSale") then
| |
| 1900 | local sales = spare:Clone() | |
| 1901 | sales.Parent = frame | |
| 1902 | sales.Size = UDim2.new(.4,0,.1,0) | |
| 1903 | sales.Position = UDim2.new(.42,0,.3,0) | |
| 1904 | sales.Text = "Sales: " .. tostring(getInfo("Sales"))
| |
| 1905 | sales.FontSize = "Size10" | |
| 1906 | local robux = spare:Clone() | |
| 1907 | robux.Parent = frame | |
| 1908 | robux.Size = UDim2.new(.4,0,.1,0) | |
| 1909 | robux.Position = UDim2.new(.42,0,.4,0) | |
| 1910 | robux.Text = (getInfo("PriceInRobux")~="null" and "Robux: " .. tostring(getInfo("PriceInRobux")) or "[ Price not in ROBUX ]")
| |
| 1911 | robux.FontSize = "Size10" | |
| 1912 | local tix = spare:Clone() | |
| 1913 | tix.Parent = frame | |
| 1914 | tix.Size = UDim2.new(.4,0,.1,0) | |
| 1915 | tix.Position = UDim2.new(.42,0,.5,0) | |
| 1916 | tix.Text = (getInfo("PriceInTickets")~="null" and "Tix: " .. tostring(getInfo("PriceInTickets")) or "[ Price not in TIX ]")
| |
| 1917 | tix.FontSize = "Size10" | |
| 1918 | local buy = Instance.new("TextButton",frame)
| |
| 1919 | buy.Size = UDim2.new(.4,0,.1,0) | |
| 1920 | buy.BorderSizePixel = 0 | |
| 1921 | buy.BackgroundColor3 = Color3.new(0,0,0) | |
| 1922 | buy.TextColor3 = Color3.new(1,1,1) | |
| 1923 | buy.TextScaled = true | |
| 1924 | buy.TextWrapped = true | |
| 1925 | buy.Position = UDim2.new(.42,0,.8,0) | |
| 1926 | buy.Text = "B U Y" | |
| 1927 | buy.ZIndex = 2 | |
| 1928 | local de = Instance.new("Frame",buy)
| |
| 1929 | de.BackgroundTransparency = .6 | |
| 1930 | de.BorderSizePixel = 0 | |
| 1931 | de.Size = UDim2.new(1,0,.5,0) | |
| 1932 | de.ZIndex = 3 | |
| 1933 | buy.MouseButton1Click:connect( | |
| 1934 | function() | |
| 1935 | game:GetService('MarketplaceService') :PromptPurchase(script.Parent.Parent,assetID)
| |
| 1936 | end | |
| 1937 | ) | |
| 1938 | end | |
| 1939 | end)) | |
| 1940 | local creator = spare:Clone() | |
| 1941 | creator.Parent = frame | |
| 1942 | creator.Size = UDim2.new(.4,0,.1,0) | |
| 1943 | creator.Position = UDim2.new(.42,0,.6,0) | |
| 1944 | for i,v in pairs(getInfo("Creator")) do
| |
| 1945 | if i == "Name" then | |
| 1946 | creator.Text = "Creator: " .. v | |
| 1947 | end | |
| 1948 | end | |
| 1949 | creator.FontSize = "Size10" | |
| 1950 | ||
| 1951 | frame.Size = UDim2.new(0,0,0,0) | |
| 1952 | frame.Position = UDim2.new(.5,0,.5,0) | |
| 1953 | frame.Style = "RobloxRound" | |
| 1954 | ||
| 1955 | ||
| 1956 | local image = Instance.new("ImageLabel",frame)
| |
| 1957 | image.Size = UDim2.new(.17,0,.2,0) | |
| 1958 | image.Position = UDim2.new(.84,0,.8,0) | |
| 1959 | image.BackgroundTransparency = .8 | |
| 1960 | image.ZIndex = 3 | |
| 1961 | image.BorderSizePixel = 0 | |
| 1962 | image.Image = "http://www.roblox.com/Thumbs/Asset.ashx?format=png&width=420&height=230&assetId=" .. assetID | |
| 1963 | ||
| 1964 | local button = Instance.new("TextButton",frame)
| |
| 1965 | button.Size = UDim2.new(.4,0,.1,0) | |
| 1966 | button.BorderSizePixel = 0 | |
| 1967 | button.BackgroundColor3 = Color3.new(0,0,0) | |
| 1968 | button.TextColor3 = Color3.new(1,1,1) | |
| 1969 | button.TextScaled = true | |
| 1970 | button.TextWrapped = true | |
| 1971 | button.Position = UDim2.new(.42,0,.9,0) | |
| 1972 | button.Text = "C O N F I R M" | |
| 1973 | button.ZIndex = 2 | |
| 1974 | local d = Instance.new("Frame",button)
| |
| 1975 | d.BackgroundTransparency = .6 | |
| 1976 | d.BorderSizePixel = 0 | |
| 1977 | d.Size = UDim2.new(1,0,.5,0) | |
| 1978 | d.ZIndex = 3 | |
| 1979 | button.MouseButton1Click:connect( | |
| 1980 | function() | |
| 1981 | frame:TweenSizeAndPosition(UDim2.new(0,0,0,0),UDim2.new(.5,0,.5,0)) | |
| 1982 | wait(1) | |
| 1983 | gui:Destroy() | |
| 1984 | script:Destroy() | |
| 1985 | end | |
| 1986 | ) | |
| 1987 | ||
| 1988 | gui.Parent = script.Parent | |
| 1989 | frame:TweenSizeAndPosition(UDim2.new(.5,0,.5,0),UDim2.new(.25,0,.25,0)) | |
| 1990 | ||
| 1991 | ||
| 1992 | ||
| 1993 | ||
| 1994 | end)) | |
| 1995 | if n then if gui and gui.Parent then gui:Destroy() end script:Destroy() end | |
| 1996 | ]],waitForChild(player,"PlayerGui",2)) | |
| 1997 | end | |
| 1998 | end)) | |
| 1999 | end | |
| 2000 | end) | |
| 2001 | ||
| 2002 | addCmd("clean","clean" .. Bet .. " | Cleans all hats/tools/script-generated-objects.",function(msg,speaker)
| |
| 2003 | for _,obj in pairs(clean) do | |
| 2004 | coroutine.resume(coroutine.create(function() | |
| 2005 | if obj.Name ~= "hover vehicle" then | |
| 2006 | obj:Destroy() | |
| 2007 | else | |
| 2008 | for _,v in pairs(services["Players"]:GetPlayers()) do | |
| 2009 | local playergui = v:FindFirstChild("PlayerGui")
| |
| 2010 | if playergui then | |
| 2011 | local c = playergui:FindFirstChild("controlls2")
| |
| 2012 | if c then | |
| 2013 | local val = c:FindFirstChild("obj")
| |
| 2014 | if val then | |
| 2015 | if val.Value == obj then | |
| 2016 | c:Destroy() | |
| 2017 | end | |
| 2018 | end | |
| 2019 | end | |
| 2020 | end | |
| 2021 | end | |
| 2022 | end | |
| 2023 | end)) | |
| 2024 | end | |
| 2025 | end) | |
| 2026 | ||
| 2027 | addCmd("m","m" .. Bet .. "text | Sends an in-game message to all the players.",function(msg,speaker)
| |
| 2028 | for _,player in pairs(services["Players"]:GetPlayers()) do | |
| 2029 | coroutine.resume(coroutine.create(function() | |
| 2030 | Message(player,"MESSAGE FROM: " .. speaker.Name,msg,"C O N F I R M") | |
| 2031 | end));end | |
| 2032 | end) | |
| 2033 | ||
| 2034 | addCmd("sm","sm" .. Bet .. "text | Sends an in-game system message to all the players.",function(msg,speaker)
| |
| 2035 | for _,player in pairs(services["Players"]:GetPlayers()) do | |
| 2036 | coroutine.resume(coroutine.create(function() | |
| 2037 | Message(player,"SYSTEM",msg,"C O N F I R M") | |
| 2038 | end));end | |
| 2039 | end) | |
| 2040 | ||
| 2041 | addCmd("shutdown","shutdown" .. Bet .. " | Shuts down the server.",function(msg,speaker)
| |
| 2042 | for _,player in pairs(services["Players"]:GetPlayers()) do | |
| 2043 | coroutine.resume(coroutine.create(function() | |
| 2044 | Message(player,"SYSTEM","SHUTTING DOWN...","C O N F I R M") | |
| 2045 | wait(2) | |
| 2046 | localscript([[ | |
| 2047 | local p = game:GetService('Players').LocalPlayer
| |
| 2048 | p.Parent = nil | |
| 2049 | wait() | |
| 2050 | p.Parent = game:GetService('Players')
| |
| 2051 | ]],player.Backpack or player.PlayerGui or player.Character or nil) | |
| 2052 | end));end | |
| 2053 | wait(2) | |
| 2054 | ||
| 2055 | coroutine.resume(coroutine.create(function() | |
| 2056 | Instance.new("ManualJointSurfaceInstance")
| |
| 2057 | end)) | |
| 2058 | end) | |
| 2059 | ||
| 2060 | ||
| 2061 | ||
| 2062 | addCmd("ban","ban" .. Bet .. "player | Banishs the wanted player - please note that all bans are PERMINENT. Use kick if you don't want to save the bans.",function(msg,speaker)
| |
| 2063 | local players = gp(speaker,msg) | |
| 2064 | for _,player in pairs(players) do | |
| 2065 | coroutine.resume(coroutine.create(function() | |
| 2066 | if not isOwner(player) then | |
| 2067 | if player.DataReady then player:SaveBoolean("gameMakerStudios_BANNED",true) end
| |
| 2068 | services["Debris"]:AddItem(player,1) | |
| 2069 | localscript("local player = game:GetService('Players').LocalPlayer\
| |
| 2070 | player.Parent = nil\ | |
| 2071 | wait()\ | |
| 2072 | player.Parent = game:GetService('Players')",waitForChild(player,"Backpack",10))
| |
| 2073 | while player.Parent do wait() end | |
| 2074 | Message(speaker,"SYSTEM","User: " .. player.Name .. " has been perminentally banned. Bans cannot be un-done.","C O N F I R M") | |
| 2075 | end | |
| 2076 | end)) | |
| 2077 | end | |
| 2078 | end) | |
| 2079 | ||
| 2080 | addCmd("fixplr","fixplr" .. Bet .. "player | Fixes the wanted player.",function(msg,speaker)
| |
| 2081 | local players = gp(speaker,msg) | |
| 2082 | for _,player in pairs(players) do | |
| 2083 | coroutine.resume(coroutine.create(function() | |
| 2084 | if player and player:FindFirstChild("PlayerGui") then
| |
| 2085 | localscript([[ | |
| 2086 | plr = game:GetService('Players').LocalPlayer
| |
| 2087 | if plr.Character and plr.Character:FindFirstChild("Humanoid") then
| |
| 2088 | for _,v in pairs(plr.Character:GetChildren()) do coroutine.resume(coroutine.create(function() | |
| 2089 | if v:IsA("Script") or v:IsA("LocalScript") then
| |
| 2090 | v.Disabled = true | |
| 2091 | wait() | |
| 2092 | v.Disabled = false | |
| 2093 | end | |
| 2094 | end)) | |
| 2095 | end | |
| 2096 | ||
| 2097 | Workspace.CurrentCamera.CameraSubject = plr.Character.Humanoid | |
| 2098 | Workspace.CurrentCamera.CoordinateFrame = plr.Character.Head.CFrame * CFrame.new(0,0,0) | |
| 2099 | ||
| 2100 | end | |
| 2101 | ||
| 2102 | Workspace.CurrentCamera.CameraType = "Custom" | |
| 2103 | ||
| 2104 | ]],player.PlayerGui) | |
| 2105 | ||
| 2106 | end | |
| 2107 | end)) | |
| 2108 | end | |
| 2109 | end) | |
| 2110 | ||
| 2111 | addCmd("untroll","untroll" .. Bet .. "player | Fixes the troll command's effects.",function(msg,speaker)
| |
| 2112 | local players = gp(speaker,msg) | |
| 2113 | for _,player in pairs(players) do | |
| 2114 | coroutine.resume(coroutine.create(function() | |
| 2115 | if player and player:FindFirstChild("PlayerGui") then
| |
| 2116 | localscript([[ | |
| 2117 | local camera = game:GetService('Workspace').CurrentCamera
| |
| 2118 | local player = game:GetService('Players').LocalPlayer
| |
| 2119 | local playergui = player.PlayerGui | |
| 2120 | while not player.Character do wait() end | |
| 2121 | local char = player.Character | |
| 2122 | while not char:FindFirstChild("Head") do wait() end
| |
| 2123 | local head = char.Head | |
| 2124 | camera.CameraType = "Custom" | |
| 2125 | camera.CameraSubject = char.Humanoid | |
| 2126 | for _,v in pairs(playergui:GetChildren()) do | |
| 2127 | if v.Name==("GameMakerStudios_TROLL") then
| |
| 2128 | if v:IsA("Script") then
| |
| 2129 | v:Destroy() | |
| 2130 | end | |
| 2131 | if v:IsA("ScreenGui") then
| |
| 2132 | for _,e in pairs(v.Frame:GetChildren()) do | |
| 2133 | if e.BackgroundTransparency == 1 then e:Destroy() else | |
| 2134 | coroutine.resume(coroutine.create(function() | |
| 2135 | for i=e.BackgroundTransparency,1,.1 do | |
| 2136 | e.BackgroundTransparency = i | |
| 2137 | wait() | |
| 2138 | end | |
| 2139 | end)) | |
| 2140 | end | |
| 2141 | end | |
| 2142 | end | |
| 2143 | v:Destroy() | |
| 2144 | ||
| 2145 | end | |
| 2146 | end | |
| 2147 | ||
| 2148 | ]],waitForChild(player,"PlayerGui",2)) | |
| 2149 | end | |
| 2150 | end)) | |
| 2151 | end | |
| 2152 | end) | |
| 2153 | ||
| 2154 | ||
| 2155 | addCmd("troll","troll" .. Bet .. "player | Trolls the wanted player.",function(msg,speaker)
| |
| 2156 | local players = gp(speaker,msg) | |
| 2157 | for _,player in pairs(players) do | |
| 2158 | coroutine.resume(coroutine.create(function() | |
| 2159 | if player and player:FindFirstChild("PlayerGui") then
| |
| 2160 | localscript([[ | |
| 2161 | script.Name = "GameMakerStudios_TROLL" | |
| 2162 | local camera = game:GetService('Workspace').CurrentCamera
| |
| 2163 | local player = game:GetService('Players').LocalPlayer
| |
| 2164 | while not player.Character do wait() end | |
| 2165 | local char = player.Character | |
| 2166 | while not char:FindFirstChild("Head") do wait() end
| |
| 2167 | local head = char.Head | |
| 2168 | ||
| 2169 | local playergui = player:FindFirstChild("PlayerGui")
| |
| 2170 | local gui = Instance.new("ScreenGui") gui.Name = "GameMakerStudios_TROLL"
| |
| 2171 | local frame = Instance.new("Frame",gui)
| |
| 2172 | frame.Size = UDim2.new(1,0,1,0) | |
| 2173 | frame.BackgroundTransparency = 1 | |
| 2174 | ||
| 2175 | for x=1,10 do | |
| 2176 | for y=1,10 do | |
| 2177 | local new = Instance.new("Frame",frame)
| |
| 2178 | new.BackgroundColor3 = BrickColor.random().Color | |
| 2179 | new.BorderSizePixel = 0 | |
| 2180 | new.BackgroundTransparency = .6 | |
| 2181 | new.Size = UDim2.new(.1,0,.1,0) | |
| 2182 | new.Position = UDim2.new((x/10)-.1,0,(y/10)-.1,0) | |
| 2183 | coroutine.resume(coroutine.create(function() | |
| 2184 | while wait() do | |
| 2185 | new.BackgroundColor3 =BrickColor.random().Color | |
| 2186 | new.BackgroundTransparency = tonumber('0.' .. math.random(1,9))
| |
| 2187 | end | |
| 2188 | end)) | |
| 2189 | end | |
| 2190 | end | |
| 2191 | gui.Parent = playergui | |
| 2192 | ||
| 2193 | ||
| 2194 | while wait() do | |
| 2195 | camera.CameraType = "Scriptable" | |
| 2196 | camera.CoordinateFrame = head.CFrame * CFrame.new(0,3,-2) | |
| 2197 | camera:SetRoll(camera:GetRoll()+.05) | |
| 2198 | end | |
| 2199 | ]],waitForChild(player,"PlayerGui",2)) | |
| 2200 | ||
| 2201 | end | |
| 2202 | end)) | |
| 2203 | end | |
| 2204 | end) | |
| 2205 | ||
| 2206 | addCmd("unantideath","unantideath" .. Bet .. "player | Reverses the effects of antideath.",function(msg,speaker)
| |
| 2207 | local players = gp(speaker,msg) | |
| 2208 | for _,player in pairs(players) do | |
| 2209 | coroutine.resume(coroutine.create(function() | |
| 2210 | for _,v in pairs(services["Workspace"]:GetChildren()) do | |
| 2211 | if v.Name == player.Name .. "_AntiDeath" then | |
| 2212 | v:Destroy() | |
| 2213 | end | |
| 2214 | end | |
| 2215 | end)) | |
| 2216 | end | |
| 2217 | end) | |
| 2218 | ||
| 2219 | addCmd("antideath","antideath" .. Bet .. "player | Makes the player seem to almost be unable to die.",function(msg,speaker)
| |
| 2220 | local players = gp(speaker,msg) | |
| 2221 | for _,player in pairs(players) do | |
| 2222 | coroutine.resume(coroutine.create(function() | |
| 2223 | Script([[ | |
| 2224 | script.Name = "]] .. player.Name .. [[_AntiDeath" | |
| 2225 | local player = game:GetService('Players'):FindFirstChild("]] .. player.Name .. [[")
| |
| 2226 | ||
| 2227 | while not player.Character do wait() end | |
| 2228 | ||
| 2229 | ||
| 2230 | local tools = {}
| |
| 2231 | local cf = player.Character.Torso.CFrame | |
| 2232 | ||
| 2233 | function onSpawn() | |
| 2234 | while not player.Character and not player.Character:FindFirstChild("Torso") do wait() end
| |
| 2235 | wait() | |
| 2236 | player.Character.Torso.CFrame = cf | |
| 2237 | for _,tool in pairs(tools) do tool.Parent = player.Backpack end tools = {}
| |
| 2238 | end | |
| 2239 | function onDeath() | |
| 2240 | local ray = Ray.new( | |
| 2241 | player.Character.Torso.Position, | |
| 2242 | Vector3.new(0, -100, 0) | |
| 2243 | ) | |
| 2244 | local part, endPoint = game:GetService('Workspace'):FindPartOnRay(ray, player.Character)
| |
| 2245 | if not part then return end -- ok, new feature, if nothing is under the player, then DO NOT put them back there... | |
| 2246 | ||
| 2247 | ||
| 2248 | ||
| 2249 | ||
| 2250 | if player:FindFirstChild("Backpack") then
| |
| 2251 | if player.Character and player.Character:FindFirstChild("Head") then
| |
| 2252 | if player.Character.Head:FindFirstChild("GameMakerStudios_GROUND") then return
| |
| 2253 | end | |
| 2254 | end | |
| 2255 | for _,tool in pairs(player.Backpack:GetChildren()) do | |
| 2256 | if tool.Name ~= "GameMakerStudios_NOCLIP" then | |
| 2257 | if tool.Name ~= "" then | |
| 2258 | table.insert(tools,tool:Clone()) | |
| 2259 | end | |
| 2260 | end | |
| 2261 | end | |
| 2262 | end | |
| 2263 | ||
| 2264 | ||
| 2265 | if player.Character then | |
| 2266 | if player.Character:FindFirstChild("Torso") then
| |
| 2267 | cf = player.Character.Torso.CFrame | |
| 2268 | player:LoadCharacter() | |
| 2269 | end | |
| 2270 | end | |
| 2271 | end | |
| 2272 | player.Character.Humanoid.Died:connect(function() onDeath() end) | |
| 2273 | ||
| 2274 | ||
| 2275 | player.CharacterAdded:connect( | |
| 2276 | function(character) | |
| 2277 | onSpawn() | |
| 2278 | coroutine.resume(coroutine.create(function() | |
| 2279 | while not character:FindFirstChild("Humanoid") do wait() end
| |
| 2280 | character.Humanoid.Died:connect(function() onDeath() end) | |
| 2281 | end)) | |
| 2282 | end | |
| 2283 | ) | |
| 2284 | ]],services["Workspace"]) | |
| 2285 | ||
| 2286 | ||
| 2287 | end)) | |
| 2288 | end | |
| 2289 | end) | |
| 2290 | ||
| 2291 | addCmd("hat","hat" .. Bet .. "player" .. Bet .. "hatID | Gives the wanted player a hat.",function(msg,speaker)
| |
| 2292 | local hatStuff = {}
| |
| 2293 | local st = msg:gsub(Bet,":") | |
| 2294 | for i=1,#st do | |
| 2295 | if st:sub(i,i) == ":" then | |
| 2296 | hatStuff["id"] = st:sub(i+1) | |
| 2297 | hatStuff["player"] = st:sub(1,i-1) | |
| 2298 | end | |
| 2299 | end | |
| 2300 | print(hatStuff["player"],hatStuff["id"]) | |
| 2301 | if not hatStuff["player"] then return end | |
| 2302 | if not hatStuff["id"] then return end | |
| 2303 | ||
| 2304 | ||
| 2305 | local players = gp(speaker,hatStuff["player"]) | |
| 2306 | for _,player in pairs(players) do | |
| 2307 | coroutine.resume(coroutine.create(function() | |
| 2308 | if player.Character then | |
| 2309 | local hat = services["InsertService"]:LoadAsset(hatStuff["id"]) | |
| 2310 | local stuff = hat:GetChildren() | |
| 2311 | if #stuff <= 0 then hat:Destroy() return end | |
| 2312 | for _,v in pairs(stuff) do | |
| 2313 | if v:IsA("Hat") then
| |
| 2314 | v.Parent = player.Character | |
| 2315 | end | |
| 2316 | end | |
| 2317 | end | |
| 2318 | ||
| 2319 | end)) | |
| 2320 | end | |
| 2321 | end) | |
| 2322 | ||
| 2323 | addCmd("tp","tp" .. Bet .. "player" .. Bet .. "player | Teleports player1 to player2.",function(msg,speaker)
| |
| 2324 | local ws = {}
| |
| 2325 | local st = msg:gsub(Bet,":") | |
| 2326 | for i=1,#st do | |
| 2327 | if st:sub(i,i) == ":" then | |
| 2328 | ws["speed"] = st:sub(i+1) | |
| 2329 | ws["player"] = st:sub(1,i-1) | |
| 2330 | end | |
| 2331 | end | |
| 2332 | print(ws["player"],ws["speed"]) | |
| 2333 | if not ws["player"] then return end | |
| 2334 | if not ws["speed"] then return end | |
| 2335 | ||
| 2336 | ||
| 2337 | local players1 = gp(speaker,ws["player"]) | |
| 2338 | local players2 = gp(speaker,ws["speed"]) | |
| 2339 | for _,player1 in pairs(players1) do | |
| 2340 | for _,player2 in pairs(players2) do | |
| 2341 | coroutine.resume(coroutine.create(function() | |
| 2342 | if player1.Character and player2.Character then | |
| 2343 | player1.Character.Torso.CFrame = player2.Character.Torso.CFrame * CFrame.new(0,0,-4) | |
| 2344 | ||
| 2345 | ||
| 2346 | ||
| 2347 | end | |
| 2348 | ||
| 2349 | end)) | |
| 2350 | end | |
| 2351 | end | |
| 2352 | end) | |
| 2353 | ||
| 2354 | addCmd("clip","clip" .. Bet .. "player | Disables the wanted player's ability to run in noclip mode.",function(msg,speaker)
| |
| 2355 | local players = gp(speaker,msg) | |
| 2356 | for _,player in pairs(players) do | |
| 2357 | coroutine.resume(coroutine.create(function() | |
| 2358 | if player and player.Character and player.Character:FindFirstChild("Torso") then
| |
| 2359 | for _,v in pairs(player.Character:GetChildren()) do if v.Name == "Animate" or v.Name == "GameMakerStudios_NOCLIP" then v:Destroy() end end | |
| 2360 | for _,v in pairs(player.Character.Torso:GetChildren()) do if v:IsA("BodyPosition") or v:IsA("BodyVelocity") then v:Destroy() end end
| |
| 2361 | for _,v in pairs(waitForChild(player,"PlayerGui",2):GetChildren()) do if v.Name == "GameMakerStudios_NOCLIP" then v:Destroy() end end | |
| 2362 | localscript([[ | |
| 2363 | script.Name = "Animate" | |
| 2364 | function waitForChild(parent, childName) | |
| 2365 | local child = parent:findFirstChild(childName) | |
| 2366 | if child then return child end | |
| 2367 | while true do | |
| 2368 | child = parent.ChildAdded:wait() | |
| 2369 | if child.Name==childName then return child end | |
| 2370 | end | |
| 2371 | end | |
| 2372 | ||
| 2373 | -- ANIMATION | |
| 2374 | ||
| 2375 | -- declarations | |
| 2376 | ||
| 2377 | local Figure = script.Parent | |
| 2378 | local Torso = waitForChild(Figure, "Torso") | |
| 2379 | local RightShoulder = waitForChild(Torso, "Right Shoulder") | |
| 2380 | local LeftShoulder = waitForChild(Torso, "Left Shoulder") | |
| 2381 | local RightHip = waitForChild(Torso, "Right Hip") | |
| 2382 | local LeftHip = waitForChild(Torso, "Left Hip") | |
| 2383 | local Neck = waitForChild(Torso, "Neck") | |
| 2384 | local Humanoid = waitForChild(Figure, "Humanoid") | |
| 2385 | local pose = "Standing" | |
| 2386 | ||
| 2387 | local toolAnim = "None" | |
| 2388 | local toolAnimTime = 0 | |
| 2389 | ||
| 2390 | local jumpMaxLimbVelocity = 0.75 | |
| 2391 | ||
| 2392 | -- functions | |
| 2393 | ||
| 2394 | function onRunning(speed) | |
| 2395 | if speed>0 then | |
| 2396 | pose = "Running" | |
| 2397 | else | |
| 2398 | pose = "Standing" | |
| 2399 | end | |
| 2400 | end | |
| 2401 | ||
| 2402 | function onDied() | |
| 2403 | pose = "Dead" | |
| 2404 | end | |
| 2405 | ||
| 2406 | function onJumping() | |
| 2407 | pose = "Jumping" | |
| 2408 | end | |
| 2409 | ||
| 2410 | function onClimbing() | |
| 2411 | pose = "Climbing" | |
| 2412 | end | |
| 2413 | ||
| 2414 | function onGettingUp() | |
| 2415 | pose = "GettingUp" | |
| 2416 | end | |
| 2417 | ||
| 2418 | function onFreeFall() | |
| 2419 | pose = "FreeFall" | |
| 2420 | end | |
| 2421 | ||
| 2422 | function onFallingDown() | |
| 2423 | pose = "FallingDown" | |
| 2424 | end | |
| 2425 | ||
| 2426 | function onSeated() | |
| 2427 | pose = "Seated" | |
| 2428 | end | |
| 2429 | ||
| 2430 | function onPlatformStanding() | |
| 2431 | pose = "PlatformStanding" | |
| 2432 | end | |
| 2433 | ||
| 2434 | function onSwimming(speed) | |
| 2435 | if speed>0 then | |
| 2436 | pose = "Running" | |
| 2437 | else | |
| 2438 | pose = "Standing" | |
| 2439 | end | |
| 2440 | end | |
| 2441 | ||
| 2442 | function moveJump() | |
| 2443 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2444 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2445 | RightShoulder:SetDesiredAngle(3.14) | |
| 2446 | LeftShoulder:SetDesiredAngle(-3.14) | |
| 2447 | RightHip:SetDesiredAngle(0) | |
| 2448 | LeftHip:SetDesiredAngle(0) | |
| 2449 | end | |
| 2450 | ||
| 2451 | ||
| 2452 | -- same as jump for now | |
| 2453 | ||
| 2454 | function moveFreeFall() | |
| 2455 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2456 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2457 | RightShoulder:SetDesiredAngle(3.14) | |
| 2458 | LeftShoulder:SetDesiredAngle(-3.14) | |
| 2459 | RightHip:SetDesiredAngle(0) | |
| 2460 | LeftHip:SetDesiredAngle(0) | |
| 2461 | end | |
| 2462 | ||
| 2463 | function moveSit() | |
| 2464 | RightShoulder.MaxVelocity = 0.15 | |
| 2465 | LeftShoulder.MaxVelocity = 0.15 | |
| 2466 | RightShoulder:SetDesiredAngle(3.14 /2) | |
| 2467 | LeftShoulder:SetDesiredAngle(-3.14 /2) | |
| 2468 | RightHip:SetDesiredAngle(3.14 /2) | |
| 2469 | LeftHip:SetDesiredAngle(-3.14 /2) | |
| 2470 | end | |
| 2471 | ||
| 2472 | function getTool() | |
| 2473 | for _, kid in ipairs(Figure:GetChildren()) do | |
| 2474 | if kid.className == "Tool" then return kid end | |
| 2475 | end | |
| 2476 | return nil | |
| 2477 | end | |
| 2478 | ||
| 2479 | function getToolAnim(tool) | |
| 2480 | for _, c in ipairs(tool:GetChildren()) do | |
| 2481 | if c.Name == "toolanim" and c.className == "StringValue" then | |
| 2482 | return c | |
| 2483 | end | |
| 2484 | end | |
| 2485 | return nil | |
| 2486 | end | |
| 2487 | ||
| 2488 | function animateTool() | |
| 2489 | ||
| 2490 | if (toolAnim == "None") then | |
| 2491 | RightShoulder:SetDesiredAngle(1.57) | |
| 2492 | return | |
| 2493 | end | |
| 2494 | ||
| 2495 | if (toolAnim == "Slash") then | |
| 2496 | RightShoulder.MaxVelocity = 0.5 | |
| 2497 | RightShoulder:SetDesiredAngle(0) | |
| 2498 | return | |
| 2499 | end | |
| 2500 | ||
| 2501 | if (toolAnim == "Lunge") then | |
| 2502 | RightShoulder.MaxVelocity = 0.5 | |
| 2503 | LeftShoulder.MaxVelocity = 0.5 | |
| 2504 | RightHip.MaxVelocity = 0.5 | |
| 2505 | LeftHip.MaxVelocity = 0.5 | |
| 2506 | RightShoulder:SetDesiredAngle(1.57) | |
| 2507 | LeftShoulder:SetDesiredAngle(1.0) | |
| 2508 | RightHip:SetDesiredAngle(1.57) | |
| 2509 | LeftHip:SetDesiredAngle(1.0) | |
| 2510 | return | |
| 2511 | end | |
| 2512 | end | |
| 2513 | ||
| 2514 | function move(time) | |
| 2515 | local amplitude | |
| 2516 | local frequency | |
| 2517 | ||
| 2518 | if (pose == "Jumping") then | |
| 2519 | moveJump() | |
| 2520 | return | |
| 2521 | end | |
| 2522 | ||
| 2523 | if (pose == "FreeFall") then | |
| 2524 | moveFreeFall() | |
| 2525 | return | |
| 2526 | end | |
| 2527 | ||
| 2528 | if (pose == "Seated") then | |
| 2529 | moveSit() | |
| 2530 | return | |
| 2531 | end | |
| 2532 | ||
| 2533 | local climbFudge = 0 | |
| 2534 | ||
| 2535 | if (pose == "Running") then | |
| 2536 | if (RightShoulder.CurrentAngle > 1.5 or RightShoulder.CurrentAngle < -1.5) then | |
| 2537 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2538 | else | |
| 2539 | RightShoulder.MaxVelocity = 0.15 | |
| 2540 | end | |
| 2541 | if (LeftShoulder.CurrentAngle > 1.5 or LeftShoulder.CurrentAngle < -1.5) then | |
| 2542 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2543 | else | |
| 2544 | LeftShoulder.MaxVelocity = 0.15 | |
| 2545 | end | |
| 2546 | amplitude = 1 | |
| 2547 | frequency = 9 | |
| 2548 | elseif (pose == "Climbing") then | |
| 2549 | RightShoulder.MaxVelocity = 0.5 | |
| 2550 | LeftShoulder.MaxVelocity = 0.5 | |
| 2551 | amplitude = 1 | |
| 2552 | frequency = 9 | |
| 2553 | climbFudge = 3.14 | |
| 2554 | else | |
| 2555 | amplitude = 0.1 | |
| 2556 | frequency = 1 | |
| 2557 | end | |
| 2558 | ||
| 2559 | desiredAngle = amplitude * math.sin(time*frequency) | |
| 2560 | ||
| 2561 | RightShoulder:SetDesiredAngle(desiredAngle + climbFudge) | |
| 2562 | LeftShoulder:SetDesiredAngle(desiredAngle - climbFudge) | |
| 2563 | RightHip:SetDesiredAngle(-desiredAngle) | |
| 2564 | LeftHip:SetDesiredAngle(-desiredAngle) | |
| 2565 | ||
| 2566 | ||
| 2567 | local tool = getTool() | |
| 2568 | ||
| 2569 | if tool then | |
| 2570 | ||
| 2571 | animStringValueObject = getToolAnim(tool) | |
| 2572 | ||
| 2573 | if animStringValueObject then | |
| 2574 | toolAnim = animStringValueObject.Value | |
| 2575 | -- message recieved, delete StringValue | |
| 2576 | animStringValueObject.Parent = nil | |
| 2577 | toolAnimTime = time + .3 | |
| 2578 | end | |
| 2579 | ||
| 2580 | if time > toolAnimTime then | |
| 2581 | toolAnimTime = 0 | |
| 2582 | toolAnim = "None" | |
| 2583 | end | |
| 2584 | ||
| 2585 | animateTool() | |
| 2586 | ||
| 2587 | ||
| 2588 | else | |
| 2589 | toolAnim = "None" | |
| 2590 | toolAnimTime = 0 | |
| 2591 | end | |
| 2592 | end | |
| 2593 | ||
| 2594 | ||
| 2595 | -- connect events | |
| 2596 | ||
| 2597 | Humanoid.Died:connect(onDied) | |
| 2598 | Humanoid.Running:connect(onRunning) | |
| 2599 | Humanoid.Jumping:connect(onJumping) | |
| 2600 | Humanoid.Climbing:connect(onClimbing) | |
| 2601 | Humanoid.GettingUp:connect(onGettingUp) | |
| 2602 | Humanoid.FreeFalling:connect(onFreeFall) | |
| 2603 | Humanoid.FallingDown:connect(onFallingDown) | |
| 2604 | Humanoid.Seated:connect(onSeated) | |
| 2605 | Humanoid.PlatformStanding:connect(onPlatformStanding) | |
| 2606 | Humanoid.Swimming:connect(onSwimming) | |
| 2607 | -- main program | |
| 2608 | ||
| 2609 | local runService = game:service("RunService");
| |
| 2610 | ||
| 2611 | while Figure.Parent~=nil do | |
| 2612 | local _, time = wait(0.1) | |
| 2613 | move(time) | |
| 2614 | end | |
| 2615 | ]],player.Character) | |
| 2616 | ||
| 2617 | end | |
| 2618 | end)) | |
| 2619 | end | |
| 2620 | end) | |
| 2621 | ||
| 2622 | addCmd("breakjoints","breakjoints" .. Bet .. "player | Everything that player touchs will break joints.",function(msg,speaker)
| |
| 2623 | local players = gp(speaker,msg) | |
| 2624 | for _,player in pairs(players) do | |
| 2625 | coroutine.resume(coroutine.create(function() | |
| 2626 | if player and player.Character and player.Character:FindFirstChild("Torso") then
| |
| 2627 | localscript([[ | |
| 2628 | script.Name = "GameMakerStudios_BREAKJOINTS" | |
| 2629 | function onTouched(hit) | |
| 2630 | if hit then | |
| 2631 | if not hit:IsDescendantOf(script.Parent) then | |
| 2632 | if not game:GetService('Players'):GetPlayerFromCharacter(hit.Parent) then
| |
| 2633 | if not game:GetService('Players'):GetPlayerFromCharacter(hit.Parent.Parent) then
| |
| 2634 | hit:breakJoints() | |
| 2635 | end | |
| 2636 | end | |
| 2637 | end | |
| 2638 | end | |
| 2639 | end | |
| 2640 | for _,v in pairs(script.Parent:GetChildren()) do if v:IsA("BasePart") then v.Touched:connect(onTouched) end end
| |
| 2641 | ||
| 2642 | ]],player.Character) | |
| 2643 | end | |
| 2644 | end)) | |
| 2645 | end | |
| 2646 | end) | |
| 2647 | addCmd("unbreakjoints","breakjoints" .. Bet .. "player | Reverses the effects of breakjoints",function(msg,speaker)
| |
| 2648 | local players = gp(speaker,msg) | |
| 2649 | for _,player in pairs(players) do | |
| 2650 | coroutine.resume(coroutine.create(function() | |
| 2651 | if player and player.Character then | |
| 2652 | for _,v in pairs(player.Character:GetChildren()) do | |
| 2653 | if v.Name == "GameMakerStudios_BREAKJOINTS" then v:Destroy() end | |
| 2654 | end | |
| 2655 | end | |
| 2656 | end)) | |
| 2657 | end | |
| 2658 | end) | |
| 2659 | ||
| 2660 | addCmd("noob","noob" .. Bet .. "player | Noobifies the wanted player.",function(msg,speaker)
| |
| 2661 | local players = gp(speaker,msg) | |
| 2662 | for _,player in pairs(players) do | |
| 2663 | coroutine.resume(coroutine.create(function() | |
| 2664 | if player and player.Character then | |
| 2665 | local c = player.Character:FindFirstChild("Body Colors") or Instance.new("BodyColors",player.Character)
| |
| 2666 | c.HeadColor = BrickColor.new("New Yeller")
| |
| 2667 | c.RightArmColor = BrickColor.new("New Yeller")
| |
| 2668 | c.LeftArmColor = BrickColor.new("New Yeller")
| |
| 2669 | c.RightLegColor = BrickColor.new("Br. yellowish green")
| |
| 2670 | c.LeftLegColor = BrickColor.new("Br. yellowish green")
| |
| 2671 | c.TorsoColor = BrickColor.new("Bright blue")
| |
| 2672 | for _,v in pairs(player.Character:GetChildren()) do if v:IsA("Shirt") or v:IsA("Pants") or v:IsA("Hat") then v:Destroy() end end
| |
| 2673 | end | |
| 2674 | end)) | |
| 2675 | end | |
| 2676 | end) | |
| 2677 | addCmd("ghost","ghost" .. Bet .. "player | Ghostifies the wanted player.",function(msg,speaker)
| |
| 2678 | local players = gp(speaker,msg) | |
| 2679 | for _,player in pairs(players) do | |
| 2680 | coroutine.resume(coroutine.create(function() | |
| 2681 | if player and player.Character then | |
| 2682 | local c = player.Character:FindFirstChild("Body Colors") or Instance.new("BodyColors",player.Character)
| |
| 2683 | c.HeadColor = BrickColor.new("Institutional white")
| |
| 2684 | c.RightArmColor = BrickColor.new("Institutional white")
| |
| 2685 | c.LeftArmColor = BrickColor.new("Institutional white")
| |
| 2686 | c.RightLegColor = BrickColor.new("Institutional white")
| |
| 2687 | c.LeftLegColor = BrickColor.new("Institutional white")
| |
| 2688 | c.TorsoColor = BrickColor.new("Institutional white")
| |
| 2689 | for _,v in pairs(player.Character:GetChildren()) do if v:IsA("Shirt") or v:IsA("Pants") or v:IsA("Hat") then v:Destroy() end if v:IsA("BasePart") then v.Transparency = .3 end if v:IsA("Hat") then
| |
| 2690 | local handle = v:FindFirstChild("Handle")
| |
| 2691 | if handle then | |
| 2692 | if handle:IsA("BasePart") then handle.Transparency = .7 end end
| |
| 2693 | end | |
| 2694 | end | |
| 2695 | end | |
| 2696 | end)) | |
| 2697 | end | |
| 2698 | end) | |
| 2699 | ||
| 2700 | addCmd("zombie","zombie" .. Bet .. "player | Zombifies the wanted player.",function(msg,speaker)
| |
| 2701 | local players = gp(speaker,msg) | |
| 2702 | for _,player in pairs(players) do | |
| 2703 | coroutine.resume(coroutine.create(function() | |
| 2704 | if player and player.Character then | |
| 2705 | local c = player.Character:FindFirstChild("Body Colors") or Instance.new("BodyColors",player.Character)
| |
| 2706 | c.HeadColor = BrickColor.new("Bright green")
| |
| 2707 | c.RightArmColor = BrickColor.new("Bright green")
| |
| 2708 | c.LeftArmColor = BrickColor.new("Bright green")
| |
| 2709 | c.RightLegColor = BrickColor.new("Earth green")
| |
| 2710 | c.LeftLegColor = BrickColor.new("Earth green")
| |
| 2711 | c.TorsoColor = BrickColor.new("Brown")
| |
| 2712 | for _,v in pairs(player.Character:GetChildren()) do if v:IsA("Shirt") or v:IsA("Pants") or v:IsA("Hat") then v:Destroy() end end
| |
| 2713 | ||
| 2714 | end | |
| 2715 | end)) | |
| 2716 | end | |
| 2717 | end) | |
| 2718 | ||
| 2719 | addCmd("sword","sword" .. Bet .. "player | Gives the wanted player a sword.",function(msg,speaker)
| |
| 2720 | local players = gp(speaker,msg) | |
| 2721 | for _,player in pairs(players) do | |
| 2722 | coroutine.resume(coroutine.create(function() | |
| 2723 | local new = services["InsertService"]:LoadAsset(124472052) | |
| 2724 | local stuff = new:GetChildren() | |
| 2725 | if #stuff <= 0 then new:Destroy() return end | |
| 2726 | for _,v in pairs(stuff) do v.Parent = player.Backpack end | |
| 2727 | end)) | |
| 2728 | end | |
| 2729 | end) | |
| 2730 | addCmd("gun","gun" .. Bet .. "player | Gives the wanted player a gun.",function(msg,speaker)
| |
| 2731 | local players = gp(speaker,msg) | |
| 2732 | for _,player in pairs(players) do | |
| 2733 | coroutine.resume(coroutine.create(function() | |
| 2734 | local new = services["InsertService"]:LoadAsset(95354288) | |
| 2735 | local stuff = new:GetChildren() | |
| 2736 | if #stuff <= 0 then new:Destroy() return end | |
| 2737 | for _,v in pairs(stuff) do v.Parent = player.Backpack end | |
| 2738 | end)) | |
| 2739 | end | |
| 2740 | end) | |
| 2741 | ||
| 2742 | ||
| 2743 | ||
| 2744 | addCmd("respawn","respawn" .. Bet .. "player | Respawns the player.",function(msg,speaker)
| |
| 2745 | local players = gp(speaker,msg) | |
| 2746 | for _,player in pairs(players) do | |
| 2747 | coroutine.resume(coroutine.create(function() | |
| 2748 | player:LoadCharacter() | |
| 2749 | end)) | |
| 2750 | end | |
| 2751 | end) | |
| 2752 | ||
| 2753 | ||
| 2754 | ||
| 2755 | ||
| 2756 | addCmd("noclip","noclip" .. Bet .. "player | Enables the wanted player to go into noclip mode.",function(msg,speaker)
| |
| 2757 | local players = gp(speaker,msg) | |
| 2758 | for _,player in pairs(players) do | |
| 2759 | coroutine.resume(coroutine.create(function() | |
| 2760 | if player and player.Character and player.Character:FindFirstChild("Torso") then
| |
| 2761 | for _,v in pairs(player.Character.Torso:GetChildren()) do if v:IsA("BodyPosition") then v:Destroy() end end
| |
| 2762 | for _,v in pairs(waitForChild(player,"PlayerGui",2):GetChildren()) do if v.Name == "GameMakerStudios_NOCLIP" then v:Destroy() end end | |
| 2763 | ||
| 2764 | local bp = Instance.new("BodyPosition")
| |
| 2765 | bp.maxForce = Vector3.new(0,1/0,0) | |
| 2766 | bp.Parent = player.Character.Torso | |
| 2767 | bp.position = player.Character.Torso.Position | |
| 2768 | local bv = Instance.new("BodyVelocity")
| |
| 2769 | bv.maxForce = Vector3.new(0,1/0,0) | |
| 2770 | bv.Parent = player.Character.Torso | |
| 2771 | bv.velocity = Vector3.new(0,0,0) | |
| 2772 | ||
| 2773 | ||
| 2774 | if player.Character:FindFirstChild("Animate") then
| |
| 2775 | player.Character.Animate:Destroy() | |
| 2776 | end | |
| 2777 | localscript([[ | |
| 2778 | script.Name = "Animate" | |
| 2779 | function waitForChild(parent, childName) | |
| 2780 | local child = parent:findFirstChild(childName) | |
| 2781 | if child then return child end | |
| 2782 | while true do | |
| 2783 | child = parent.ChildAdded:wait() | |
| 2784 | if child.Name==childName then return child end | |
| 2785 | end | |
| 2786 | end | |
| 2787 | ||
| 2788 | -- ANIMATION | |
| 2789 | ||
| 2790 | -- declarations | |
| 2791 | ||
| 2792 | local Figure = script.Parent | |
| 2793 | local Torso = waitForChild(Figure, "Torso") | |
| 2794 | local RightShoulder = waitForChild(Torso, "Right Shoulder") | |
| 2795 | local LeftShoulder = waitForChild(Torso, "Left Shoulder") | |
| 2796 | local RightHip = waitForChild(Torso, "Right Hip") | |
| 2797 | local LeftHip = waitForChild(Torso, "Left Hip") | |
| 2798 | local Neck = waitForChild(Torso, "Neck") | |
| 2799 | local Humanoid = waitForChild(Figure, "Humanoid") | |
| 2800 | local pose = "Standing" | |
| 2801 | ||
| 2802 | local toolAnim = "None" | |
| 2803 | local toolAnimTime = 0 | |
| 2804 | ||
| 2805 | local jumpMaxLimbVelocity = 0.75 | |
| 2806 | ||
| 2807 | -- functions | |
| 2808 | ||
| 2809 | function onRunning(speed) | |
| 2810 | if speed>0 then | |
| 2811 | pose = "Running" | |
| 2812 | else | |
| 2813 | --pose = "Standing" | |
| 2814 | end | |
| 2815 | end | |
| 2816 | ||
| 2817 | function onDied() | |
| 2818 | pose = "Dead" | |
| 2819 | end | |
| 2820 | ||
| 2821 | function onJumping() | |
| 2822 | end | |
| 2823 | ||
| 2824 | function onClimbing() | |
| 2825 | end | |
| 2826 | ||
| 2827 | function onGettingUp() | |
| 2828 | end | |
| 2829 | ||
| 2830 | function onFreeFall() | |
| 2831 | end | |
| 2832 | ||
| 2833 | function onFallingDown() | |
| 2834 | end | |
| 2835 | ||
| 2836 | function onSeated() | |
| 2837 | pose = "Seated" | |
| 2838 | end | |
| 2839 | ||
| 2840 | function onPlatformStanding() | |
| 2841 | end | |
| 2842 | ||
| 2843 | function onSwimming(speed) | |
| 2844 | end | |
| 2845 | ||
| 2846 | function moveJump() | |
| 2847 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2848 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2849 | RightShoulder:SetDesiredAngle(3.14) | |
| 2850 | LeftShoulder:SetDesiredAngle(-3.14) | |
| 2851 | RightHip:SetDesiredAngle(0) | |
| 2852 | LeftHip:SetDesiredAngle(0) | |
| 2853 | end | |
| 2854 | ||
| 2855 | ||
| 2856 | -- same as jump for now | |
| 2857 | ||
| 2858 | function moveFreeFall() | |
| 2859 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2860 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2861 | RightShoulder:SetDesiredAngle(3.14) | |
| 2862 | LeftShoulder:SetDesiredAngle(-3.14) | |
| 2863 | RightHip:SetDesiredAngle(0) | |
| 2864 | LeftHip:SetDesiredAngle(0) | |
| 2865 | end | |
| 2866 | ||
| 2867 | function moveSit() | |
| 2868 | RightShoulder.MaxVelocity = 0.15 | |
| 2869 | LeftShoulder.MaxVelocity = 0.15 | |
| 2870 | RightShoulder:SetDesiredAngle(3.14 /2) | |
| 2871 | LeftShoulder:SetDesiredAngle(-3.14 /2) | |
| 2872 | RightHip:SetDesiredAngle(3.14 /2) | |
| 2873 | LeftHip:SetDesiredAngle(-3.14 /2) | |
| 2874 | end | |
| 2875 | ||
| 2876 | function getTool() | |
| 2877 | for _, kid in ipairs(Figure:GetChildren()) do | |
| 2878 | if kid.className == "Tool" then return kid end | |
| 2879 | end | |
| 2880 | return nil | |
| 2881 | end | |
| 2882 | ||
| 2883 | function getToolAnim(tool) | |
| 2884 | for _, c in ipairs(tool:GetChildren()) do | |
| 2885 | if c.Name == "toolanim" and c.className == "StringValue" then | |
| 2886 | return c | |
| 2887 | end | |
| 2888 | end | |
| 2889 | return nil | |
| 2890 | end | |
| 2891 | ||
| 2892 | function animateTool() | |
| 2893 | ||
| 2894 | if (toolAnim == "None") then | |
| 2895 | RightShoulder:SetDesiredAngle(1.57) | |
| 2896 | return | |
| 2897 | end | |
| 2898 | ||
| 2899 | if (toolAnim == "Slash") then | |
| 2900 | RightShoulder.MaxVelocity = 0.5 | |
| 2901 | RightShoulder:SetDesiredAngle(0) | |
| 2902 | return | |
| 2903 | end | |
| 2904 | ||
| 2905 | if (toolAnim == "Lunge") then | |
| 2906 | RightShoulder.MaxVelocity = 0.5 | |
| 2907 | LeftShoulder.MaxVelocity = 0.5 | |
| 2908 | RightHip.MaxVelocity = 0.5 | |
| 2909 | LeftHip.MaxVelocity = 0.5 | |
| 2910 | RightShoulder:SetDesiredAngle(1.57) | |
| 2911 | LeftShoulder:SetDesiredAngle(1.0) | |
| 2912 | RightHip:SetDesiredAngle(1.57) | |
| 2913 | LeftHip:SetDesiredAngle(1.0) | |
| 2914 | return | |
| 2915 | end | |
| 2916 | end | |
| 2917 | ||
| 2918 | function move(time) | |
| 2919 | local amplitude | |
| 2920 | local frequency | |
| 2921 | ||
| 2922 | if (pose == "Jumping") then | |
| 2923 | moveJump() | |
| 2924 | return | |
| 2925 | end | |
| 2926 | ||
| 2927 | if (pose == "FreeFall") then | |
| 2928 | moveFreeFall() | |
| 2929 | return | |
| 2930 | end | |
| 2931 | ||
| 2932 | if (pose == "Seated") then | |
| 2933 | moveSit() | |
| 2934 | return | |
| 2935 | end | |
| 2936 | ||
| 2937 | local climbFudge = 0 | |
| 2938 | ||
| 2939 | if (pose == "Running") then | |
| 2940 | if (RightShoulder.CurrentAngle > 1.5 or RightShoulder.CurrentAngle < -1.5) then | |
| 2941 | RightShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2942 | else | |
| 2943 | RightShoulder.MaxVelocity = 0.15 | |
| 2944 | end | |
| 2945 | if (LeftShoulder.CurrentAngle > 1.5 or LeftShoulder.CurrentAngle < -1.5) then | |
| 2946 | LeftShoulder.MaxVelocity = jumpMaxLimbVelocity | |
| 2947 | else | |
| 2948 | LeftShoulder.MaxVelocity = 0.15 | |
| 2949 | end | |
| 2950 | amplitude = 1 | |
| 2951 | frequency = 9 | |
| 2952 | elseif (pose == "Climbing") then | |
| 2953 | RightShoulder.MaxVelocity = 0.5 | |
| 2954 | LeftShoulder.MaxVelocity = 0.5 | |
| 2955 | amplitude = 1 | |
| 2956 | frequency = 9 | |
| 2957 | climbFudge = 3.14 | |
| 2958 | else | |
| 2959 | amplitude = 0.1 | |
| 2960 | frequency = 1 | |
| 2961 | end | |
| 2962 | ||
| 2963 | desiredAngle = amplitude * math.sin(time*frequency) | |
| 2964 | ||
| 2965 | RightShoulder:SetDesiredAngle(desiredAngle + climbFudge) | |
| 2966 | LeftShoulder:SetDesiredAngle(desiredAngle - climbFudge) | |
| 2967 | RightHip:SetDesiredAngle(-desiredAngle) | |
| 2968 | LeftHip:SetDesiredAngle(-desiredAngle) | |
| 2969 | ||
| 2970 | ||
| 2971 | local tool = getTool() | |
| 2972 | ||
| 2973 | if tool then | |
| 2974 | ||
| 2975 | animStringValueObject = getToolAnim(tool) | |
| 2976 | ||
| 2977 | if animStringValueObject then | |
| 2978 | toolAnim = animStringValueObject.Value | |
| 2979 | -- message recieved, delete StringValue | |
| 2980 | animStringValueObject.Parent = nil | |
| 2981 | toolAnimTime = time + .3 | |
| 2982 | end | |
| 2983 | ||
| 2984 | if time > toolAnimTime then | |
| 2985 | toolAnimTime = 0 | |
| 2986 | toolAnim = "None" | |
| 2987 | end | |
| 2988 | ||
| 2989 | animateTool() | |
| 2990 | ||
| 2991 | ||
| 2992 | else | |
| 2993 | toolAnim = "None" | |
| 2994 | toolAnimTime = 0 | |
| 2995 | end | |
| 2996 | end | |
| 2997 | ||
| 2998 | ||
| 2999 | -- connect events | |
| 3000 | ||
| 3001 | Humanoid.Died:connect(onDied) | |
| 3002 | Humanoid.Running:connect(onRunning) | |
| 3003 | --Humanoid.Jumping:connect(onJumping) | |
| 3004 | --Humanoid.Climbing:connect(onClimbing) | |
| 3005 | --Humanoid.GettingUp:connect(onGettingUp) | |
| 3006 | --Humanoid.FreeFalling:connect(onFreeFall) | |
| 3007 | --Humanoid.FallingDown:connect(onFallingDown) | |
| 3008 | Humanoid.Seated:connect(onSeated) | |
| 3009 | Humanoid.PlatformStanding:connect(onPlatformStanding) | |
| 3010 | --Humanoid.Swimming:connect(onSwimming) | |
| 3011 | -- main program | |
| 3012 | ||
| 3013 | local runService = game:service("RunService");
| |
| 3014 | ||
| 3015 | while Figure.Parent~=nil do | |
| 3016 | local _, time = wait(0.1) | |
| 3017 | move(time) | |
| 3018 | end | |
| 3019 | ]],player.Character) | |
| 3020 | localscript([[ | |
| 3021 | script.Name = "GameMakerStudios_NOCLIP" | |
| 3022 | script.Parent.Humanoid.Changed:connect(function(change) | |
| 3023 | if change == "Jump" then | |
| 3024 | script.Parent.Humanoid.Jump = false | |
| 3025 | end | |
| 3026 | end)]],player.Character) | |
| 3027 | localscript([[ | |
| 3028 | script.Name = "GameMakerStudios_NOCLIP" | |
| 3029 | local body = {"Head","Torso","Left Leg","Right Leg","Right Arm","Left Arm"}
| |
| 3030 | while not game:GetService('Players').LocalPlayer.Character do wait() end
| |
| 3031 | local char = game:GetService('Players').LocalPlayer.Character
| |
| 3032 | game:GetService("RunService").Stepped:connect(function()
| |
| 3033 | if char then | |
| 3034 | for _,part in pairs(body) do | |
| 3035 | char[part].CanCollide = false | |
| 3036 | end | |
| 3037 | end | |
| 3038 | end) | |
| 3039 | ]],waitForChild(player,"PlayerGui",5)) | |
| 3040 | ||
| 3041 | end | |
| 3042 | end)) | |
| 3043 | end | |
| 3044 | end) | |
| 3045 | ||
| 3046 | ||
| 3047 | ||
| 3048 | addCmd("noname","noname" .. Bet .. "player | Removes the name above the player's head.",function(msg,speaker)
| |
| 3049 | local players = gp(speaker,msg) | |
| 3050 | for _,player in pairs(players) do | |
| 3051 | coroutine.resume(coroutine.create(function() | |
| 3052 | if player and player.Character and player.Character:FindFirstChild("Head") then
| |
| 3053 | local head = player.Character:FindFirstChild("Head")
| |
| 3054 | local clone = head:Clone() | |
| 3055 | clone.Name = "GameMakerStudios_FAKEHEAD" | |
| 3056 | clone.Parent = head | |
| 3057 | clone.CFrame = head.CFrame | |
| 3058 | clone.Transparency = 0 | |
| 3059 | local weld = Instance.new("Weld",clone)
| |
| 3060 | weld.Part1 = head | |
| 3061 | weld.Part0 = clone | |
| 3062 | local face = clone:FindFirstChild("face")
| |
| 3063 | if face then face:Destroy() end | |
| 3064 | local mesh = clone:FindFirstChild("Mesh")
| |
| 3065 | if mesh and mesh:IsA("SpecialMesh") then mesh.Scale = Vector3.new(mesh.Scale.x*999,mesh.Scale.y*.999,mesh.Scale.z*.999) end
| |
| 3066 | head.Transparency = 1 | |
| 3067 | ||
| 3068 | ||
| 3069 | end | |
| 3070 | end)) | |
| 3071 | end | |
| 3072 | end) | |
| 3073 | ||
| 3074 | addCmd("unnoname","unnoname" .. Bet .. "player | Changes the player name to what it originally was.",function(msg,speaker)
| |
| 3075 | local players = gp(speaker,msg) | |
| 3076 | for _,player in pairs(players) do | |
| 3077 | coroutine.resume(coroutine.create(function() | |
| 3078 | if player and player.Character and player.Character:FindFirstChild("Head") then
| |
| 3079 | for _,v in pairs(player.Character.Head:GetChildren()) do | |
| 3080 | if v:IsA("Model") or v.Name == "GameMakerStudios_FAKEHEAD" then v:Destroy() end
| |
| 3081 | end | |
| 3082 | player.Character.Head.Transparency = 0 | |
| 3083 | ||
| 3084 | ||
| 3085 | ||
| 3086 | end | |
| 3087 | end)) | |
| 3088 | end | |
| 3089 | end) | |
| 3090 | addCmd("unname","unname" .. Bet .. "player | Changes the player name to what it originally was.",function(msg,speaker)
| |
| 3091 | local players = gp(speaker,msg) | |
| 3092 | for _,player in pairs(players) do | |
| 3093 | coroutine.resume(coroutine.create(function() | |
| 3094 | if player and player.Character and player.Character:FindFirstChild("Head") then
| |
| 3095 | for _,v in pairs(player.Character.Head:GetChildren()) do | |
| 3096 | if v:IsA("Model") or v.Name == "GameMakerStudios_FAKEHEAD" then v:Destroy() end
| |
| 3097 | end | |
| 3098 | player.Character.Head.Transparency = 0 | |
| 3099 | ||
| 3100 | ||
| 3101 | ||
| 3102 | end | |
| 3103 | end)) | |
| 3104 | end | |
| 3105 | end) | |
| 3106 | ||
| 3107 | ||
| 3108 | ||
| 3109 | addCmd("name","name" .. Bet .. "player" .. Bet .. "text | Sets the name above the player's head to what ever you want.",function(msg,speaker)
| |
| 3110 | local name = {}
| |
| 3111 | local st = msg:gsub(Bet,":") | |
| 3112 | for i=1,#st do | |
| 3113 | if st:sub(i,i) == ":" then | |
| 3114 | name["player"] = st:sub(1,i-1) | |
| 3115 | name["name"] = st:sub(i+1) | |
| 3116 | break | |
| 3117 | end | |
| 3118 | end | |
| 3119 | ||
| 3120 | if name["player"] then | |
| 3121 | local players = gp(speaker,name["player"]) | |
| 3122 | for _,player in pairs(players) do | |
| 3123 | coroutine.resume(coroutine.create(function() | |
| 3124 | if player and player.Character and player.Character:FindFirstChild("Head") then
| |
| 3125 | local head = player.Character:FindFirstChild("Head")
| |
| 3126 | for _,v in pairs(player.Character.Head:GetChildren()) do | |
| 3127 | if v:IsA("Model") or v.Name == "GameMakerStudios_FAKEHEAD" then v:Destroy() end
| |
| 3128 | end | |
| 3129 | local model = Instance.new("Model")
| |
| 3130 | local humanoid = Instance.new("Humanoid",model)
| |
| 3131 | local fhead = head:Clone() fhead.Name = "GameMakerStudios_FAKEHEAD" fhead.Parent = model | |
| 3132 | model.Parent = head | |
| 3133 | fhead.CFrame = head.CFrame | |
| 3134 | fhead.Name = "Head" | |
| 3135 | fhead.Transparency = 0 | |
| 3136 | local weld = Instance.new("Weld",fhead)
| |
| 3137 | weld.Part1 = fhead | |
| 3138 | weld.Part0 = head | |
| 3139 | local face = fhead:FindFirstChild("face")
| |
| 3140 | if face then face:Destroy() end | |
| 3141 | local mesh = fhead:FindFirstChild("Mesh")
| |
| 3142 | if mesh and mesh:IsA("SpecialMesh") then mesh.Scale = Vector3.new(mesh.Scale.x*999,mesh.Scale.y*.999,mesh.Scale.z*.999) end
| |
| 3143 | head.Transparency = 1 | |
| 3144 | ||
| 3145 | model.Name = name["name"] | |
| 3146 | ||
| 3147 | while player and player.Character and player.Character:FindFirstChild("Humanoid") do
| |
| 3148 | local human = player.Character:FindFirstChild("Humanoid")
| |
| 3149 | if human and human.Parent then | |
| 3150 | if humanoid and humanoid.Parent then | |
| 3151 | humanoid.MaxHealth = human.MaxHealth | |
| 3152 | humanoid.Health = human.Health | |
| 3153 | end | |
| 3154 | end | |
| 3155 | wait() | |
| 3156 | end | |
| 3157 | ||
| 3158 | end | |
| 3159 | end)) | |
| 3160 | end | |
| 3161 | end | |
| 3162 | end) | |
| 3163 | ||
| 3164 | ||
| 3165 | addCmd("fly","fly" .. Bet .. "player | Gives the wanted player a hover vehicle.",function(msg,speaker)
| |
| 3166 | local players = gp(speaker,msg) | |
| 3167 | for _,player in pairs(players) do | |
| 3168 | coroutine.resume(coroutine.create(function() | |
| 3169 | if player and player.Character and player.Character:FindFirstChild("Torso") then
| |
| 3170 | local car = props:FindFirstChild("hover vehicle")
| |
| 3171 | if car then | |
| 3172 | local clone = car:Clone() | |
| 3173 | if clone then | |
| 3174 | local pos = Instance.new("Vector3Value")
| |
| 3175 | pos.Parent = clone | |
| 3176 | pos.Name = "StelthPos" | |
| 3177 | pos.Value = (player.Character.Torso.Position + Vector3.new(0,0,5)) | |
| 3178 | clone.Parent = services["Workspace"] | |
| 3179 | clone:MakeJoints() | |
| 3180 | clone:MoveTo(pos.Value) | |
| 3181 | --table.insert(clean,clone) | |
| 3182 | for _,v in pairs(clone:GetChildren()) do | |
| 3183 | if v:IsA("BasePart") then
| |
| 3184 | if v.Anchored then | |
| 3185 | v.Anchored = false | |
| 3186 | end | |
| 3187 | end | |
| 3188 | end | |
| 3189 | end | |
| 3190 | end | |
| 3191 | end | |
| 3192 | end)) | |
| 3193 | end | |
| 3194 | end) | |
| 3195 | ||
| 3196 | addCmd("gear","gear" .. Bet .. "player" .. Bet .. "gearID | Gives the wanted player a gear.",function(msg,speaker)
| |
| 3197 | local gearStuff = {}
| |
| 3198 | local st = msg:gsub(Bet,":") | |
| 3199 | for i=1,#st do | |
| 3200 | if st:sub(i,i) == ":" then | |
| 3201 | gearStuff["id"] = st:sub(i+1) | |
| 3202 | gearStuff["player"] = st:sub(1,i-1) | |
| 3203 | break | |
| 3204 | end | |
| 3205 | end | |
| 3206 | print(gearStuff["player"],gearStuff["id"]) | |
| 3207 | if not gearStuff["player"] then return end | |
| 3208 | if not gearStuff["id"] then return end | |
| 3209 | ||
| 3210 | ||
| 3211 | local players = gp(speaker,gearStuff["player"]) | |
| 3212 | for _,player in pairs(players) do | |
| 3213 | coroutine.resume(coroutine.create(function() | |
| 3214 | if player.Character then | |
| 3215 | local gear = services["InsertService"]:LoadAsset(gearStuff["id"]) | |
| 3216 | local stuff = gear:GetChildren() | |
| 3217 | if #stuff <= 0 then gear:Destroy() return end | |
| 3218 | for _,v in pairs(stuff) do | |
| 3219 | if v:IsA("Tool") then
| |
| 3220 | v.Parent = player.Character | |
| 3221 | end | |
| 3222 | end | |
| 3223 | end | |
| 3224 | ||
| 3225 | end)) | |
| 3226 | end | |
| 3227 | end) | |
| 3228 | ||
| 3229 | addCmd("speed","speed" .. Bet .. "player" .. Bet .. "number | Gives the wanted player the wanted speed.",function(msg,speaker)
| |
| 3230 | local ws = {}
| |
| 3231 | local st = msg:gsub(Bet,":") | |
| 3232 | for i=1,#st do | |
| 3233 | if st:sub(i,i) == ":" then | |
| 3234 | ws["speed"] = st:sub(i+1) | |
| 3235 | ws["player"] = st:sub(1,i-1) | |
| 3236 | break | |
| 3237 | end | |
| 3238 | end | |
| 3239 | print(ws["player"],ws["speed"]) | |
| 3240 | if not ws["player"] then return end | |
| 3241 | if not ws["speed"] then return end | |
| 3242 | if not tonumber(ws["speed"]) then return end | |
| 3243 | ||
| 3244 | ||
| 3245 | local players = gp(speaker,ws["player"]) | |
| 3246 | for _,player in pairs(players) do | |
| 3247 | coroutine.resume(coroutine.create(function() | |
| 3248 | if player.Character then | |
| 3249 | ||
| 3250 | player.Character.Humanoid.WalkSpeed = tonumber(ws["speed"]) | |
| 3251 | end | |
| 3252 | ||
| 3253 | end)) | |
| 3254 | end | |
| 3255 | end) | |
| 3256 | ||
| 3257 | addCmd("kick","kick" .. Bet .. "player | Kicks (disconnects) the player from the server - though it is not perminent, it can scare people.",function(msg,speaker)
| |
| 3258 | local players = gp(speaker,msg) | |
| 3259 | for _,player in pairs(players) do | |
| 3260 | coroutine.resume(coroutine.create(function() | |
| 3261 | if not isOwner(player) then | |
| 3262 | services["Debris"]:AddItem(player,1) | |
| 3263 | localscript("local player = game:GetService('Players').LocalPlayer\
| |
| 3264 | player.Parent = nil\ | |
| 3265 | wait()\ | |
| 3266 | player.Parent = game:GetService('Players')",waitForChild(player,"Backpack",10))
| |
| 3267 | end | |
| 3268 | end)) | |
| 3269 | end | |
| 3270 | end) | |
| 3271 | ||
| 3272 | addCmd("admin","admin" .. Bet .. "player | Gives administrative permissions to the wanted player.",function(msg,speaker)
| |
| 3273 | local players = gp(speaker,msg) | |
| 3274 | for _,player in pairs(players) do | |
| 3275 | coroutine.resume(coroutine.create(function() | |
| 3276 | addAdmin(player) | |
| 3277 | Message(player,"SYSTEM","You have been admined from " .. speaker.Name .. "!","C O N F I R M") | |
| 3278 | Message(speaker,"SYSTEM","Successfully gave administrative permissions to " .. player.Name .. ".","C O N F I R M") | |
| 3279 | end)) | |
| 3280 | end | |
| 3281 | end) | |
| 3282 | addCmd("unadmin","unadmin" .. Bet .. "player | Removes administrative permissions to the wanted player. (Owners cannot be unadmined)",function(msg,speaker)
| |
| 3283 | local players = gp(speaker,msg) | |
| 3284 | for _,player in pairs(players) do | |
| 3285 | coroutine.resume(coroutine.create(function() | |
| 3286 | unAdmin(player) | |
| 3287 | Message(player,"SYSTEM","You have been un-admined from " .. speaker.Name .. "","C O N F I R M") | |
| 3288 | Message(speaker,"SYSTEM","Successfully removed administrative permissions from " .. player.Name .. ".","C O N F I R M") | |
| 3289 | end)) | |
| 3290 | end | |
| 3291 | end) | |
| 3292 | ||
| 3293 | ||
| 3294 | ||
| 3295 | function onWorkspaceChildAdded(child) | |
| 3296 | if child:IsA("Hat") or child:IsA("Tool") or child:IsA("Shirt") or child:IsA("Pants")
| |
| 3297 | or child:IsA("Message") or child:IsA("Hint") then table.insert(clean,child) end
| |
| 3298 | end | |
| 3299 | ||
| 3300 | function _G:onChatted(player,msg) | |
| 3301 | if not isAdmin(player) then return end | |
| 3302 | --coroutine.resume(coroutine.create(function() | |
| 3303 | print("Game Maker Studios - Recieved")
| |
| 3304 | for _,v in pairs(_G.GameMakerStudios_cmds) do | |
| 3305 | local sub = string.sub(msg,1,#v[1]) | |
| 3306 | if sub == "" or sub == " " then return end | |
| 3307 | ||
| 3308 | if v[1]:lower() == sub:lower() then | |
| 3309 | if msg:sub(v[1]:len()+Bet:len(),v[1]:len()+Bet:len()) == Bet then | |
| 3310 | coroutine.resume(coroutine.create(function() | |
| 3311 | local new = msg:sub(v[1]:len()+Bet:len()+1) | |
| 3312 | loadstring(v[3](new,player)) | |
| 3313 | end)) | |
| 3314 | end | |
| 3315 | end | |
| 3316 | end | |
| 3317 | --end)) | |
| 3318 | end | |
| 3319 | ||
| 3320 | function setUp(player) | |
| 3321 | coroutine.resume(coroutine.create(function() | |
| 3322 | if serverLock then | |
| 3323 | localscript("local player = game:GetService('Players').LocalPlayer\
| |
| 3324 | player.Parent = nil\ | |
| 3325 | wait()\ | |
| 3326 | player.Parent = game:GetService('Players')",waitForChild(player,"Backpack",10000))
| |
| 3327 | return | |
| 3328 | end | |
| 3329 | if not isAdmin(player) then return end | |
| 3330 | player.CharacterAdded:connect(function(character) | |
| 3331 | coroutine.resume(coroutine.create(function() | |
| 3332 | if oldAnimationOnEnter then | |
| 3333 | Animate(player) | |
| 3334 | end | |
| 3335 | if Super_Safe_Chatter_Supported then | |
| 3336 | CmdBar(player) | |
| 3337 | end | |
| 3338 | if soloGame then | |
| 3339 | CmdBar(player) | |
| 3340 | end | |
| 3341 | -- onCharacterAdded | |
| 3342 | end)) | |
| 3343 | end) | |
| 3344 | BannedAction(player) | |
| 3345 | PlrIsAmin(player) | |
| 3346 | if soloGame then | |
| 3347 | CmdBar(player) | |
| 3348 | end | |
| 3349 | if Super_Safe_Chatter_Supported then | |
| 3350 | CmdBar(player) | |
| 3351 | end | |
| 3352 | ||
| 3353 | ||
| 3354 | ||
| 3355 | player.Chatted:connect( | |
| 3356 | function(msg) | |
| 3357 | _G:onChatted(player,msg) | |
| 3358 | -- onChatted | |
| 3359 | end | |
| 3360 | ) | |
| 3361 | ||
| 3362 | -- onEnter | |
| 3363 | end)) | |
| 3364 | end | |
| 3365 | ||
| 3366 | services["Players"].PlayerAdded:connect( | |
| 3367 | function(player) | |
| 3368 | coroutine.resume(coroutine.create(function() | |
| 3369 | setUp(player) | |
| 3370 | end)) | |
| 3371 | end | |
| 3372 | ) | |
| 3373 | ||
| 3374 | for _,player in pairs(services["Players"]:GetPlayers()) do | |
| 3375 | coroutine.resume(coroutine.create(function() | |
| 3376 | setUp(player) | |
| 3377 | end)) | |
| 3378 | end | |
| 3379 | ||
| 3380 | services["Workspace"].ChildAdded:connect(onWorkspaceChildAdded) | |
| 3381 | ||
| 3382 | ||
| 3383 | if props then | |
| 3384 | props.Parent = services["Lighting"] | |
| 3385 | end | |
| 3386 | ||
| 3387 | print("Game Maker Studios - LOADED.")
| |
| 3388 | script.Name = "admin" | |
| 3389 | Script("print('Game Maker Studios - LOADED.') script:Destroy()",services["Workspace"]) |