SAE11_2021/images.c

117 lines
2.0 KiB
C
Raw Normal View History

#include <stdio.h>
#include <stdlib.h>
#include <graph.h>
#include <time.h>
#include "images.h"
2022-11-21 16:10:01 +01:00
2022-11-28 18:34:21 +01:00
int main(void){
2022-11-28 16:55:10 +01:00
InitialiserGraphique();
2022-11-21 16:19:18 +01:00
ChoisirEcran(0);
2022-11-28 16:55:10 +01:00
CreerFenetre(0,0,1024,576);
2022-11-29 16:35:28 +01:00
char tirage[50], affichage[10];
2022-11-29 13:26:23 +01:00
int pos_x, pos_y, clic_x, clic_y, im_y, im_x;
2022-11-29 16:35:28 +01:00
int i, j, g;
int nb, score=0;
2022-11-28 13:42:06 +01:00
int tab[40];
2022-11-28 18:34:21 +01:00
int nb_paires=20;
int positions[20][4];
2022-11-28 16:55:10 +01:00
ChargerImage("Images/background.png",0,0,0,0,1024,576);
2022-11-28 18:34:21 +01:00
/*Initialisation des tableaux*/
for (i=0;i<20;i++){
2022-11-29 17:27:10 +01:00
for (j=0;j<4;j++){
2022-11-28 18:34:21 +01:00
positions[i][j]=0;
2022-11-29 16:35:28 +01:00
}
2022-11-28 18:34:21 +01:00
}
2022-11-28 16:55:10 +01:00
for (i=0;i<40;i++){
2022-11-29 17:27:10 +01:00
tab[i]=-1;
2022-11-28 16:55:10 +01:00
}
2022-11-21 16:19:18 +01:00
2022-11-28 18:34:21 +01:00
/*Tirage des images*/
2022-11-25 10:59:42 +01:00
srand(time(NULL));
2022-11-28 16:55:10 +01:00
for (i=0;i<2;i++){
2022-11-29 17:27:10 +01:00
for (j=0;j<nb_paires;j++){
2022-11-28 16:55:10 +01:00
nb=rand()%(nb_paires*2);
2022-11-29 17:27:10 +01:00
if (tab[nb]!=-1){
2022-11-28 16:55:10 +01:00
j--;
}
else{
tab[nb]=j;
2022-11-28 13:42:06 +01:00
}
}
}
2022-11-29 17:27:10 +01:00
printf("toto\n");
2022-11-28 13:42:06 +01:00
2022-11-28 18:34:21 +01:00
/*Affichage des images*/
2022-11-28 16:55:10 +01:00
srand(time(NULL));
i=0;
for (pos_y=10;pos_y<380;pos_y=pos_y+90){
2022-11-28 13:42:06 +01:00
for (pos_x=10;pos_x<650;pos_x=pos_x+90){
2022-11-29 17:27:10 +01:00
/*if (tab[i]==-1){
2022-11-28 16:55:10 +01:00
pos_y=1000;
2022-11-29 17:27:10 +01:00
}*/
if (positions[tab[i]][0]==0){
2022-11-28 18:34:21 +01:00
positions[tab[i]][0]=pos_x;
positions[tab[i]][1]=pos_y;
}
else{
positions[tab[i]][2]=pos_x;
positions[tab[i]][3]=pos_y;
}
2022-11-29 16:35:28 +01:00
/*Triche*/
2022-11-29 17:27:10 +01:00
snprintf(tirage,50,"Images/image%d.png",(tab[i]+1));
ChargerImage(tirage,pos_x,pos_y,0,0,80,80);
2022-11-29 16:35:28 +01:00
2022-11-29 17:27:10 +01:00
///ChargerImage("Images/image0.png",pos_x,pos_y,0,0,80,80);
i++;
}
2022-11-29 13:26:23 +01:00
}
2022-11-29 16:35:28 +01:00
2022-11-29 17:27:10 +01:00
while(score<=20){
if (SourisCliquee()){
SourisPosition();
2022-11-29 16:35:28 +01:00
clic_x=_X;
clic_y=_Y;
}
2022-11-28 18:34:21 +01:00
2022-11-29 16:35:28 +01:00
for (pos_y=380;pos_y>10;pos_y=pos_y-90){
if (clic_y>=pos_y){
2022-11-29 17:27:10 +01:00
if (clic_y<=pos_y+80){
2022-11-29 16:35:28 +01:00
im_y=pos_y;
pos_y=0;
}
}
}
for (pos_x=650;pos_x>10;pos_x=pos_x-90){
if (clic_x>=pos_x){
2022-11-29 17:27:10 +01:00
if (clic_x<=pos_x+80){
2022-11-29 16:35:28 +01:00
im_x=pos_x;
pos_x=0;
}
}
}
for (i=0;i<20;i++){
for (j=0;j<2;j++){
if (positions[i][(j*2)]==im_x){
if (positions[i][(j*2+1)]==im_y){
g=i+1;
snprintf(affichage,10,"Images/image%d.png",g);
ChargerImage(affichage,pos_x,pos_y,0,0,80,80);
}
}
}
}
2022-11-29 17:27:10 +01:00
}
2022-11-28 16:55:10 +01:00
Touche();
FermerGraphique();
printf("\n");
2022-11-28 13:42:06 +01:00
return EXIT_SUCCESS;
2022-11-25 10:59:42 +01:00
}