[JAVA] Ralentir le Keylistener

Ralentir le Keylistener [JAVA] - Java - Programmation

Marsh Posté le 20-05-2005 à 15:41:07    

Salut tout le monde,
vala je voudrais ralentir un peu la répétition de touche à partir de mon keylistener. La tout va trop vite si je laisse enfoncé :/
 
Qqun aurait une solution viable à me proposer SVP ? J'ai déjà essayé qq trucs mais rien ne marche vraiment :/
 
Merci :jap:

Reply

Marsh Posté le 20-05-2005 à 15:41:07   

Reply

Marsh Posté le 20-05-2005 à 15:43:17    

bourrin -> timer


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 20-05-2005 à 16:57:42    

Bourreau a écrit :

Salut tout le monde,
vala je voudrais ralentir un peu la répétition de touche à partir de mon keylistener. La tout va trop vite si je laisse enfoncé :/
 
Qqun aurait une solution viable à me proposer SVP ? J'ai déjà essayé qq trucs mais rien ne marche vraiment :/
 
Merci :jap:


C'est bien la première que quelqu'un se plaint que Java ça pulse.


---------------
Le site de ma maman
Reply

Marsh Posté le 21-05-2005 à 10:05:14    

Ben disons que dans le cadre du pacman j'ai pas trop envie de pouvoir traverser la map en 2s, ca enleve un peu l'interet du jeu...
Et que je sois le premier ou pas, c'est genant ;)

Reply

Marsh Posté le 21-05-2005 à 11:00:56    

tu devrais pas plutot ytiliser un timer plutot que de tout baser sur la vitesse de la machine ?


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 21-05-2005 à 12:05:52    

Ben j'ai fais un timer, mais j'arrive pas à l'appliquer correctement a mon keylistener.
J'ai essayé un sleep aussi mais ca ne chge rien, ca ne fait simplement pas de repaint pendant qq tps...
 
 

Citation :

if ((evt.getKeyChar() == 'f')) {
if ((absX==200) && (ordY==100))
{
abs=0;
ord=0;
absX += abs;
ordY += ord;
repaint();
}
else if((testing(0,20)==1))
{
abs = 0;
ord = 20;
absX += abs;
ordY += ord;
repaint();
}
}
if ((evt.getKeyChar() == 'g')) {
ord = 0;
abs = 20;
mark = 2;
if(testing(20,0)==1)
{
absX += abs;
ordY += ord;
repaint();
}
}
 
}}
 
 
Timer minuteur = new Timer(diff,new ActionListener(){
public void actionPerformed(ActionEvent e){
repaint();
}});
 
public void startBis(){
minuteur.setDelay(diff);
}

Reply

Marsh Posté le 24-05-2005 à 00:16:03    

Aie, aie ! Il me semblait t'avoir déjà donné les grandes lignes de la structure d'un jeu 2D en Java sur un autre topic. Pas besoin de Timer. Et les repaint() et déplacement dans la méthode keyPressed c'est très crade. Ajouter à cela des noms de variables et de méthodes imbitables, des valeursn numériques à tout bout de champ et on a un projet qui vaut la moyenne parce qu'on est gentil, les élèves ils débutent. :D
 
Le problème c'est qu'il y en a sont pas loin de coder aussi mal après des années d'expérience (bon ça s'arrange quand même avec le temps). :/

Reply

Marsh Posté le 24-05-2005 à 00:22:03    

Au temps pour moi, pour la structure d'un jeu 2D je ne te l'avais pas donné dans ton dernier topic. Tu peux regarder ici :
 
http://forum.hardware.fr/forum2.ph [...] 1#t1093492

Reply

Marsh Posté le 24-05-2005 à 00:23:59    

OK, ej te remercie, je vais jeter un oeil ;)
 
Ben le prob cai qu'on a aucune notion de comment bien faire les choses :)
 
Je ne sais pas ce qu'il faut mettre ou ne pas mettre dans un Keylistener par exemple [:spamafote]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed