correction segmentation collission
This commit is contained in:
parent
dd9d51bb1a
commit
c3c14e39c9
@ -40,20 +40,21 @@ void InitialiserPastilles(PIXELS *pastilles, PIXELS *serpent, int longueur_serpe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MourrirSerpent(PIXELS *serpent, int longueur_serpent)
|
int MourrirSerpent(PIXELS *serpent, int longueur_serpent)
|
||||||
{
|
{
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for(i=1;i<longueur_serpent;i++)
|
for(i=1;i<longueur_serpent;i++)
|
||||||
{
|
{
|
||||||
if(serpent[0].x == serpent[i].x && serpent[0].y == serpent[i].y )
|
if(serpent[0].x == serpent[i].x && serpent[0].y == serpent[i].y )
|
||||||
{
|
{
|
||||||
FermerGraphique();
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (serpent[0].x<=0 || serpent[0].x>W_GAME || serpent[0].y<=0 || serpent[0].y>H_GAME)
|
if (serpent[0].x<=0 || serpent[0].x>W_GAME || serpent[0].y<=0 || serpent[0].y>H_GAME)
|
||||||
{
|
{
|
||||||
FermerGraphique();
|
return 1;
|
||||||
}
|
}
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int MangerPastille(PIXELS *serpent, PIXELS* pastilles,unsigned long *score,int longueur_serpent)
|
int MangerPastille(PIXELS *serpent, PIXELS* pastilles,unsigned long *score,int longueur_serpent)
|
||||||
|
@ -13,7 +13,7 @@ void AfficherTimerEtScore(long unsigned int *score,int minutes,int secondes);
|
|||||||
|
|
||||||
int PastilleSurSerpent(PIXELS pastille, PIXELS *serpent, int longueur_serpent);
|
int PastilleSurSerpent(PIXELS pastille, PIXELS *serpent, int longueur_serpent);
|
||||||
|
|
||||||
void MourrirSerpent(PIXELS *serpent, int longueur_serpent);
|
int MourrirSerpent(PIXELS *serpent, int longueur_serpent);
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
BIN
evenement.o
BIN
evenement.o
Binary file not shown.
8
main.c
8
main.c
@ -207,7 +207,13 @@ int main()
|
|||||||
suivant=Microsecondes()+delta;
|
suivant=Microsecondes()+delta;
|
||||||
AfficherTimerEtScore(&score,minutes,secondes);
|
AfficherTimerEtScore(&score,minutes,secondes);
|
||||||
direction_davant = direction; /* Check si le serpent à le droit de changer de direction */
|
direction_davant = direction; /* Check si le serpent à le droit de changer de direction */
|
||||||
MourrirSerpent(serpent,longueur_serpent);
|
if(MourrirSerpent(serpent,longueur_serpent))
|
||||||
|
{
|
||||||
|
FermerGraphique();
|
||||||
|
free(serpent);
|
||||||
|
free(pastilles);
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
||||||
DeplacementSerpent(direction,serpent,longueur_serpent);
|
DeplacementSerpent(direction,serpent,longueur_serpent);
|
||||||
if(MangerPastille(serpent,pastilles,&score,longueur_serpent) == 1)
|
if(MangerPastille(serpent,pastilles,&score,longueur_serpent) == 1)
|
||||||
{
|
{
|
||||||
|
BIN
main.o
BIN
main.o
Binary file not shown.
BIN
prog
BIN
prog
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user