42 lines
1.0 KiB
C#
42 lines
1.0 KiB
C#
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
namespace EscapeRoomEngine.Engine.Runtime.Utilities
|
|
{
|
|
public enum LogType
|
|
{
|
|
Important,
|
|
ModulePlacement,
|
|
PassageConnection,
|
|
RoomGeneration,
|
|
RequirementResolution,
|
|
PuzzleFlow
|
|
}
|
|
|
|
public class Logger : MonoBehaviour
|
|
{
|
|
public static Logger DefaultLogger
|
|
{
|
|
get
|
|
{
|
|
if (_foundLogger == null)
|
|
{
|
|
_foundLogger = FindObjectOfType<Logger>();
|
|
}
|
|
return _foundLogger;
|
|
}
|
|
}
|
|
private static Logger _foundLogger;
|
|
|
|
public bool loggingEnabled;
|
|
public List<LogType> typeFilter;
|
|
|
|
public static void Log(string message, LogType type = LogType.Important)
|
|
{
|
|
if (DefaultLogger.loggingEnabled && DefaultLogger.typeFilter.Contains(type))
|
|
{
|
|
Debug.Log($"<b>[{type}]</b> {message}");
|
|
}
|
|
}
|
|
}
|
|
} |