Palca_Ulem
Messages postés33Date d'inscriptiondimanche 2 mai 2004StatutMembreDernière intervention18 mai 2004
-
16 mai 2004 à 12:05
cs_AmK
Messages postés368Date d'inscriptionjeudi 13 mars 2003StatutMembreDernière intervention27 janvier 2010
-
17 mai 2004 à 22:46
Bonjour, j'essaie de faire un jeu avec allegro et je voudrais savoir comment faire pour que ma boucle principale attende un certain temps avec de recommencer, et également comment faire un système de pause, pour que le jeu s'arrête complètement quand on appuie sur une touche et reprenne au même endroit lorsqu'on réappuie dessus.
cs_GoldenEye
Messages postés527Date d'inscriptionvendredi 14 septembre 2001StatutMembreDernière intervention 6 octobre 20084 16 mai 2004 à 14:40
Imaginons que la touche de pause soit P
dans un timer tu testes la touche P
si celle ci est pressée met un flag a 1
Dans le timer d'anim ne bouge les éléments que si le flag est à 0
Optimiser, c'est bien, déboguer c'est mieux
Palca_Ulem
Messages postés33Date d'inscriptiondimanche 2 mai 2004StatutMembreDernière intervention18 mai 2004 16 mai 2004 à 14:59
D'accord, mais ça implique que le jeu n'est en pause que si on appuie sur une touche. Ce que je veux c'est que lorsqu'on appuie une première fois ça met en pause et ça reste en pause tant qu'on appuie pas une seconde fois.
Et concernant mon autre question, est-ce qu'il y a moyen de faire patienter quelques temps une boucle et qu'elle reprenne ensuite automatiquement ? Le problème c'est que j'ai un sprite en deux images, pour donner une certaine impression de mouvement. Les deux images s'alternent bien mais beaucoup trop vite, c'est pourquoi je veux ralentir la boucle.
____________________
http://www.mozilla.org/products/firefox/
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_GoldenEye
Messages postés527Date d'inscriptionvendredi 14 septembre 2001StatutMembreDernière intervention 6 octobre 20084 16 mai 2004 à 15:49
Mais mon explication fonctionne
Lorsque l'on appuie sur la touche P le flag est mis à 1 et empêche le jeu de tourner !
Ensuite tu vides le keyboard_buffer et tu attends gentiment qu'on appuie de nouveau sur P pour reprendre le jeu pour mettre le flag à 0 !
flag = !flag pour passer de 0 à 1 ou de 1 à 0.
Quant à l'anim ça se gère avec un timer
Tous les x dixièmes de sec tu incrémentes un numero_anim_en_cours
Et tes sprites sont dans un tableau
Dans ta boucle tu affiches le sprite[numero_anim_en_cours]
Palca_Ulem
Messages postés33Date d'inscriptiondimanche 2 mai 2004StatutMembreDernière intervention18 mai 2004 16 mai 2004 à 16:06
Tu pourrais me passer un code, stp, parce que j'ai déjà essayé pas mal de choses avec timer mais ça ne fonctionnait jamais.
____________________
http://www.mozilla.org/products/firefox/
cs_AmK
Messages postés368Date d'inscriptionjeudi 13 mars 2003StatutMembreDernière intervention27 janvier 20101 17 mai 2004 à 22:46
Palca_Ulem c'est pourtant trés simple !!!
j'ai moi meme eu des pb avec les timers mais un jour j'ai commencé à m'y mettre tranquillement tout doucement , essaye de les placer dans ton programme ( je parle du install_int_ex...) et regarde le résultat et tu verras que ça va venir tout seul !!!
quand au reste avec de simples if - else if tu pourrais y arriver !!!