From b017e90b6bcf9ae08f8767cf7da264c6527ade68 Mon Sep 17 00:00:00 2001 From: uye <99072975+ABA2396@users.noreply.github.com> Date: Sat, 13 Sep 2025 11:16:03 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=BB=99=E8=87=AA=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E6=B7=BB=E5=8A=A0=20ScreenshotTaskPlugin=20?= =?UTF-8?q?=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/MaaCore/Task/Interface/CustomTask.cpp | 10 ++++++---- src/MaaCore/Task/Interface/CustomTask.h | 3 +++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/MaaCore/Task/Interface/CustomTask.cpp b/src/MaaCore/Task/Interface/CustomTask.cpp index 9957aeffc2..106a7a8a0b 100644 --- a/src/MaaCore/Task/Interface/CustomTask.cpp +++ b/src/MaaCore/Task/Interface/CustomTask.cpp @@ -1,12 +1,15 @@ #include "CustomTask.h" +#include "Task/Miscellaneous/ScreenshotTaskPlugin.h" #include "Task/ProcessTask.h" #include "Utils/Logger.hpp" asst::CustomTask::CustomTask(const AsstCallback& callback, Assistant* inst) : - InterfaceTask(callback, inst, TaskType) + InterfaceTask(callback, inst, TaskType), + m_custom_task_ptr(std::make_shared(callback, inst, TaskType)) { LogTraceFunction; + m_custom_task_ptr->register_plugin(); } bool asst::CustomTask::set_params(const json::value& params) @@ -27,8 +30,7 @@ bool asst::CustomTask::set_params(const json::value& params) } tasks.emplace_back(t.as_string()); } - auto custom_task_ptr = std::make_shared(m_callback, m_inst, TaskType); - custom_task_ptr->set_tasks(std::move(tasks)); - m_subtasks.emplace_back(std::move(custom_task_ptr)); + m_custom_task_ptr->set_tasks(std::move(tasks)); + m_subtasks.emplace_back(m_custom_task_ptr); return true; } diff --git a/src/MaaCore/Task/Interface/CustomTask.h b/src/MaaCore/Task/Interface/CustomTask.h index f9fb376f3b..7689b13e48 100644 --- a/src/MaaCore/Task/Interface/CustomTask.h +++ b/src/MaaCore/Task/Interface/CustomTask.h @@ -13,5 +13,8 @@ public: CustomTask(const AsstCallback& callback, Assistant* inst); virtual ~CustomTask() override = default; virtual bool set_params(const json::value& params) override; + +private: + std::shared_ptr m_custom_task_ptr = nullptr; }; }