diff --git a/res/App.Designer.cs b/res/App.Designer.cs index 3617e79..a31960e 100644 --- a/res/App.Designer.cs +++ b/res/App.Designer.cs @@ -255,15 +255,6 @@ namespace YaeAchievement.res { } } - /// - /// Looks up a localized string similar to To fetch new data, Restart the application after delete cache\d1a8ef40a67a5929.miko.. - /// - internal static string RefreshData { - get { - return ResourceManager.GetString("RefreshData", resourceCulture); - } - } - /// /// Looks up a localized string similar to Reward not taken. /// @@ -348,7 +339,7 @@ namespace YaeAchievement.res { } /// - /// Looks up a localized string similar to Use previous fetched data.. + /// Looks up a localized string similar to Use previous fetched data? (yes|no). /// internal static string UsePreviousData { get { diff --git a/res/App.resx b/res/App.resx index f153414..4f6ee1f 100644 --- a/res/App.resx +++ b/res/App.resx @@ -105,10 +105,7 @@ Input a number (0-5): YaeAchievement ({0}) - Use previous fetched data. - - - To fetch new data, Restart the application after delete cache\d1a8ef40a67a5929.miko. + Use previous fetched data? (yes|no) Network error: diff --git a/res/App.zh.resx b/res/App.zh.resx index 8c9f82c..ae865f4 100644 --- a/res/App.zh.resx +++ b/res/App.zh.resx @@ -99,10 +99,7 @@ YaeAchievement - 原神成就导出工具 ({0}) - 使用上一次获取到的成就数据 - - - 要重新获取数据,手动删除 cache\d1a8ef40a67a5929.miko 后重新启动 YaeAchievement + 要使用上一次获取到的成就数据吗? (yes|no) 网络错误: {0} diff --git a/src/Program.cs b/src/Program.cs index 1342fb6..990c7d7 100644 --- a/src/Program.cs +++ b/src/Program.cs @@ -28,11 +28,22 @@ new EventLog("AppInit") { { "SystemVersion", DeviceHelper.GetSystemVersion() } } }.Enqueue(); +var usePreviousData = false; var historyCache = new CacheFile("ExportData"); if (historyCache.LastWriteTime.AddMinutes(10) > DateTime.UtcNow) { Console.WriteLine(App.UsePreviousData); - Console.WriteLine(App.RefreshData); - Export.Choose(AchievementAllDataNotify.Parser.ParseFrom(historyCache.Read().Content)); + usePreviousData = Console.ReadLine() == "yes"; +} +Export: +if(usePreviousData) { + AchievementAllDataNotify data; + try { + data = AchievementAllDataNotify.Parser.ParseFrom(historyCache.Read().Content); + } catch (Exception) { + usePreviousData = false; + goto Export; + } + Export.Choose(data); } else { StartAndWaitResult(AppConfig.GamePath, str => { GlobalVars.UnexpectedExit = false;