1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
| bool continuer = true;
SDL_Event event;
SDL_Surface *ecran = NULL;
SDL_Surface *mur = NULL, *poule = NULL, *renard = NULL, *vipere = NULL, *vide = NULL;
SDL_Rect position;
SDL_Init(SDL_INIT_VIDEO);
ecran = SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE);
// Chargement des sprites (décors, personnage...)
mur = SDL_LoadBMP("mur.bmp");
poule = SDL_LoadBMP("poule.bmp");
renard = SDL_LoadBMP("renard.bmp");
vipere = SDL_LoadBMP("vipere.bmp");
vide = SDL_LoadBMP("vide.bmp");
int tempsPrecedent = 0, tempsActuel = 0;//TEST
while (continuer == true)
{
SDL_PollEvent(&event); //récupération d"un évènement éventuel
switch(event.type)
{
case SDL_QUIT: //si on a cliqué sur quitté
continuer = false; //on sort de la boucle while
break;
}
tempsActuel = SDL_GetTicks(); //on note le temps courant
if ((tempsActuel - tempsPrecedent) > 1000) //code effectué toutes les secondes
{
deplacementPlateau(plateau, plateauTemp); //on déplace chaque individu du plateau
//placement des objets à l'écran
for (int i = 0 ; i < TAILLE_REELLE ; i++) //lignes
{
for (int j = 0 ; j < TAILLE_REELLE; j++) //colonnes
{
position.x = i * 50; //on se positionne pour placer une image de 50*50px
position.y = j * 50;
//sleon la nature de la case, on adffiche l'image
if((*plateau[i][j]).getTypeContenu() == ' ') //case vide
{
SDL_BlitSurface(vide, NULL, ecran, &position);
}
else if ((*plateau[i][j]).getTypeContenu() == 'P') //case poule
{
SDL_BlitSurface(poule, NULL, ecran, &position);
}
else if ((*plateau[i][j]).getTypeContenu() == 'R') //case Renard
{
SDL_BlitSurface(renard, NULL, ecran, &position);
}
else if ((*plateau[i][j]).getTypeContenu() == 'V') //case Vipere
{
SDL_BlitSurface(vipere, NULL, ecran, &position);
}
else if ((*plateau[i][j]).getTypeContenu() == 'M') //case Mur
{
SDL_BlitSurface(mur, NULL, ecran, &position);
}
}
}
SDL_Flip(ecran); //on met à jour l'écran
tempsPrecedent = tempsActuel;
}
}
SDL_Quit();
return EXIT_SUCCESS;
} |
Partager