slt a tous,
et oui je n´ai toujours pas resolu mon probleme de chronometre ( en meme temp j´ai pas eu beaucoup de temps pour chercher
) vengeur ma donné un systeme pour créer un compte a rebour:
Alors jtexplique :
On a le temps du compte a rebours ( mettons 15 secondes ) :
int tempscompterebours = 15;
La SDL a une fonction nous permettant de connaître le temps écoulé depuis le début du jeu en millisecondes:
int timestart = SDL_GetTicks();
Ensuite, dans ta boucle, tu recupere continuellement le temps restant :
/ *Avant la boucle*/
int nowtime, timetest;
. . .
/ *pendant la boucle */
/ *On recupere la différence de temps */
nowtime = SDL_GetTicks()-timestart;
/ *On teste si on est dans le compte à rebours , attention aux conversions secondes/millisecondes */
timetest = ( int)tempscompterebours-(nowtime/1000);
if ( timetest>0)
{
/ *On est tjrs dans le compte à rebours */
}
else
{
/ *Temps ecoule*/
}
et sa a l´air de bien marcher mais le probleme est que quand je lance le programme, au lieu de commencer le comte a rebour à partir de 15 secondes ( comme définit dans le programme)il le démarre de 2650 secondes. en plus, je me suis rendu compte que lorsque je quitte le programme pendant 10 secondes et que je le relance, il commence le compte a rebour a partir de 2660.
je comprend pas du tou ce qui se passe. ne faut il pas initialiser " SDL_GetTicks()"au début du programme?
un tout grand merci à toutes les personnes qui me viendront en aide 