Bonjour,
je viens de me lancer dans la SDL, mais il se trouve que je plante un peu......je suis entrain de programmer le jeu du tetris mais je m'embrouille et j'aurai besoin d'un peu d'aide.
Voila ce que j'ai écris jusqu’à maintenant:
#include<SDL/SDL_image.h>
#include<stdio.h>
#include<stdlib.h>
#include<SDL/SDL.h>
void jouer();
void niveau();
int main(int argc,char *argv[])
{
SDL_Init(SDL_INIT_VIDEO);
SDL_Surface *ecran=NULL,*menu;
SDL_Rect positionmenu;
int continuer=1;
SDL_Event event;
ecran=SDL_SetVideoMode(800,600,32,SDL_HWSURFACE|SDL_DOUBLEBUF);
SDL_WM_SetCaption("tetris",NULL);
menu=IMG_Load("menu_tetris.jpg");
positionmenu.x=ecran->w/2-menu->w/2;
positionmenu.y=ecran->h/2-menu->h/2;
SDL_BlitSurface(menu,NULL,ecran,&positionmenu);
while(continuer)
{
SDL_WaitEvent(&event);
switch(event.type)
{
case SDL_QUIT:
continuer=0;
break;
case SDL_KEYDOWN:
switch(event.key.keysym.sym)
{
case SDLK_ESCAPE:
continuer=0;
break;
case SDLK_a:
jouer(ecran);
break;
case SDLK_b:
niveau(ecran);
break;
}
break;
}
SDL_FillRect(ecran,NULL,SDL_MapRGB(ecran->format,0,0,0));
SDL_BlitSurface(menu,NULL,ecran,&positionmenu);
SDL_Flip(ecran);
}
SDL_FreeSurface(menu);
SDL_Quit();
return EXIT_SUCCESS;
}
void jouer(SDL_Surface*ecran)
{
SDL_Surface *piece[7] = {NULL};
SDL_Surface *mur = NULL;
SDL_Rect position;
SDL_Event event;
int continuer = 1,i = 0, j = 0;
int carte[400][300] = {0};
mur=IMG_Load("mur_tetris.jpg");
...........
je me suis basée sur le cours du site du zéro.
merci d'avance.