diff --git a/evenement.c b/evenement.c index b0870c5..93a5a34 100644 --- a/evenement.c +++ b/evenement.c @@ -38,7 +38,7 @@ void InitialiserPastilles(PIXELS *pastilles) { } } -void MangerPastille(int *serpent, PIXELS* pastilles, size_t *longueur_serpent, size_t longueur_pastilles,unsigned long *score) +int MangerPastille(int *serpent, PIXELS* pastilles,unsigned long *score) { couleur r; int i = 0; @@ -50,19 +50,18 @@ void MangerPastille(int *serpent, PIXELS* pastilles, size_t *longueur_serpent, s { if(serpent[0] == pastilles[i].x && serpent[1] == pastilles[i].y) { - printf("\nMANGER !\n"); pastilles[i] = gen_pastille(); RemplirRectangle(pastilles[i].x,pastilles[i].y,T_PIXEL,T_PIXEL); - *longueur_serpent+=2;/*augmente la taille du serpent de deux car un pixel =2*/ *score+=5; - printf("%ld",*longueur_serpent); /*voir la taille du serpent*/ + return 1; } } - + return 0; } -int PastilleSurSerpent(PIXELS pastille, int *serpent, size_t longueur_serpent) + +/*int PastilleSurSerpent(PIXELS pastille, int *serpent, size_t longueur_serpent) { int i; @@ -74,7 +73,7 @@ int PastilleSurSerpent(PIXELS pastille, int *serpent, size_t longueur_serpent) } } return 0; -} +}*/ void DeplacementSerpent(int direction ,int *serpent, int longueur) { @@ -105,13 +104,13 @@ void DeplacementSerpent(int direction ,int *serpent, int longueur) if(direction == 0) /* Direction vers la gauche */ { serpent[0]-=T_PIXEL; - RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL); } else if(direction == 1) /* Direction vers le haut */ { serpent[1]-=T_PIXEL; RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL); + } else if(direction == 2) /* Direction vers la droite */ { diff --git a/evenement.h b/evenement.h index 57f85d0..597faf1 100644 --- a/evenement.h +++ b/evenement.h @@ -3,7 +3,7 @@ #ifndef EVENEMENT_H #define EVENEMENT_H -void MangerPastille(int *serpent, PIXELS* pastilles, size_t longueur_serpent, size_t longueur_pastilles, unsigned long *score); +int MangerPastille(int *serpent, PIXELS* pastilles,unsigned long *score); void DeplacementSerpent(int direction ,int *serpent, int longueur); @@ -11,6 +11,7 @@ void InitialiserPastilles(PIXELS *pastilles); void AfficherTimerEtScore(int m,int n,int score); -int PastilleSurSerpent(PIXELS pastille, int *serpent, size_t longueur_serpent); +int PastilleSurSerpent(PIXELS pastille, int *serpent, int longueur_serpent); + #endif \ No newline at end of file diff --git a/main.c b/main.c index d12ab2e..4db199b 100644 --- a/main.c +++ b/main.c @@ -169,11 +169,6 @@ int main() pause = 0; } - - - default: - printf("Autre touche\n"); - break; } } else @@ -194,7 +189,11 @@ int main() direction_davant = direction; /* Check si le serpent à le droit de changer de direction */ DeplacementSerpent(direction,serpent,longueur_serpent); - MangerPastille(serpent,pastilles,&longueur_serpent,longueur_pastilles,&score); + if(MangerPastille(serpent,pastilles,&score) == 1) + { + longueur_serpent+=2; + serpent = (int*) realloc(serpent,longueur_serpent * sizeof(int)); + } } }