Javascript keyDown - nessun approccio agli eventi


8

Sto creando un gioco in JavaScript. Ho tela per disegni e loop di gioco. Vorrei fare il metodo readKeyboard, in loop di gioco, per verificare se c'è qualche tasto premuto. Non voglio associare un evento alla tela, perché non si adatta al design del loop di gioco. Forse dovrei allegare questo evento? Qual è la soluzione migliore?

Risposte:


5

È possibile utilizzare una libreria come KeyboardJS , che ascolterà gli eventi della tastiera e riempirà un array con i tasti attivi.

Nel tuo gameloop:

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

Ho anche creato la mia libreria , che è più leggera ma chiaramente meno completa di KeyboardJS.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.