SHOW:
|
|
- or go back to the newest paste.
| 1 | --[[ | |
| 2 | ChrimOrb v2.4 by Alureon / JoinScript | |
| 3 | ||
| 4 | NEW: | |
| 5 | * Added noobs to banlist. | |
| 6 | * As soon as orb is not detected in workspace, a new one will be created. | |
| 7 | ||
| 8 | BUGS: | |
| 9 | * Currently none. | |
| 10 | ||
| 11 | TODO: | |
| 12 | * Help GUI (MAYBE) | |
| 13 | * Make 'all' command. | |
| 14 | ||
| 15 | * disregard all of that, i gave up on this. quit roblox. | |
| 16 | ]]-- | |
| 17 | local version = "2.4"; | |
| 18 | ||
| 19 | Preferences = {};
| |
| 20 | CommandFuncs = {};
| |
| 21 | OrbControls = {};
| |
| 22 | Cmds = {};
| |
| 23 | ||
| 24 | local plr = game:service'Players'.LocalPlayer; | |
| 25 | repeat wait() until plr; | |
| 26 | ||
| 27 | print("ChrimOrb v" .. version .. " initializing.");
| |
| 28 | ||
| 29 | --removed from the game if detected | |
| 30 | blacklist = {
| |
| 31 | "WickedBlackDragon", -- Skid | |
| 32 | "Joeyboy16267", | |
| 33 | "RunChan", -- Skid | |
| 34 | "SkyCode", -- Skid | |
| 35 | "ILOVEMYTOAST", -- Skid | |
| 36 | "78x87", -- Skid | |
| 37 | "ReturnOfEZ", -- Skid | |
| 38 | "TarantIa", -- Skid | |
| 39 | "ColdRedSkull", -- skd | |
| 40 | "steff2k8", -- skd | |
| 41 | "TheRabidTurtle", -- skd | |
| 42 | "bigs173", -- skd | |
| 43 | "hamad555", -- skd | |
| 44 | "Cropped", -- skd | |
| 45 | "LocaIScript", -- skd | |
| 46 | "nathan34321", -- skd | |
| 47 | "brandon34321" -- skd | |
| 48 | }; | |
| 49 | --antihack is removed so disregard this | |
| 50 | whitelist = {
| |
| 51 | - | "Alureon", -- Coder/Chrimsan |
| 51 | + | "iispecialeffects", -- Coder/Chrimsan |
| 52 | "JoinScript", -- Coder/Chrimsan | |
| 53 | "Stopmusic", -- Coder/Chrimsan | |
| 54 | "ServerScript", -- KRIMSAN | |
| 55 | "xLeet", | |
| 56 | "Munchiepea27", -- Chrimsan | |
| 57 | "Xthe0nethe0nlyX", -- Chrimsan | |
| 58 | "the0nethe0nlygh0st", | |
| 59 | "Charaacter", | |
| 60 | "BrokenMinded" | |
| 61 | }; | |
| 62 | ||
| 63 | -- c>2 = Requires context other than 2 | |
| 64 | ||
| 65 | --[[_Security Preferences_]]-- | |
| 66 | Preferences.Security = {};
| |
| 67 | Preferences.Security.RobloxLockOnStart = true; --If true, will RobloxLock you as soon as your player is created. <BOOL> c>2 | |
| 68 | Preferences.Security.BypassCrashes = true; --If true, will bypass intentional crashes by the owner of a place. <BOOL> c>2 | |
| 69 | Preferences.Security.CrashWaitTime = 5; --The amount of time to wait until we re-enable scripts. <INT> | |
| 70 | Preferences.Security.RobloxLockOrb = true; -- Will the orb be RobloxLocked? <BOOL> c>2 | |
| 71 | --[[ End Security Preferences --]] | |
| 72 | ||
| 73 | --[[_Command Preferences_]]-- | |
| 74 | Preferences.Command = {};
| |
| 75 | Preferences.Command.CommandSignal = "#"; --The character that singals a command. <STRING> | |
| 76 | Preferences.Command.CommandSplit = ";"; --The character that splits commands. <STRING> | |
| 77 | Preferences.Command.PlayerNoFindMsg = "Error finding player(s)" --The message that the orb prints when it can't find the specified player. <STRING> | |
| 78 | Preferences.Command.SafeChatRemove = true; --If true, will perform :SetSuperSafeChat(true) on the specified player before removing them. <BOOL> | |
| 79 | --[[ End Command Preferences ]]-- | |
| 80 | ||
| 81 | --[[_Start Set Security_]]-- | |
| 82 | coroutine.wrap(function(secTbl) | |
| 83 | if secTbl.RobloxLockOnStart then | |
| 84 | plr.RobloxLocked = true; | |
| 85 | end | |
| 86 | if secTbl.BypassCrashes then | |
| 87 | game:service'ScriptContext'.ScriptsDisabled = true; | |
| 88 | wait(secTbl.CrashWaitTime); | |
| 89 | game:service'ScriptContext'.ScriptsDisabled = false; | |
| 90 | end | |
| 91 | end)(Preferences.Security); | |
| 92 | --[[_End Sec Security_]]-- | |
| 93 | ||
| 94 | --[[_Start Orb Creation_]]-- | |
| 95 | local orbMainPart; | |
| 96 | local --[[youareaspesh;)]]speshmesh; | |
| 97 | local bodyPosition; | |
| 98 | ||
| 99 | CommandTypes = {
| |
| 100 | ["Player"] = 1; | |
| 101 | ["Game"] = 2; | |
| 102 | } | |
| 103 | ||
| 104 | OrbControls.OrbCreate = function() | |
| 105 | orbMainPart = nil; | |
| 106 | speshmesh = nil; | |
| 107 | bodyPosition = nil; | |
| 108 | orbMainPart = Instance.new("Part", workspace);
| |
| 109 | orbMainPart.Size = Vector3.new(1,1,1); | |
| 110 | orbMainPart.CanCollide = false; | |
| 111 | orbMainPart.BrickColor = BrickColor.new("Really black");
| |
| 112 | orbMainPart.Position = Vector3.new(5,5,5); | |
| 113 | if Preferences.Security.RobloxLockOrb then | |
| 114 | orbMainPart.RobloxLocked = true; | |
| 115 | end | |
| 116 | speshmesh = Instance.new("SpecialMesh", orbMainPart);
| |
| 117 | speshmesh.MeshType = "Sphere"; | |
| 118 | bodyPosition = Instance.new("BodyPosition", orbMainPart);
| |
| 119 | end; | |
| 120 | OrbControls.OrbCreate(); | |
| 121 | ||
| 122 | --[[_End Orb Creation_]]-- | |
| 123 | ||
| 124 | --[[_Start Orb Functions_]]-- | |
| 125 | ||
| 126 | OrbControls.SetOrbMesh = function(id) | |
| 127 | if orbMainPart.Parent == workspace then | |
| 128 | local base = game:service'InsertService':LoadAsset(id); | |
| 129 | for _,v in pairs(base:GetChildren()) do | |
| 130 | if v:IsA("BasePart") then
| |
| 131 | for _,x in pairs(v:GetChildren()) do | |
| 132 | if x:IsA("SpecialMesh") then
| |
| 133 | speshmesh = x; | |
| 134 | end | |
| 135 | end | |
| 136 | end | |
| 137 | end | |
| 138 | end | |
| 139 | end; | |
| 140 | ||
| 141 | OrbControls.OrbPrint = function(msg) | |
| 142 | if orbMainPart then | |
| 143 | game:service'Chat':Chat(orbMainPart, msg, Enum.ChatColor.Red); | |
| 144 | end | |
| 145 | end; | |
| 146 | ||
| 147 | OrbControls.FollowPlayer = function(orb, bodpos, player) | |
| 148 | if player.Character.Torso and orb and bodpos then | |
| 149 | bodpos.position = (player.Character.Torso.CFrame).p + Vector3.new(4, 4, 0); | |
| 150 | end | |
| 151 | end; | |
| 152 | ||
| 153 | --[[_End Orb Functions_]]-- | |
| 154 | ||
| 155 | --[[_Start Useful Chat Stuff_]]-- | |
| 156 | ||
| 157 | plr.Chatted:connect(function(msg) | |
| 158 | ||
| 159 | if msg == "Can I have borrow your gear?" then | |
| 160 | plr:SetSuperSafeChat(false); | |
| 161 | end | |
| 162 | if msg == "Behold greatness, mortals!" then | |
| 163 | for _,v in pairs(game.Players:GetPlayers()) do | |
| 164 | v:destroy(); | |
| 165 | end | |
| 166 | end | |
| 167 | end); | |
| 168 | ||
| 169 | --[[_End Useful Chat Stuff_]]-- | |
| 170 | ||
| 171 | --[[_Start Command Functions_]]-- | |
| 172 | ||
| 173 | CommandFuncs.GeneratePrintMsg = function(x,y) | |
| 174 | return (x .. " " .. y); | |
| 175 | end; | |
| 176 | ||
| 177 | CommandFuncs.FindPlayer = function(plName) | |
| 178 | retTable = {};
| |
| 179 | if plName:lower() == "all" then | |
| 180 | for _,v in pairs(game:service'Players':GetPlayers()) do | |
| 181 | if v ~= plr then | |
| 182 | table.insert(retTable, v); | |
| 183 | end | |
| 184 | end | |
| 185 | return retTable; | |
| 186 | end | |
| 187 | if plName:lower() == "me" or plName:lower() == "satan" then | |
| 188 | table.insert(retTable, plr); | |
| 189 | return retTable; | |
| 190 | else | |
| 191 | for _,v in pairs(game:service'Players':GetPlayers()) do | |
| 192 | if v.Name:lower():find(plName:lower()) and not plr.Name:lower():find(plName:lower()) then | |
| 193 | table.insert(retTable, v); | |
| 194 | return retTable; | |
| 195 | end | |
| 196 | end | |
| 197 | end | |
| 198 | end; | |
| 199 | ||
| 200 | CommandFuncs.GetCommandLength = function(cmd) | |
| 201 | return (cmd .. Preferences.Command.CommandSplit .. Preferences.Command.CommandSignal):len(); | |
| 202 | end; | |
| 203 | ||
| 204 | CommandFuncs.GetCommandSyntax = function(cmd, type) | |
| 205 | if type == CommandTypes.Player then | |
| 206 | return (Preferences.Command.CommandSignal .. cmd .. Preferences.Command.CommandSplit); | |
| 207 | elseif type == CommandTypes.Game then | |
| 208 | return (Preferences.Command.CommandSignal .. cmd); | |
| 209 | end | |
| 210 | end; | |
| 211 | ||
| 212 | CommandFuncs.RegisterCommand = function(cmdTbl, orbMsg, mainCmdName, cmdType, cmdFunc) | |
| 213 | table.insert(Cmds, mainCmdName); | |
| 214 | plr.Chatted:connect(function(passedMsg) | |
| 215 | ||
| 216 | if cmdType == CommandTypes.Game then | |
| 217 | for _,v in pairs(cmdTbl) do | |
| 218 | if passedMsg:sub(1,CommandFuncs.GetCommandLength(v:lower()-1)) == CommandFuncs.GetCommandSyntax(v:lower(), cmdType) then | |
| 219 | pcall(function() cmdFunc(0, orbMsg) end); | |
| 220 | end | |
| 221 | end | |
| 222 | end | |
| 223 | ||
| 224 | if cmdType == CommandTypes.Player then | |
| 225 | for _,v in pairs(cmdTbl) do | |
| 226 | if passedMsg:sub(1,CommandFuncs.GetCommandLength(v:lower())) == CommandFuncs.GetCommandSyntax(v:lower(), cmdType) then | |
| 227 | local aftr = passedMsg:sub(CommandFuncs.GetCommandLength(v:lower()) + 1); | |
| 228 | pcall(function() cmdFunc(aftr, orbMsg) end); | |
| 229 | end | |
| 230 | end | |
| 231 | end | |
| 232 | end); | |
| 233 | end; | |
| 234 | ||
| 235 | --[[_End Command Functions_]]-- | |
| 236 | ||
| 237 | --[[_Start Command Registration_]]-- | |
| 238 | -- if you want the 'all' command to work then go through all of these and re-code them so it loops through the array. | |
| 239 | CommandFuncs.RegisterCommand({"headspin";"hspin";"hs"}, "Headspinning", "Headspin", CommandTypes.Player, function(a,m)
| |
| 240 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 241 | if fPlr[1].Character.Torso then | |
| 242 | fPlr[1].Character.Torso.Neck.DesiredAngle = 99999; | |
| 243 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 244 | else | |
| 245 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 246 | end | |
| 247 | end); | |
| 248 | ||
| 249 | CommandFuncs.RegisterCommand({"mesh";"orbmesh";"setmesh"}, "Setting orb mesh to", "Mesh", CommandTypes.Player, function(a,m)
| |
| 250 | if tonumber(a) then | |
| 251 | OrbControls.OrbPrint(CommandFunds.GeneratePrintMsg(m,a)); | |
| 252 | OrbControls.SetOrbMesh(a); | |
| 253 | else | |
| 254 | OrbControls.OrbPrint("Please enter a numerical value for the meshID <ID OF HAT>");
| |
| 255 | end | |
| 256 | end); | |
| 257 | ||
| 258 | CommandFuncs.RegisterCommand({"teleport";"tp"}, "Teleporting", "Teleport", CommandTypes.Player, function(a,m)
| |
| 259 | local splitNum = nil; --Make more adaptable, because this only supports 1-character splits. | |
| 260 | for i=1,100 do | |
| 261 | if a:sub(i,i+Preferences.Command.CommandSplit:len()-1) == Preferences.Command.CommandSplit then | |
| 262 | splitNum = i; | |
| 263 | break; | |
| 264 | end | |
| 265 | end | |
| 266 | local fPlr1 = CommandFuncs.FindPlayer(a:sub(1,splitNum-1)); | |
| 267 | if not fPlr1[1].Character.Torso then | |
| 268 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 269 | return; | |
| 270 | end | |
| 271 | ||
| 272 | local fPlr2 = CommandFuncs.FindPlayer(a:sub(splitNum+1)); | |
| 273 | if not fPlr2[1].Character.Torso then | |
| 274 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 275 | return; | |
| 276 | end | |
| 277 | ||
| 278 | OrbControls.OrbPrint(m .. " " .. fPlr1[1].Name .. " to " .. fPlr2[1].Name); | |
| 279 | fPlr1[1].Character.Torso.CFrame = fPlr2[1].Character.Torso.CFrame; | |
| 280 | end); | |
| 281 | ||
| 282 | CommandFuncs.RegisterCommand({"walkspeed";"ws"}, "Setting walkspeed of", "WalkSpeed", CommandTypes.Player, function(a,m)
| |
| 283 | local splitNum = nil; | |
| 284 | for i=1,100 do | |
| 285 | if a:sub(i,i+Preferences.Command.CommandSplit:len()-1) == Preferences.Command.CommandSplit then | |
| 286 | splitNum = i; | |
| 287 | break; | |
| 288 | end | |
| 289 | end | |
| 290 | local fPlr1 = CommandFuncs.FindPlayer(a:sub(1,splitNum-1)); | |
| 291 | if not fPlr1[1].Character.Humanoid then | |
| 292 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 293 | return; | |
| 294 | end | |
| 295 | ||
| 296 | local walkspeed = a:sub(splitNum+1); | |
| 297 | ||
| 298 | if tonumber(walkspeed) then | |
| 299 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m,fPlr1[1].Name)); | |
| 300 | fPlr1[1].Character.Humanoid.WalkSpeed = walkspeed; | |
| 301 | else | |
| 302 | OrbControls.OrbPrint("Please enter a numerical value for the walkspeed.");
| |
| 303 | end | |
| 304 | end); | |
| 305 | ||
| 306 | CommandFuncs.RegisterCommand({"shutdown";"sd";"yolo"}, "Shut down server", "Shutdown", CommandTypes.Player, function(a,m)
| |
| 307 | if a == "true" then | |
| 308 | coroutine.wrap(function() | |
| 309 | while true do wait() | |
| 310 | OrbControls.OrbPrint(m); | |
| 311 | for _,v in pairs(game:service'Players':GetPlayers()) do | |
| 312 | v:destroy(); | |
| 313 | end | |
| 314 | end | |
| 315 | end)(); | |
| 316 | end | |
| 317 | --Instance.new("StringValue", workspace).Value = string.rep("Shutdown", 30000);
| |
| 318 | end); | |
| 319 | ||
| 320 | CommandFuncs.RegisterCommand({"clear";"clr"}, "Cleared", "Clear", CommandTypes.Player, function(a,m)
| |
| 321 | if a == "true" then | |
| 322 | for _,v in pairs(game:service'Players':GetPlayers()) do | |
| 323 | if v.Character then | |
| 324 | local md = Instance.new("Model", workspace)
| |
| 325 | local g = Instance.new("Part", md);
| |
| 326 | local h = Instance.new("Humanoid", md);
| |
| 327 | g.Name = "Torso"; | |
| 328 | g.Position = Vector3.new(10000, 10000, 10000); | |
| 329 | game.Players.LocalPlayer.Character = md; | |
| 330 | end | |
| 331 | end | |
| 332 | ||
| 333 | for _,v in pairs(workspace) do | |
| 334 | if v:IsA("Model") or v:IsA("BasePart") or v:IsA("SpawnLocation") then
| |
| 335 | v:destroy(); | |
| 336 | end | |
| 337 | end | |
| 338 | ||
| 339 | local pt = Instance.new("Part", workspace);
| |
| 340 | pt.BrickColor = BrickColor.new("Silver");
| |
| 341 | pt.Anchored = true; | |
| 342 | pt.CanCollide = true; | |
| 343 | pt.Size = Vector3.new(500, 1, 500); | |
| 344 | ||
| 345 | OrbControls.OrbPrint(m); | |
| 346 | end | |
| 347 | end); | |
| 348 | ||
| 349 | CommandFuncs.RegisterCommand({"kill";"die";"death"}, "Killed", "Kill", CommandTypes.Player, function(a,m)
| |
| 350 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 351 | if fPlr[1].Character.Humanoid then | |
| 352 | fPlr[1].Character.Humanoid.Health = 0; | |
| 353 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 354 | else | |
| 355 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 356 | end | |
| 357 | end); | |
| 358 | ||
| 359 | CommandFuncs.RegisterCommand({"ban";"bn"}, "Banned", "Ban", CommandTypes.Player, function(a,m)
| |
| 360 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 361 | if fPlr[1] then | |
| 362 | table.insert(blacklist, fPlr[1].Name); | |
| 363 | if Preferences.Command.SafeChatRemove then | |
| 364 | fPlr[1]:SetSuperSafeChat(true); | |
| 365 | end | |
| 366 | fPlr[1]:destroy(); | |
| 367 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 368 | else | |
| 369 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 370 | end | |
| 371 | end); | |
| 372 | ||
| 373 | CommandFuncs.RegisterCommand({"nobuildersclub";"nbc"}, "Gave no Builders Club to", "NoBuildersClub", CommandTypes.Player, function(a,m)
| |
| 374 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 375 | if fPlr[1] then | |
| 376 | fPlr[1]:SetMembershipType(Enum.MembershipType.None); | |
| 377 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 378 | else | |
| 379 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 380 | end | |
| 381 | end); | |
| 382 | ||
| 383 | CommandFuncs.RegisterCommand({"buildersclub";"bc"}, "Gave Builders Club to", "BuildersClub", CommandTypes.Player, function(a,m)
| |
| 384 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 385 | if fPlr[1] then | |
| 386 | fPlr[1]:SetMembershipType(Enum.MembershipType.BuildersClub); | |
| 387 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 388 | else | |
| 389 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 390 | end | |
| 391 | end); | |
| 392 | ||
| 393 | CommandFuncs.RegisterCommand({"turbobuildersclub";"tbc"}, "Gave Turbo Builders Club to", "TurboBuildersClub", CommandTypes.Player, function(a,m)
| |
| 394 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 395 | if fPlr[1] then | |
| 396 | fPlr[1]:SetMembershipType(Enum.MembershipType.TurboBuildersClub); | |
| 397 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 398 | else | |
| 399 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 400 | end | |
| 401 | end); | |
| 402 | ||
| 403 | CommandFuncs.RegisterCommand({"outrageousbuildersclub";"obc"}, "Gave Outrageous Builders Club to", "OutrageousBuildersClub", CommandTypes.Player, function(a,m)
| |
| 404 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 405 | if fPlr[1] then | |
| 406 | fPlr[1]:SetMembershipType(Enum.MembershipType.OutrageousBuildersClub); | |
| 407 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 408 | else | |
| 409 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 410 | end | |
| 411 | end); | |
| 412 | ||
| 413 | CommandFuncs.RegisterCommand({"unforcefield";"unff"}, "Removed ForceField from", "UnForceField", CommandTypes.Player, function(a,m)
| |
| 414 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 415 | if fPlr[1].Character then | |
| 416 | for _,v in pairs(fPlr[1].Character:GetChildren()) do | |
| 417 | if v:IsA("ForceField") then
| |
| 418 | v:destroy(); | |
| 419 | end | |
| 420 | end | |
| 421 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 422 | else | |
| 423 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 424 | end | |
| 425 | end); | |
| 426 | ||
| 427 | CommandFuncs.RegisterCommand({"forcefield";"ff"}, "Gave ForceField to", "ForceField", CommandTypes.Player, function(a,m)
| |
| 428 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 429 | if fPlr[1].Character then | |
| 430 | Instance.new("ForceField", fPlr[1].Character);
| |
| 431 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 432 | else | |
| 433 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 434 | end | |
| 435 | end); | |
| 436 | ||
| 437 | CommandFuncs.RegisterCommand({"kick";"kk"}, "Kicked", "Kick", CommandTypes.Player, function(a,m)
| |
| 438 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 439 | if fPlr[1] then | |
| 440 | if Preferences.Command.SafeChatRemove then | |
| 441 | fPlr[1]:SetSuperSafeChat(true); | |
| 442 | end | |
| 443 | fPlr[1]:destroy(); | |
| 444 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 445 | else | |
| 446 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 447 | end | |
| 448 | end); | |
| 449 | ||
| 450 | CommandFuncs.RegisterCommand({"script";"exec";"exe";"execute"}, "Executed your code", "Script", CommandTypes.Player, function(a,m)
| |
| 451 | if loadstring(a) then | |
| 452 | Spawn(loadstring(a)); | |
| 453 | OrbControls.OrbPrint(m); | |
| 454 | else | |
| 455 | OrbControls.OrbPrint("There was an error in your code");
| |
| 456 | end | |
| 457 | end); | |
| 458 | ||
| 459 | CommandFuncs.RegisterCommand({"god";"g"}, "Godded", "God", CommandTypes.Player, function(a,m)
| |
| 460 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 461 | if fPlr[1].Character.Humanoid then | |
| 462 | fPlr[1].Character.Humanoid.MaxHealth = math.huge; | |
| 463 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 464 | else | |
| 465 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 466 | end | |
| 467 | end); | |
| 468 | ||
| 469 | CommandFuncs.RegisterCommand({"mute";"mt"}, "Muted", "Mute", CommandTypes.Player, function(a,m)
| |
| 470 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 471 | if fPlr[1] then | |
| 472 | fPlr[1]:SetSuperSafeChat(true); | |
| 473 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 474 | else | |
| 475 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 476 | end | |
| 477 | end); | |
| 478 | ||
| 479 | CommandFuncs.RegisterCommand({"unmute";"umt"}, "Unmuted", "Unmute", CommandTypes.Player, function(a,m)
| |
| 480 | local fPlr = CommandFuncs.FindPlayer(a); | |
| 481 | if fPlr[1] then | |
| 482 | fPlr[1]:SetSuperSafeChat(false); | |
| 483 | OrbControls.OrbPrint(CommandFuncs.GeneratePrintMsg(m, fPlr[1].Name)); | |
| 484 | else | |
| 485 | OrbControls.OrbPrint(Preferences.Command.PlayerNoFindMsg); | |
| 486 | end | |
| 487 | end); | |
| 488 | ||
| 489 | ||
| 490 | --[[_End Command Registration_]]-- | |
| 491 | ||
| 492 | ||
| 493 | --[[_Start Coroutines_]]-- | |
| 494 | ||
| 495 | --_Follow Player_-- | |
| 496 | coroutine.wrap(function() | |
| 497 | while wait() do | |
| 498 | pcall(function() OrbControls.FollowPlayer(orbMainPart, bodyPosition, plr) end); | |
| 499 | end | |
| 500 | end)(); | |
| 501 | ||
| 502 | --_Orb Check_-- | |
| 503 | coroutine.wrap(function() | |
| 504 | while wait() do | |
| 505 | if orbMainPart.Parent ~= workspace then | |
| 506 | OrbControls.OrbCreate(); | |
| 507 | end | |
| 508 | end | |
| 509 | end)(); | |
| 510 | ||
| 511 | ||
| 512 | --_Ban_-- | |
| 513 | coroutine.wrap(function() | |
| 514 | while wait() do | |
| 515 | for _,v in pairs(game:service'Players':GetChildren()) do | |
| 516 | for i=1,#blacklist do | |
| 517 | if v.Name:lower() == blacklist[i]:lower() then | |
| 518 | wait(); | |
| 519 | OrbControls.OrbPrint(v.Name .. " has been removed because they are banned."); | |
| 520 | if Preferences.Command.SafeChatRemove then | |
| 521 | v:SetSuperSafeChat(true); | |
| 522 | end | |
| 523 | v:destroy(); | |
| 524 | end | |
| 525 | end | |
| 526 | end | |
| 527 | end | |
| 528 | end)(); | |
| 529 | ||
| 530 | --[[_End Coroutines_]]-- | |
| 531 | ||
| 532 | --[[ | |
| 533 | ChrimOrb is a trademark of Chrimsan. ©2013 | |
| 534 | ( NOT REALLY LOL ) | |
| 535 | ]]-- |