Программирование клавиатуры с помощью JInput (Java)
Я программирую игру на Java (Jogl, JInput). Я не уверен насчет моего кода. Как записать силу клавиш? Сначала я записываю пару (keyName, millisTime) для любого события клавиатуры. Затем я пытаюсь обновить состояние игры новым значением ключа.
Я думаю, что у меня есть ошибка с первой частью кода.
PositionButton pb = positionButtonList.get(comp.getName());
System.out.println(comp.getName());
pb.nanotimeEllapsed = System.nanoTime() - pb.startTime;
pb.startTime = System.nanoTime() - pb.nanotimeEllapsed;
public void on(String compName, float value) {
System.out.println(compName + "|" + value);
if (positionButtonList.get(compName) == null) {
System.exit(-1);
}
long move;
System.out.println("Move intensity: "+(move = (long) (value * positionButtonList.get(compName).nanotimeEllapsed / 1000.0)));
switch (compName) {
case "Axe X":
if (move > 0) {
if (positionButtonList.get(compName) != null) {
positionUpdate.rotationDroite(move);
}
} else if (positionButtonList.get(compName) != null) {
positionUpdate.rotationGauche(-move);
}
break;
case "Axe Y":
if (move > 0) {
if (positionButtonList.get(compName) != null) {
positionUpdate.acc(move);
}
} else if (positionButtonList.get(compName) != null) {
positionUpdate.dec(-move);
}
break;
}
}