博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用Java做一个跳一跳辅助
阅读量:5286 次
发布时间:2019-06-14

本文共 3348 字,大约阅读时间需要 11 分钟。

Java跳一跳辅助

首先。。让大家看下效果:

由于是闲着没事写的。也懒得看OpenCV的API了。

要用到的工具如下:

adb+jdk

把adb添加到环境变量里就行。很简单。

全部代码如下。就这么多。。。

package A;import java.awt.Graphics;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import javax.imageio.ImageIO;import javax.swing.JFrame;public class JumpAndJump extends JFrame implements MouseListener,Runnable{    /**     *      */    public void Jump(int ms) {        try {            int a = (int) (Math.random() * 1000);            int b = (int) (Math.random() * 1000);            int c = (int) (Math.random() * 1000);            int d = (int) (Math.random() * 1000);            Runtime.getRuntime().exec("adb shell input swipe " + a + " " + b + " " + c + " " + d + " " + ms);        } catch (IOException e) {        }    }    public void getPNG() {        try {            Runtime.getRuntime().exec("adb shell screencap -p /sdcard/1.png");            Runtime.getRuntime().exec("adb pull /sdcard/1.png");        } catch (Exception e) {        }    }    public int X1 = 0;    public int X2 = 0;    public int Y1 = 0;    public int Y2 = 0;    public int sign = 0;    public int one = 0;    private static final long serialVersionUID = 1L;        public JumpAndJump(String title) {        super(title);        this.setSize(900, 900);        this.setLocation(600, 100);        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        this.setVisible(true);        this.setResizable(false);        this.addMouseListener(this);    }    @Override    public void mouseClicked(MouseEvent arg0) {    }    @Override    public void mouseEntered(MouseEvent e) {    }    @Override    public void mouseExited(MouseEvent e) {    }    @Override    public void mousePressed(MouseEvent e) {        System.out.println(e.getX()+"..."+e.getY());        if (e.getX() < 550) {            if (sign == 0) {                X1 = e.getX();                Y1 = e.getY();                sign++;            } else {                sign = 0;                X2 = e.getX();                Y2 = e.getY();                int res = (X2 - X1) * (X2 - X1) + (Y2 - Y1) * (Y2 - Y1);                double b = Math.sqrt(res);                System.out.println(b);                Jump((int) b * 3);            }        }else if(e.getX()>690&&e.getX()<760&&e.getY()>60&&e.getY()<90) {                        System.out.println("获取图片");            this.repaint();        }    }    @Override    public void mouseReleased(MouseEvent e) {    }    @Override    public void paint(Graphics g) {        BufferedImage image = null;        try {            File file = new File("1.png");            image = ImageIO.read(file);        } catch (Exception e) {        }        if (image != null) {            g.drawImage(image, 10, 10, image.getWidth(this) / 2, image.getHeight(this) / 2, null);        }        g.drawString("code by 秃桔子\r\n QQ:1243137612", 700, 100);    }    public static void main(String[] args) {        JumpAndJump w = new JumpAndJump("AAA");        w.run();    }    @Override    public void run() {        while(true) {            getPNG();            this.repaint();            try {                Thread.sleep(500);            } catch (InterruptedException e) {                            }        }    }    }

 

转载于:https://www.cnblogs.com/godoforange/p/10995196.html

你可能感兴趣的文章
Object流
查看>>
Windows Phone开发(8):关于导航的小技巧 转:http://blog.csdn.net/tcjiaan/article/details/7285062...
查看>>
Ajax学习笔记1之第一个Ajax应用程序
查看>>
css3新单位vw、vh、vmin、vmax的使用详解(转载)
查看>>
软件测试培训第30天
查看>>
centos7 关闭防火墙
查看>>
04-jQuery的属性操作
查看>>
response实现文件下载
查看>>
【WP7】页面之间数据交互
查看>>
C++中的unique函数
查看>>
小白学数据分析----->流失分析设计
查看>>
FontAwesome 奥森图标的学习
查看>>
request response cookie session
查看>>
NMON记录服务器各项性能数据
查看>>
未找到arm-linux-gcc解决办法
查看>>
统计Xcode项目代码行数
查看>>
认识 service worker
查看>>
第五次团队作业:项目展示
查看>>
C#面向对象(二):封装和继承
查看>>
range()函数
查看>>