mirror of
https://github.com/Jacobwasbeast/LegacyWeaveLoader.git
synced 2026-05-22 13:44:31 +00:00
Rename across entire codebase: - LegacyForge -> WeaveLoader (identifiers, namespaces, classes, DLLs) - LegacyForgeRuntime -> WeaveLoaderRuntime (C++ project) - LegacyForge.API/Core/Launcher -> WeaveLoader.API/Core/Launcher (C# projects) - [LegacyForge] -> [WeaveLoader] (log prefixes) - legacyforge -> weaveloader (config files, log files, backup suffixes) - Display name "Weave Loader" in README, CONTRIBUTING, LICENSE
37 lines
1.1 KiB
C#
37 lines
1.1 KiB
C#
namespace WeaveLoader.API;
|
|
|
|
public enum LogLevel
|
|
{
|
|
Debug = 0,
|
|
Info = 1,
|
|
Warning = 2,
|
|
Error = 3
|
|
}
|
|
|
|
/// <summary>
|
|
/// Logging facade that routes messages through the native runtime to the game's debug output.
|
|
/// </summary>
|
|
public static class Logger
|
|
{
|
|
private static Action<string, LogLevel>? LogHandler;
|
|
|
|
/// <summary>
|
|
/// Set the log handler that routes messages to the native runtime.
|
|
/// Called by WeaveLoader.Core during initialization.
|
|
/// </summary>
|
|
public static void SetLogHandler(Action<string, LogLevel> handler) => LogHandler = handler;
|
|
|
|
public static void Debug(string message) => Log(message, LogLevel.Debug);
|
|
public static void Info(string message) => Log(message, LogLevel.Info);
|
|
public static void Warning(string message) => Log(message, LogLevel.Warning);
|
|
public static void Error(string message) => Log(message, LogLevel.Error);
|
|
|
|
public static void Log(string message, LogLevel level = LogLevel.Info)
|
|
{
|
|
if (LogHandler != null)
|
|
LogHandler(message, level);
|
|
else
|
|
Console.WriteLine($"[WeaveLoader/{level}] {message}");
|
|
}
|
|
}
|