mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
51 lines
1.6 KiB
C#
51 lines
1.6 KiB
C#
using OWML.Common;
|
|
using System;
|
|
|
|
namespace NewHorizons.Utility.OWML
|
|
{
|
|
public static class NHLogger
|
|
{
|
|
|
|
private static LogType _logLevel = LogType.Error;
|
|
|
|
public static void UpdateLogLevel(LogType newLevel)
|
|
{
|
|
_logLevel = newLevel;
|
|
}
|
|
|
|
private static void Log(object text, LogType type)
|
|
{
|
|
if (type < _logLevel) return;
|
|
Main.Instance.ModHelper.Console.WriteLine($"{Enum.GetName(typeof(LogType), type)} : {text}", LogTypeToMessageType(type));
|
|
}
|
|
|
|
public static void LogVerbose(params object[] obj) => LogVerbose(string.Join(", ", obj));
|
|
public static void LogVerbose(object text) => Log(text, LogType.Verbose);
|
|
|
|
public static void Log(object text) => Log(text, LogType.Log);
|
|
public static void Log(params object[] obj) => Log(string.Join(", ", obj));
|
|
|
|
public static void LogWarning(object text) => Log(text, LogType.Warning);
|
|
public static void LogWarning(params object[] obj) => LogWarning(string.Join(", ", obj));
|
|
|
|
public static void LogError(object text) => Log(text, LogType.Error);
|
|
public static void LogError(params object[] obj) => LogError(string.Join(", ", obj));
|
|
|
|
public enum LogType
|
|
{
|
|
Verbose,
|
|
Log,
|
|
Warning,
|
|
Error,
|
|
}
|
|
|
|
private static MessageType LogTypeToMessageType(LogType t) =>
|
|
t switch
|
|
{
|
|
LogType.Error => MessageType.Error,
|
|
LogType.Warning => MessageType.Warning,
|
|
_ => MessageType.Info
|
|
};
|
|
}
|
|
}
|