Pass in cs enabled check in ExecuteLoadedScripts
This commit is contained in:
+10
-10
@@ -174,7 +174,7 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService
|
|||||||
_eventService.RegisterLuaEventAlias<IEventUpdate>("think", "OnUpdate");
|
_eventService.RegisterLuaEventAlias<IEventUpdate>("think", "OnUpdate");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetupEnvironment()
|
private void SetupEnvironment(bool enableSandbox)
|
||||||
{
|
{
|
||||||
_script = new Script(CoreModules.Preset_SoftSandbox | CoreModules.Debug | CoreModules.IO | CoreModules.OS_System);
|
_script = new Script(CoreModules.Preset_SoftSandbox | CoreModules.Debug | CoreModules.IO | CoreModules.OS_System);
|
||||||
_script.Options.DebugPrint = (string msg) =>
|
_script.Options.DebugPrint = (string msg) =>
|
||||||
@@ -220,16 +220,16 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService
|
|||||||
_script.Globals["Networking"] = _networkingService;
|
_script.Globals["Networking"] = _networkingService;
|
||||||
//_script.Globals["Steam"] = Steam;
|
//_script.Globals["Steam"] = Steam;
|
||||||
|
|
||||||
if (GameMain.LuaCs.IsCsEnabled)
|
if (enableSandbox)
|
||||||
{
|
|
||||||
UserData.RegisterType(typeof(LuaUserDataService));
|
|
||||||
_script.Globals["LuaUserData"] = _userDataService;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
UserData.RegisterType(typeof(SafeLuaUserDataService));
|
UserData.RegisterType(typeof(SafeLuaUserDataService));
|
||||||
_script.Globals["LuaUserData"] = _safeUserDataService;
|
_script.Globals["LuaUserData"] = _safeUserDataService;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
UserData.RegisterType(typeof(LuaUserDataService));
|
||||||
|
_script.Globals["LuaUserData"] = _userDataService;
|
||||||
|
}
|
||||||
|
|
||||||
Table eventsTable = new Table(_script);
|
Table eventsTable = new Table(_script);
|
||||||
|
|
||||||
@@ -249,7 +249,7 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService
|
|||||||
_script.Globals["Events"] = eventsTable;
|
_script.Globals["Events"] = eventsTable;
|
||||||
|
|
||||||
_script.Globals["ExecutionNumber"] = 0;
|
_script.Globals["ExecutionNumber"] = 0;
|
||||||
_script.Globals["CSActive"] = GameMain.LuaCs.IsCsEnabled;
|
_script.Globals["CSActive"] = !enableSandbox;
|
||||||
|
|
||||||
_script.Globals["SERVER"] = LuaCsSetup.IsServer;
|
_script.Globals["SERVER"] = LuaCsSetup.IsServer;
|
||||||
_script.Globals["CLIENT"] = LuaCsSetup.IsClient;
|
_script.Globals["CLIENT"] = LuaCsSetup.IsClient;
|
||||||
@@ -257,7 +257,7 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService
|
|||||||
_defaultLuaRegistrar.RegisterAll();
|
_defaultLuaRegistrar.RegisterAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
public FluentResults.Result ExecuteLoadedScripts(ImmutableArray<ILuaScriptResourceInfo> executionOrder)
|
public FluentResults.Result ExecuteLoadedScripts(ImmutableArray<ILuaScriptResourceInfo> executionOrder, bool enableSandbox)
|
||||||
{
|
{
|
||||||
if (_isRunning)
|
if (_isRunning)
|
||||||
{
|
{
|
||||||
@@ -266,7 +266,7 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService
|
|||||||
|
|
||||||
_loggerService.LogMessage("Executing Lua scripts");
|
_loggerService.LogMessage("Executing Lua scripts");
|
||||||
|
|
||||||
SetupEnvironment();
|
SetupEnvironment(enableSandbox);
|
||||||
|
|
||||||
var result = FluentResults.Result.Ok();
|
var result = FluentResults.Result.Ok();
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -248,7 +248,7 @@ public sealed class PackageManagementService : IPackageManagementService
|
|||||||
|
|
||||||
if (!luaScripts.IsDefaultOrEmpty)
|
if (!luaScripts.IsDefaultOrEmpty)
|
||||||
{
|
{
|
||||||
result.WithReasons(_luaScriptManagementService.ExecuteLoadedScripts(luaScripts);
|
result.WithReasons(_luaScriptManagementService.ExecuteLoadedScripts(luaScripts, enableSandbox: !executeCsAssemblies).Reasons);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var package in loadingOrderedPackages)
|
foreach (var package in loadingOrderedPackages)
|
||||||
|
|||||||
+1
-1
@@ -34,7 +34,7 @@ public interface ILuaScriptManagementService : IReusableService
|
|||||||
/// <param name="executionOrder"></param>
|
/// <param name="executionOrder"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
// [Required]
|
// [Required]
|
||||||
FluentResults.Result ExecuteLoadedScripts(ImmutableArray<ILuaScriptResourceInfo> executionOrder);
|
FluentResults.Result ExecuteLoadedScripts(ImmutableArray<ILuaScriptResourceInfo> executionOrder, bool enableSandbox);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
|
|||||||
Reference in New Issue
Block a user