diff --git a/README.md b/README.md index 03608db..05b87ad 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,21 @@ -# starter-jmacro +# 简介 +JMacro使用Java Robot工具实现的自动化/脚本脚手架,屏幕找图,定位,模拟人操作鼠标、键盘等基本事件。 -java版按键精灵实现基础 \ No newline at end of file +#背景 + + + +###环境依赖 +jdk1.8 + +### 构建工具 +Maven 3+ + +### 依赖说明 +Hutool:一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率 + +##打包EXE可执行文件 +``` +maven package +``` +执行程序输出目录target \ No newline at end of file diff --git a/pom.xml b/pom.xml index b5edd2c..f319a28 100644 --- a/pom.xml +++ b/pom.xml @@ -2,12 +2,12 @@ 4.0.0 - com.example - starter-jmacro-wjdr - 0.0.1-SNAPSHOT + xyz.wbsite + jmacro + 0.1 jar - starter-jmacro-wjdr + jmacro project for jmacro @@ -82,6 +82,83 @@ ${java.version} + + + + com.zenjava + javafx-maven-plugin + 8.8.3 + + + xyz.wbsite.jmacro.JMainApplication + + ${project.artifactId} + + ${project.artifactId} + + ${project.artifactId}.jar + + ${project.version} + + + ${project.basedir}/src/main/resources/icon.ico + + + true + + true + + + + create-jfx-jar + package + + build-jar + + + + create-exe + package + + build-native + + + + + + + + maven-antrun-plugin + + + package + + run + + + + + + + + + + + diff --git a/src/main/java/com/example/jmacro/wjdr/JMacro.java b/src/main/java/xyz/wbsite/jmacro/JMacro.java similarity index 98% rename from src/main/java/com/example/jmacro/wjdr/JMacro.java rename to src/main/java/xyz/wbsite/jmacro/JMacro.java index a41a86b..ee0bb2b 100644 --- a/src/main/java/com/example/jmacro/wjdr/JMacro.java +++ b/src/main/java/xyz/wbsite/jmacro/JMacro.java @@ -1,15 +1,15 @@ -package com.example.jmacro.wjdr; +package xyz.wbsite.jmacro; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.RandomUtil; -import com.example.jmacro.wjdr.base.Legend; -import com.example.jmacro.wjdr.base.ViewColor; -import com.example.jmacro.wjdr.base.ViewPoint; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.ColorUtil; -import com.example.jmacro.wjdr.util.ImageUtil; -import com.example.jmacro.wjdr.util.Logger; -import com.example.jmacro.wjdr.util.TaskUtil; +import xyz.wbsite.jmacro.base.Legend; +import xyz.wbsite.jmacro.base.ViewColor; +import xyz.wbsite.jmacro.base.ViewPoint; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.ColorUtil; +import xyz.wbsite.jmacro.util.ImageUtil; +import xyz.wbsite.jmacro.util.Logger; +import xyz.wbsite.jmacro.util.TaskUtil; import java.awt.*; import java.awt.event.InputEvent; diff --git a/src/main/java/com/example/jmacro/wjdr/JMainApplication.java b/src/main/java/xyz/wbsite/jmacro/JMainApplication.java similarity index 91% rename from src/main/java/com/example/jmacro/wjdr/JMainApplication.java rename to src/main/java/xyz/wbsite/jmacro/JMainApplication.java index 05746f3..2d26658 100644 --- a/src/main/java/com/example/jmacro/wjdr/JMainApplication.java +++ b/src/main/java/xyz/wbsite/jmacro/JMainApplication.java @@ -1,10 +1,9 @@ -package com.example.jmacro.wjdr; +package xyz.wbsite.jmacro; -import com.example.jmacro.wjdr.base.Legend; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.ui.FXMLUtil; -import com.example.jmacro.wjdr.util.Logger; -import com.example.jmacro.wjdr.util.ResourceUtil; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.ui.FXMLUtil; +import xyz.wbsite.jmacro.util.Logger; +import xyz.wbsite.jmacro.util.ResourceUtil; import com.melloware.jintellitype.JIntellitype; import javafx.application.Application; import javafx.fxml.FXMLLoader; @@ -81,6 +80,7 @@ public class JMainApplication extends Application { } mouseLeftDoubleClick(电脑); ViewRect 关闭 = waitAndFindLegend(of("关闭"), 0.99, 10); + if (关闭 == null) { return; } diff --git a/src/main/java/com/example/jmacro/wjdr/JMainController.java b/src/main/java/xyz/wbsite/jmacro/JMainController.java similarity index 77% rename from src/main/java/com/example/jmacro/wjdr/JMainController.java rename to src/main/java/xyz/wbsite/jmacro/JMainController.java index 0b08844..e7aecbb 100644 --- a/src/main/java/com/example/jmacro/wjdr/JMainController.java +++ b/src/main/java/xyz/wbsite/jmacro/JMainController.java @@ -1,13 +1,12 @@ -package com.example.jmacro.wjdr; +package xyz.wbsite.jmacro; -import cn.hutool.core.thread.ThreadUtil; -import com.example.jmacro.wjdr.base.Legend; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.tool.PickLegend; -import com.example.jmacro.wjdr.tool.PickPoint; -import com.example.jmacro.wjdr.tool.PickRect; -import com.example.jmacro.wjdr.util.DialogUtil; -import com.example.jmacro.wjdr.util.TaskUtil; +import xyz.wbsite.jmacro.base.Legend; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.tool.Measure; +import xyz.wbsite.jmacro.tool.PickLegend; +import xyz.wbsite.jmacro.tool.PickPoint; +import xyz.wbsite.jmacro.tool.PickRect; +import xyz.wbsite.jmacro.util.DialogUtil; import javafx.fxml.FXML; import javafx.scene.control.Button; import javafx.scene.image.Image; @@ -87,6 +86,23 @@ public class JMainController { } } + /** + * 测量 + */ + @FXML + public void measure() { + ViewRect screen = JMainService.getInstance().getMacro().getFocusRect(); + if (screen == null) { + DialogUtil.alert("未定位到视口,请稍后再试!"); + return; + } + try { + new Measure(screen.getLeft(), screen.getTop()); + } catch (AWTException awtException) { + awtException.printStackTrace(); + } + } + /** * 运行服务 */ @@ -110,11 +126,12 @@ public class JMainController { /** * 预览 + * * @param image */ public void preview(Image image) { try { - if (!JMainService.getInstance().run){ + if (!JMainService.getInstance().run) { return; } semaphore.acquire(); diff --git a/src/main/java/com/example/jmacro/wjdr/JMainService.java b/src/main/java/xyz/wbsite/jmacro/JMainService.java similarity index 93% rename from src/main/java/com/example/jmacro/wjdr/JMainService.java rename to src/main/java/xyz/wbsite/jmacro/JMainService.java index 1265f14..f4b4c5b 100644 --- a/src/main/java/com/example/jmacro/wjdr/JMainService.java +++ b/src/main/java/xyz/wbsite/jmacro/JMainService.java @@ -1,10 +1,10 @@ -package com.example.jmacro.wjdr; +package xyz.wbsite.jmacro; import cn.hutool.core.thread.ThreadUtil; -import com.example.jmacro.wjdr.base.Legend; -import com.example.jmacro.wjdr.wjdr.MacroForWJDR; -import com.example.jmacro.wjdr.util.DialogUtil; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.base.Legend; +import xyz.wbsite.jmacro.wjdr.MacroForWJDR; +import xyz.wbsite.jmacro.util.DialogUtil; +import xyz.wbsite.jmacro.util.Logger; import java.io.File; diff --git a/src/main/java/com/example/jmacro/wjdr/JRoot.java b/src/main/java/xyz/wbsite/jmacro/JRoot.java similarity index 95% rename from src/main/java/com/example/jmacro/wjdr/JRoot.java rename to src/main/java/xyz/wbsite/jmacro/JRoot.java index d4f216f..c946b40 100644 --- a/src/main/java/com/example/jmacro/wjdr/JRoot.java +++ b/src/main/java/xyz/wbsite/jmacro/JRoot.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr; +package xyz.wbsite.jmacro; import java.awt.*; diff --git a/src/main/java/com/example/jmacro/wjdr/base/Legend.java b/src/main/java/xyz/wbsite/jmacro/base/Legend.java similarity index 94% rename from src/main/java/com/example/jmacro/wjdr/base/Legend.java rename to src/main/java/xyz/wbsite/jmacro/base/Legend.java index 6fab3b5..30d93b2 100644 --- a/src/main/java/com/example/jmacro/wjdr/base/Legend.java +++ b/src/main/java/xyz/wbsite/jmacro/base/Legend.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.base; +package xyz.wbsite.jmacro.base; import cn.hutool.cache.Cache; import cn.hutool.cache.CacheUtil; @@ -81,7 +81,7 @@ public class Legend { List files = FileUtil.loopFiles(defaultBase, pathname -> pathname.getName().startsWith(name)); if (files.size() == 0) { - throw new RuntimeException("Not found the legend of " + name); + throw new RuntimeException(defaultBase.getAbsolutePath() + " not found the legend of " + name); } File file = files.get(0); Legend newLegend = new Legend(); diff --git a/src/main/java/com/example/jmacro/wjdr/base/ViewColor.java b/src/main/java/xyz/wbsite/jmacro/base/ViewColor.java similarity index 95% rename from src/main/java/com/example/jmacro/wjdr/base/ViewColor.java rename to src/main/java/xyz/wbsite/jmacro/base/ViewColor.java index eb35136..30f8c4d 100644 --- a/src/main/java/com/example/jmacro/wjdr/base/ViewColor.java +++ b/src/main/java/xyz/wbsite/jmacro/base/ViewColor.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.base; +package xyz.wbsite.jmacro.base; import cn.hutool.core.util.StrUtil; diff --git a/src/main/java/com/example/jmacro/wjdr/base/ViewPoint.java b/src/main/java/xyz/wbsite/jmacro/base/ViewPoint.java similarity index 69% rename from src/main/java/com/example/jmacro/wjdr/base/ViewPoint.java rename to src/main/java/xyz/wbsite/jmacro/base/ViewPoint.java index 22988de..65c6dae 100644 --- a/src/main/java/com/example/jmacro/wjdr/base/ViewPoint.java +++ b/src/main/java/xyz/wbsite/jmacro/base/ViewPoint.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.base; +package xyz.wbsite.jmacro.base; /** * 可视坐标点 @@ -49,6 +49,18 @@ public class ViewPoint { this.y = y; } + public ViewPoint offset(int offsetX, int offsetY) { + return new ViewPoint(this.x + offsetX, this.y + offsetY); + } + + public ViewPoint offsetX(int offsetX) { + return new ViewPoint(this.x + offsetX, this.y); + } + + public ViewPoint offsetY(int offsetY) { + return new ViewPoint(this.x, this.y + offsetY); + } + @Override public String toString() { return "ViewPoint{" + diff --git a/src/main/java/com/example/jmacro/wjdr/base/ViewRect.java b/src/main/java/xyz/wbsite/jmacro/base/ViewRect.java similarity index 97% rename from src/main/java/com/example/jmacro/wjdr/base/ViewRect.java rename to src/main/java/xyz/wbsite/jmacro/base/ViewRect.java index 5f18f5b..75c3cb6 100644 --- a/src/main/java/com/example/jmacro/wjdr/base/ViewRect.java +++ b/src/main/java/xyz/wbsite/jmacro/base/ViewRect.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.base; +package xyz.wbsite.jmacro.base; /** * 视口区域 diff --git a/src/main/java/xyz/wbsite/jmacro/tool/Measure.java b/src/main/java/xyz/wbsite/jmacro/tool/Measure.java new file mode 100644 index 0000000..f66428f --- /dev/null +++ b/src/main/java/xyz/wbsite/jmacro/tool/Measure.java @@ -0,0 +1,216 @@ +package xyz.wbsite.jmacro.tool; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.log.StaticLog; +import xyz.wbsite.jmacro.util.Logger; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.awt.event.MouseMotionAdapter; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; +import java.awt.image.BufferedImage; + +/** + * 测量距离 + * + * @author wangbing + * @version 0.0.1 + * @since 1.8 + */ +public class Measure extends JFrame { + + /** + * 参照原点x坐标 + */ + private int originX; + /** + * 参照原点y坐标 + */ + private int originY; + + /** + * 全屏幕截图 + */ + private BufferedImage capture; + + /** + * 背景蒙层 + */ + private final Color mask = new Color(0, 0, 0, 0.2f); + + /** + * 聚焦框线条 + */ + private final Stroke focusWindow = new BasicStroke(1.0f); + + /** + * 屏幕截图区域起始坐标 + */ + private final Point start = new Point(0, 0); + + /** + * 屏幕截图区域结束坐标 + */ + private final Point end = new Point(0, 0); + + + /** + * 有参照原点的构造器 + * + * @param originX 原点x + * @param originY 原点y + * @throws AWTException + */ + public Measure(int originX, int originY) throws AWTException { + this(); + this.originX = originX; + this.originY = originY; + } + + public Measure() throws AWTException { + init(); + } + + private void init() throws AWTException { + setExtendedState(Frame.MAXIMIZED_BOTH); + setLocation(0, 0);//位置 + setUndecorated(true); + setAlwaysOnTop(true); + setBackground(mask); + setCursor(Cursor.getPredefinedCursor(Cursor.CROSSHAIR_CURSOR)); + + // 获取屏幕截图 + Robot robot = new Robot(); + Toolkit tk = Toolkit.getDefaultToolkit(); + capture = robot.createScreenCapture(new Rectangle(0, 0, tk.getScreenSize().width, tk.getScreenSize().height)); + + // 监听窗口关闭 + addWindowListener(new WindowAdapter() { + @Override + public void windowClosing(WindowEvent e) { + // 关闭应用时要释放资源 + dispose(); + System.exit(0);//0正常退出,1非正常退出 + } + }); + + addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + super.mousePressed(e); + start.setLocation(e.getX(), e.getY()); + end.setLocation(e.getX(), e.getY()); + Logger.info("起始坐标:{}", start); + repaint(); + } + + @Override + public void mouseReleased(MouseEvent e) { + super.mouseReleased(e); + end.setLocation(e.getX(), e.getY()); + + int left = getCaptureX(); + int top = getCaptureY(); + int right = getCaptureX() + getCaptureWidth(); + int bottom = getCaptureY() + getCaptureHeight(); + Logger.info("=========================测量距离========================="); + Logger.info("水平距离:{}px", getCaptureWidth()); + Logger.info("垂直距离:{}px", getCaptureHeight()); + + Logger.info("用法示例:"); + Logger.info("1、区域点击:mouseLeftClick(of({},{},{},{}));", left - originX, top - originY, right - originX, bottom - originY); + + Logger.info("=========================测量距离========================="); + close(); + } + }); + + addMouseMotionListener(new MouseMotionAdapter() { + @Override + public void mouseDragged(MouseEvent e) { + super.mouseDragged(e); + end.setLocation(e.getX(), e.getY()); + repaint(); + } + }); + + addKeyListener(new KeyAdapter() { + + @Override + public void keyReleased(KeyEvent e) { + switch (e.getKeyCode()) { + case KeyEvent.VK_ESCAPE: { + StaticLog.info("exit."); + close(); + } + break; + } + + } + }); + + setVisible(true); + } + + @Override + public void doLayout() { + super.doLayout(); + } + + @Override + public void paint(Graphics g) { + super.paint(g); + Graphics2D g2d = (Graphics2D) g; + g2d.drawImage(capture, 0, 0, capture.getWidth(), capture.getHeight(), this); + + // 在背景图上加个蒙层 + g2d.setColor(mask); + g2d.fillRect(0, 0, capture.getWidth(), capture.getHeight()); + + int w = getCaptureWidth(); + int h = getCaptureHeight(); + if (w > 0 && h > 0) { + g2d.setStroke(focusWindow); + g2d.setColor(Color.green); + g2d.drawRect(getCaptureX(), getCaptureY(), w, h); + + g2d.drawString(StrUtil.format("P({},{})", getCaptureX(), getCaptureY()), getCaptureX() + 5, getCaptureY() + 15); + g2d.drawString(StrUtil.format("P({},{})", getCaptureX() + w, getCaptureY() + h), getCaptureX() + w + 5, getCaptureY() + h + 15); + + g2d.drawString(StrUtil.format("{}", w / 2), getCaptureX() + w / 2, getCaptureY() + h - 5); + int right = (int) Math.max(start.getX(), end.getX()); + + if (right < capture.getWidth() - 30) { + g2d.drawString(StrUtil.format("{}", h / 2), getCaptureX() + w + 5, getCaptureY() + h / 2); + } else { + g2d.drawString(StrUtil.format("{}", h / 2), getCaptureX() + w + 5 - 30, getCaptureY() + h / 2); + } + } + } + + public int getCaptureX() { + return (int) Math.min(start.getX(), end.getX()); + } + + public int getCaptureY() { + return (int) Math.min(start.getY(), end.getY()); + } + + public int getCaptureWidth() { + return (int) Math.abs(start.getX() - end.getX()); + } + + public int getCaptureHeight() { + return (int) Math.abs(start.getY() - end.getY()); + } + + public void close() { + setVisible(false); + dispose(); + } +} diff --git a/src/main/java/com/example/jmacro/wjdr/tool/PickLegend.java b/src/main/java/xyz/wbsite/jmacro/tool/PickLegend.java similarity index 94% rename from src/main/java/com/example/jmacro/wjdr/tool/PickLegend.java rename to src/main/java/xyz/wbsite/jmacro/tool/PickLegend.java index 4c62f69..ee432cb 100644 --- a/src/main/java/com/example/jmacro/wjdr/tool/PickLegend.java +++ b/src/main/java/xyz/wbsite/jmacro/tool/PickLegend.java @@ -1,12 +1,12 @@ -package com.example.jmacro.wjdr.tool; +package xyz.wbsite.jmacro.tool; import cn.hutool.core.img.ImgUtil; import cn.hutool.core.io.FileUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.log.StaticLog; -import com.example.jmacro.wjdr.base.Legend; -import com.example.jmacro.wjdr.util.DialogUtil; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.base.Legend; +import xyz.wbsite.jmacro.util.DialogUtil; +import xyz.wbsite.jmacro.util.Logger; import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; @@ -252,15 +252,4 @@ public class PickLegend extends JFrame { setVisible(false); dispose(); } - - /** - * 工具入口 - * - * @param args - * @throws AWTException - */ - public static void main(String[] args) throws AWTException { - // 运行坐标图例截图工具 - new PickLegend(5, 5, new File("legend")); - } } diff --git a/src/main/java/com/example/jmacro/wjdr/tool/PickPoint.java b/src/main/java/xyz/wbsite/jmacro/tool/PickPoint.java similarity index 94% rename from src/main/java/com/example/jmacro/wjdr/tool/PickPoint.java rename to src/main/java/xyz/wbsite/jmacro/tool/PickPoint.java index 854536c..ff96952 100644 --- a/src/main/java/com/example/jmacro/wjdr/tool/PickPoint.java +++ b/src/main/java/xyz/wbsite/jmacro/tool/PickPoint.java @@ -1,8 +1,8 @@ -package com.example.jmacro.wjdr.tool; +package xyz.wbsite.jmacro.tool; import cn.hutool.core.util.StrUtil; import cn.hutool.log.StaticLog; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.util.Logger; import javax.swing.*; import java.awt.*; @@ -168,15 +168,4 @@ public class PickPoint extends JFrame { setVisible(false); dispose(); } - - /** - * 工具入口 - * - * @param args - * @throws AWTException - */ - public static void main(String[] args) throws AWTException { - // 运行坐标图例截图工具 - new PickPoint(5, 5); - } } diff --git a/src/main/java/com/example/jmacro/wjdr/tool/PickRect.java b/src/main/java/xyz/wbsite/jmacro/tool/PickRect.java similarity index 94% rename from src/main/java/com/example/jmacro/wjdr/tool/PickRect.java rename to src/main/java/xyz/wbsite/jmacro/tool/PickRect.java index 67885ae..ca2b59e 100644 --- a/src/main/java/com/example/jmacro/wjdr/tool/PickRect.java +++ b/src/main/java/xyz/wbsite/jmacro/tool/PickRect.java @@ -1,7 +1,7 @@ -package com.example.jmacro.wjdr.tool; +package xyz.wbsite.jmacro.tool; import cn.hutool.log.StaticLog; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.util.Logger; import javax.swing.*; import java.awt.*; @@ -201,15 +201,4 @@ public class PickRect extends JFrame { setVisible(false); dispose(); } - - /** - * 工具入口 - * - * @param args - * @throws AWTException - */ - public static void main(String[] args) throws AWTException { - // 运行坐标图例截图工具 - new PickRect(5, 5); - } } diff --git a/src/main/java/com/example/jmacro/wjdr/ui/FXMLUtil.java b/src/main/java/xyz/wbsite/jmacro/ui/FXMLUtil.java similarity index 87% rename from src/main/java/com/example/jmacro/wjdr/ui/FXMLUtil.java rename to src/main/java/xyz/wbsite/jmacro/ui/FXMLUtil.java index 0a5f3a3..1c733ae 100644 --- a/src/main/java/com/example/jmacro/wjdr/ui/FXMLUtil.java +++ b/src/main/java/xyz/wbsite/jmacro/ui/FXMLUtil.java @@ -1,6 +1,6 @@ -package com.example.jmacro.wjdr.ui; +package xyz.wbsite.jmacro.ui; -import com.example.jmacro.wjdr.util.ResourceUtil; +import xyz.wbsite.jmacro.util.ResourceUtil; import javafx.fxml.FXMLLoader; import java.io.IOException; diff --git a/src/main/java/com/example/jmacro/wjdr/util/ColorUtil.java b/src/main/java/xyz/wbsite/jmacro/util/ColorUtil.java similarity index 97% rename from src/main/java/com/example/jmacro/wjdr/util/ColorUtil.java rename to src/main/java/xyz/wbsite/jmacro/util/ColorUtil.java index 9036c20..4f91dc1 100644 --- a/src/main/java/com/example/jmacro/wjdr/util/ColorUtil.java +++ b/src/main/java/xyz/wbsite/jmacro/util/ColorUtil.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.util; +package xyz.wbsite.jmacro.util; /** * 颜色比对工具 diff --git a/src/main/java/com/example/jmacro/wjdr/util/DialogUtil.java b/src/main/java/xyz/wbsite/jmacro/util/DialogUtil.java similarity index 99% rename from src/main/java/com/example/jmacro/wjdr/util/DialogUtil.java rename to src/main/java/xyz/wbsite/jmacro/util/DialogUtil.java index be1e627..488af1c 100644 --- a/src/main/java/com/example/jmacro/wjdr/util/DialogUtil.java +++ b/src/main/java/xyz/wbsite/jmacro/util/DialogUtil.java @@ -1,7 +1,7 @@ -package com.example.jmacro.wjdr.util; +package xyz.wbsite.jmacro.util; import cn.hutool.core.util.ClassUtil; -import com.example.jmacro.wjdr.JMainApplication; +import xyz.wbsite.jmacro.JMainApplication; import javafx.animation.KeyFrame; import javafx.animation.Timeline; import javafx.application.Platform; diff --git a/src/main/java/com/example/jmacro/wjdr/util/ImageUtil.java b/src/main/java/xyz/wbsite/jmacro/util/ImageUtil.java similarity index 96% rename from src/main/java/com/example/jmacro/wjdr/util/ImageUtil.java rename to src/main/java/xyz/wbsite/jmacro/util/ImageUtil.java index 4b0a169..558c5ab 100644 --- a/src/main/java/com/example/jmacro/wjdr/util/ImageUtil.java +++ b/src/main/java/xyz/wbsite/jmacro/util/ImageUtil.java @@ -1,9 +1,9 @@ -package com.example.jmacro.wjdr.util; +package xyz.wbsite.jmacro.util; import cn.hutool.core.img.ImgUtil; -import com.example.jmacro.wjdr.JMainApplication; -import com.example.jmacro.wjdr.JMainService; -import com.example.jmacro.wjdr.base.ViewRect; +import xyz.wbsite.jmacro.JMainApplication; +import xyz.wbsite.jmacro.JMainService; +import xyz.wbsite.jmacro.base.ViewRect; import java.awt.*; import java.awt.image.BufferedImage; diff --git a/src/main/java/com/example/jmacro/wjdr/util/Logger.java b/src/main/java/xyz/wbsite/jmacro/util/Logger.java similarity index 95% rename from src/main/java/com/example/jmacro/wjdr/util/Logger.java rename to src/main/java/xyz/wbsite/jmacro/util/Logger.java index af7ae4f..d0a72f0 100644 --- a/src/main/java/com/example/jmacro/wjdr/util/Logger.java +++ b/src/main/java/xyz/wbsite/jmacro/util/Logger.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.util; +package xyz.wbsite.jmacro.util; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; diff --git a/src/main/java/com/example/jmacro/wjdr/util/ResourceUtil.java b/src/main/java/xyz/wbsite/jmacro/util/ResourceUtil.java similarity index 98% rename from src/main/java/com/example/jmacro/wjdr/util/ResourceUtil.java rename to src/main/java/xyz/wbsite/jmacro/util/ResourceUtil.java index b0a7965..baa1b94 100644 --- a/src/main/java/com/example/jmacro/wjdr/util/ResourceUtil.java +++ b/src/main/java/xyz/wbsite/jmacro/util/ResourceUtil.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.util; +package xyz.wbsite.jmacro.util; import cn.hutool.core.io.resource.ClassPathResource; import javafx.fxml.FXMLLoader; diff --git a/src/main/java/com/example/jmacro/wjdr/util/TaskUtil.java b/src/main/java/xyz/wbsite/jmacro/util/TaskUtil.java similarity index 99% rename from src/main/java/com/example/jmacro/wjdr/util/TaskUtil.java rename to src/main/java/xyz/wbsite/jmacro/util/TaskUtil.java index 1cf5795..af4b1af 100644 --- a/src/main/java/com/example/jmacro/wjdr/util/TaskUtil.java +++ b/src/main/java/xyz/wbsite/jmacro/util/TaskUtil.java @@ -1,4 +1,4 @@ -package com.example.jmacro.wjdr.util; +package xyz.wbsite.jmacro.util; import cn.hutool.core.lang.Assert; import cn.hutool.core.thread.ThreadUtil; diff --git a/src/main/java/com/example/jmacro/wjdr/wjdr/MacroForWJDR.java b/src/main/java/xyz/wbsite/jmacro/wjdr/MacroForWJDR.java similarity index 89% rename from src/main/java/com/example/jmacro/wjdr/wjdr/MacroForWJDR.java rename to src/main/java/xyz/wbsite/jmacro/wjdr/MacroForWJDR.java index 3fd56a1..6f0670c 100644 --- a/src/main/java/com/example/jmacro/wjdr/wjdr/MacroForWJDR.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/MacroForWJDR.java @@ -1,16 +1,19 @@ -package com.example.jmacro.wjdr.wjdr; +package xyz.wbsite.jmacro.wjdr; import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DateUtil; -import com.example.jmacro.wjdr.JMacro; -import com.example.jmacro.wjdr.JMainService; -import com.example.jmacro.wjdr.base.Legend; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.Logger; -import com.example.jmacro.wjdr.util.TaskUtil; -import com.example.jmacro.wjdr.wjdr.task.*; - -import java.util.concurrent.Callable; +import xyz.wbsite.jmacro.JMacro; +import xyz.wbsite.jmacro.JMainService; +import xyz.wbsite.jmacro.base.Legend; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.Logger; +import xyz.wbsite.jmacro.util.TaskUtil; +import xyz.wbsite.jmacro.wjdr.task.Task_探险领取; +import xyz.wbsite.jmacro.wjdr.task.Task_收留避难者; +import xyz.wbsite.jmacro.wjdr.task.Task_离线收益; +import xyz.wbsite.jmacro.wjdr.task.Task_自动采矿; +import xyz.wbsite.jmacro.wjdr.task.Task_采矿被攻击; + import java.util.concurrent.TimeUnit; /** diff --git a/src/main/java/com/example/jmacro/wjdr/wjdr/task/BaseTask.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/BaseTask.java similarity index 82% rename from src/main/java/com/example/jmacro/wjdr/wjdr/task/BaseTask.java rename to src/main/java/xyz/wbsite/jmacro/wjdr/task/BaseTask.java index 934c6a6..60e5064 100644 --- a/src/main/java/com/example/jmacro/wjdr/wjdr/task/BaseTask.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/BaseTask.java @@ -1,9 +1,9 @@ -package com.example.jmacro.wjdr.wjdr.task; +package xyz.wbsite.jmacro.wjdr.task; -import com.example.jmacro.wjdr.JMacro; -import com.example.jmacro.wjdr.JMainService; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.JMacro; +import xyz.wbsite.jmacro.JMainService; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.Logger; /** * 基础任务类 diff --git a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_探险领取.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_探险领取.java similarity index 93% rename from src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_探险领取.java rename to src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_探险领取.java index e3f9a04..677f300 100644 --- a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_探险领取.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_探险领取.java @@ -1,8 +1,8 @@ -package com.example.jmacro.wjdr.wjdr.task; +package xyz.wbsite.jmacro.wjdr.task; -import com.example.jmacro.wjdr.JMacro; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.JMacro; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.Logger; public class Task_探险领取 extends BaseTask { diff --git a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_收留避难者.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_收留避难者.java similarity index 84% rename from src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_收留避难者.java rename to src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_收留避难者.java index 713096d..c859281 100644 --- a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_收留避难者.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_收留避难者.java @@ -1,8 +1,8 @@ -package com.example.jmacro.wjdr.wjdr.task; +package xyz.wbsite.jmacro.wjdr.task; -import com.example.jmacro.wjdr.JMacro; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.JMacro; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.Logger; public class Task_收留避难者 extends BaseTask { diff --git a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_离线收益.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_离线收益.java similarity index 79% rename from src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_离线收益.java rename to src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_离线收益.java index ce6c92a..716866e 100644 --- a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_离线收益.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_离线收益.java @@ -1,8 +1,8 @@ -package com.example.jmacro.wjdr.wjdr.task; +package xyz.wbsite.jmacro.wjdr.task; -import com.example.jmacro.wjdr.JMacro; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.JMacro; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.Logger; public class Task_离线收益 extends BaseTask { diff --git a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_自动采矿.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动采矿.java similarity index 95% rename from src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_自动采矿.java rename to src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动采矿.java index 724deec..c8ed328 100644 --- a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_自动采矿.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_自动采矿.java @@ -1,11 +1,10 @@ -package com.example.jmacro.wjdr.wjdr.task; +package xyz.wbsite.jmacro.wjdr.task; import cn.hutool.json.JSONUtil; -import com.example.jmacro.wjdr.JMacro; -import com.example.jmacro.wjdr.base.ViewPoint; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.Logger; -import com.example.jmacro.wjdr.util.TaskUtil; +import xyz.wbsite.jmacro.JMacro; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.Logger; +import xyz.wbsite.jmacro.util.TaskUtil; public class Task_自动采矿 extends BaseTask { diff --git a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_采矿被攻击.java b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_采矿被攻击.java similarity index 61% rename from src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_采矿被攻击.java rename to src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_采矿被攻击.java index 990d1c5..540792a 100644 --- a/src/main/java/com/example/jmacro/wjdr/wjdr/task/Task_采矿被攻击.java +++ b/src/main/java/xyz/wbsite/jmacro/wjdr/task/Task_采矿被攻击.java @@ -1,8 +1,8 @@ -package com.example.jmacro.wjdr.wjdr.task; +package xyz.wbsite.jmacro.wjdr.task; -import com.example.jmacro.wjdr.JMacro; -import com.example.jmacro.wjdr.base.ViewRect; -import com.example.jmacro.wjdr.util.Logger; +import xyz.wbsite.jmacro.JMacro; +import xyz.wbsite.jmacro.base.ViewRect; +import xyz.wbsite.jmacro.util.Logger; public class Task_采矿被攻击 extends BaseTask { diff --git a/src/main/resources/icon.ico b/src/main/resources/icon.ico new file mode 100644 index 0000000..061bb64 Binary files /dev/null and b/src/main/resources/icon.ico differ diff --git a/src/main/resources/main.fxml b/src/main/resources/main.fxml index 45481f6..3258cbd 100644 --- a/src/main/resources/main.fxml +++ b/src/main/resources/main.fxml @@ -5,7 +5,7 @@ - + @@ -32,15 +32,20 @@ - - +