From ad1b3b49116a9d7d10587f9c88a0253874494436 Mon Sep 17 00:00:00 2001 From: VaDiM Date: Fri, 10 Mar 2023 21:01:12 +0300 Subject: [PATCH] [CLI] Some fixes for logging --- AssetStudio/ILogger.cs | 4 ++-- AssetStudioCLI/CLILogger.cs | 4 ++-- AssetStudioCLI/Exporter.cs | 6 +++--- AssetStudioCLI/Studio.cs | 31 ++++++++++++++++++------------- AssetStudioGUI/GUILogger.cs | 2 +- 5 files changed, 26 insertions(+), 21 deletions(-) diff --git a/AssetStudio/ILogger.cs b/AssetStudio/ILogger.cs index 86abc78..87d1a8f 100644 --- a/AssetStudio/ILogger.cs +++ b/AssetStudio/ILogger.cs @@ -16,11 +16,11 @@ namespace AssetStudio public interface ILogger { - void Log(LoggerEvent loggerEvent, string message); + void Log(LoggerEvent loggerEvent, string message, bool ignoreLevel = false); } public sealed class DummyLogger : ILogger { - public void Log(LoggerEvent loggerEvent, string message) { } + public void Log(LoggerEvent loggerEvent, string message, bool ignoreLevel) { } } } diff --git a/AssetStudioCLI/CLILogger.cs b/AssetStudioCLI/CLILogger.cs index 90346f3..1fb473c 100644 --- a/AssetStudioCLI/CLILogger.cs +++ b/AssetStudioCLI/CLILogger.cs @@ -97,9 +97,9 @@ namespace AssetStudioCLI } } - public void Log(LoggerEvent logMsgLevel, string message) + public void Log(LoggerEvent logMsgLevel, string message, bool ignoreLevel) { - if (logMsgLevel < logMinLevel || string.IsNullOrEmpty(message)) + if ((logMsgLevel < logMinLevel && !ignoreLevel) || string.IsNullOrEmpty(message)) { return; } diff --git a/AssetStudioCLI/Exporter.cs b/AssetStudioCLI/Exporter.cs index b03f15e..a8c4a6b 100644 --- a/AssetStudioCLI/Exporter.cs +++ b/AssetStudioCLI/Exporter.cs @@ -22,7 +22,7 @@ namespace AssetStudioCLI var image = m_Texture2D.ConvertToImage(flip: true); if (image == null) { - Logger.Error($"Failed to convert texture \"{m_Texture2D.m_Name}\" into image"); + Logger.Error($"Export error. Failed to convert texture \"{m_Texture2D.m_Name}\" into image"); return false; } using (image) @@ -52,7 +52,7 @@ namespace AssetStudioCLI var m_AudioData = m_AudioClip.m_AudioData.GetData(); if (m_AudioData == null || m_AudioData.Length == 0) { - Logger.Error($"[{item.Text}]: AudioData was not found"); + Logger.Error($"Export error. \"{item.Text}\": AudioData was not found"); return false; } var converter = new AudioClipConverter(m_AudioClip); @@ -72,7 +72,7 @@ namespace AssetStudioCLI var buffer = converter.ConvertToWav(m_AudioData); if (buffer == null) { - Logger.Error($"[{item.Text}]: Failed to convert to Wav"); + Logger.Error($"Export error. \"{item.Text}\": Failed to convert to Wav"); return false; } File.WriteAllBytes(exportFullPath, buffer); diff --git a/AssetStudioCLI/Studio.cs b/AssetStudioCLI/Studio.cs index 45298de..2715b00 100644 --- a/AssetStudioCLI/Studio.cs +++ b/AssetStudioCLI/Studio.cs @@ -161,6 +161,7 @@ namespace AssetStudioCLI public void ShowExportableAssetsInfo() { var exportableAssetsCountDict = new Dictionary(); + string info = ""; if (parsedAssetsList.Count > 0) { foreach (var asset in parsedAssetsList) @@ -175,7 +176,7 @@ namespace AssetStudioCLI } } - var info = "\n[Exportable Assets Count]\n"; + info += "\n[Exportable Assets Count]\n"; foreach (var assetType in exportableAssetsCountDict.Keys) { info += $"# {assetType}: {exportableAssetsCountDict[assetType]}\n"; @@ -184,15 +185,19 @@ namespace AssetStudioCLI { info += $"#\n# Total: {parsedAssetsList.Count} assets"; } + } + else + { + info += "No exportable assets found."; + } - if (options.o_logLevel.Value > LoggerEvent.Info) - { - Console.WriteLine(info); - } - else - { - Logger.Info(info); - } + if (options.o_logLevel.Value > LoggerEvent.Info) + { + Console.WriteLine(info); + } + else + { + Logger.Info(info); } } @@ -327,20 +332,20 @@ namespace AssetStudioCLI if (exportedCount == 0) { - Logger.Info("Nothing exported."); + Logger.Default.Log(LoggerEvent.Info, "Nothing exported.", ignoreLevel: true); } else if (toExportCount > exportedCount) { - Logger.Info($"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightYellow)}\"."); + Logger.Default.Log(LoggerEvent.Info, $"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightYellow)}\".", ignoreLevel: true); } else { - Logger.Info($"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightGreen)}\"."); + Logger.Default.Log(LoggerEvent.Info, $"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightGreen)}\".", ignoreLevel: true); } if (toExportCount > exportedCount) { - Logger.Info($"{toExportCount - exportedCount} asset(s) skipped (not extractable or file(s) already exist)."); + Logger.Default.Log(LoggerEvent.Info, $"{toExportCount - exportedCount} asset(s) skipped (not extractable or file(s) already exist).", ignoreLevel: true); } } diff --git a/AssetStudioGUI/GUILogger.cs b/AssetStudioGUI/GUILogger.cs index f4693ca..0e780ed 100644 --- a/AssetStudioGUI/GUILogger.cs +++ b/AssetStudioGUI/GUILogger.cs @@ -14,7 +14,7 @@ namespace AssetStudioGUI this.action = action; } - public void Log(LoggerEvent loggerEvent, string message) + public void Log(LoggerEvent loggerEvent, string message, bool ignoreLevel) { switch (loggerEvent) {