THE REQUIRE PATHS WORK!@!!!!!!11!
This commit is contained in:
@@ -2,10 +2,6 @@ LuaSetup = {}
|
||||
|
||||
local path = ...
|
||||
|
||||
package.path = {path .. "/Lua/?.lua"}
|
||||
|
||||
setmodulepaths(package.path)
|
||||
|
||||
local function AddTableToGlobal(tbl)
|
||||
for k, v in pairs(tbl) do
|
||||
_G[k] = v
|
||||
@@ -13,22 +9,22 @@ local function AddTableToGlobal(tbl)
|
||||
end
|
||||
|
||||
if SERVER then
|
||||
AddTableToGlobal(require("DefaultLib/LibServer"))
|
||||
AddTableToGlobal(dofile(path .. "/Lua/DefaultLib/LibServer.lua"))
|
||||
else
|
||||
AddTableToGlobal(require("DefaultLib/LibClient"))
|
||||
AddTableToGlobal(dofile(path .. "/Lua/DefaultLib/LibClient.lua"))
|
||||
end
|
||||
|
||||
AddTableToGlobal(require("DefaultLib/LibShared"))
|
||||
AddTableToGlobal(dofile(path .. "/Lua/DefaultLib/LibShared.lua"))
|
||||
|
||||
AddTableToGlobal(require("CompatibilityLib"))
|
||||
AddTableToGlobal(dofile(path .. "/Lua/CompatibilityLib.lua"))
|
||||
|
||||
require("DefaultHook")
|
||||
dofile(path .. "/Lua/DefaultHook.lua")
|
||||
|
||||
Descriptors = LuaSetup.LuaUserData
|
||||
|
||||
require("DefaultLib/Utils/Math")
|
||||
require("DefaultLib/Utils/String")
|
||||
require("DefaultLib/Utils/Util")
|
||||
require("DefaultLib/Utils/SteamApi")
|
||||
dofile(path .. "/Lua/DefaultLib/Utils/Math.lua")
|
||||
dofile(path .. "/Lua/DefaultLib/Utils/String.lua")
|
||||
dofile(path .. "/Lua/DefaultLib/Utils/Util.lua")
|
||||
dofile(path .. "/Lua/DefaultLib/Utils/SteamApi.lua")
|
||||
|
||||
LuaSetup = nil
|
||||
@@ -268,10 +268,21 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService
|
||||
|
||||
SetupEnvironment(enableSandbox);
|
||||
|
||||
if (_script == null) { return FluentResults.Result.Ok(); } // never happens
|
||||
|
||||
var result = FluentResults.Result.Ok();
|
||||
|
||||
_isRunning = true;
|
||||
|
||||
var packages = executionOrder.Select(r => r.OwnerPackage)
|
||||
.Distinct()
|
||||
.Select(p => $"{p.Dir}/Lua/?.lua")
|
||||
.ToArray();
|
||||
|
||||
((LuaScriptLoader)_luaScriptLoader).ModulePaths = packages;
|
||||
Table package = (Table)_script.Globals["package"];
|
||||
package.Set("path", DynValue.FromObject(_script, packages));
|
||||
|
||||
foreach (ILuaScriptResourceInfo resource in executionOrder.Where(l => l.IsAutorun))
|
||||
{
|
||||
foreach (ContentPath filePath in resource.FilePaths)
|
||||
@@ -279,7 +290,7 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService
|
||||
try
|
||||
{
|
||||
_loggerService.LogMessage($"Run {filePath.Value}");
|
||||
_script?.Call(_script.LoadFile(filePath.FullPath), Path.GetDirectoryName(resource.OwnerPackage.Path));
|
||||
_script.Call(_script.LoadFile(filePath.FullPath), resource.OwnerPackage.Dir);
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
|
||||
@@ -77,7 +77,7 @@ namespace Barotrauma.LuaCs
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
return result.Value;
|
||||
}
|
||||
|
||||
private void UnsafeLogErrors(string message, FluentResults.Result result = null)
|
||||
|
||||
Reference in New Issue
Block a user