From fcd09fafc54849557def0a4e22c93dc4fc7dd892 Mon Sep 17 00:00:00 2001 From: Silvan Jegen Date: Sun, 13 Jan 2019 19:21:08 +0100 Subject: Make help screen work --- game.c | 2 +- helpscreen.c | 14 ++++---------- main.c | 10 +++------- 3 files changed, 8 insertions(+), 18 deletions(-) diff --git a/game.c b/game.c index f4ab66a..9d967d3 100644 --- a/game.c +++ b/game.c @@ -122,7 +122,7 @@ int play_level(SDL_Renderer* renderer, struct level_struct *currentlevel, SDL_Te case SDLK_h: // View the help screen - help(renderer, surf_screen); + help(renderer); x = 0; y = 0; diff --git a/helpscreen.c b/helpscreen.c index bebc936..bb298bf 100644 --- a/helpscreen.c +++ b/helpscreen.c @@ -1,22 +1,16 @@ -void help(SDL_Renderer* renderer, SDL_Texture * surf_screen ) +void help(SDL_Renderer* renderer) { // Load help image - SDL_Surface* surf_help = IMG_Load( "helpscreen.png" ); + SDL_Surface* surf_help = IMG_Load("helpscreen.png"); SDL_Texture* surf_help_tex = SDL_CreateTextureFromSurface(renderer, surf_help); - // Draw this image onto screen - //SDL_BlitSurface( surf_help, NULL, surf_screen, NULL); - //SDL_Flip( surf_screen ); - - SDL_UpdateTexture(surf_screen, NULL, surf_help_tex, 640 * sizeof (Uint32)); - SDL_RenderClear(renderer); - SDL_RenderCopy(renderer, surf_screen, NULL, NULL); + SDL_RenderCopy(renderer, surf_help_tex, NULL, NULL); SDL_RenderPresent(renderer); // now free the memory we used to draw this image - free( surf_help ); + SDL_FreeSurface(surf_help); // Now wait until the user presses a key SDL_Event event; diff --git a/main.c b/main.c index a98b479..fbb130d 100644 --- a/main.c +++ b/main.c @@ -83,7 +83,7 @@ int main(int argc, char *argv[]) if (!surf_title_tex) { error_sdl("could not get title texture from surface\n"); } - + /* We loop the menu continously for a number of reasons: * 1) To make sure we capture and respond to user input * 2) To continue redrawing the menu graphic. @@ -94,12 +94,8 @@ int main(int argc, char *argv[]) while ( 1 ) { - SDL_UpdateTexture(surf_screen, NULL, surf_title->pixels, surf_title->pitch); - - //SDL_BlitSurface( surf_title, NULL, surf_screen, NULL); // Draw menu - SDL_RenderClear(renderer); - SDL_RenderCopy(renderer, surf_screen, NULL, NULL); + SDL_RenderCopy(renderer, surf_title_tex, NULL, NULL); SDL_RenderPresent(renderer); // The while statement attempts to go through every key the user has pressed @@ -111,7 +107,7 @@ int main(int argc, char *argv[]) { // Menu choice selection if ( menuevent.key.keysym.sym == SDLK_p ) game_loop(renderer, surf_screen); - else if ( menuevent.key.keysym.sym == SDLK_h ) help(renderer, surf_screen); + else if ( menuevent.key.keysym.sym == SDLK_h ) help(renderer); else if ( menuevent.key.keysym.sym == SDLK_q || menuevent.key.keysym.sym == SDLK_ESCAPE ) exit(0); } } -- cgit v1.2.1-18-gbd029