public class LogManager
{
// Fields
public static bool Debugstate;
// Methods
public static void Log(string strText)
{
if (Debugstate)
{
Debug.Log(strText);
}
}
public static void Log(string strText, Object context)
{
if (Debugstate)
{
Debug.Log(strText, context);
}
}
public static void LogError(string strText)
{
if (Debugstate)
{
Debug.LogError(strText);
}
}
public static void LogError(string strText, Object context)
{
if (Debugstate)
{
Debug.LogError(strText, context);
}
}
public static void LogWarning(string strText)
{
if (Debugstate)
{
Debug.LogWarning(strText);
}
}
public static void LogWarning(string strText, Object context)
{
if (Debugstate)
{
Debug.LogWarning(strText, context);
}
}
}
namespace Kola
{
using System;
using System.IO;
using System.Text;
using UnityEngine;
public class KDebugHelp
{
public static bool Enable;
public static bool EnableKConsole;
internal KDebugHelp()
{
}
public static void Assert(bool flag, string format, params object[] param)
{
if (!flag)
{
PrintError(format, param);
}
}
public static void DrawCenterRect(Vector2 center, Vector2 size, float duration, Color color)
{
Vector2 leftTop = new Vector2(center.x - (size.x * 0.5f), center.y + (size.y * 0.5f));
Vector2 rightBottom = new Vector2(center.x + (size.x * 0.5f), center.y - (size.y * 0.5f));
DrawRect(leftTop, rightBottom, duration, color);
}
public static void DrawLine(Vector2 start, Vector2 end, float duration, Color color)
{
if (Enable)
{
Debug.DrawLine((Vector3) start, (Vector3) end, color, duration);
}
}
public static void DrawPolygon(float duration, Color color, bool close, params Vector2[] pnts)
{
if (Enable && ((pnts != null) && (pnts.Length > 1)))
{
for (int i = 1; i < pnts.Length; i++)
{
DrawLine(pnts[i - 1], pnts[i], duration, color);
}
if (close)
{
DrawLine(pnts[pnts.Length - 1], pnts[0], duration, color);
}
}
}
public static void DrawRect(Vector2 leftTop, Vector2 rightBottom, float duration, Color color)
{
if (Enable)
{
DrawLine(new Vector3(leftTop.x, leftTop.y, 0f), new Vector3(rightBottom.x, leftTop.y, 0f), duration, color);
DrawLine(new Vector3(leftTop.x, rightBottom.y, 0f), new Vector3(rightBottom.x, rightBottom.y, 0f), duration, color);
DrawLine(new Vector3(leftTop.x, leftTop.y, 0f), new Vector3(leftTop.x, rightBottom.y, 0f), duration, color);
DrawLine(new Vector3(rightBottom.x, leftTop.y, 0f), new Vector3(rightBottom.x, rightBottom.y, 0f), duration, color);
}
}
public static void Error(string msg)
{
WriteLog2File("Error", msg);
if (Enable)
{
if (EnableKConsole)
{
}
Debug.LogError(msg);
}
}
public static void Error(string format, params object[] param)
{
Error(string.Format(format, param));
}
public static void Log(string msg)
{
if (Enable && !EnableKConsole)
{
Debug.Log(msg);
}
}
public static void Log(string format, params object[] param)
{
Log(string.Format(format, param));
}
public static void Print(string format, params object[] param)
{
Log(format, param);
}
public static void PrintError(string format, params object[] param)
{
Error(format, param);
}
public static void PrintWarning(string format, params object[] param)
{
Warning(format, param);
}
public static void Warning(string msg)
{
if (Enable)
{
if (EnableKConsole)
{
}
Debug.LogWarning(msg);
}
}
public static void Warning(string format, params object[] param)
{
Warning(string.Format(format, param));
}
public static void WriteLog2File(string level, string msg)
{
using (FileStream stream = new FileStream(KAssertManager.ExternalPath + "Log.txt", FileMode.Append))
{
string s = string.Format("[{0}] [{1}] [{2}] \n", level, KUtil.GetSystemTime("HH:mm:ss"), msg);
byte[] bytes = Encoding.UTF8.GetBytes(s);
stream.Write(bytes, 0, bytes.Length);
stream.Flush();
}
}
}
}