KSP-Conformal-Decals/Source/ConformalDecals/Logging.cs

23 lines
948 B
C#

using System;
using UnityEngine;
namespace ConformalDecals {
public static class Logging {
public static void Log(this PartModule module, string message) => Debug.Log(FormatMessage(module, message));
public static void LogWarning(this PartModule module, string message) =>
Debug.LogWarning(FormatMessage(module, message));
public static void LogError(this PartModule module, string message) =>
Debug.LogError(FormatMessage(module, message));
public static void LogException(this PartModule module, string message, Exception exception) =>
Debug.LogException(new Exception(FormatMessage(module, message), exception));
private static string FormatMessage(PartModule module, string message) =>
$"[{GetPartName(module.part)} {module.GetType()}] {message}";
private static string GetPartName(Part part) => part.partInfo?.name ?? part.name;
}
}