j´ai trouvé pk ca foiré
- include < SDL/SDL.h>
SDL_Surface* screen;
SDL_Event event;
void init_SDL()
{
SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER);
screen = SDL_SetVideoMode(1024, 768, 32,SDL_HWSURFACE|SDL_DOUBLEBUF|SDL_FULLSCREEN);
SDL_ShowCursor(0);
}
SDL_Rect Rect(int x,int y,int w=0,int h=0)
{
SDL_Rect r;
r.x=x;
r.y=y;
r.w=w;
r.h=h;
return r;
}
SDL_Surface* LoadBMP(char* fichier,int vram=1)
{
SDL_Surface* f = SDL_LoadBMP(fichier);
SDL_Surface* r;
if ( vram)
r=SDL_CreateRGBSurface(SDL_HWSURFACE, f->w, f->h, 32, 0, 0, 0, 0);
if ( r==NULL) vram=0;
if ( !vram)
r=SDL_CreateRGBSurface(SDL_SWSURFACE, f->w, f->h, 32, 0, 0, 0, 0);
SDL_Rect R=Rect(0,0,f->w,f->h);
SDL_BlitSurface(f,NULL,r,&);
SDL_FreeSurface(f);
return r;
}
int main(int argc , char **argv)
{
int s=1;
int sx=1,sy=1;
SDL_Rect rect1;
SDL_Surface* firstscreen;
SDL_Surface* perso[4];
int fini=0;
init_SDL();
rect1.x = 0;
rect1.y = 0;
firstscreen=LoadBMP("map.bmp");
perso[0]=LoadBMP("homme1.bmp");
perso[1]=LoadBMP("homme2.bmp");
perso[2]=LoadBMP("homme3.bmp");
perso[3]=LoadBMP("homme4.bmp");
//SDL_SetColorKey(perso[4],SDL_SRCCOLORKEY , SDL_MapRGBA(perso[4]->format,255,0,255,0));
//SDL_SetAlpha(perso[4],SDL_SRCALPHA,128);
while(1)
{
if ( rect1.x<0) sx=1;
if ( rect1.y<0) sy=1;
if ( rect1.x>950) sx=-1;
if ( rect1.y>650) sy=-1;
SDL_BlitSurface(firstscreen,NULL,screen,NULL);
SDL_PollEvent(&);
if ( event.type == SDL_KEYDOWN && event.key.keysym.sym == SDLK_RETURN)
break;
if ( event.type == SDL_KEYDOWN)
{
if(event.key.keysym.sym == SDLK_RIGHT)
SDL_BlitSurface(perso[0],NULL,screen,&1);
if(event.key.keysym.sym == SDLK_UP)
SDL_BlitSurface(perso[1],NULL,screen,&1);
if(event.key.keysym.sym == SDLK_LEFT)
SDL_BlitSurface(perso[2],NULL,screen,&1);
if(event.key.keysym.sym == SDLK_DOWN)
SDL_BlitSurface(perso[3],NULL,screen,&1);
}
if ( rect1.x<0) sx=1;
if ( rect1.y<0) sy=1;
if ( rect1.x>950) sx=-1;
if ( rect1.y>650) sy=-1;
SDL_BlitSurface(firstscreen,NULL,screen,NULL);
SDL_BlitSurface(perso[rect1.x/20%4],NULL,screen,&
ect1);
SDL_Flip(screen);
}
SDL_ShowCursor(1);
SDL_Quit();
return 0;
}
/ /SDL_SetColorKey(perso[4],SDL_SRCCOLORKEY , SDL_MapRGBA(perso[4]->format,255,0,255,0));
//SDL_SetAlpha(perso[4],SDL_SRCALPHA,128);
c ca qui faisait foiré