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