using System.Collections.Generic; using UnityEngine; namespace Escape_Room_Engine.Engine.Scripts.Utilities { public enum LogType { Important, ModulePlacement, PassageConnection, RoomGeneration, PuzzleGeneration, RequirementResolution } public class Logger : MonoBehaviour { public static Logger DefaultLogger { get { if (_foundLogger == null) { _foundLogger = FindObjectOfType(); } return _foundLogger; } } private static Logger _foundLogger; public bool loggingEnabled; public List typeFilter; public static void Log(string message, LogType type = LogType.Important) { if (DefaultLogger.loggingEnabled && DefaultLogger.typeFilter.Contains(type)) { Debug.Log($"[{type}] {message}"); } } } }