diff --git a/resource/tasks.json b/resource/tasks.json index a6a2e16576..2a686b3ecd 100644 --- a/resource/tasks.json +++ b/resource/tasks.json @@ -4971,8 +4971,7 @@ "text": ["开始行动", "开始突袭", "开始试炼", "开始测试"], "roi": [1000, 600, 280, 120], "action": "ClickSelf", - "postDelay": 1000, - "next": ["BattleStartPre@UseMedicine", "BattleStartPre@BattleQuickFormation"] + "postDelay": 1000 }, "BattleStartPre@UseMedicine": { "doc": "绑定MedicineCounter来使用理智药", diff --git a/src/MaaCore/Task/Interface/CopilotTask.cpp b/src/MaaCore/Task/Interface/CopilotTask.cpp index ebe2ee24c3..9e03ce0244 100644 --- a/src/MaaCore/Task/Interface/CopilotTask.cpp +++ b/src/MaaCore/Task/Interface/CopilotTask.cpp @@ -35,13 +35,15 @@ asst::CopilotTask::CopilotTask(const AsstCallback& callback, Assistant* inst) : m_subtasks.emplace_back(m_change_difficulty_task_ptr); auto start_1_tp = std::make_shared(callback, inst, TaskType); - start_1_tp->set_tasks({ "BattleStartPre@BattleQuickFormation", "BattleStartPre" }) - .set_retry_times(0) - .set_ignore_error(true); - m_medicine_plugin_ptr = start_1_tp->register_plugin(); - m_medicine_plugin_ptr->set_count(999999); + start_1_tp->set_tasks({ "BattleStartPre" }).set_retry_times(0).set_ignore_error(true); m_subtasks.emplace_back(start_1_tp); + m_medicine_task_ptr = std::make_shared(callback, inst, TaskType); + m_medicine_task_ptr->set_tasks({ "BattleStartPre@UseMedicine", "BattleStartPre@BattleQuickFormation" }) + .set_ignore_error(true); + m_medicine_task_ptr->register_plugin()->set_count(999999); + m_subtasks.emplace_back(m_medicine_task_ptr); + m_subtasks.emplace_back(m_formation_task_ptr)->set_retry_times(0); auto start_2_tp = std::make_shared(callback, inst, TaskType); @@ -142,7 +144,7 @@ bool asst::CopilotTask::set_params(const json::value& params) m_navigate_task_ptr->set_enable(need_navigate); m_change_difficulty_task_ptr->set_enable(need_navigate && is_raid); m_not_use_prts_task_ptr->set_enable(need_navigate); // 不使用代理指挥 - m_medicine_plugin_ptr->set_enable(use_sanity_potion); + m_medicine_task_ptr->set_enable(use_sanity_potion); m_formation_task_ptr->set_enable(with_formation); m_formation_task_ptr->set_select_formation(select_formation); diff --git a/src/MaaCore/Task/Interface/CopilotTask.h b/src/MaaCore/Task/Interface/CopilotTask.h index 265fd38967..3e33cf02f4 100644 --- a/src/MaaCore/Task/Interface/CopilotTask.h +++ b/src/MaaCore/Task/Interface/CopilotTask.h @@ -8,7 +8,6 @@ namespace asst class TaskFileReloadTask; class BattleProcessTask; class BattleFormationTask; -class MedicineCounterTaskPlugin; class ProcessTask; // 抄作业任务 @@ -28,7 +27,7 @@ private: std::shared_ptr m_task_file_reload_task_ptr = nullptr; std::shared_ptr m_navigate_task_ptr = nullptr; std::shared_ptr m_not_use_prts_task_ptr = nullptr; - std::shared_ptr m_medicine_plugin_ptr = nullptr; + std::shared_ptr m_medicine_task_ptr = nullptr; std::shared_ptr m_change_difficulty_task_ptr = nullptr; std::shared_ptr m_formation_task_ptr = nullptr; std::shared_ptr m_battle_task_ptr = nullptr;