codeFlowType:
codeWrite
codeFlowLang:
Java
Скрипт AIM Bot на игру fight.io который будет определять местонахождение игроков на экране и нажимать по ним раз в секунду после нажатия на кнопку t и выключается при повторном нажатии выводя мышку в центр экрана
import java.awt.*;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
public class AimbBot implements KeyListener {
private Robot robot;
private boolean isRunning;
private boolean isAiming;
public AimbBot() {
try {
robot = new Robot();
isRunning = false;
isAiming = false;
// добавить слушатель на клавишу "t"
KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(keyEventDispatcher);
} catch (AWTException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
AimbBot aimbBot = new AimbBot();
aimbBot.start();
}
private void start() {
System.out.println("AIM Bot started!");
while (true) {
if (isRunning) {
if (isAiming) {
Point center = getScreenCenter();
robot.mouseMove(center.x, center.y);
}
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
private Point getScreenCenter() {
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screenSize = toolkit.getScreenSize();
int centerX = (int) screenSize.getWidth() / 2;
int centerY = (int) screenSize.getHeight() / 2;
return new Point(centerX, centerY);
}
private KeyEventDispatcher keyEventDispatcher = new KeyEventDispatcher() {
@Override
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyChar() == 't') {
if (e.getID() == KeyEvent.KEY_PRESSED) {
isRunning = !isRunning;
if (isRunning) {
isAiming = true;
} else {
isAiming = false;
}
if (isRunning) {
System.out.println("AIM Bot activated!");
} else {
System.out.println("AIM Bot deactivated!");
}
}
}
return false;
}
};
@Override
public void keyTyped(KeyEvent e) {}
@Override
public void keyPressed(KeyEvent e) {}
@Override
public void keyReleased(KeyEvent e) {}
}
Для успешной работы скрипта, необходимо настроить разрешение экрана в переменной resolution
на размеры вашего экрана.