mirror of
https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
synced 2026-07-19 10:32:19 +08:00
fix: 移除find_plugin
[skip changelog]
This commit is contained in:
@@ -45,7 +45,7 @@ asst::RoguelikeTask::RoguelikeTask(const AsstCallback& callback, Assistant* inst
|
||||
// ------------------ 通用插件 ------------------
|
||||
m_roguelike_task_ptr->register_plugin<ScreenshotTaskPlugin>();
|
||||
m_roguelike_task_ptr->register_plugin<RoguelikeFormationTaskPlugin>(m_config_ptr);
|
||||
m_roguelike_task_ptr->register_plugin<RoguelikeControlTaskPlugin>(m_config_ptr);
|
||||
m_control_ptr = m_roguelike_task_ptr->register_plugin<RoguelikeControlTaskPlugin>(m_config_ptr);
|
||||
m_roguelike_task_ptr->register_plugin<RoguelikeResetTaskPlugin>(m_config_ptr);
|
||||
m_roguelike_task_ptr->register_plugin<RoguelikeSettlementTaskPlugin>(m_config_ptr);
|
||||
m_invest_ptr = m_roguelike_task_ptr->register_plugin<RoguelikeInvestTaskPlugin>(m_config_ptr);
|
||||
@@ -213,6 +213,8 @@ bool asst::RoguelikeTask::set_params(const json::value& params)
|
||||
m_foldartal_use_ptr->set_enable(theme == RoguelikeTheme::Sami);
|
||||
m_cp_ptr->set_enable(theme == RoguelikeTheme::Sami);
|
||||
|
||||
m_invest_ptr->set_control_plugin_ptr(m_control_ptr);
|
||||
|
||||
const auto& ptr = m_custom_ptr;
|
||||
ptr->set_custom(RoguelikeCustomType::Squad, params.get("squad", "")); // 开局分队
|
||||
ptr->set_custom(RoguelikeCustomType::Roles, params.get("roles", "")); // 开局职业组
|
||||
|
||||
@@ -5,6 +5,7 @@ namespace asst
|
||||
{
|
||||
class ProcessTask;
|
||||
class RoguelikeConfig;
|
||||
class RoguelikeControlTaskPlugin;
|
||||
class RoguelikeInvestTaskPlugin;
|
||||
class RoguelikeDebugTaskPlugin;
|
||||
class RoguelikeCustomStartTaskPlugin;
|
||||
@@ -26,6 +27,7 @@ namespace asst
|
||||
private:
|
||||
std::shared_ptr<ProcessTask> m_roguelike_task_ptr = nullptr;
|
||||
std::shared_ptr<RoguelikeConfig> m_config_ptr = nullptr;
|
||||
std::shared_ptr<RoguelikeControlTaskPlugin> m_control_ptr = nullptr;
|
||||
std::shared_ptr<RoguelikeInvestTaskPlugin> m_invest_ptr = nullptr;
|
||||
std::shared_ptr<RoguelikeDebugTaskPlugin> m_debug_ptr = nullptr;
|
||||
std::shared_ptr<RoguelikeCustomStartTaskPlugin> m_custom_ptr = nullptr;
|
||||
|
||||
@@ -161,9 +161,8 @@ bool asst::RoguelikeInvestTaskPlugin::is_investment_error(const cv::Mat& image)
|
||||
|
||||
void asst::RoguelikeInvestTaskPlugin::stop_roguelike() const
|
||||
{
|
||||
auto control_ptr = m_task_ptr->find_plugin<RoguelikeControlTaskPlugin>();
|
||||
if (control_ptr) {
|
||||
control_ptr->exit_then_stop(true);
|
||||
if (m_roguelike_task_ptr) {
|
||||
m_roguelike_task_ptr->exit_then_stop(true);
|
||||
}
|
||||
m_task_ptr->set_enable(false);
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ public:
|
||||
virtual bool verify(AsstMsg msg, const json::value& details) const override;
|
||||
void set_invest_maximum(int value) { m_maximum = value; }
|
||||
void set_stop_when_full(bool value) { m_stop_when_full = value; }
|
||||
void set_control_plugin_ptr(const auto& ptr) { m_roguelike_task_ptr = ptr; }
|
||||
|
||||
private:
|
||||
virtual bool _run() override;
|
||||
@@ -23,5 +24,6 @@ private:
|
||||
int m_invest_count = 0;
|
||||
int m_maximum = 0;
|
||||
bool m_stop_when_full = false; // 存款满了就停止
|
||||
std::shared_ptr<RoguelikeControlTaskPlugin> m_roguelike_task_ptr = nullptr;
|
||||
};
|
||||
} // namespace asst
|
||||
|
||||
Reference in New Issue
Block a user