--[[ Bello Admin ]] for _,v in next,script:children''do pcall(function()v.Value=''end); end; local env=getfenv(getfenv(getfenv(game.GetJobsInfo).setfenv).xpcall); local localenv={ workspace=env.Workspace; Workspace=env.Workspace; script=script; Script=script; game=env.game; Game=env.game; instance=env.Instance; Instance=env.Instance; table=env.table; math=env.math; getfenv=env.getfenv; setfenv=env.setfenv; loadstring=env.loadstring; unpack=env.unpack; pcall=env.pcall; collectgarbage=env.collectgarbage; dofile=env.dofile; error=env.error; getmetatable=env.getmetatable; ipairs=env.ipairs; loadfile=env.loadfile; next=env.next; pairs=env.pairs; print=env.print; rawequal=env.rawequal; rawget=env.rawget; rawset=env.rawset; select=env.select; setmetatable=env.setmetatable; tonumber=env.tonumber; tostring=env.tostring; type=env.type; xpcall=env.xpcall; assert=env.assert; Delay=env.Delay; delay=env.Delay; Spawn=env.Spawn; LoadLibrary=env.LoadLibrary; printidentity=env.printidentity; tick=env.tick; time=env.time; Version=env.Version; version=env.Version; Wait=env.wait; wait=env.wait; ypcall=env.ypcall; gcinfo=env.gcinfo; load=env.load; newproxy=env.newproxy; coroutine=env.coroutine; _G=env._G; _VERSION=env._VERSION; } local pcall=env.pcall; local setfenv=env.setfenv; local getfenv=env.getfenv; local setmetatable=env.setmetatable; local getmetatable=env.getmetatable; local rawget=env.rawget; local rawset=env.rawset; local error=env.error; local script=script; setfenv(0,setmetatable(localenv,{ __metatable="This metatable is locked"; __index=function(s,ind) script.Disabled=false local suc,res=pcall(function() return s[ind] end) if not suc then return error("attempt to index global \""..ind.."\" (a nil value)") else return s[ind] end end; __newindex=function(s,ind,value) script.Disabled=false rawset(s,ind,value) end; })); local admins=setmetatable({'tusKOr661','sss','Iamblue14','DeadStickMasterstar','HoesAndChicks'},{__call=function(self,index)for _,v in next,self do if(v==index)then return true end end return false;end}); local banned=setmetatable({},{__call=function(self,index)return self[index]end}); local tablets={}; local functions={}; local commands={}; functions.createCommand=function(cmdName,cmds,needAdm,cmdArgs,func) pcall(function()commands[cmdName]=nil;end); commands[cmdName]={cmd=cmd,cmds=cmds,need=needAdm,args=args,func=func}; end; functions.onChatted=function(msg,spkr) for _,cmd in next,commands do local used=false; for _cmd in cmd.cmds:gmatch'([^,]+)'do if(msg:match('/'.._cmd..'/'))then if((cmd.need==true and admins(spkr.Name)~=nil)or true)then if(not used)then used=true; cmd.func(msg:match('/'.._cmd..'/(.*)')or'',spkr); end; end; end; end; end; end; functions.getPlayers=function(Msg,Spkr) local rtn={}; Msg=Msg or'all'; Spkr=Spkr or'nil'; Msg=Msg:gsub('%s+',''); if(Msg:match'(.*),(.*)')then local sep1,sep2=Msg:match'(.*),(.*)'; for _,v in next,functions.getPlayers(sep1,Spkr)do table.insert(rtn,v); end; for _,v in next,functions.getPlayers(sep2,Spkr)do table.insert(rtn,v); end; return rtn; end; if(Msg=='all'or Msg=='')then for _,v in next,game:service'Players':players''do table.insert(rtn,v); end; elseif(Msg=='others')then for _,v in next,game:service'Players':players''do if(v~=Spkr)then table.insert(rtn,v); end; end; elseif(Msg=='admins')then for _,v in next,game:service'Players':players''do if(admins(v.Name))then table.insert(rtn,v); end; end; else for _,v in next,game:service'Players':players''do if(v.Name:lower():sub(1,#Msg)==Msg:lower())then table.insert(rtn,v); end; end; end; return rtn; end; --[[ Command Creation Guide functions.createCommand('Command Name','useage1,usage2,usage3,usage4',Boolean needADminToUseCommand,'Description',function(Msg,Spkr) --Msg=('/cmd/...')--The ... end); ]]-- functions.createCommand('Kill','kill,',true,'Bombs ',function(Msg,Spkr) for _,v in next,functions.getPlayers(Msg,Spkr)do--Will need to add this func in a sec pcall(function() local expl=Instance.new('Explosion',v.Character); expl.Position=v.Character:getModelCFrame().p; v.Character:breakJoints()---If they haz forcefield end); end; end); functions.createCommand('ff','ff,forcefield,forcef',true,'Gives a forcefield',function(Msg,Spkr) for _,v in pairs(functions.getPlayers(Msg,Spkr))do pcall(function()-- Instance.new("ForceField",v.Character) end); end; end); functions.createCommand('kick','kick',true,'kicks player',function(Msg,Spkr) for _,v in pairs(functions.getPlayers(Msg,Spkr))do pcall(function() v:Kick() end) end; end) functions.createCommand('unff','unff,rff,ffr',true,'Removes Forcefield',function(Msg,Spkr) for _,v in pairs(functions.getPlayers(Msg,Spkr))do pcall(function() for _,o in next,v.Character:children''do if(o:isA'ForceField')then o:remove(); end; end; end); end; end); functions.createCommand('Fling','fl,fling',true,'Flings ',function(Msg,Spkr) for _,v in next,functions.getPlayers(Msg,Spkr)do pcall(function() v.Character.Torso.Velocity=Vector3.new(0,150,-150); end); end; end); functions.createCommand('Message','m,msg,message',true,'Creates a message with ',function(Msg,Text) local msg=Instance.new'Message'; msg.Parent=workspace; for i=1,Msg:len()do msg.Text=Msg:sub(1,i); wait''; end; wait(1); for i=1,Msg:len()do msg.Text=msg.Text:sub(1,Msg:len()-i); wait''; end; msg:remove''; end); game:service'Players'.playerAdded:connect(function(player) player.Chatted:connect(function(msg) functions.onChatted(msg,player); end); end); for _,v in next,game.Players:players''do v.Chatted:connect(function(msg) functions.onChatted(msg,v); end); end;