Rectifications DAVID

This commit is contained in:
Vincent TEISSIER 2023-12-12 13:57:52 +01:00
parent 4d3c54c24c
commit ee032fe2e9
3 changed files with 31 additions and 31 deletions

@ -38,7 +38,7 @@ void InitialiserPastilles(PIXELS *pastilles) {
} }
} }
int MangerPastille(int *serpent, PIXELS* pastilles,unsigned long *score) int MangerPastille(PIXELS *serpent, PIXELS* pastilles,unsigned long *score)
{ {
couleur r; couleur r;
int i = 0; int i = 0;
@ -48,7 +48,7 @@ int MangerPastille(int *serpent, PIXELS* pastilles,unsigned long *score)
for(i=0;i<PASTILLES;i++) for(i=0;i<PASTILLES;i++)
{ {
if(serpent[0] == pastilles[i].x && serpent[1] == pastilles[i].y) if(serpent[0].x == pastilles[i].x && serpent[0].y == pastilles[i].y)
{ {
pastilles[i] = gen_pastille(); pastilles[i] = gen_pastille();
RemplirRectangle(pastilles[i].x,pastilles[i].y,T_PIXEL,T_PIXEL); RemplirRectangle(pastilles[i].x,pastilles[i].y,T_PIXEL,T_PIXEL);
@ -75,10 +75,10 @@ int MangerPastille(int *serpent, PIXELS* pastilles,unsigned long *score)
return 0; return 0;
}*/ }*/
void DeplacementSerpent(int direction ,int *serpent, int longueur) void DeplacementSerpent(int direction ,PIXELS *serpent, int longueur)
{ {
int tempX = serpent[0]; int tempX = serpent[0].x;
int tempY = serpent[1]; int tempY = serpent[0].y;
int i; int i;
int compteur; int compteur;
couleur g; couleur g;
@ -89,46 +89,46 @@ void DeplacementSerpent(int direction ,int *serpent, int longueur)
for (i = 2; i < longueur; i += 2) { for (i = 2; i < longueur; i += 2) {
int tempX2 = serpent[i]; int tempX2 = serpent[i].x;
int tempY2 = serpent[i + 1]; int tempY2 = serpent[i].y;
serpent[i] = tempX; serpent[i].x = tempX;
serpent[i + 1] = tempY; serpent[i].y = tempY;
tempX = tempX2; tempX = tempX2;
tempY = tempY2; tempY = tempY2;
} }
for(i=0;i< longueur; i++) for(i=0;i< longueur; i++)
{ {
if(serpent[i] != NULL) if(serpent[i].x != NULL && serpent[i].y != NULL)
{ {
compteur++; compteur++;
} }
} }
ChoisirCouleurDessin(g); ChoisirCouleurDessin(g);
RemplirRectangle(serpent[compteur-2],serpent[compteur-1],T_PIXEL,T_PIXEL); RemplirRectangle(serpent[compteur].x,serpent[compteur].y,T_PIXEL,T_PIXEL);
ChoisirCouleurDessin(j); ChoisirCouleurDessin(j);
if(direction == 0) /* Direction vers la gauche */ if(direction == 0) /* Direction vers la gauche */
{ {
serpent[0]-=T_PIXEL; serpent[0].x-=T_PIXEL;
RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL); RemplirRectangle(serpent[0].x,serpent[0].y,T_PIXEL,T_PIXEL);
} }
else if(direction == 1) /* Direction vers le haut */ else if(direction == 1) /* Direction vers le haut */
{ {
serpent[1]-=T_PIXEL; serpent[0].y-=T_PIXEL;
RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL); RemplirRectangle(serpent[0].x,serpent[0].y,T_PIXEL,T_PIXEL);
} }
else if(direction == 2) /* Direction vers la droite */ else if(direction == 2) /* Direction vers la droite */
{ {
serpent[0]+=T_PIXEL; serpent[0].x+=T_PIXEL;
RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL); RemplirRectangle(serpent[0].x,serpent[0].y,T_PIXEL,T_PIXEL);
} }
else if(direction == 3) /* Direction vers le bas */ else if(direction == 3) /* Direction vers le bas */
{ {
serpent[1]+=T_PIXEL; serpent[0].y+=T_PIXEL;
RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL); RemplirRectangle(serpent[0].x,serpent[0].y,T_PIXEL,T_PIXEL);
} }
} }

