bug réglé

This commit is contained in:
flo 2017-02-07 07:46:19 +01:00
parent bc9da15a32
commit 598b367ccd
2 changed files with 25 additions and 13 deletions

View File

@ -30,7 +30,7 @@
unsigned short money;
unsigned short essence;
unsigned int distance;
unsigned int life;
int life;
unsigned char speed;
unsigned char decalx;
} Voiture;

View File

@ -61,6 +61,7 @@ while(1)
case 0 : Jeu(); break;
case 1 : /*garage();*/ break;
}
break;
case KEY_EXIT : return 1;
@ -70,26 +71,32 @@ while(1)
int Jeu()
{
unsigned short RTC_id;
//unsigned short RTC_id;
init(); // initialisation du Jeu
timer_start(TIMER_USER, 45, Clock_Hz, new_frame, 0);
RTC_id = rtc_cb_add(RTCFreq_1Hz, update_essence, 0);
timer_start(TIMER_USER, 16, Clock_Hz, new_frame, 0);
//RTC_id = rtc_cb_add(RTCFreq_16Hz, new_frame, 0);
while(1)
{
key = getkey();
//key = getkey();
if (voiture.life <= 0)
{
key = KEY_EXIT;
//timer_stop(TIMER_USER);
}
else
{
key = getkey();
}
if (voiture.life == 0)
{
key = KEY_EXIT;
}
switch(key)
{
case KEY_UP : voiture.corridor=(voiture.corridor<=1 ? 1 : voiture.corridor-1); break;
case KEY_DOWN : voiture.corridor=(voiture.corridor>=4 ? 4 : voiture.corridor+1); break;
case KEY_EXIT : timer_stop(TIMER_USER); rtc_cb_end(RTC_id); return 1;
case KEY_EXIT : timer_stop(TIMER_USER); /*rtc_cb_end(RTC_id);*/ return 1;
}
}
}
@ -106,7 +113,7 @@ dclear();
dimage(voiture.decalx-20, 11*voiture.corridor, &img_formel1);
dprint(1, 1, "%d", compteur);
dprint(40, 1, "%d", voiture.life);
//Jauge d'essence
dline(25+voiture.essence/5, 58, 45, 58, Color_Black);
dreverse_area(24, 57, 46, 59);
@ -141,12 +148,17 @@ if(obstacle[voiture.corridor-1].coordx < voiture.decalx - 2 && obstacle[voiture.
obstacle[voiture.corridor-1].num_obst = 0;
}
if (voiture.essence == 0)
if(compteur%30 == 0 )
{
voiture.essence -= 1;
}
if (voiture.essence <= 0)
{
voiture.life = 0;
}
if (voiture.life == 0)
if (voiture.life <= 0)
{
dclear();
dtext(10,10,"Vous etes mort");