Création de fonctions pour les cartes
- Création d'une fonction create_card() - Création d'une fonction show_card() qui sera appelé lorsque l'utilisateur clique sur une carte pour la retourner - Création d'une fonction load_card() qui sera appelé pour charger le fichier d'image d'une carte uniquement lorsqu'il est nécessaire d'afficher cette dernière
This commit is contained in:
parent
96480e1be5
commit
deb9868be4
@ -7,6 +7,10 @@ typedef struct {
|
||||
char *file;
|
||||
} card;
|
||||
|
||||
card create_card(int x, int y, int L, int H, char *file);
|
||||
void load_card(card carte);
|
||||
|
||||
void show_card(card carte);
|
||||
|
||||
card create_card(int x, int y, int L, int H, int id, char *file);
|
||||
|
||||
#endif
|
19
src/card.c
19
src/card.c
@ -9,9 +9,24 @@ typedef struct {
|
||||
char *file;
|
||||
} card;
|
||||
|
||||
card create_card(int x, int y, int L, int H, char *file) {
|
||||
void load_card(card carte) {
|
||||
if (!carte.loaded) {
|
||||
ChoisirEcran(1);
|
||||
ChargerImage(carte.file, carte.zone.x, carte.zone.y, 0, 0, carte.zone.L, carte.zone.H);
|
||||
carte.loaded = 1;
|
||||
ChoisirEcran(0);
|
||||
}
|
||||
}
|
||||
|
||||
void show_card(card carte) {
|
||||
if (!carte.loaded) load_card(carte);
|
||||
CopierZone(1, 0, carte.zone.x, carte.zone.y, carte.zone.L, carte.zone.H, carte.zone.x, carte.zone.y);
|
||||
carte.displayed = 1;
|
||||
}
|
||||
|
||||
card create_card(int x, int y, int L, int H, int id, char *file) {
|
||||
zone zone = {x, y, L, H};
|
||||
card carte = {zone, 0, 0, file};
|
||||
card carte = {zone, 0, 0, 0, id, file};
|
||||
DessinerRectangle(carte.zone.x, carte.zone.y, carte.zone.L, carte.zone.H);
|
||||
return carte;
|
||||
}
|
@ -24,7 +24,7 @@ int game(int colonnes, int lignes) {
|
||||
ChoisirEcran(i);
|
||||
EffacerEcran(CouleurParComposante(54, 57, 63));
|
||||
}
|
||||
|
||||
|
||||
ChoisirCouleurDessin(CouleurParNom("white"));
|
||||
|
||||
for(i = 0; i < (colonnes * lignes) / 2;) {
|
||||
@ -74,6 +74,7 @@ int game(int colonnes, int lignes) {
|
||||
GAME_MARGIN_RIGHT + (((WINDOW_WIDTH - (GAME_MARGIN_RIGHT + GAME_MARGIN_LEFT)) - (case_max_dimensions * colonnes)) / 2) + (c * case_max_dimensions),
|
||||
GAME_MARGIN_TOP + (((WINDOW_HEIGHT - (GAME_MARGIN_TOP + GAME_MARGIN_BOTTOM)) - (case_max_dimensions * lignes)) / 2) + (l * case_max_dimensions),
|
||||
case_max_dimensions - (2 * case_margin), case_max_dimensions - (2 * case_margin),
|
||||
tab[i],
|
||||
file
|
||||
);
|
||||
i++;
|
||||
|
Loading…
Reference in New Issue
Block a user