#include #include #include #include "fonction.h" #define CYCLE 100000L int seconde=0, minute=0, seconde_actuel=0; int imageMenuFin; /*Fonction pour calculer le temps*/ void Timer(unsigned long int suivant, unsigned long int old_seconde){ if(Microsecondes()> suivant){ suivant = Microsecondes()+CYCLE; seconde_actuel = (suivant/1000000)%10; if(seconde_actuel !=old_seconde){ old_seconde = seconde_actuel; if(seconde == 59){ minute=minute+1; seconde=0; Update_Timer(); }else{ seconde = seconde+1; Update_Timer(); } } } } /*Fonction pour mettre à jour unuquement le timer*/ void Update_Timer(){ snprintf(timer,6,"%02d:%02d", minute, seconde); ChoisirCouleurDessin(CouleurParComposante(0,0,0)); RemplirRectangle(0,700,1200,800); ChoisirCouleurDessin(CouleurParComposante(255,255,255)); EcrireTexte(10,760,timer,2); } /*fonction afin de créer un délai (en microseconde*/ void Attendre(long int microsecondes){ long int attendre; attendre = Microsecondes()+ microsecondes; while (Microsecondes() < attendre){ } } /*création du Menu de Fin*/ void MenuDeFin(int Nbr){ EffacerEcran(CouleurParComposante(0,0,0)); imageMenuFin=ChargerSprite("IMG/menu2.png"); AfficherSprite(imageMenuFin,0,0); ChoisirCouleurDessin(CouleurParComposante(255,255,255)); snprintf(score,15,"Score : %04d", Nbr); EcrireTexte(500,650,score,2); snprintf(timer,14,"Temps : %02d:%02d", minute, seconde); EcrireTexte(490,700,timer,2); EcrireTexte(410,750,"Appuyer sur Q pour quitter",2); }