IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Jeu en java: Déplacement KeyListener/ Suppression délais touche enfoncée (keypressed)


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2017
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Jeu en java: Déplacement KeyListener/ Suppression délais touche enfoncée (keypressed)
    Bonjour à tous,
    Je suis un grand débutant en java (1 ou 2 semaines tout au plus) et me voilà confronté à un problème dans le développement de mon jeu en java.
    J'aimerais que mon personnage aille à droite quand la touche directionnelle droite est enfoncée et à gauche pour la touche gauche est enfoncée. J'utilise KeyListener (cf image).
    Cela fonctionne parfaitement quand je tape et relâche la touche, sauf que si je reste appuyé sur la touche, mon personnage se déplace une fois, et après un court délai se déplace en continue.
    J'aimerai supprimer ce délai.
    Merci d'avance =)!!
    Images attachées Images attachées  

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 965
    Points
    32 965
    Billets dans le blog
    4
    Par défaut
    Salut,

    ce que tu as là c'est sur un évènement : touche enfoncée ou relâchée.
    Ce que tu veux c'est sur état de la touche, généralement dans une boucle update du programme principal.
    Si tu n'as pas accès à l'état de la touche à tout instant - ce qui serait plutôt surprenant - tu peux utiliser des variables sur l'évènement "touche enfoncée" pour, par exemple, changer l'état en "marche vers la droite".
    Tu as toujours besoin de l'update pour réaliser la mise à jour de la position de manière continue.

    ps: le code se poste en tant que... code. Texte et balises codes. Les images n'apportent rien que de la difficulté à tester l'éventuel code (on peut pas copier) et lourdeur d'affichage de la page.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 360
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 360
    Points : 20 378
    Points
    20 378
    Par défaut
    @Amaury123:

    1-il faudrait cadencer le déplacement avec un système de chronométrage du temps,bref si tant de millisecondes se sont écoulées alors le personnage si l'état "est en mouvement" est activé on déplace par conséquent le personnage.
    Mais on peut commencer par un simple timer
    Sinon le déplacement du personnage ne sera pas régulier d'une machine à une autre

    Faire une recherche sur le forum il ya un fil de discussion pour savoir comment cadencer le déplacement d'un personnage
    Mais au départ commencer simple avec juste un timer


    2 qu'est ce qu'il y a dans les méthodes penguin.gauche et penguin.statique ?
    Une méthode statique() n'est pas nécessaire il suffit d'utiliser un flag (ou commutateur d'état en bon français) pour déterminer si le perso est en mouvement ou pas

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2017
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup, vos réponses m ont permises d attendre mon but bonne continuation =)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/05/2017, 15h30
  2. Plateau de jeu à hexagones, Java ou Flash ? + aide
    Par PopovSquare dans le forum Développement 2D, 3D et Jeux
    Réponses: 16
    Dernier message: 02/03/2007, 23h59
  3. demande d'aide pour faire un plateau de jeu en java
    Par trodurlejava dans le forum Langage
    Réponses: 4
    Dernier message: 09/01/2007, 12h40
  4. Réponses: 7
    Dernier message: 05/06/2006, 13h44
  5. Petit jeu en java
    Par Seth77 dans le forum 2D
    Réponses: 80
    Dernier message: 08/01/2006, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo