Gestion clavier JS
Hwaster
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
codeurh24 Messages postés 760 Date d'inscription Statut Membre Dernière intervention -
codeurh24 Messages postés 760 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous,
alors voila, je cherche a réaliser un petit jeu 2D en JS (jquerry) pour mon projet de fin d'année.
Mais j'ai des problèmes pour la gestion du clavier: je cherche a savoir quand le joueur appuie sur la touche et quand il la relâche. Mon problème étant qu'en gardant la touche enfoncée, la fonction est appelé en boucle. Existe t-il d'autres écouteurs? Ou est que je doit gérer sa avec des booleans?
Merci d'avance
alors voila, je cherche a réaliser un petit jeu 2D en JS (jquerry) pour mon projet de fin d'année.
Mais j'ai des problèmes pour la gestion du clavier: je cherche a savoir quand le joueur appuie sur la touche et quand il la relâche. Mon problème étant qu'en gardant la touche enfoncée, la fonction est appelé en boucle. Existe t-il d'autres écouteurs? Ou est que je doit gérer sa avec des booleans?
function initialiser(evt){ $(document).keydown(keyD); $(document).keyup(keyU); } function keyD(evt){ switch(event.keyCode){ case 39: perso.droiteD(); break; case 37: perso.gaucheD(); break; case 38: perso.jump(); break; } } function keyU(evt){ switch(event.keyCode){ case 39: perso.droiteU(); break; case 37: perso.droiteD(); } }
Merci d'avance
A voir également:
- Gestion clavier JS
- Télécharger clavier arabe - Télécharger - Divers Web & Internet
- Comment taper / sur clavier - Guide
- Clavier de l'ordinateur - Guide
- Logiciel gestion locative gratuit excel - Télécharger - Comptabilité & Facturation
- Clavier iphone chiffre et lettre - Guide
2 réponses
Déjà indente ton code, sinon on va plus s'en sortir et ensuite recherche bien 10 minutes sur Google, c'est très bien fourni là-dedans.
Oui tu est sur la bonne voie.
Le problème c'est que les appels des actions du perso ce fait quand la touche est enfoncé, ce qui fait que quand tu reste enfoncé ça fonctionne en boucle. Il te faut une variable booléen pour stopper cette boucle.
ta fonction keyU est a modifier pour permettre a n'importe quel touche de passer la variable a true.
tant que la variable est a false l'action du perso dans keyD ne se répétera pas
Le problème c'est que les appels des actions du perso ce fait quand la touche est enfoncé, ce qui fait que quand tu reste enfoncé ça fonctionne en boucle. Il te faut une variable booléen pour stopper cette boucle.
ta fonction keyU est a modifier pour permettre a n'importe quel touche de passer la variable a true.
tant que la variable est a false l'action du perso dans keyD ne se répétera pas