From 54ddca80dfb284a846055d3809da7e0e5edd8a1e Mon Sep 17 00:00:00 2001 From: MistEO Date: Fri, 30 Sep 2022 22:48:06 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=B8=BA=E5=9F=BA=E5=BB=BA=E6=B8=85?= =?UTF-8?q?=E7=A9=BA=E6=8C=89=E9=92=AE=E6=B7=BB=E5=8A=A0=E8=AF=86=E5=88=AB?= =?UTF-8?q?=E9=87=8D=E8=AF=95=E6=9C=BA=E5=88=B6=EF=BC=8C=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E5=B9=B2=E5=91=98=E6=B8=85=E7=A9=BA=E5=A4=B1=E8=B4=A5=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E7=9A=84=E6=8D=A2=E7=8F=AD=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/1940 fix https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/1495 --- resource/tasks.json | 14 ++++----- resource/template/InfrastClearButton.png | Bin 0 -> 18011 bytes .../Task/Sub/InfrastAbstractTask.cpp | 29 ++++++++++++++++-- 3 files changed, 34 insertions(+), 9 deletions(-) create mode 100644 resource/template/InfrastClearButton.png diff --git a/resource/tasks.json b/resource/tasks.json index c7af491b17..b58c816678 100644 --- a/resource/tasks.json +++ b/resource/tasks.json @@ -5024,13 +5024,13 @@ "rearDelay": 1000 }, "InfrastClearButton": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 430, - 655, - 150, - 40 + "action": "ClickSelf", + "cache": false, + "roi": [ + 370, + 592, + 275, + 128 ], "rearDelay": 1000 }, diff --git a/resource/template/InfrastClearButton.png b/resource/template/InfrastClearButton.png new file mode 100644 index 0000000000000000000000000000000000000000..de9153641ff0ac5b8b21cfb003bfc828ba1565f7 GIT binary patch literal 18011 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 literal 0 HcmV?d00001 diff --git a/src/MeoAssistant/Task/Sub/InfrastAbstractTask.cpp b/src/MeoAssistant/Task/Sub/InfrastAbstractTask.cpp index 0375e6d370..e03fafb0d9 100644 --- a/src/MeoAssistant/Task/Sub/InfrastAbstractTask.cpp +++ b/src/MeoAssistant/Task/Sub/InfrastAbstractTask.cpp @@ -354,8 +354,33 @@ bool asst::InfrastAbstractTask::click_clear_button() { LogTraceFunction; - ProcessTask task(*this, { "InfrastClearButton" }); - return task.run(); + for (int i = 0; i != 5; ++i) { + if (need_exit()) { + return false; + } + bool ret = ProcessTask(*this, { "InfrastClearButton" }).run(); + // 有可能点快了,清空按钮刚刚出来,实际点上去还不生效,就点了 + // 所以多识别一次,如果没清掉就再清一下 + if (ret) { + InfrastOperImageAnalyzer analyzer(m_ctrler->get_image()); + analyzer.set_to_be_calced(InfrastOperImageAnalyzer::ToBeCalced::Smiley | + InfrastOperImageAnalyzer::ToBeCalced::Selected); + if (!analyzer.analyze()) { + return false; + } + size_t selected_count = + ranges::count_if(analyzer.get_result(), [](const infrast::Oper& info) { return info.selected; }); + Log.info(__FUNCTION__, "after clear, selected_count = ", selected_count); + if (selected_count == 0) { + break; + } + } + else { + Log.error(__FUNCTION__, "clear failed"); + return false; + } + } + return true; } bool asst::InfrastAbstractTask::click_sort_by_trust_button()