Javascript keyDown - nenhuma abordagem de evento


8

Estou fazendo jogo em JavaScript. Eu tenho telas para desenhos e loop de jogo. Gostaria de fazer o método readKeyboard, no loop do jogo, para verificar se há alguma tecla pressionada. Não quero anexar evento à tela, porque não se encaixa no design do loop do jogo. Talvez eu deva anexar este evento? Qual é a melhor solução?

Respostas:


5

Você pode usar uma biblioteca como o KeyboardJS , que escuta os eventos do teclado e preenche uma matriz com as teclas ativas.

No seu gameloop:

var activeKeys = KeyboardJS.activeKeys();
if (activeKeys.indexOf(84) > -1) {
  // key pressed
}

Também fiz minha própria biblioteca , que é mais leve, mas claramente menos completa que o KeyboardJS.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.