From bdb07a5b4980411fca0624dee89add9dd0cc556a Mon Sep 17 00:00:00 2001 From: wangbing Date: Fri, 13 Sep 2024 23:39:23 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E9=87=87=E9=9B=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xyz/wbsite/jmacro/wjdr/MacroForWJDR.java | 3 ++ .../wjdr/task/Task_任务奖励领取.java | 38 ++++++++++++++++++- .../jmacro/wjdr/task/Task_自动采矿.java | 3 +- .../jmacro/wjdr/task/Task_自动野怪.java | 6 +++ 4 files changed, 48 insertions(+), 2 deletions(-) diff --git a/src/main/java/xyz/wbsite/jmacro/wjdr/MacroForWJDR.java b/src/main/java/xyz/wbsite/jmacro/wjdr/MacroForWJDR.java index c3bfdbf..d8c7396 100644 --- a/src/main/java/xyz/wbsite/jmacro/wjdr/MacroForWJDR.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/MacroForWJDR.java @@ -100,6 +100,9 @@ public class MacroForWJDR extends JMacro { // 避难者 new Task_收留避难者(this, focusRect).run(); + // 自动野怪 + new Task_自动野怪(this, focusRect).run(); + // 自动练兵 new Task_自动练兵(this, focusRect).run(); diff --git a/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_任务奖励领取.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_任务奖励领取.java index 83968a6..a7ee7e0 100644 --- a/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_任务奖励领取.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_任务奖励领取.java @@ -60,7 +60,7 @@ public class Task_任务奖励领取 extends BaseTask { @Override public void task(JMacro macro, ViewRect viewRect) { Logger.info("检测任务奖励"); - boolean hasColor = macro.hasColor(macro.of(38, 752, 58, 764), numColor); + boolean hasColor = macro.hasColor(macro.of(38,751,56,765), numColor); if (!hasColor) { Logger.info("无任务奖励,跳过"); return; @@ -132,6 +132,42 @@ public class Task_任务奖励领取 extends BaseTask { } while (领取 != null); } + Logger.info("检测成长任务2"); + boolean 成长任务2 = macro.hasColor(macro.of(241,845,257,860), numColor); + if (成长任务2) { + Logger.info("领取成长任务"); + macro.mouseLeftClick(macro.of(241,845,257,860)); + macro.delay(500); + ViewRect 领取; + do { + 领取 = macro.matchLegend("任务奖励_领取按钮", 0.9); + if (领取 != null) { + macro.mouseLeftClick(领取); + macro.delay(1000); + } + } while (领取 != null); + } + + Logger.info("检测每日任务2"); + boolean 每日任务2 = macro.hasColor(macro.of(414,845,430,859), numColor); + if (每日任务2) { + Logger.info("领取每日任务"); + macro.mouseLeftClick(macro.of(414,845,430,859)); + macro.delay(500); + ViewRect 领取; + do { + 领取 = macro.matchLegend("任务奖励_领取按钮", 0.9); + if (领取 != null) { + macro.mouseLeftClick(领取); + ViewRect 任务奖励_点击退出 = macro.waitAndMatchLegend("任务奖励_点击退出", 0.5, 2); + if (任务奖励_点击退出 != null) { + macro.mouseLeftClick(任务奖励_点击退出); + macro.delay(500); + } + } + } while (领取 != null); + } + ViewRect legend = macro.matchLegend("任务奖励_关闭", 0.9); if (legend != null) { Logger.info("关闭任务奖励面板"); diff --git a/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动采矿.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动采矿.java index 1f378f1..8fd0329 100644 --- a/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动采矿.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动采矿.java @@ -35,7 +35,7 @@ public class Task_自动采矿 extends BaseTask { } Logger.info("选中野外"); - macro.mouseLeftClick(macro.of(245,200)); + macro.mouseLeftClick(macro.of(245, 200)); macro.delay(1000); ViewRect[] viewRects1 = macro.matchLegends(0.6D, @@ -80,6 +80,7 @@ public class Task_自动采矿 extends BaseTask { } Logger.info("关闭面板"); macro.mouseLeftClick(城镇_关闭面板); + macro.delay(1000); Logger.info("定位【野外】"); ViewRect 野外 = macro.matchLegend("野外", 0.99); diff --git a/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动野怪.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动野怪.java index 1042f53..33e8d84 100644 --- a/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动野怪.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动野怪.java @@ -294,6 +294,12 @@ public class Task_自动野怪 extends BaseTask { macro.matchLegendAndClick("野外_攻击平均配置", 0.9); macro.delay(1000); + boolean 体力不足 = macro.hasColor(macro.of(405, 899, 427, 915), "#f43b3b", "#4fa5fc", "#c83134", "#e63739", "#963342", "#f33b3b"); + if (体力不足) { + macro.matchLegendAndClick("自动野怪_返回",0.9); + return false; + } + ViewRect[] viewRects = macro.waitAndMatchLegends(0.9, "野外_攻击出征", "野外_资源无对队列"); if (viewRects[0] != null) { Logger.info("出征");