4
Я создал класс, который принимает ввод клавиатуры lwjgl и превращает его в список строк, которые являются всеми клавишами, которые в данный момент нажаты.Java lwjgl handler
public class KeyHandler {
ArrayList<String> keysPressed;
public KeyHandler() {
keysPressed = new ArrayList<String>();
}
public void checkKeys() {
while (Keyboard.next()) {
String keystring = Keyboard.getKeyName(Keyboard.getEventKey());
if (!keysPressed.contains(keystring)) {
keysPressed.add(keystring); // key has been pressed
} else {
keysPressed.remove(keystring); // key has been released
}
}
}
public void runKeys() {
if (keysPressed.size() > 0) {
for (String str : keysPressed) {
System.out.println("Key handler got key:" + str);
// run class for key
}
} else {
// no keys have been pressed
}
}
}
Я пытаюсь выяснить способ, так что «runKeys» будет работать класс с таким именем, например.
W.java
public class W {
public static void exc() {
player.moveZ(10);
}
}
Причиной этого является, чтобы избежать необходимости проходить через 50+, если заявления для проверки ввода
Немного неудобно настраивает каждый ключ, но он действительно работает, спасибо :) – Ctrl
Рад знать, что это помогло. Удачи. –