From 766b98d8dd92f2ddcb361c097293c2cc0d3f104a Mon Sep 17 00:00:00 2001
From: Vince <vi.teissier@gmail.com>
Date: Mon, 27 Nov 2023 16:17:11 +0100
Subject: [PATCH] =?UTF-8?q?Int=C3=A9gration=20des=20mouvements=20du=20serp?=
 =?UTF-8?q?ent=20(=20=C3=A0=20am=C3=A9liorer=20)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 main.c |  63 ++++++++++++++++++++++++++----------
 prog   | Bin 17104 -> 17152 bytes
 test.c |  99 +++++++++++++++++++++++++--------------------------------
 3 files changed, 90 insertions(+), 72 deletions(-)

diff --git a/main.c b/main.c
index 6054ceb..af0bf85 100644
--- a/main.c
+++ b/main.c
@@ -13,12 +13,16 @@
 
 #define DECALEMENT 30
 
-#define delta 1000000L
+#define delta 100000L
 
 
 void Affichertimer(int n)   /*Afficher le temps passé*/
 {   
     char buf[100];
+    couleur j;
+    j=CouleurParNom("yellow");
+    ChoisirCouleurDessin(j);
+
 	ChoisirEcran(1);
 	CopierZone(2,1,0,0,930,710,0,0);
 	snprintf(buf,100,"temps : %05d",n);
@@ -28,30 +32,57 @@ void Affichertimer(int n)   /*Afficher le temps passé*/
 	CopierZone(1,0,0,0,930,710,0,0);
 }
 
-
-
-
-
 void DeplacementSerpent(int direction ,int *serpent, int longueur)
 {
-    int i = 0;
+    int tempX = serpent[0];
+    int tempY = serpent[1];
+    int i;
+    couleur g;
+    couleur j;
+    ChoisirEcran(2);
+    j=CouleurParNom("yellow");
+    g=CouleurParNom("lightgreen");
 
+    ChoisirCouleurDessin(g);
+    RemplirRectangle(serpent[longueur-2],serpent[longueur-1],T_PIXEL,T_PIXEL);
 
+    for (i = 2; i < longueur; i += 2) {
+        int tempX2 = serpent[i];
+        int tempY2 = serpent[i + 1];
+
+        serpent[i] = tempX;
+        serpent[i + 1] = tempY;
+
+        tempX = tempX2;
+        tempY = tempY2;
+    }
+
+    ChoisirCouleurDessin(j);
     if(direction == 0) /* Direction vers la gauche */
     {
         printf("Gauche %d\n",direction);
+        serpent[0]-=T_PIXEL;
+        
+        RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL);
+        printf("Longueur = %d | x %d | y %d",longueur,serpent[longueur-1],serpent[longueur-2]);
     }
     else if(direction == 1) /* Direction vers le haut */
     {
         printf("Haut %d\n",direction);
+        serpent[1]-=T_PIXEL;
+        RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL);
     }
     else if(direction == 2) /* Direction vers la droite */
     {
         printf("Droite %d\n",direction);
+        serpent[0]+=T_PIXEL;
+        RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL);
     }
     else if(direction == 3) /* Direction vers le bas */
     {
         printf("Bas %d\n",direction);
+        serpent[1]+=T_PIXEL;
+        RemplirRectangle(serpent[0],serpent[1],T_PIXEL,T_PIXEL);
     }
 }
 
