From 6e0d5af9121a7b04069e6b72bb87da441ed6e147 Mon Sep 17 00:00:00 2001 From: nguyenh Date: Tue, 29 Nov 2022 01:21:04 +0100 Subject: [PATCH] =?UTF-8?q?Gros=20avancement=20sur=20l'=C3=A9x=C3=A9cution?= =?UTF-8?q?=20du=20jeu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ChargerMode.h | 9 ++++--- Jeu.h | 66 ++++++++++++++++++++++++++++++++++++++++----------- 2 files changed, 58 insertions(+), 17 deletions(-) diff --git a/ChargerMode.h b/ChargerMode.h index fb3e081..92edc21 100644 --- a/ChargerMode.h +++ b/ChargerMode.h @@ -41,10 +41,10 @@ void CacherGrille(int** grille, int difficulte) { int ligne; int colonne; int sprite; - sprite=ChargerSprite("./images/wood3.png"); - AfficherSprite(sprite,380,110); - sprite=ChargerSprite("./images/wood2.png"); if (difficulte==1) { + sprite=ChargerSprite("./images/wood3.png"); + AfficherSprite(sprite,380,110); + sprite=ChargerSprite("./images/wood2.png"); for (ligne=0;ligne<4;ligne++) { for (colonne=0;colonne<4;colonne++) { AfficherSprite(sprite,422+(124*colonne),152+(124*ligne)); @@ -52,6 +52,9 @@ void CacherGrille(int** grille, int difficulte) { } } else if (difficulte==2) { + sprite=ChargerSprite("./images/wood4.png"); + AfficherSprite(sprite,265,10); + sprite=ChargerSprite("./images/wood2.png"); for (ligne=0;ligne<6;ligne++) { for (colonne=0;colonne<6;colonne++) { AfficherSprite(sprite,308+(114*colonne),38+(114*ligne)); diff --git a/Jeu.h b/Jeu.h index 7c558a4..3895c24 100644 --- a/Jeu.h +++ b/Jeu.h @@ -5,29 +5,66 @@ #include #include "ChargerMode.h" -void DevoilerCarte(int carte,int f, int i) { + +int ComparerCartes(int carte1, int carte2) { + if (carte1==carte2) { + return 1; + } + else { + return 0; + } +} + +void DeuxiemeCarte(int carte,int f, int i) { + AfficherSprite(carte,432+(124*f),162+(124*i)); +} + +void PremiereCarte(int ** grille, int carte,int nomCarte, int f, int i) { + int ligne, colonne; + int carte1=nomCarte; + int carte2; int visible=1; time_t suivant; + int asec=1; + char str[50]; + int deuxiemecarte=0; AfficherSprite(carte,432+(124*f),162+(124*i)); - suivant = time(NULL)+1; - while (visible) { - if (time(NULL)==suivant) - { - /* une periode s'est écoulé */ - /* prochaine date */ - break; + while (!deuxiemecarte) { + if (SourisCliquee()) { + SourisPosition(); + for (ligne=0; ligne<4; ligne++) { + for (colonne=0; colonne<4; colonne++) { + if (_X>422+(124*colonne) && _X <422+(124*colonne)+84 && _Y>152+(124*ligne) && _Y < 152+(124*ligne)+84 &&(ligne!=i || colonne!=f)) { + carte2=grille[ligne][colonne]; + sprintf(str,"./images/%i.png",grille[ligne][colonne]); + carte=ChargerSprite(str); + DeuxiemeCarte(carte,colonne,ligne); + suivant=time(NULL); + if (!ComparerCartes(carte1,carte2)){ + while(asec){ + if (time(NULL)==suivant+1) { + carte=ChargerSprite("./images/wood2.png"); + AfficherSprite(carte,422+(124*f),152+(124*i)); + AfficherSprite(carte,422+(124*colonne),152+(124*ligne)); + asec=0; + } + } + } + deuxiemecarte=1; + } + } + } } } - carte=ChargerSprite("./images/wood2.png"); - AfficherSprite(carte,422+(124*f),152+(124*i)); } + void jeu(int** grille, int difficulte) { - int tricher=0; + int tricheur=0; int i, f; int carte; char str[50]; if (difficulte==1) { - while(!tricher) { + while(!tricheur) { if (SourisCliquee()) { SourisPosition(); for (i=0; i<4; i++) { @@ -36,8 +73,9 @@ void jeu(int** grille, int difficulte) { sprintf(str,"./images/%i.png",grille[i][f]); carte=ChargerSprite(str); AfficherSprite(carte,432+(124*f),162+(124*i)); - - DevoilerCarte(carte,f,i); + PremiereCarte(grille, carte, grille[i][f], f,i); + f=3; + i=3; } } }