Advertisement
szymski

LuaExec

Apr 29th, 2014
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.35 KB | None | 0 0
  1. --[[
  2.     LuaExec Component for LemonGate
  3.     By Szymski (Szymekk)
  4. ]]--
  5.  
  6. local LEMON, API, Util = LEMON, LEMON.API, LEMON.API.Util
  7.  
  8. local Component = API:NewComponent( "luaexec", true )
  9.  
  10. local function CheckAdmin(context)
  11.     if(not (context.Player:IsAdmin() || context.Player:IsSuperAdmin() --[[ || context.Player:SteamID()=="STEAM_0:0:00000000")  DEBUG ]]) then context:Throw(nil,"LuaExecClient","You aren't admin!") end   
  12. end
  13.  
  14. function Component.LuaExecServer(context, code)
  15.     CheckAdmin(context)
  16.     pcall(CompileString(code, "servercode"))
  17. end
  18.  
  19. function Component.LuaExecAllClients(context, code)
  20.     CheckAdmin(context)
  21.     for k,v in pairs(player.GetAll()) do
  22.         v:SendLua(code)
  23.     end
  24. end
  25.  
  26. function Component.LuaExecClient(context, player, code)
  27.     CheckAdmin(context)
  28.     player:SendLua(code)
  29. end
  30.  
  31. function Component.LuaExecOwner(context, code)
  32.     context.Player:SendLua(code)
  33. end
  34.  
  35. Component:AddExternal( "LuaExec", Component )
  36.  
  37. Component:AddFunction("luaExecServer", "s", "", "%LuaExec.LuaExecServer(%context, value %1)")
  38. Component:AddFunction("luaExecAllClients", "s", "", "%LuaExec.LuaExecAllClients(%context, value %1)")
  39. Component:AddFunction("luaExecClient", "e,s", "", "%LuaExec.LuaExecClient(%context, value %1, value %2)")
  40. Component:AddFunction("luaExecClient", "s", "", "%LuaExec.LuaExecOwner(%context, value %1)")
  41.  
  42. print("LuaExec Component loaded")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement