上传备份

wjdr
王兵 12 months ago
parent 5519b31087
commit 948a852437

@ -270,11 +270,11 @@ public abstract class JMacro {
robot.mouseMove(rect.getCenter().getX(), rect.getCenter().getY());
delayUnstable();
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
delay(100);
delay(60);
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
delay(100);
robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
delay(100);
delay(60);
robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
}
@ -796,16 +796,6 @@ public abstract class JMacro {
return viewRects;
}
/**
*
*
* @param legends
* @return
*/
public ViewRect[] matchLegends(double minSimilar, String... legends) {
return matchLegends(legends, minSimilar);
}
/**
*
*
@ -832,29 +822,6 @@ public abstract class JMacro {
}, seconds, TimeUnit.SECONDS);
}
/**
*
*
* @param minSimilar
* @param seconds
* @param legends
* @return
*/
public ViewRect[] waitAndMatchLegends(double minSimilar, long seconds, String... legends) {
return waitAndMatchLegends(legends, minSimilar, seconds);
}
/**
*
*
* @param minSimilar
* @param legends
* @return
*/
public ViewRect[] waitAndMatchLegends(double minSimilar, String... legends) {
return waitAndMatchLegends(legends, minSimilar, defaultTimeOut);
}
/**
*
*
@ -919,7 +886,23 @@ public abstract class JMacro {
}
/**
*
*
*
* @param color :#ffffff
*/
public boolean hasColorAndClick(int left, int top, int right, int bottom, String... color) {
ViewRect viewRect = of(left, top, right, bottom);
boolean hasColor = hasColor(viewRect, color);
if (hasColor) {
mouseLeftClick(viewRect);
return true;
} else {
return false;
}
}
/**
*
*
* @param color :#ffffff
* @return
@ -929,7 +912,24 @@ public abstract class JMacro {
}
/**
*
*
*
* @param rect
* @param color :#ffffff
* @return
*/
public boolean hasColorAndClick(ViewRect rect, String... color) {
boolean hasColor = hasColor(rect, color);
if (hasColor) {
mouseLeftClick(rect);
return true;
} else {
return false;
}
}
/**
*
*
* @param rect
* @param color :#ffffff
@ -1034,6 +1034,15 @@ public abstract class JMacro {
return new ViewColor(x + ox, y + oy, hexColor);
}
/**
*
*
* @return
*/
public String[] of(String... legends) {
return legends;
}
/**
*
*

@ -13,7 +13,7 @@ public class Task_仓库奖励领取 extends BaseTask {
@Override
public void task(JMacro macro, ViewRect viewRect) {
Logger.info("检测面板状态");
ViewRect[] viewRects = macro.matchLegends(0.6, "城镇_打开面板", "城镇_关闭面板");
ViewRect[] viewRects = macro.matchLegends(macro.of("城镇_打开面板", "城镇_关闭面板"), 0.6);
if (viewRects == null) {
Logger.info("检测面板状态检测失败");
return;

@ -20,7 +20,7 @@ public class Task_探险奖励领取 extends BaseTask {
Logger.info("进入探险页面,领取奖励");
macro.mouseLeftClick(macro.of(71, 877));
ViewRect[] viewRects = macro.waitAndMatchLegends(0.9, 5, "探险_领取", "探险_不可领取");
ViewRect[] viewRects = macro.waitAndMatchLegends(macro.of("探险_领取", "探险_不可领取"),0.9, 5);
if (viewRects[0] != null) { // 可以领取
Logger.info("定位领取按钮");
ViewRect _ = macro.waitAndMatchLegend("探险_领取", 0.8);

@ -19,7 +19,7 @@ public class Task_自动练兵 extends BaseTask {
private void (JMacro macro, ViewRect viewRect) {
Logger.info("检测面板状态");
ViewRect[] viewRects = macro.matchLegends(0.6, "城镇_打开面板", "城镇_关闭面板");
ViewRect[] viewRects = macro.matchLegends(macro.of("城镇_打开面板", "城镇_关闭面板"),0.6);
if (viewRects == null) {
Logger.info("检测面板状态检测失败");
return;
@ -39,7 +39,7 @@ public class Task_自动练兵 extends BaseTask {
macro.delay(1000);
Logger.info("检测盾兵");
ViewRect[] viewRects2 = macro.waitAndMatchLegends(0.8D, 3, "城镇_完成盾兵", "城镇_空闲盾兵");
ViewRect[] viewRects2 = macro.waitAndMatchLegends(macro.of("城镇_完成盾兵", "城镇_空闲盾兵"),0.8D, 3);
if (viewRects2 == null) {
Logger.info("检测失败");
return;
@ -114,7 +114,7 @@ public class Task_自动练兵 extends BaseTask {
private void (JMacro macro, ViewRect viewRect) {
Logger.info("检测面板状态");
ViewRect[] viewRects = macro.matchLegends(0.6, "城镇_打开面板", "城镇_关闭面板");
ViewRect[] viewRects = macro.matchLegends(macro.of("城镇_打开面板", "城镇_关闭面板"),0.6);
if (viewRects == null) {
Logger.info("检测面板状态检测失败");
return;
@ -134,7 +134,7 @@ public class Task_自动练兵 extends BaseTask {
macro.delay(1000);
Logger.info("检测矛兵");
ViewRect[] viewRects2 = macro.waitAndMatchLegends(0.8D, 3, "城镇_完成矛兵", "城镇_空闲矛兵");
ViewRect[] viewRects2 = macro.waitAndMatchLegends(macro.of("城镇_完成矛兵", "城镇_空闲矛兵"),0.8D, 3);
if (viewRects2 == null) {
Logger.info("检测失败");
return;
@ -209,7 +209,7 @@ public class Task_自动练兵 extends BaseTask {
private void (JMacro macro, ViewRect viewRect) {
Logger.info("检测面板状态");
ViewRect[] viewRects = macro.matchLegends(0.6, "城镇_打开面板", "城镇_关闭面板");
ViewRect[] viewRects = macro.matchLegends(macro.of("城镇_打开面板", "城镇_关闭面板"),0.6);
if (viewRects == null) {
Logger.info("检测面板状态检测失败");
return;
@ -229,7 +229,7 @@ public class Task_自动练兵 extends BaseTask {
macro.delay(1000);
Logger.info("检测矛兵");
ViewRect[] viewRects2 = macro.waitAndMatchLegends(0.8D, 3, "城镇_完成射手", "城镇_空闲射手");
ViewRect[] viewRects2 = macro.waitAndMatchLegends(macro.of("城镇_完成射手", "城镇_空闲射手"),0.8D, 3);
if (viewRects2 == null) {
Logger.info("检测失败");
return;

@ -22,7 +22,7 @@ public class Task_自动采矿 extends BaseTask {
public void task(JMacro macro, ViewRect viewRect) {
{
Logger.info("打开面板,读取行军状态");
ViewRect[] viewRects = macro.matchLegends(0.6, "城镇_打开面板", "城镇_关闭面板");
ViewRect[] viewRects = macro.matchLegends(macro.of("城镇_打开面板", "城镇_关闭面板"), 0.6);
if (viewRects[0] == null && viewRects[1] == null) {
Logger.error("检测面板状态失败");
return;
@ -38,15 +38,6 @@ public class Task_自动采矿 extends BaseTask {
macro.mouseLeftClick(macro.of(245, 200));
macro.delay(1000);
ViewRect[] viewRects1 = macro.matchLegends(0.6D,
"城镇_面板_空闲1",
"城镇_面板_空闲2",
"城镇_面板_空闲3",
"城镇_面板_空闲4",
"城镇_面板_空闲5",
"城镇_面板_空闲6"
);
if (null != macro.matchLegend("城镇_面板_空闲1", 0.6D)) {
1 = true;
Logger.info("队列1空闲");
@ -233,7 +224,7 @@ public class Task_自动采矿 extends BaseTask {
if ( != null) {
macro.mouseLeftClick();
ViewRect[] viewRects = macro.waitAndMatchLegends(0.9, "野外_资源出征", "野外_资源无对队列", "野外_资源无士兵");
ViewRect[] viewRects = macro.waitAndMatchLegends(macro.of("野外_资源出征", "野外_资源无对队列", "野外_资源无士兵"), 0.9);
if (viewRects[0] != null) {
Logger.info("出征");
macro.mouseLeftClick(viewRects[0]);

@ -22,7 +22,7 @@ public class Task_自动野怪 extends BaseTask {
public void task(JMacro macro, ViewRect viewRect) {
{
Logger.info("打开面板,读取行军状态");
ViewRect[] viewRects = macro.matchLegends(0.6, "城镇_打开面板", "城镇_关闭面板");
ViewRect[] viewRects = macro.matchLegends(macro.of("城镇_打开面板", "城镇_关闭面板"), 0.6);
if (viewRects[0] == null && viewRects[1] == null) {
Logger.error("检测面板状态失败");
return;
@ -38,15 +38,6 @@ public class Task_自动野怪 extends BaseTask {
macro.mouseLeftClick(macro.of(245, 200));
macro.delay(1000);
ViewRect[] viewRects1 = macro.matchLegends(0.6D,
"城镇_面板_空闲1",
"城镇_面板_空闲2",
"城镇_面板_空闲3",
"城镇_面板_空闲4",
"城镇_面板_空闲5",
"城镇_面板_空闲6"
);
if (null != macro.matchLegend("城镇_面板_空闲1", 0.6D)) {
1 = true;
Logger.info("队列1空闲");
@ -296,11 +287,11 @@ public class Task_自动野怪 extends BaseTask {
boolean = macro.hasColor(macro.of(405, 899, 427, 915), "#f43b3b", "#4fa5fc", "#c83134", "#e63739", "#963342", "#f33b3b");
if () {
macro.matchLegendAndClick("自动野怪_返回",0.9);
macro.matchLegendAndClick("自动野怪_返回", 0.9);
return false;
}
ViewRect[] viewRects = macro.waitAndMatchLegends(0.9, "野外_攻击出征", "野外_资源无对队列");
ViewRect[] viewRects = macro.waitAndMatchLegends(macro.of("野外_攻击出征", "野外_资源无对队列"), 0.9);
if (viewRects[0] != null) {
Logger.info("出征");
macro.mouseLeftClick(viewRects[0]);

Loading…
Cancel
Save

Powered by TurnKey Linux.