Я разрабатываю небольшую игру и пытаюсь получить ввод с клавиатуры со стрелками вверх, вниз, влево, вправо и пробел.
В keyDown я установил для некоторых логических значений значение true, а для keyDown - значение false. В основном цикле я проверяю эти логические значения, чтобы персонаж мог двигаться в одном из 8 направлений и стрелять одновременно.
Все работает: Северо-Восток + Космос, Юго-Восток + Космос, Юго-Запад + Космос
но Северо-Запад + Космос не работает. Событие для пробела не запускается.
function onKeyDown(evt){
switch(evt.keyCode){
case up:
pressedUp=true;
break;
case right:
pressedRight = true;
break;
case down:
pressedDown = true;
break;
case left:
pressedLeft = true;
break;
case space:
spacePressed=true;
break;
}
updateCamera();
}
function onKeyUp(evt){
switch(evt.keyCode){
case up:
pressedUp=false;
break;
case right:
pressedRight = false;
break;
case down:
pressedDown = false;
break;
case left:
pressedLeft = false;
break;
case space:
spacePressed = false;
break;
}
}