Files
MaaAssistantArknights/src/MaaCore/Task/Interface/FightTask.h
status102 0666c4af1c feat(breaking change): 指定次数联动连战, 修复连战导致指定次数失效 (#12592)
* feat: 指定次数联动连战

* chore: Auto update by pre-commit hooks [skip changelog]

* perf: 适配指定次数

* fix: 移除不再使用的插件

* perf: 优化回调, 解耦

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 剩余理智使用 auto 连战

* fix: 最后一轮

* perf: 移除多余的理智识别

* chore(tools): ignore template

* perf: reduceTimes

* fix: 无药可用时, 升级恢复理智后不选择最高

* perf: 移除不再使用的task

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-05-07 23:43:02 +08:00

37 lines
1.1 KiB
C++

#pragma once
#include "Task/InterfaceTask.h"
#include <memory>
namespace asst
{
class FightTimesTaskPlugin;
class ProcessTask;
class StageDropsTaskPlugin;
class StageNavigationTask;
class DrGrandetTaskPlugin;
class SideStoryReopenTask;
class MedicineCounterTaskPlugin;
class FightTask final : public InterfaceTask
{
public:
inline static constexpr std::string_view TaskType = "Fight";
FightTask(const AsstCallback& callback, Assistant* inst);
virtual ~FightTask() override = default;
virtual bool set_params(const json::value& params) override;
protected:
std::shared_ptr<ProcessTask> m_start_up_task_ptr = nullptr;
std::shared_ptr<StageNavigationTask> m_stage_navigation_task_ptr = nullptr;
std::shared_ptr<ProcessTask> m_fight_task_ptr = nullptr;
std::shared_ptr<FightTimesTaskPlugin> m_fight_times_prt = nullptr;
std::shared_ptr<MedicineCounterTaskPlugin> m_medicine_plugin = nullptr;
std::shared_ptr<StageDropsTaskPlugin> m_stage_drops_plugin_ptr = nullptr;
std::shared_ptr<DrGrandetTaskPlugin> m_dr_grandet_task_plugin_ptr = nullptr;
std::shared_ptr<SideStoryReopenTask> m_sidestory_reopen_task_ptr = nullptr;
};
}