diff --git a/resource/tasks.json b/resource/tasks.json index c449dfbdf3..74a62acf28 100644 --- a/resource/tasks.json +++ b/resource/tasks.json @@ -11080,6 +11080,7 @@ 80, 80 ], + "postDelay": 1000, "specialParamsDoc": [ "结算界面Part1等待加载完的延迟" ], diff --git a/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.cpp b/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.cpp index 6c01600390..f9c0f8a40b 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.cpp +++ b/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.cpp @@ -41,12 +41,13 @@ bool asst::RoguelikeSettlementTaskPlugin::_run() ctrler()->click(rect); sleep(task->pre_delay); - cv::Mat image; - if (!wait_for_whole_page(image)) { + if (!wait_for_whole_page()) { Log.error(__FUNCTION__, "wait for whole page failed"); save_img(utils::path("debug") / utils::path("roguelike")); return true; } + sleep(task->post_delay); + auto image = ctrler()->get_image(); if (m_game_pass) { save_img(utils::path("achievement") / utils::path("roguelike")); @@ -112,8 +113,9 @@ bool asst::RoguelikeSettlementTaskPlugin::get_settlement_info(json::value& info, return true; } -bool asst::RoguelikeSettlementTaskPlugin::wait_for_whole_page(cv::Mat& image) +bool asst::RoguelikeSettlementTaskPlugin::wait_for_whole_page() { + cv::Mat image; Matcher matcher; matcher.set_task_info("RoguelikeSettlementConfirm"); do { diff --git a/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.h b/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.h index aebdde7c69..8d5931a018 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.h +++ b/src/MaaCore/Task/Roguelike/RoguelikeSettlementTaskPlugin.h @@ -13,7 +13,7 @@ namespace asst private: virtual bool _run() override; bool get_settlement_info(json::value& info, const cv::Mat& image); - bool wait_for_whole_page(cv::Mat& image); + bool wait_for_whole_page(); mutable bool m_game_pass = false; };