在视频游戏中与Java作弊......:D

时间:2011-01-30 22:00:59

标签: java

嗨伙计们 我想在我的电脑上赢得一个硬视频游戏。规则很简单:当屏幕全部变白时,我必须立即按空格键。我必须做200次:/
也许一个简单的Java应用程序可以帮助我:P像这样:

new Thread(){

   public void run(){
      while(true){
         Color c = getPredominantColorOfTheScreen();
         if (c.equals(Color.white)){
            pressTheSpacebar();
         }
         sleep(10);
      }
   }

}.start();

有人可以帮我写这两个功能吗? :)
游戏是全屏的

4 个答案:

答案 0 :(得分:2)

您所在的课程是robot class。在关键新闻方面,keyPress(KeyEvent.VK_SPACE)将会这样做。就屏幕颜色而言,机器人将获得单个像素的颜色而不是屏幕的主色(使用getPixelColor()方法。但是,如果整个屏幕变为这种颜色(或仅仅是屏幕)你实际上只需要检查1个像素。

答案 1 :(得分:1)

查看课程java.awt.Robot - 它包含您应该可以用于此目的的方法。我建议不要计算“屏幕的主要颜色”,这可能会相当慢,你只需看一下中间某个地方的一个小部分的捕捉,以及它是否都是白色的。

答案 2 :(得分:1)

您需要查看Java.awt.Robot类来执行这两项操作。

createScreenCapture()功能将截取屏幕截图。 然后,您需要使用keyPress()功能按空格键。

除此之外,您可能需要在按空格键时切换焦点对应的应用程序,您可以使用alt-tab按键组合或移动鼠标指针来执行此操作在游戏窗口上点击那里。或者,如果这些方法都不起作用,请将鼠标指针移动到任务栏/停靠栏上,无论平台使用什么,并在那里触发点击。

请查看此网页以获取更多帮助。

http://download.oracle.com/javase/1.5.0/docs/api/java/awt/Robot.html

答案 3 :(得分:0)

我知道无法使用java访问视频内存而不使用本机函数。 也许你可以看看 Jogl ,但我担心这甚至不允许你访问另一个应用程序的视频内存。 将键注入键盘缓冲区需要使用SendInputkeybd_event等本机函数。