Java“别踩白方块”脚本代码
1 基本函数
使用awt包的Robot类,来完成获取像素点颜色,模拟按键,模拟鼠标等等。
import java.awt.*;
public class text {
public static void main(String[] args) throws AWTException {
Robot robot=new Robot();
}
.
.
1.1获取(a,b)点像素的颜色
Color pixelColor=robot.getPixelColor(a,b);
//输出三原色
System.out.println(pixelColor.getRed());
System.out.println(pixelColor.getBlue());
System.out.println(pixelColor.getGreen());
如果(a,b)点是白色,则输出
225
225
225
.
.
1.2 模拟鼠标
robot.mouseMove(a,b);
鼠标移动到(a,b)点
.
.
1.3 模拟键盘按键
70是D键对应的ascii码
robot.keyPress(70); //按下D键
robot.keyRelease(70); //松开D键
.
.
2 脚本
package tread;
import java.awt.*;
//游戏网站
//http://www.4399.com/flash/135255_3.htm
//屏幕分辨率 1920*1080 ,缩放100%(在设置里面可以看,笔记本默认应该是125%),谷歌浏览器(缩放100%),浏览器位于左1/2屏幕
//不同的屏幕获取像素点位置不同,程序可能无法运行
public class tread {
public static void main(String[] args) throws AWTException, InterruptedException {
//程序运行前延时1000ms
Thread.sleep(1000);
int a=1;
//无限while循环
while(a<=100){
//每次按键间隔100ms
Thread.sleep(100);
for(int i=1;i<=4;i++) {
Robot robot=new Robot();
//获取屏幕某一像素的颜色
Color pixelColor=robot.getPixelColor(100*i+100, 550);
//这里黑方块的三原色是(51,51,51)
if(pixelColor.getRed()==51) {
switch(i) {
//模拟按键:例如D键的ascii码是68
case 1:
robot.keyPress(68);
robot.keyRelease(68);
break;
case 2:
robot.keyPress(70);
robot.keyRelease(70);
break;
case 3:
robot.keyPress(74);
robot.keyRelease(74);
break;
case 4:
robot.keyPress(75);
robot.keyRelease(75);
break;
}
}
}
}
}
}