From e5520068d8107a7d77ada223cf0eb2faacfe709e Mon Sep 17 00:00:00 2001 From: status102 Date: Thu, 28 Sep 2023 19:16:52 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E6=88=98=E6=96=97-=E6=88=98=E6=96=97=E5=88=97=E8=A1=A8=20?= =?UTF-8?q?=E5=9C=A8=E7=BB=93=E6=9D=9F=E6=97=B6=E4=BC=9A=E8=A7=A6=E5=8F=91?= =?UTF-8?q?=E4=B8=BB=E7=95=8C=E9=9D=A2=E5=AE=8C=E6=88=90=E5=90=8E=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/MaaWpfGui/Main/AsstProxy.cs | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/MaaWpfGui/Main/AsstProxy.cs b/src/MaaWpfGui/Main/AsstProxy.cs index f9d046b5bc..3a5ecb261c 100644 --- a/src/MaaWpfGui/Main/AsstProxy.cs +++ b/src/MaaWpfGui/Main/AsstProxy.cs @@ -33,10 +33,10 @@ using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Serilog; using Stylet; +using static MaaWpfGui.Helper.Instances.Data; namespace MaaWpfGui.Main { - using static Instances.Data; #pragma warning disable SA1135 // Using directives should be qualified using AsstHandle = IntPtr; @@ -599,17 +599,19 @@ namespace MaaWpfGui.Main case AsstMsg.AllTasksCompleted: bool isMainTaskQueueAllCompleted = true; var finishedTasks = details["finished_tasks"] as JArray; - if (finishedTasks?.Count == 1) + + // 只要有非主界面任务时,就不执行任务链结束后操作 + foreach (AsstTaskId taskId in finishedTasks?.Select(i => (AsstTaskId)i) ?? new List()) { - var uniqueFinishedTask = (AsstTaskId)finishedTasks[0]; - if (uniqueFinishedTask == (_latestTaskId.TryGetValue(TaskType.Copilot, out var copilotTaskId) ? copilotTaskId : 0) - || uniqueFinishedTask == (_latestTaskId.TryGetValue(TaskType.RecruitCalc, out var recruitCalcTaskId) ? recruitCalcTaskId : 0) - || uniqueFinishedTask == (_latestTaskId.TryGetValue(TaskType.CloseDown, out var closeDownTaskId) ? closeDownTaskId : 0) - || uniqueFinishedTask == (_latestTaskId.TryGetValue(TaskType.Depot, out var depotTaskId) ? depotTaskId : 0) - || uniqueFinishedTask == (_latestTaskId.TryGetValue(TaskType.OperBox, out var operBoxTaskId) ? operBoxTaskId : 0) - || uniqueFinishedTask == (_latestTaskId.TryGetValue(TaskType.Gacha, out var gachaTaskId) ? gachaTaskId : 0)) + if (taskId == (_latestTaskId.TryGetValue(TaskType.Copilot, out var copilotTaskId) ? copilotTaskId : 0) + || taskId == (_latestTaskId.TryGetValue(TaskType.RecruitCalc, out var recruitCalcTaskId) ? recruitCalcTaskId : 0) + || taskId == (_latestTaskId.TryGetValue(TaskType.CloseDown, out var closeDownTaskId) ? closeDownTaskId : 0) + || taskId == (_latestTaskId.TryGetValue(TaskType.Depot, out var depotTaskId) ? depotTaskId : 0) + || taskId == (_latestTaskId.TryGetValue(TaskType.OperBox, out var operBoxTaskId) ? operBoxTaskId : 0) + || taskId == (_latestTaskId.TryGetValue(TaskType.Gacha, out var gachaTaskId) ? gachaTaskId : 0)) { isMainTaskQueueAllCompleted = false; + break; } }