2
我使用Java的「Robot」類編寫了以下「Processing」腳本,並且它在Windows和Mac上運行得非常好。但是,如果我打開一個應用程序,就像遊戲一樣,點擊不起作用!我試過的遊戲是「戰地4」。這裏是鼠標點擊代碼;在其他應用程序中發送關鍵幀
import processing.serial.*;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.InputEvent;
Serial myPort;
String val;
Robot mouseBot;
void setup(){
String portName=Serial.list()[0];
myPort = new Serial(this, portName, 9600);
try {
mouseBot = new Robot();
}
catch(AWTException e) {
e.printStackTrace();
}
}
void draw() {
if(myPort.available()>0)
{
if(myPort.read()==1)
{
mouseBot.mousePress(InputEvent.BUTTON1_MASK);
mouseBot.mouseRelease(InputEvent.BUTTON1_MASK);
}
}
}
正如我前面提到的,我可以在本地Windows或本地OSX中點擊,並且它的工作原理非常好。但在遊戲中,點擊不會註冊。是否有另一種方式發送鼠標命令,以便可以在其他應用程序中識別它?謝謝!
Carpetfizz
大多數遊戲要麼天真地阻止這種行爲,或者它不執行足夠低的遊戲識別它的操作系統API – MadProgrammer
非常感謝,我只是在另一個遊戲(Arma III)嘗試它,它運行良好。你介意發佈這個答案,以便我可以接受嗎?謝謝! – Carpetfizz