Работа с кнопками геймпада - Java

Узнай цену своей работы

Формулировка задачи:

Добрый день! Подскажите, как убрать "удержание" кнопки на геймпаде. Т.е если я нажимаю на кнопу, должно происходить увеличение переменной на 1(один раз). Если я хоть немного задержу кнопку нажатой, счетчик начинает бешенно набирать обороты, что мне совсем не нужно. Thread.sleep + дает только промежуток между нажатиями, на "удержание" кнопки не влияет
Листинг программы
  1. import org.lwjgl.input.Controller;
  2. import org.lwjgl.LWJGLException;
  3. import org.lwjgl.input.Controllers;
  4. import static test.MainFormAppearance.ab;
  5. import static test.MainFormAppearance.amount;
  6. import static test.MainFormAppearance.ar;
  7. public class Start
  8. {
  9. static org.lwjgl.input.Controller controller;
  10. public static void main (String [] args){
  11. try {
  12. Controllers.create();
  13. }catch (LWJGLException e)
  14. {
  15. e. printStackTrace();
  16. }
  17. Controllers.poll();
  18. controller= Controllers.getController(0);
  19. while (true) {
  20. try {
  21. Thread.sleep(70);
  22. } catch (Exception e){}
  23. controller.poll();
  24. if (controller.isButtonPressed (2)) {
  25. ar++;
  26. System.out.println(ar);
  27. }
  28. if (controller.isButtonPressed(1)) {
  29. ar--;
  30. System.out.println(ar);
  31. }
  32. }
  33. }
  34. }

Решение задачи: «Работа с кнопками геймпада»

textual
Листинг программы
  1. while (Controllers.next()

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут