Maj 28 novembre, nouveau fichier Jeu.h

This commit is contained in:
nguyenh 2022-11-28 10:16:28 +01:00
parent 1071e42aae
commit 25c614c6a0
6 changed files with 79 additions and 20 deletions

View File

@ -2,7 +2,7 @@
#include <graph.h> #include <graph.h>
void ChargerMainMenu() { void ChargerMainMenu() {
int mainMenu=1; /*Afficher la fenêtre menu*/
int panneau; int panneau;
panneau=ChargerSprite("./images/scroll2.png"); panneau=ChargerSprite("./images/scroll2.png");
ChargerImageFond("./images/japanbg4.jpg"); ChargerImageFond("./images/japanbg4.jpg");

View File

@ -4,8 +4,10 @@
#include <time.h> #include <time.h>
#include <stdio.h> #include <stdio.h>
int** CreerGrille(int* tab, int nbligne, int nbcolonne) { int** CreerGrille(int* tab, int nbligne, int nbcolonne) {
/*Fonction qui permet de mélanger les cartes de façon aléatoire et les stocker dans un tableau 2D
Prend en argument un tableau, le nombre de ligne et colonne (nbligne*nbcolonne=longeur du tableau)
Renvoie un tableau 2D*/
srand(time(NULL)); srand(time(NULL));
int** grille = calloc(nbligne, sizeof(int*)); int** grille = calloc(nbligne, sizeof(int*));
for (int c = 0; c < nbcolonne; c++) { for (int c = 0; c < nbcolonne; c++) {
@ -35,9 +37,12 @@ int** CreerGrille(int* tab, int nbligne, int nbcolonne) {
} }
void CacherGrille(int** grille, int difficulte) { void CacherGrille(int** grille, int difficulte) {
/*Fonction qui dessine une grille de cartes de dos*/
int ligne; int ligne;
int colonne; int colonne;
int sprite; int sprite;
sprite=ChargerSprite("./images/wood3.png");
AfficherSprite(sprite,380,110);
sprite=ChargerSprite("./images/wood2.png"); sprite=ChargerSprite("./images/wood2.png");
if (difficulte==1) { if (difficulte==1) {
for (ligne=0;ligne<4;ligne++) { for (ligne=0;ligne<4;ligne++) {
@ -56,14 +61,16 @@ void CacherGrille(int** grille, int difficulte) {
} }
void AfficherGrille(int** grille, int difficulte) { void AfficherGrille(int** grille, int difficulte) {
/*Fonction qui dévoile tous les cartes, utile en mode tricheur*/
int ligne; int ligne;
int colonne; int colonne;
int image; int image;
int sprite; int sprite;
char str[50]; char str[50];
sprite=ChargerSprite("./images/wood3.png");
AfficherSprite(sprite,380,110); AfficherSprite(sprite,380,110);
if (difficulte==1) { if (difficulte==1) {
sprite=ChargerSprite("./images/wood3.png");
AfficherSprite(sprite,380,110);
for (ligne=0;ligne<4;ligne++) { for (ligne=0;ligne<4;ligne++) {
for (colonne=0;colonne<4;colonne++) { for (colonne=0;colonne<4;colonne++) {
sprintf(str,"./images/%i.png", grille[ligne][colonne]); sprintf(str,"./images/%i.png", grille[ligne][colonne]);
@ -73,6 +80,8 @@ void AfficherGrille(int** grille, int difficulte) {
} }
} }
else if (difficulte==2) { else if (difficulte==2) {
sprite=ChargerSprite("./images/wood4.png");
AfficherSprite(sprite,265,10);
for (ligne=0;ligne<6;ligne++) { for (ligne=0;ligne<6;ligne++) {
for (colonne=0;colonne<6;colonne++) { for (colonne=0;colonne<6;colonne++) {
sprintf(str,"./images/%i.png", grille[ligne][colonne]); sprintf(str,"./images/%i.png", grille[ligne][colonne]);
@ -81,11 +90,10 @@ void AfficherGrille(int** grille, int difficulte) {
} }
} }
} }
CacherGrille(grille, 2);
Touche();
} }
void ChargerFacile() { int** ChargerFacile() {
/*Afficher la fenêtre de jeu facile*/
ChargerImageFond("./images/japanbg.png"); ChargerImageFond("./images/japanbg.png");
int i; int i;
int f; int f;
@ -99,11 +107,13 @@ void ChargerFacile() {
cpt+=1; cpt+=1;
} }
grille=CreerGrille(tab,4,4); grille=CreerGrille(tab,4,4);
AfficherGrille(grille, 1); /**/ CacherGrille(grille, 1);
return grille;
} }
void ChargerMoyen() { int** ChargerMoyen() {
ChargerImageFond("./images/japanbg.png"); /*Afficher la fenêtre de jeu moyen*/
ChargerImageFond("./images/japanbg3.png");
int i; int i;
int f; int f;
int cpt=1; int cpt=1;
@ -116,14 +126,6 @@ void ChargerMoyen() {
cpt+=1; cpt+=1;
} }
grille=CreerGrille(tab,6,6); grille=CreerGrille(tab,6,6);
AfficherGrille(grille, 2); /**/ CacherGrille(grille, 2);
} return grille;
void ChargerDifficulte(int difficulte) {
if (difficulte==1) {
ChargerFacile();
}
else if (difficulte=2) {
ChargerMoyen();
}
} }

57
Jeu.h Normal file
View File

@ -0,0 +1,57 @@
#include <stdlib.h>
#include <graph.h>
#include <string.h>
#include <time.h>
#include <stdio.h>
#include "ChargerMode.h"
void DevoilerCarte(int carte,int f, int i) {
int visible=1;
time_t suivant;
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;
}
}
carte=ChargerSprite("./images/wood2.png");
AfficherSprite(carte,422+(124*f),152+(124*i));
}
void jeu(int** grille, int difficulte) {
int tricher=0;
int i, f;
int carte;
char str[50];
if (difficulte==1) {
while(!tricher) {
if (SourisCliquee()) {
SourisPosition();
for (i=0; i<4; i++) {
for (f=0; f<4; f++) {
if (_X>422+(124*f) && _X <422+(124*f)+84 && _Y>152+(124*i) && _Y < 152+(124*i)+84) {
sprintf(str,"./images/%i.png",grille[i][f]);
carte=ChargerSprite(str);
AfficherSprite(carte,432+(124*f),162+(124*i));
DevoilerCarte(carte,f,i);
}
}
}
}
}
}
}
void ChargerDifficulte(int difficulte) {
/*Charge la difficulté choisi au menu principal*/
if (difficulte==1) {
jeu(ChargerFacile(), 1);
}
else if (difficulte=2) {
jeu(ChargerMoyen(), 2);
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 910 KiB

After

Width:  |  Height:  |  Size: 105 KiB

BIN
images/wood4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

View File

@ -3,7 +3,7 @@
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
#include "ChargerMainMenu.h" #include "ChargerMainMenu.h"
#include "ChargerMode.h" #include "Jeu.h"
int main() { int main() {
int mainMenu=1; int mainMenu=1;