perf: 自动战斗BattleStartPre任务合并理智药检测

This commit is contained in:
status102
2025-02-11 14:16:28 +08:00
parent 043749e6d6
commit 5da64cf4da
3 changed files with 10 additions and 10 deletions

View File

@@ -4977,7 +4977,8 @@
"text": ["开始行动", "开始突袭", "开始试炼", "开始测试"],
"roi": [1000, 600, 280, 120],
"action": "ClickSelf",
"postDelay": 1000
"postDelay": 1000,
"next": ["BattleStartPre@UseMedicine", "BattleStartPre@BattleQuickFormation"]
},
"BattleStartPre@UseMedicine": {
"doc": "绑定MedicineCounter来使用理智药",

View File

@@ -35,14 +35,12 @@ asst::CopilotTask::CopilotTask(const AsstCallback& callback, Assistant* inst) :
m_subtasks.emplace_back(m_change_difficulty_task_ptr);
auto start_1_tp = std::make_shared<ProcessTask>(callback, inst, TaskType);
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<ProcessTask>(callback, inst, TaskType);
m_medicine_task_ptr->set_tasks({ "BattleStartPre@UseMedicine", "BattleStartPre@BattleQuickFormation" })
start_1_tp->set_tasks({ "BattleStartPre@BattleQuickFormation", "BattleStartPre" })
.set_retry_times(0)
.set_ignore_error(true);
m_medicine_task_ptr->register_plugin<MedicineCounterTaskPlugin>()->set_count(999999);
m_subtasks.emplace_back(m_medicine_task_ptr);
m_medicine_plugin_ptr = start_1_tp->register_plugin<MedicineCounterTaskPlugin>();
m_medicine_plugin_ptr->set_count(999999);
m_subtasks.emplace_back(start_1_tp);
m_subtasks.emplace_back(m_formation_task_ptr)->set_retry_times(0);
@@ -144,7 +142,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_task_ptr->set_enable(use_sanity_potion);
m_medicine_plugin_ptr->set_enable(use_sanity_potion);
// 关卡名含有"TR"的为教学关,不需要编队
m_formation_task_ptr->set_enable(with_formation && navigate_name.find("TR") == std::string::npos);

View File

@@ -8,6 +8,7 @@ namespace asst
class TaskFileReloadTask;
class BattleProcessTask;
class BattleFormationTask;
class MedicineCounterTaskPlugin;
class ProcessTask;
// 抄作业任务
@@ -27,7 +28,7 @@ private:
std::shared_ptr<TaskFileReloadTask> m_task_file_reload_task_ptr = nullptr;
std::shared_ptr<ProcessTask> m_navigate_task_ptr = nullptr;
std::shared_ptr<ProcessTask> m_not_use_prts_task_ptr = nullptr;
std::shared_ptr<ProcessTask> m_medicine_task_ptr = nullptr;
std::shared_ptr<MedicineCounterTaskPlugin> m_medicine_plugin_ptr = nullptr;
std::shared_ptr<ProcessTask> m_change_difficulty_task_ptr = nullptr;
std::shared_ptr<BattleFormationTask> m_formation_task_ptr = nullptr;
std::shared_ptr<BattleProcessTask> m_battle_task_ptr = nullptr;