#include #include #include void pause(); int main(int argc, char *argv[]) { pause(); SDL_Quit(); return EXIT_SUCCESS; } void pause() { SDL_Init(SDL_INIT_VIDEO); SDL_Surface *ecran = NULL; SDL_Surface *lignes[15][15] = {NULL}; SDL_Surface *boom = NULL; SDL_Surface *caisse = NULL; SDL_Rect position; SDL_Rect positionmec; position.y=0; position.x=0; positionmec.y=0; positionmec.x=0; ecran = SDL_SetVideoMode(600, 500, 32, SDL_HWSURFACE); int i=0; int y=0; for (i = 1 ; i <= 10 ; i++){ for (y = 1 ; y <= 10 ; y++){ lignes[i][y]= SDL_LoadBMP("limit.bmp"); SDL_BlitSurface(lignes[i][y], NULL, ecran, &position); // Collage SDL_FreeSurface(lignes[i][y]); SDL_Flip(ecran); position.x=position.x+33; }position.y=position.y+33; position.x=0;} position.x=33*5; position.y=33*5; lignes[5][5]= SDL_LoadBMP("boom.bmp"); SDL_BlitSurface(lignes[5][5], NULL, ecran, &position); // Collage SDL_FreeSurface(lignes[5][5]); SDL_Flip(ecran); int continuer = 1; SDL_Event event; 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: // Veut arręter le jeu continuer = 0; break; case SDLK_UP: if(positionmec.y> 0){ lignes[positionmec.x][positionmec.y]= SDL_LoadBMP("limit.bmp"); SDL_BlitSurface(lignes[positionmec.x][positionmec.y], NULL, ecran, &positionmec); // Collage SDL_FreeSurface(lignes[positionmec.x][positionmec.y]); SDL_Flip(ecran); positionmec.y=positionmec.y-33; caisse= SDL_LoadBMP("caisse.bmp"); SDL_BlitSurface(caisse, NULL, ecran, &positionmec); // Collage SDL_FreeSurface(caisse); SDL_Flip(ecran); if(positionmec.x== (33*5) && positionmec.y== (33*5)) {continuer = 0;}} break; case SDLK_DOWN: // Veut arręter le jeu if(positionmec.y< (33*9)){ lignes[positionmec.x][positionmec.y]= SDL_LoadBMP("limit.bmp"); SDL_BlitSurface(lignes[positionmec.x][positionmec.y], NULL, ecran, &positionmec); // Collage SDL_FreeSurface(lignes[positionmec.x][positionmec.y]); SDL_Flip(ecran); positionmec.y=positionmec.y+33; caisse= SDL_LoadBMP("caisse.bmp"); SDL_BlitSurface(caisse, NULL, ecran, &positionmec); // Collage SDL_FreeSurface(caisse); SDL_Flip(ecran); if(positionmec.x== (33*5) && positionmec.y== (33*5)) {continuer = 0;}} break; case SDLK_RIGHT: if(positionmec.x< (33*9)){ lignes[positionmec.x][positionmec.y]= SDL_LoadBMP("limit.bmp"); SDL_BlitSurface(lignes[positionmec.x][positionmec.y], NULL, ecran, &positionmec); // Collage SDL_FreeSurface(lignes[positionmec.x][positionmec.y]); SDL_Flip(ecran); positionmec.x=positionmec.x+33; caisse= SDL_LoadBMP("caisse.bmp"); SDL_BlitSurface(caisse, NULL, ecran, &positionmec); // Collage SDL_FreeSurface(caisse); SDL_Flip(ecran); if(positionmec.x== (33*5) && positionmec.y== (33*5)) {continuer = 0;}} break; case SDLK_LEFT: if(positionmec.x> 0){ lignes[positionmec.x][positionmec.y]= SDL_LoadBMP("limit.bmp"); SDL_BlitSurface(lignes[positionmec.x][positionmec.y], NULL, ecran, &positionmec); // Collage SDL_FreeSurface(lignes[positionmec.x][positionmec.y]); SDL_Flip(ecran); positionmec.x=positionmec.x-33; caisse= SDL_LoadBMP("caisse.bmp"); SDL_BlitSurface(caisse, NULL, ecran, &positionmec); // Collage SDL_FreeSurface(caisse); SDL_Flip(ecran); if(positionmec.x== (33*5) && positionmec.y== (33*5)) {continuer = 0;}} break; } break; } } }