diff --git a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs index f2b2ed7ee..41d9c6297 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs @@ -10,6 +10,21 @@ namespace Barotrauma { partial class LuaSetup { + private static Vector2 CreateVector2(float x, float y) + { + return new Vector2(x, y); + } + + private static Vector3 CreateVector3(float x, float y, float z) + { + return new Vector3(x, y, z); + } + + private static Vector4 CreateVector4(float x, float y, float z, float w) + { + return new Vector4(x, y, z, w); + } + private class LuaPlayer { diff --git a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaCustomConverters.cs b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaCustomConverters.cs index 8db9b3806..8e8db28c3 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaCustomConverters.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaCustomConverters.cs @@ -13,7 +13,7 @@ namespace Barotrauma public static void RegisterAll() { - // Vector 2 +/* // Vector 2 Script.GlobalOptions.CustomConverters.SetScriptToClrCustomConversion(DataType.Table, typeof(Vector2), dynVal => { @@ -51,7 +51,7 @@ namespace Barotrauma DynValue dynVal = DynValue.NewTable(script, new DynValue[] { x, y, z }); return dynVal; } - ); + );*/ } diff --git a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs index 36df53f54..29c917cf1 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs @@ -139,14 +139,19 @@ namespace Barotrauma lua.Globals["Character"] = UserData.CreateStatic(); lua.Globals["Item"] = UserData.CreateStatic(); lua.Globals["Level"] = UserData.CreateStatic(); - lua.Globals["Vector2"] = UserData.CreateStatic(); - lua.Globals["Vector3"] = UserData.CreateStatic(); lua.Globals["PositionType"] = UserData.CreateStatic(); lua.Globals["JobPrefab"] = UserData.CreateStatic(); lua.Globals["TraitorMessageType"] = UserData.CreateStatic(); lua.Globals["CauseOfDeathType"] = UserData.CreateStatic(); lua.Globals["Affliction"] = UserData.CreateStatic(); + lua.Globals["Vector2"] = UserData.CreateStatic(); + lua.Globals["Vector3"] = UserData.CreateStatic(); + lua.Globals["Vector4"] = UserData.CreateStatic(); + lua.Globals["CreateVector2"] = (Func)CreateVector2; + lua.Globals["CreateVector3"] = (Func)CreateVector3; + lua.Globals["CreateVector4"] = (Func)CreateVector4; + foreach (string d in Directory.GetDirectories("Mods")) { if (Directory.Exists(d + "/Lua/Autorun"))