From c1f4e7f33eddd3fe26ae71951263de096ab9027f Mon Sep 17 00:00:00 2001 From: MistEO Date: Fri, 29 Jul 2022 22:40:15 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=B0=9D=E8=AF=95=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E8=82=89=E9=B8=BD=E8=B4=AD=E4=B9=B0=E6=94=B6=E8=97=8F=E5=93=81?= =?UTF-8?q?=E5=B9=B2=E5=91=98=E6=97=B6=E5=8D=A1=E4=BD=8F=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/1364 --- src/MeoAssistant/RoguelikeShoppingTaskPlugin.cpp | 11 ++++++++++- src/MeoAssistant/RoguelikeTask.cpp | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/MeoAssistant/RoguelikeShoppingTaskPlugin.cpp b/src/MeoAssistant/RoguelikeShoppingTaskPlugin.cpp index 9984156882..556aa00960 100644 --- a/src/MeoAssistant/RoguelikeShoppingTaskPlugin.cpp +++ b/src/MeoAssistant/RoguelikeShoppingTaskPlugin.cpp @@ -23,6 +23,8 @@ bool asst::RoguelikeShoppingTaskPlugin::verify(AsstMsg msg, const json::value& d bool asst::RoguelikeShoppingTaskPlugin::_run() { + LogTraceFunction; + OcrWithFlagTemplImageAnalyzer analyzer; analyzer.set_task_info("Roguelike1TraderShopping", "Roguelike1TraderShoppingOcr"); @@ -34,6 +36,10 @@ bool asst::RoguelikeShoppingTaskPlugin::_run() const auto& order_goods_list = Resrc.roguelike_shopping().get_goods(); for (const auto& goods : order_goods_list) { + if (need_exit()) { + return false; + } + if (goods.restriction != BattleRole::Unknown) { // TODO continue; @@ -47,7 +53,10 @@ bool asst::RoguelikeShoppingTaskPlugin::_run() } Log.info("Ready to buy", goods.name); m_ctrler->click(find_it->rect); - bool confirmed = ProcessTask(*this, { "Roguelike1TraderShoppingConfirm" }) + bool confirmed = ProcessTask(*this, { "Roguelike1TraderShoppingConfirm", "Roguelike1ChooseOperFlag" }) + .set_times_limit("Roguelike1TraderRandomShopping", 0) + .set_times_limit("Roguelike1StageTraderLeave", 0) + .set_times_limit("Roguelike1ExitThenAbandon", 0) .set_retry_times(5) .run(); diff --git a/src/MeoAssistant/RoguelikeTask.cpp b/src/MeoAssistant/RoguelikeTask.cpp index 3236c2c709..0acdfd8b45 100644 --- a/src/MeoAssistant/RoguelikeTask.cpp +++ b/src/MeoAssistant/RoguelikeTask.cpp @@ -21,7 +21,7 @@ asst::RoguelikeTask::RoguelikeTask(const AsstCallback& callback, void* callback_ m_roguelike_task_ptr->regiseter_plugin(); m_roguelike_task_ptr->regiseter_plugin(); - m_roguelike_task_ptr->regiseter_plugin(); + m_roguelike_task_ptr->regiseter_plugin()->set_retry_times(0); m_custom_start_task_ptr = m_roguelike_task_ptr->regiseter_plugin(); m_battle_task_ptr = m_roguelike_task_ptr->regiseter_plugin();