Repartitions du code en plusieurs fichier (début du vrai programme)

This commit is contained in:
2023-12-02 10:05:42 +01:00
parent e34d6fb72b
commit b637d047c9
8 changed files with 283 additions and 82 deletions

92
main.c
View File

@@ -2,6 +2,8 @@
#include <stdio.h>
#include <graph.h>
#include <time.h>
#include "evenement.h"
#define W_WINDOW 930 /* Largeur de la fenêtre*/
#define H_WINDOW 710 /* Hauteur de la fenêtre*/
@@ -15,82 +17,6 @@
#define delta 100000L
void Affichertimeretscore(int m,int n,int score) /*Afficher le temps passé et le score*/
{
char buf[100];
char buff[100];
couleur j;
j=CouleurParNom("yellow");
ChoisirCouleurDessin(j);
ChoisirEcran(1);
CopierZone(2,1,0,0,930,710,0,0);
snprintf(buf,100,"temps : %02d:%02d",m,n);
snprintf(buff,100,"SCORE : %07d",score);
EcrireTexte(60,650,buf,2);
EcrireTexte(600,650,buff,2);
CopierZone(1,0,0,0,930,710,0,0);
}
void grandirserpent(int *serpent)
{
}
void DeplacementSerpent(int direction ,int *serpent, int longueur)
{
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);
}
}
int ArrondirPixel(int nombre) /* Calcule un arrondi du pixel pour pouvoir respecter la norme des 40 lignes et 60 colonnes */
{
/* Calcul du reste de la division par 15 */
@@ -102,7 +28,7 @@ int ArrondirPixel(int nombre) /* Calcule un arrondi du pixel pour pouvoir respec
return arrondi;
}
void gen_pastille(int nb_pastille, int *p_pastilles) /* Ajout des pointeurs pour le futur tableau de pastilles */
void gen_pastille(int nb_pastille, int *p_pastilles)
/* nb_pastille = int nombre de pastille voulue , p_pastilles est un pointeur d'un tableau de pixels qui sont des pastilles*/
/*Générer une pastille dans la grid*/
@@ -243,7 +169,7 @@ int main()
direction = 3;
if(direction_davant == 1 && direction == 3)
{
direction = direction_davant;
direction = direction_davant; /* Changements de direction du serpent*/
}
break;
case XK_Left:
@@ -260,12 +186,12 @@ int main()
direction = direction_davant;
}
break;
case XK_space:
if(pause == 0)
{
pause = 1 ;
}
} /* Faire pause */
else if(pause == 1)
{
pause = 0;
@@ -290,9 +216,11 @@ int main()
n=0;
}
Affichertimeretscore(m,n,score);
AfficherTimerEtScore(m,n,score);
suivant=Microsecondes()+delta;
direction_davant = direction;
direction_davant = direction; /* Check si le serpent à le droit de changer de direction */
MangerPastille(serpent,pastilles,longueur_serpent,longueur_pastilles);
DeplacementSerpent(direction,serpent,longueur_serpent);