mirror of
https://github.com/muskit/H3VR-TNH-Quality-of-Life-Improvements.git
synced 2026-06-02 20:24:26 -07:00
update MeatKit (9a1a68ab68cd0650227af944ffa30d1166b9e056)
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
|
||||
namespace MeatKit
|
||||
{
|
||||
public static class BuildLog
|
||||
{
|
||||
private static StringWriter _temp;
|
||||
private static Stopwatch _sw;
|
||||
private static DateTime _startTime;
|
||||
private static bool _failed;
|
||||
private static string _completionMessage;
|
||||
private static Exception _exception;
|
||||
|
||||
public static void StartNew()
|
||||
{
|
||||
_temp = new StringWriter();
|
||||
_sw = Stopwatch.StartNew();
|
||||
_startTime = DateTime.Now;
|
||||
}
|
||||
|
||||
public static void WriteLine(string text)
|
||||
{
|
||||
if (_temp == null) return;
|
||||
_temp.WriteLine(text);
|
||||
}
|
||||
|
||||
public static void SetCompletionStatus(bool failed, string message, Exception exception)
|
||||
{
|
||||
_failed = failed;
|
||||
_completionMessage = message;
|
||||
_exception = exception;
|
||||
}
|
||||
|
||||
public static void Finish()
|
||||
{
|
||||
_sw.Stop();
|
||||
|
||||
StreamWriter output = new StreamWriter("AssetBundles/buildlog.txt", false);
|
||||
|
||||
WriteProfileInfo(output);
|
||||
output.WriteLine();
|
||||
output.WriteLine("--- MeatKit Build Log ---");
|
||||
output.WriteLine("Start Time: " + _startTime.ToString("dddd, dd MMMM yyyy HH:mm:ssK"));
|
||||
output.WriteLine("Duration : " + _sw.Elapsed.GetReadableTimespan());
|
||||
output.WriteLine("Status : " + (_failed ? "FAILED" : "COMPLETED"));
|
||||
if (!string.IsNullOrEmpty(_completionMessage))
|
||||
output.WriteLine("Message : " + _completionMessage);
|
||||
if (_exception != null)
|
||||
{
|
||||
output.WriteLine("Exception :");
|
||||
output.WriteLine(_exception.ToString());
|
||||
}
|
||||
|
||||
output.WriteLine("\n--- Full build log ---");
|
||||
output.Write(_temp.ToString());
|
||||
|
||||
output.Close();
|
||||
output.Dispose();
|
||||
_temp = null;
|
||||
}
|
||||
|
||||
private static void WriteProfileInfo(StreamWriter output)
|
||||
{
|
||||
var profile = BuildWindow.SelectedProfile;
|
||||
var implicitDependencies = profile.GetRequiredDependencies();
|
||||
|
||||
output.WriteLine("--- Selected Build Profile ---");
|
||||
output.WriteLine("Thunderstore Metadata");
|
||||
output.WriteLine(" Package Name: " + profile.PackageName);
|
||||
output.WriteLine(" Author : " + profile.Author);
|
||||
output.WriteLine(" Version : " + profile.Version);
|
||||
output.WriteLine(" Icon Set : " + (profile.Icon == null ? "No" : "Yes"));
|
||||
output.WriteLine(" Readme Set : " + (profile.ReadMe == null ? "No" : "Yes"));
|
||||
output.WriteLine(" Website URL : " + profile.WebsiteURL);
|
||||
output.WriteLine(" Description : " + profile.Description);
|
||||
output.WriteLine(" Implicit Dependencies : (" + implicitDependencies.Length + ")");
|
||||
foreach (var dependency in implicitDependencies)
|
||||
output.WriteLine(" " + dependency);
|
||||
output.WriteLine(" Additional Dependencies: (" + profile.AdditionalDependencies.Length + ")");
|
||||
foreach (var dependency in profile.AdditionalDependencies)
|
||||
output.WriteLine(" " + dependency);
|
||||
|
||||
output.WriteLine("Script Options");
|
||||
output.WriteLine(" Strip Namespaces : " + profile.StripNamespaces);
|
||||
output.WriteLine(" Additional Namespaces: (" + profile.AdditionalNamespaces.Length + ")");
|
||||
foreach (var @namespace in profile.AdditionalNamespaces)
|
||||
output.WriteLine(" " + @namespace);
|
||||
output.WriteLine(" Apply Harmony Patches: " + profile.ApplyHarmonyPatches);
|
||||
|
||||
output.WriteLine("Export Options");
|
||||
output.WriteLine(" Build Items: (" + profile.BuildItems.Length + ")");
|
||||
foreach (var buildItem in profile.BuildItems)
|
||||
output.WriteLine(" " + buildItem);
|
||||
output.WriteLine(" Build Action: " + profile.BuildAction);
|
||||
output.WriteLine(" Export Path : " + profile.ExportPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user