Newer
Older
DungeonShooting / DungeonShooting_Godot / src / framework / debug / Debug.cs
  1.  
  2. using Godot;
  3.  
  4. /// <summary>
  5. /// 调试日志输出
  6. /// </summary>
  7. public static class Debug
  8. {
  9. /// <summary>
  10. /// 所有日志信息,包括log和error
  11. /// </summary>
  12. public static string AllLogMessage { get; private set; } = "";
  13. /// <summary>
  14. /// 输出日志
  15. /// </summary>
  16. public static void Log(params object[] message)
  17. {
  18. var str = "[log]";
  19. foreach (var m in message)
  20. {
  21. if (m is null)
  22. {
  23. str += "null";
  24. }
  25. else
  26. {
  27. str += m;
  28. }
  29. }
  30.  
  31. GD.Print(str);
  32. AllLogMessage = str + "\n" + AllLogMessage;
  33. if (AllLogMessage.Length > 10000)
  34. {
  35. AllLogMessage = AllLogMessage.Substring(0, 9500);
  36. }
  37. }
  38. /// <summary>
  39. /// 输出错误日志
  40. /// </summary>
  41. public static void LogError(params object[] message)
  42. {
  43. var str = "[error]";
  44. foreach (var m in message)
  45. {
  46. if (m is null)
  47. {
  48. str += "null";
  49. }
  50. else
  51. {
  52. str += m;
  53. }
  54. }
  55.  
  56. GD.PrintErr(str);
  57. AllLogMessage = str + "\n" + AllLogMessage;
  58. if (AllLogMessage.Length > 10000)
  59. {
  60. AllLogMessage = AllLogMessage.Substring(0, 9500);
  61. }
  62. }
  63.  
  64. /// <summary>
  65. /// 清除log
  66. /// </summary>
  67. public static void Clear()
  68. {
  69. AllLogMessage = "";
  70. }
  71. }