diff --git a/affichage.c b/affichage.c index 19ce43f..208304e 100644 --- a/affichage.c +++ b/affichage.c @@ -1,63 +1,218 @@ #include +#include #include +#define GRILLE_X 5 +#define GRILLE_Y 4 -void DessinerGrille(int x_g, int y_g, int x_fen, int y_fen, int triche){ +int Trouvee(int* found, int carte){ + int i; + for (i=0;i<10;i++){ + if (found[i] == carte) return 1; + } + return 0; +} + +void DefinirCouleurs(couleur c[10]){ + //Insère les couleurs dans le tableau c pris en argument + c[0] = CouleurParNom("red"); + c[1] = CouleurParNom("blue"); + c[2] = CouleurParNom("green"); + c[3] = CouleurParNom("yellow"); + c[4] = CouleurParNom("pink"); + c[5] = CouleurParNom("brown"); + c[6] = CouleurParNom("grey"); + c[7] = CouleurParNom("light blue"); + c[8] = CouleurParNom("purple"); + c[9] = CouleurParNom("orange"); +} + +int ZoneRectangle(int upper_x, int upper_y, int lower_x, int lower_y){ + //upper_x et upper_y sont les coordonnées du point supérieur gauche du rectangle + //lower_x et lower_y sont les coordonnées du point inferieur droit du rectangle + //La fonction renvoie 1 si la souris est dans la zone et renvoie 0 si elle n'y est pas + SourisPosition(); + int pos_x = _X; + int pos_y = _Y; + if ((pos_x >= upper_x) && (pos_x <= lower_x) && (pos_y >= upper_y) && (pos_y <= lower_y)) + return 1; + else return 0; +} + + +void DessinerGrille(int x_g, int y_g, int x_fen, int y_fen, int triche, int* found, int tab[4][5]){ + // Dessine la grille des cartes en noir si le mode de triche est désactivé et dévoile les cartes si le mode triche est activé int i,j; - int tab[2][2] = {{1,2},{1,2}}; + couleur c[10]; int x = 0; int y = 0; int l_case = (x_fen-((10*x_g)+10))/x_g; int h_case = (y_fen-((10*y_g)+10))/y_g; + DefinirCouleurs(c); if (triche == 0){ + ChoisirCouleurDessin(CouleurParNom("black")); for(i=10;i