Health/Assets/Scripts/Tool/LogPrint.cs

92 lines
2.1 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class LogPrint
{
private static PrintLevel _level = PrintLevel.Details;
public static int Level
{
get
{
if (_level == PrintLevel.Details)
return 0;
else if (_level == PrintLevel.Normal)
return 1;
else if (_level == PrintLevel.Important)
return 2;
else
return 3;
}
set
{
if (value == 0)
_level = PrintLevel.Details;
else if (value == 1)
_level = PrintLevel.Normal;
else if (value == 2)
_level = PrintLevel.Important;
else
_level = PrintLevel.Critical;
}
}
public static void Log(object message, PrintLevel logLevel = PrintLevel.Details)
{
if (logLevel >= _level)
{
Debug.Log(message);
}
}
public static void Log(object message, UnityEngine.Object sender, PrintLevel logLevel = PrintLevel.Details)
{
if (logLevel >= _level)
{
Debug.Log(message, sender);
}
}
public static void Warning(object message, PrintLevel level = PrintLevel.Details)
{
if (level >= _level)
{
Debug.LogWarning(message);
}
}
public static void Warning(object message, UnityEngine.Object sender, PrintLevel logLevel = PrintLevel.Details)
{
if (logLevel >= _level)
{
Debug.LogWarning(message, sender);
}
}
public static void Error(object message, PrintLevel level = PrintLevel.Details)
{
if (level >= _level)
{
Debug.LogError(message);
}
}
public static void Exception(Exception ex, PrintLevel level = PrintLevel.Details)
{
if (level >= _level)
{
Debug.LogException(ex);
}
}
}
public enum PrintLevel
{
Details = 0,
Normal = 10,
Important = 100,
Critical = 200,
}