Я занимаюсь разработкой игры с большим количеством кода. Незавершенную версию игры можно найти здесь: http://rainisfalling.co.za/sheep-jump-test/
Есть два ключевых слушателя. Один слушает пробел для большого прыжка, другой слушает CTRL для маленького прыжка. Проблема, с которой я сталкиваюсь, состоит в том, что, когда две кнопки нажимаются точно в одно и то же время, происходят оба прыжковых действия, что приводит к очень большому прыжку. (Сочетание двух высот прыжка.)
Вот упрощенная версия моего кода:
addEventListener(KeyboardEvent.KEY_DOWN, bigJump);
function bigJump(e:KeyboardEvent){
//check to see that keycode = SPACEBAR
//code to do the actual jump
//also remove the event listeners for the jumps while in the air
}
addEventListener(KeyboardEvent.KEY_DOWN, smallJump);
function smallJump(e:KeyboardEvent){
//check to see that keycode = CTRL
//code to do the actual jump
//also remove the event listeners for the jumps while in the air
}