Bonsoir a tous !
J´ai une image de mitraillette et une image de la meme mitraillette mais en tir.
Je voulais que quand on appuie sur "Espace", l´image de la mitraillette en tir se charge au meme endroit et a la place de la mitraillette normal !
Puis quand on relache, la mitraillette normal se remet !
Malheuresement, je ne trouve pas le moyen d´afficher l´image dans la condition (dans le case SDLK_SPACE etc...)
J´ai essayé ce code qui me met une fenetre noir mais quand je clique sur la croix pour fermer le programme, j´ai une fenetre blanche qui s´affiche a vitesse éclair et on voit la mitraillette et la cible en image.
ATTENTION : Ce code n´est que ma boucle principale, j´ai bien creer une surface et fait un SDL_Rect pour mitraillette et mitrailletteTir et mis les positions ! (et j´ai bien libérer la mémoire a la fin)
Alors voila :
while (continuer)
{
SDL_WaitEvent(&event);
switch(event.type)
{
case SDL_QUIT:
continuer = 0;
break;
case SDL_KEYDOWN:
switch (event.key.keysym.sym)
{
// Si la touche espace est enfoncée, on affiche l´image de la mitraillette en tir.
case SDLK_SPACE:
SDL_BlitSurface(mitraillette_tir, NULL, ecran, &positionMitrailletteTir);
SDL_Flip(ecran);
break;
}
case SDL_KEYUP:
switch (event.key.keysym.sym)
{
// Et quand la touche espace est relachée, on ré-affiche l´image de la mitraillette normal.
case SDLK_SPACE:
SDL_BlitSurface(mitraillette, NULL, ecran, &positionMitraillette);
SDL_Flip(ecran);
break;
}
break;
}
}
// On efface l´ecran.
SDL_FillRect(ecran, NULL, SDL_MapRGB(ecran->format, 255, 255, 255));
MERCI
DESOLER POUR LE ROMAN ^^