public static string Message(this LoggedWhen loggedWhen) { switch (loggedWhen) { case LoggedWhen.Initializing: return("An error occurred while creating harmony patch!"); case LoggedWhen.InPatch: return("An error occurred in a patched method!"); case LoggedWhen.Options: return("An error occurred while creating/changing mod options!"); default: return("An error has occurred!"); } }
public static void Exception(Exception e, LoggedWhen loggedWhen = LoggedWhen.None, string assembly = null) { assembly = assembly ?? Assembly.GetCallingAssembly().GetName().Name; Console.WriteLine($"[{assembly}] {loggedWhen.Message()}"); Console.WriteLine($"[{assembly}] Exception: {e.ToString()}"); }