From 9342969191d9d1efa1d93e6d2e54af9d9eb46c1c Mon Sep 17 00:00:00 2001 From: Weiyou Wang Date: Mon, 22 Jul 2024 18:25:33 +1000 Subject: [PATCH] =?UTF-8?q?refactor:=20WpfGui=E6=B7=BB=E5=8A=A0=E5=AF=B9?= =?UTF-8?q?=E5=9D=8D=E7=BC=A9=E8=8C=83=E5=BC=8F=E6=8F=92=E4=BB=B6callback?= =?UTF-8?q?=E7=9A=84nullable=20check?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/MaaWpfGui/Main/AsstProxy.cs | 37 ++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/src/MaaWpfGui/Main/AsstProxy.cs b/src/MaaWpfGui/Main/AsstProxy.cs index aa27e21d4b..80387beb65 100644 --- a/src/MaaWpfGui/Main/AsstProxy.cs +++ b/src/MaaWpfGui/Main/AsstProxy.cs @@ -1566,24 +1566,27 @@ namespace MaaWpfGui.Main Instances.TaskQueueViewModel.AddLog(LocalizationHelper.GetString("AccountSwitch") + $" {subTaskDetails!["current_account"]} -->> {subTaskDetails["account_name"]}", UiLogColor.Info); break; case "RoguelikeCollapsalParadigms": - int deepen_or_weaken = (int)subTaskDetails["deepen_or_weaken"]; - string cur = subTaskDetails["cur"].ToString(); - string prev = subTaskDetails["prev"].ToString(); - if (deepen_or_weaken == 1 && prev == string.Empty) + string deepen_or_weaken_str = subTaskDetails["deepen_or_weaken"]?.ToString() ?? "Unknown"; + if (int.TryParse(deepen_or_weaken_str, out int deepen_or_weaken)) { - Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeGainParadigm"), cur, prev), UiLogColor.Info); - } - else if (deepen_or_weaken == 1 && prev != string.Empty) - { - Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeDeepenParadigm"), cur, prev), UiLogColor.Info); - } - else if (deepen_or_weaken == -1 && cur == string.Empty) - { - Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeLoseParadigm"), cur, prev), UiLogColor.Info); - } - else if (deepen_or_weaken == -1 && cur != string.Empty) - { - Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeWeakenParadigm"), cur, prev), UiLogColor.Info); + string cur = subTaskDetails["cur"]?.ToString() ?? "UnKnown"; + string prev = subTaskDetails["prev"]?.ToString() ?? "UnKnown"; + if (deepen_or_weaken == 1 && prev == string.Empty) + { + Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeGainParadigm"), cur, prev), UiLogColor.Info); + } + else if (deepen_or_weaken == 1 && prev != string.Empty) + { + Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeDeepenParadigm"), cur, prev), UiLogColor.Info); + } + else if (deepen_or_weaken == -1 && cur == string.Empty) + { + Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeLoseParadigm"), cur, prev), UiLogColor.Info); + } + else if (deepen_or_weaken == -1 && cur != string.Empty) + { + Instances.TaskQueueViewModel.AddLog(string.Format(LocalizationHelper.GetString("RoguelikeWeakenParadigm"), cur, prev), UiLogColor.Info); + } } break;