From 1fbd7ee7f8791173930d5b5c4029b402d9151932 Mon Sep 17 00:00:00 2001 From: Evil Factory <36804725+evilfactory@users.noreply.github.com> Date: Thu, 2 Sep 2021 18:39:00 -0300 Subject: [PATCH] added a way to know which content packages are enabled --- .../BarotraumaServer/ServerSource/Lua/LuaClasses.cs | 8 +++++++- Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs index d5af6b808..2fbb3147f 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaClasses.cs @@ -8,6 +8,7 @@ using System.Threading.Tasks; using Barotrauma.Items.Components; using System.IO; using System.Net; +using System.Linq; namespace Barotrauma { @@ -338,7 +339,12 @@ namespace Barotrauma { return new Signal(value, stepsTaken, sender, source, power, strength); } - + + public static ContentPackage[] GetEnabledContentPackages() + { + return GameMain.Config.AllEnabledPackages.ToArray(); + } + } diff --git a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs index c7f77c2bc..ad08ed3f7 100644 --- a/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs +++ b/Barotrauma/BarotraumaServer/ServerSource/Lua/LuaSetup.cs @@ -201,6 +201,7 @@ namespace Barotrauma UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType>(); + UserData.RegisterType(); lua = new Script(CoreModules.Preset_SoftSandbox); @@ -210,7 +211,7 @@ namespace Barotrauma hook = new LuaHook(this); game = new LuaGame(this); - + lua.Globals["dofile"] = (Func)DoFile; lua.Globals["loadfile"] = (Func)LoadFile; lua.Globals["require"] = (Func)Require; @@ -250,6 +251,7 @@ namespace Barotrauma lua.Globals["Hull"] = UserData.CreateStatic(); lua.Globals["InvSlotType"] = UserData.CreateStatic(); lua.Globals["Gap"] = UserData.CreateStatic(); + lua.Globals["ContentPackage"] = UserData.CreateStatic(); List modulePaths = new List();