#include #include "affichage.h" #include #include "config.h" void init_affichage(int largeur_img, int hauteur_img){ InitialiserGraphique(); /*La fenetre vass faire la taille de la grille*/ CreerFenetre(100, 100, largeur_img, hauteur_img + 60); } void charger_image_source(char *nom_fichier) { ChoisirEcran(1); EffacerEcran(CouleurParNom("black")); /* On charge l'image. On force sa taille pour qu'elle remplisse bien le jeu */ ChargerImageFond(nom_fichier); ChoisirEcran(0); } void afficher_plateau(int grille[MAX_TAILLE][MAX_TAILLE],int nb_ligne,int nb_colonne,int coups, int l_case, int h_case){ int i,j; int x, y; int num; int src_x, src_y; char text_coups[50]; EffacerEcran(CouleurParNom("black")); /*Compteur de coups*/ ChoisirCouleurDessin(CouleurParNom("white")); sprintf(text_coups,"Coups : %d",coups); /* On place le texte en bas de l'image */ EcrireTexte(10, nb_ligne*h_case + 40, text_coups, 2); for (i = 0; i < nb_ligne; i++){ for(j = 0; j < nb_colonne; j++){ /*Calcul en pixel de la taille d'une case*/ num = grille[i][j]; /* Calcul dynamique de la position */ x = j * l_case; y = i * h_case; /*Ici on saute la case vide du taquin*/ if (num == 0) { ChoisirCouleurDessin(CouleurParNom("black")); RemplirRectangle(x, y, l_case, h_case); continue; } src_x = (num-1) % nb_colonne * l_case; src_y = (num-1) / nb_colonne * h_case; CopierZone(1, 0, src_x, src_y, l_case, h_case, x, y); /*ET on ecrit le numéro dans un rectagle*/ ChoisirCouleurDessin(CouleurParNom("black")); DessinerRectangle(x, y, l_case, h_case); } } } void fermer_affichage(void){ FermerGraphique(); }