diff --git a/Client.lua b/Client.lua index 32ead5cd0..c45653090 100644 --- a/Client.lua +++ b/Client.lua @@ -69,7 +69,7 @@ end function CLIENT:ClientGroup() --trace.f(self.ClassName) local ReturnGroup = Group.getByName( self.ClientName ) - if ReturnGroup and ReturnGroup::isExist() then + if ReturnGroup and ReturnGroup:isExist() then return ReturnGroup else return nil diff --git a/MissionScripting/MissionScripting.lua b/MissionScripting/MissionScripting.lua new file mode 100644 index 000000000..34d90a1e0 --- /dev/null +++ b/MissionScripting/MissionScripting.lua @@ -0,0 +1,39 @@ +--Initialization script for the Mission lua Environment (SSE) + +dofile('Scripts/ScriptingSystem.lua') + +Include = {} + +Include.LoadPath = 'Scripts/MOOSE' +Include.Files = {} + +Include.File = function( IncludeFile ) + if not Include.Files[ IncludeFile ] then + Include.Files[IncludeFile] = IncludeFile + dofile( Include.LoadPath .. "/" .. IncludeFile .. ".lua" ) + env.info( "Include:" .. IncludeFile .. " loaded." ) + end +end + +Include.File( "Trace" ) +Include.File( "Routines" ) +Include.File( "Database" ) +Include.File( "StatHandler" ) + +--Sanitize Mission Scripting environment +--This makes unavailable some unsecure functions. +--Mission downloaded from server to client may contain potentialy harmful lua code that may use these functions. +--You can remove the code below and make availble these functions at your own risk. + +local function sanitizeModule(name) + _G[name] = nil + package.loaded[name] = nil +end + +do + --sanitizeModule('os') + --sanitizeModule('io') + sanitizeModule('lfs') + require = nil + loadlib = nil +end