Repartitions du code en plusieurs fichier (début du vrai programme)
This commit is contained in:
92
main.c
92
main.c
@@ -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);
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user