compteur de coups fonctionnel
This commit is contained in:
@@ -152,11 +152,13 @@ int main(void){
|
|||||||
touche = Touche();
|
touche = Touche();
|
||||||
|
|
||||||
/* Pour quitter on clique sur q */
|
/* Pour quitter on clique sur q */
|
||||||
if (touche == XK_q || touche == XK_Q) break;
|
if (touche == XK_q || touche == XK_Q) {
|
||||||
|
FermerGraphique();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Déplacement +on affiche la nouvelle grille */
|
/* Déplacement +on affiche la nouvelle grille */
|
||||||
deplacer(grille,ligne,colonne,touche);
|
if (deplacer(grille,ligne,colonne,touche) == 1) {
|
||||||
coups++;
|
coups++;
|
||||||
afficher_plateau(grille,ligne,colonne,coups);
|
afficher_plateau(grille,ligne,colonne,coups);
|
||||||
/*On vérifie si on a gagner */
|
/*On vérifie si on a gagner */
|
||||||
@@ -164,7 +166,7 @@ int main(void){
|
|||||||
jeu_fini = 1;
|
jeu_fini = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (jeu_fini == 1){
|
if (jeu_fini == 1){
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ void initialiser_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void deplacer(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne,int touche) {
|
int deplacer(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne,int touche) {
|
||||||
int i, j;
|
int i, j;
|
||||||
int vide_i = -1, vide_j = -1;
|
int vide_i = -1, vide_j = -1;
|
||||||
int cible_i, cible_j;
|
int cible_i, cible_j;
|
||||||
@@ -44,20 +44,23 @@ cible_j = vide_j;
|
|||||||
|
|
||||||
/* Calculer la cible */
|
/* Calculer la cible */
|
||||||
if(touche == XK_Left) cible_j = vide_j - 1;
|
if(touche == XK_Left) cible_j = vide_j - 1;
|
||||||
if(touche == XK_Right) cible_j = vide_j + 1;
|
else if(touche == XK_Right) cible_j = vide_j + 1;
|
||||||
if(touche == XK_Up) cible_i = vide_i - 1;
|
else if(touche == XK_Up) cible_i = vide_i - 1;
|
||||||
if(touche == XK_Down) cible_i = vide_i + 1;
|
else if(touche == XK_Down) cible_i = vide_i + 1;
|
||||||
|
else {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
/* Vérifier les bords */
|
/* Vérifier les bords */
|
||||||
if (cible_i < 0 || cible_i >= nb_ligne ||
|
if (cible_i < 0 || cible_i >= nb_ligne ||
|
||||||
cible_j < 0 || cible_j >= nb_colonne) {
|
cible_j < 0 || cible_j >= nb_colonne) {
|
||||||
return;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Echanger */
|
/* Echanger */
|
||||||
temp = grille[cible_i][cible_j];
|
temp = grille[cible_i][cible_j];
|
||||||
grille[cible_i][cible_j] = 0;
|
grille[cible_i][cible_j] = 0;
|
||||||
grille[vide_i][vide_j] = temp;
|
grille[vide_i][vide_j] = temp;
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void melanger_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne) {
|
void melanger_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne) {
|
||||||
@@ -83,6 +86,7 @@ void melanger_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_col
|
|||||||
|
|
||||||
int verifier_victoire(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne){
|
int verifier_victoire(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne){
|
||||||
int i,j,compteur = 1;
|
int i,j,compteur = 1;
|
||||||
|
|
||||||
if(grille[0][0] != 0)return 0;
|
if(grille[0][0] != 0)return 0;
|
||||||
|
|
||||||
for(i = 0; i < nb_ligne; i++) {
|
for(i = 0; i < nb_ligne; i++) {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
void initialiser_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne);
|
void initialiser_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne);
|
||||||
void deplacer(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne, int touche);
|
int deplacer(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne, int touche);
|
||||||
void deplacer_souris(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne,int clic_x,int clic_y);
|
void deplacer_souris(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne,int clic_x,int clic_y);
|
||||||
void melanger_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne);
|
void melanger_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user