Added LoggerService to Lua env. Made ILoggerService compliant with LuaCsLogger API.

This commit is contained in:
MapleWheels
2026-04-13 13:06:32 -04:00
parent addd3f7a45
commit 344027d757
4 changed files with 26 additions and 7 deletions
@@ -2,6 +2,7 @@
using System; using System;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using Barotrauma.LuaCs;
namespace Barotrauma namespace Barotrauma
{ {
@@ -368,6 +368,7 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService,
UserData.RegisterType(typeof(IUserDataDescriptor)); UserData.RegisterType(typeof(IUserDataDescriptor));
UserData.RegisterType(typeof(INetworkingService)); UserData.RegisterType(typeof(INetworkingService));
UserData.RegisterType(typeof(ILuaConfigService)); UserData.RegisterType(typeof(ILuaConfigService));
UserData.RegisterType(typeof(ILoggerService));
//UserData.RegisterType(typeof(ISettingBase)); //UserData.RegisterType(typeof(ISettingBase));
@@ -451,6 +452,7 @@ class LuaScriptManagementService : ILuaScriptManagementService, ILuaDataService,
_script.Globals["Networking"] = _networkingService; _script.Globals["Networking"] = _networkingService;
_script.Globals["trygetpackage"] = (string name, out ContentPackage package) => _script.Globals["trygetpackage"] = (string name, out ContentPackage package) =>
_packageManagementService.Value.TryGetLoadedPackageByName(name, out package); _packageManagementService.Value.TryGetLoadedPackageByName(name, out package);
_script.Globals["Logger"] = _loggerService;
//_script.Globals["Steam"] = Steam; //_script.Globals["Steam"] = Steam;
if (enableSandbox) if (enableSandbox)
@@ -34,4 +34,26 @@ public interface ILoggerService : IReusableService
void LogDebugError(string message); void LogDebugError(string message);
#endregion #endregion
#region LegacyCompat_LuaCsLogger
public void HandleException(Exception ex, LuaCsMessageOrigin origin)
{
HandleException(ex, origin.ToString());
}
public void LogError(string message, LuaCsMessageOrigin origin)
{
LogError(message);
}
#endregion
}
public enum LuaCsMessageOrigin
{
LuaCs,
Unknown,
LuaMod,
CSharpMod,
} }
@@ -2,16 +2,10 @@
using Barotrauma.Networking; using Barotrauma.Networking;
using Microsoft.Xna.Framework; using Microsoft.Xna.Framework;
using MoonSharp.Interpreter; using MoonSharp.Interpreter;
using Barotrauma.LuaCs;
namespace Barotrauma namespace Barotrauma
{ {
public enum LuaCsMessageOrigin
{
LuaCs,
Unknown,
LuaMod,
CSharpMod,
}
public partial class LuaCsLogger public partial class LuaCsLogger
{ {