Я создаю игру «Змея» и реализовал класс KeyListener, который слушает, когда пользователь нажимает клавиши со стрелками или клавиши WASD.
В Snake, когда вы нажимаете клавишу движения, змея продолжит двигаться, если вы просто нажмете клавишу движения один раз, и пойдет в другом направлении только после того, как вы введете другую команду движения. Однако в моей программе мне приходится удерживать клавишу, чтобы змея двигалась, я не могу просто нажать ее один раз. Как сделать так, чтобы для перемещения змеи достаточно было нажать клавишу один раз?
Кроме того, клавиши WASD работают иначе, чем клавиши со стрелками. Когда я нажимаю клавишу WASD, змея перемещается только на один блок, а затем останавливается, в отличие от клавиш со стрелками, где змея движется, пока я удерживаю клавиши со стрелками. Как заставить клавиши WASD работать так же, как клавиши со стрелками?
Вот код:
public void keyTyped(KeyEvent e) {
}
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_LEFT || e.getKeyCode() == KeyEvent.VK_A) {
out.println("Left key pressed");
// handle snake left movement
} else if (e.getKeyCode() == KeyEvent.VK_RIGHT || e.getKeyCode() == KeyEvent.VK_D) {
out.println("Right key pressed");
// handle snake right movement
} else if (e.getKeyCode() == KeyEvent.VK_UP || e.getKeyCode() == KeyEvent.VK_W) {
out.println("Up key pressed");
// handle snake up movement
} else if (e.getKeyCode() == KeyEvent.VK_DOWN || e.getKeyCode() == KeyEvent.VK_S) {
out.println("Down key pressed");
// handle snake down movement
}
}
public void keyReleased(KeyEvent e) {
}
Подробнее здесь: https://stackoverflow.com/questions/460 ... arrow-keys
KeyListener не работает так, как я хочу, для клавиш со стрелками? ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Python tkinter – обнаружение клавиш со стрелками при нажатии альтернативной клавиши
Anonymous » » в форуме Python - 0 Ответы
- 25 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Python tkinter – обнаружение клавиш со стрелками при нажатии альтернативной клавиши
Anonymous » » в форуме Python - 0 Ответы
- 32 Просмотры
-
Последнее сообщение Anonymous
-