@@ -107,7 +138,7 @@ void gen_pastille(int nb_pastille, int *p_pastilles) /* Ajout des pointeurs pour
         p_pastilles[i+1] = y_pastille ;
 
         printf("x : %d ; y : %d\n",p_pastilles[i],p_pastilles[i+1]);
-
+        ChoisirEcran(2);
         ChoisirCouleurDessin(r);
         RemplirRectangle(x_pastille,y_pastille,T_PIXEL,T_PIXEL);
     }
@@ -128,13 +159,13 @@ void DessinerScene(int* pastilles) /* Dessine la scène */
 void InitialisationDuSerpent(int *p_serpent) /* L'initialisation du serpent */
 {
     int x_millieu = 0, y_millieu = 0 , compteur = 0;
-    couleur o;
     couleur j;
-    o=CouleurParNom("Gold");
+    int i = 0;
     j=CouleurParNom("yellow");
-    ChoisirCouleurDessin(o);
+    ChoisirCouleurDessin(j);
     x_millieu = T_PIXEL*30; /* 30 = 60 colonnes divisé par 2*/
     y_millieu = T_PIXEL*20; /* 20 = 40 colonnes divisé par 2*/
+    ChoisirEcran(2);
     RemplirRectangle(x_millieu,y_millieu,T_PIXEL,T_PIXEL);
 
     /* printf("x_millieu : %d | y_millieu : %d\n",x_millieu,y_millieu);        DEBUG*/
@@ -143,7 +174,6 @@ void InitialisationDuSerpent(int *p_serpent) /* L'initialisation du serpent */
     p_serpent[1] = y_millieu;
     for(compteur=0;compteur<=18;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 */
     {
-        ChoisirCouleurDessin(j);
         p_serpent[compteur+2] = p_serpent[compteur]+T_PIXEL;
         p_serpent[compteur+3] = p_serpent[compteur+1];
 
@@ -151,6 +181,11 @@ void InitialisationDuSerpent(int *p_serpent) /* L'initialisation du serpent */
 
         RemplirRectangle(p_serpent[compteur+2],p_serpent[compteur+3],T_PIXEL,T_PIXEL);
     }
+    printf("Avant \n");
+	for (i = 0; i < 20; i += 2) {
+        printf("(%d, %d) ", p_serpent[i], p_serpent[i + 1]);
+    }
+    printf("\n");
 
 }
 
@@ -190,19 +225,15 @@ int main()
             {
             case XK_Up:
                 direction = 1;
-                DeplacementSerpent(direction ,serpent, longueur_serpent);
                 break;
             case XK_Down:
                 direction = 3;
-                DeplacementSerpent(direction ,serpent, longueur_serpent);
                 break;
             case XK_Left:
                 direction = 0;
-                DeplacementSerpent(direction ,serpent, longueur_serpent);
                 break;
             case XK_Right:
                 direction = 2;
-                DeplacementSerpent(direction ,serpent, longueur_serpent);
                 break;
             
             default:
@@ -216,7 +247,7 @@ int main()
 			{                  
                 n++;
                 Affichertimer(n);
-                 suivant=Microsecondes()+delta;
+                suivant=Microsecondes()+delta;
                 DeplacementSerpent(direction,serpent,longueur_serpent);
 			
 	        }
diff --git a/prog b/prog
index 7d15374d32f40e135f39315c84085b6644b190c5..d6a6b8ed6eb7ddc9c69cd47e24aee71aed44a0f7 100755
GIT binary patch
delta 4468
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

delta 3776
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
WD>JT`t>6cs1GQV_ik6M-$p0Td<4^Yh

diff --git a/test.c b/test.c
index 98225a3..bbe5266 100644
--- a/test.c
+++ b/test.c
@@ -1,58 +1,45 @@
-#include<stdio.h>
-#include<stdlib.h>
-#include<graph.h>
-#define delta 1000000L
- 
-void DessinerScene(int sprite,int x,int y,int n)
-{
-	char buf[100];
-	ChoisirEcran(1);
-	CopierZone(2,1,0,0,800,500,0,0);
-	snprintf(buf,100,"temps : %05d",n);
-	EcrireTexte(10,20,buf,0);
-	AfficherSprite(sprite,x,y);
-	CopierZone(1,0,0,0,800,500,0,0);
+#include <stdio.h>
+
+#define TAILLE 20
+
+/* Fonction pour afficher un tableau de coordonnées */
+void afficherSerpent(int serpent[], int taille) {
+    int i = 0;
+    for (i = 0; i < taille; i += 2) {
+        printf("(%d, %d) ", serpent[i], serpent[i + 1]);
+    }
+    printf("\n");
 }
- 
-int main()
-{
-	int pingouin;
-	int x,y,old_x,old_y;
-	int n;
-	unsigned long suivant;
-	int go_on=1;
- 
-	InitialiserGraphique();
-	CreerFenetre(0,0,800,500);
-	ChoisirEcran(2);
-	ChargerImageFond("./images/arctis2.jpg");		 
-	pingouin=ChargerSprite("./images/walk-0.png");
-	x=y=old_x=old_y=10;
-	n=0;
-	suivant=Microsecondes()+delta;
- 
-	while(go_on)
-	{
-		if (SourisCliquee()) go_on=0;
-		else
-		{
-			if (Microsecondes()>suivant)
-			{
-				n++;
-				DessinerScene(pingouin,x,y,n);
-				suivant=Microsecondes()+delta;
-			}
-			SourisPosition();
-			x=_X;
-			y=_Y;
-			if (x!=old_x || y!=old_y)
-			{
-				DessinerScene(pingouin,x,y,n);
-				old_x=x;
-				old_y=y;
-			}
-		}
-	}
-	FermerGraphique();
+
+/* Fonction pour décaler chaque paire d'éléments (x, y) du tableau vers la droite */
+void decalerSerpent(int serpent[], int taille) {
+    int tempX = serpent[0];
+    int tempY = serpent[1];
+    int i;
+
+    for (i = 2; i < taille; i += 2) {
+        int tempX2 = serpent[i];
+        int tempY2 = serpent[i + 1];
+
+        serpent[i] = tempX;
+        serpent[i + 1] = tempY;
+
+        tempX = tempX2;
+        tempY = tempY2;
+    }
+}
+
+int main() {
+    int serpent[TAILLE] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20};
+
+    printf("Serpent initial : ");
+    afficherSerpent(serpent, TAILLE);
+
+    /* Décaler le serpent d'une paire d'éléments vers la droite */
+    decalerSerpent(serpent, TAILLE);
+
+    printf("Serpent après décalage : ");
+    afficherSerpent(serpent, TAILLE);
+
+    return 0;
 }
- 
\ No newline at end of file