@ -3,15 +3,15 @@
#ifndef EVENEMENT_H #ifndef EVENEMENT_H
#define EVENEMENT_H #define EVENEMENT_H
int MangerPastille(int *serpent, PIXELS* pastilles,unsigned long *score); int MangerPastille(PIXELS *serpent, PIXELS* pastilles,unsigned long *score);
void DeplacementSerpent(int direction ,int *serpent, int longueur); void DeplacementSerpent(int direction ,PIXELS *serpent, int longueur);
void InitialiserPastilles(PIXELS *pastilles); void InitialiserPastilles(PIXELS *pastilles);
void AfficherTimerEtScore(int m,int n,unsigned long *score); void AfficherTimerEtScore(int m,int n,unsigned long *score);
int PastilleSurSerpent(PIXELS pastille, int *serpent, int longueur_serpent); int PastilleSurSerpent(PIXELS pastille, PIXELS *serpent, int longueur_serpent);
#endif #endif

18
main.c

@ -48,7 +48,7 @@ PIXELS gen_pastille()
return pastille; return pastille;
} }
void InitialisationDuSerpent(int *p_serpent) /* L'initialisation du serpent */ void InitialisationDuSerpent(PIXELS *p_serpent) /* L'initialisation du serpent */
{ {
int x_millieu = 0, y_millieu = 0 , compteur = 0; int x_millieu = 0, y_millieu = 0 , compteur = 0;
couleur j; couleur j;
@ -61,20 +61,20 @@ void InitialisationDuSerpent(int *p_serpent) /* L'initialisation du serpent */
/* printf("x_millieu : %d | y_millieu : %d\n",x_millieu,y_millieu); DEBUG*/ /* printf("x_millieu : %d | y_millieu : %d\n",x_millieu,y_millieu); DEBUG*/
p_serpent[0] = x_millieu; p_serpent[0].x = x_millieu;
p_serpent[1] = y_millieu; p_serpent[0].y = y_millieu;
for(compteur=0;compteur<=16;compteur+=2) /* Commence par 1 car p_serpent index 0 initialisées pour la tête et 2 + 2x9 = 10 couples de coordonnées 2D */ for(compteur=0;compteur<=9;compteur++) /* Commence par 1 car p_serpent index 0 initialisées pour la tête et 2 + 2x9 = 10 couples de coordonnées 2D */
{ {
p_serpent[compteur+2] = p_serpent[compteur]+T_PIXEL; p_serpent[compteur+1].x = p_serpent[compteur].x+T_PIXEL;
p_serpent[compteur+3] = p_serpent[compteur+1]; p_serpent[compteur+1].y = p_serpent[compteur].y;
/*printf("x_millieu : %d | y_millieu : %d\n",p_serpent[compteur+2],p_serpent[compteur+3]); DEBUG*/ /*printf("x_millieu : %d | y_millieu : %d\n",p_serpent[compteur+2],p_serpent[compteur+3]); DEBUG*/
RemplirRectangle(p_serpent[compteur+2],p_serpent[compteur+3],T_PIXEL,T_PIXEL); RemplirRectangle(p_serpent[compteur+1].x,p_serpent[compteur+1].y,T_PIXEL,T_PIXEL);
} }
} }
void DessinerScene(PIXELS *pastilles, int *serpent) /* Dessine la scène */ void DessinerScene(PIXELS *pastilles, PIXELS *serpent) /* Dessine la scène */
{ {
couleur c; couleur c;
ChoisirEcran(2); ChoisirEcran(2);
@ -185,7 +185,7 @@ int main()
DeplacementSerpent(direction,serpent,longueur_serpent); DeplacementSerpent(direction,serpent,longueur_serpent);
if(MangerPastille(serpent,pastilles,&score) == 1) if(MangerPastille(serpent,pastilles,&score) == 1)
{ {
longueur_serpent+=4; longueur_serpent+=2;
serpent = (int*) realloc(serpent,longueur_serpent * sizeof(int)); serpent = (int*) realloc(serpent,longueur_serpent * sizeof(int));
} }
} }