diff --git a/src/MaaWpfGui/ViewModels/UI/CopilotViewModel.cs b/src/MaaWpfGui/ViewModels/UI/CopilotViewModel.cs index 8b64c8f8f3..a371068bf6 100644 --- a/src/MaaWpfGui/ViewModels/UI/CopilotViewModel.cs +++ b/src/MaaWpfGui/ViewModels/UI/CopilotViewModel.cs @@ -1261,46 +1261,47 @@ namespace MaaWpfGui.ViewModels.UI }); bool ret = true; - if (ActiveTabIndex == 2) + if (UseCopilotList) { _copilotIdList.Clear(); - var t = CopilotItemViewModels.Where(i => i.IsChecked).Select(i => + if (ActiveTabIndex == 2) { - _copilotIdList.Add(i.CopilotId); + var t = CopilotItemViewModels.Where(i => i.IsChecked).Select(i => + { + _copilotIdList.Add(i.CopilotId); + var task = new AsstCopilotTask() + { + MultiTasks = [new MultiTask { FileName = i.FilePath, IsRaid = i.IsRaid, StageName = i.Name, IsParadox = UseCopilotList }], + Formation = _form, + AddTrust = _addTrust, + IgnoreRequirements = _ignoreRequirements, + UserAdditionals = AddUserAdditional ? userAdditional.ToList() : [], + UseSanityPotion = _useSanityPotion, + }; + return Instances.AsstProxy.AsstAppendTaskWithEncoding(AsstProxy.TaskType.Copilot, task); + }); + ret = t.All(b => b) && Instances.AsstProxy.AsstStart(); + } + else + { + var t = CopilotItemViewModels.Where(i => i.IsChecked).Select(i => + { + _copilotIdList.Add(i.CopilotId); + return new MultiTask { FileName = i.FilePath, IsRaid = i.IsRaid, StageName = i.Name, }; + }); var task = new AsstCopilotTask() { - MultiTasks = [new MultiTask { FileName = i.FilePath, IsRaid = i.IsRaid, StageName = i.Name, IsParadox = UseCopilotList }], + MultiTasks = t.ToList(), Formation = _form, AddTrust = _addTrust, IgnoreRequirements = _ignoreRequirements, UserAdditionals = AddUserAdditional ? userAdditional.ToList() : [], UseSanityPotion = _useSanityPotion, }; - return Instances.AsstProxy.AsstAppendTaskWithEncoding(AsstProxy.TaskType.Copilot, task); - }); - ret = t.All(t => t is true) && Instances.AsstProxy.AsstStart(); - } - else if (UseCopilotList) - { - _copilotIdList.Clear(); - - var t = CopilotItemViewModels.Where(i => i.IsChecked).Select(i => - { - _copilotIdList.Add(i.CopilotId); - return new MultiTask { FileName = i.FilePath, IsRaid = i.IsRaid, StageName = i.Name, }; - }); - var task = new AsstCopilotTask() - { - MultiTasks = t.ToList(), - Formation = _form, - AddTrust = _addTrust, - IgnoreRequirements = _ignoreRequirements, - UserAdditionals = AddUserAdditional ? userAdditional.ToList() : [], - UseSanityPotion = _useSanityPotion, - }; - ret = Instances.AsstProxy.AsstAppendTaskWithEncoding(AsstProxy.TaskType.Copilot, task); - ret = ret && Instances.AsstProxy.AsstStart(); + ret = Instances.AsstProxy.AsstAppendTaskWithEncoding(AsstProxy.TaskType.Copilot, task); + ret = ret && Instances.AsstProxy.AsstStart(); + } } else {