X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Ftitle.c;h=0c66575a97a38f184a643e10d0b0925dc2d7249e;hb=2f395aba3974db45f45a8587ed423a3abeab4cd5;hp=993095c191c3e20a45435845b564efe2f2ebd58b;hpb=9725d9e35c7b9713bf2f4764f9eaea4bbd5c55bf;p=supertux.git diff --git a/src/title.c b/src/title.c index 993095c19..0c66575a9 100644 --- a/src/title.c +++ b/src/title.c @@ -7,7 +7,7 @@ bill@newbreedsoftware.com http://www.newbreedsoftware.com/supertux/ - April 11, 2000 - December 9, 2003 + April 11, 2000 - December 29, 2003 */ #include @@ -30,33 +30,33 @@ #include "screen.h" #include "high_scores.h" #include "menu.h" +#include "type.h" /* --- TITLE SCREEN --- */ int title(void) { - SDL_Surface * title, * anim1, * anim2; + texture_type title, anim1, anim2; SDL_Event event; SDLKey key; int done, quit, frame, pict, last_highscore; char str[80]; game_started = 0; + level_editor_started = 0; /* Init menu variables */ initmenu(); + clearscreen(0, 0, 0); updatescreen(); - /* Load images: */ - title = load_image(DATA_PREFIX "/images/title/title.png", IGNORE_ALPHA); - anim1 = load_image(DATA_PREFIX "/images/title/title-anim2.png", - IGNORE_ALPHA); - anim2 = load_image(DATA_PREFIX "/images/title/title-anim1.png", - IGNORE_ALPHA); + texture_load(&title,DATA_PREFIX "/images/title/title.png", IGNORE_ALPHA); + texture_load(&anim1,DATA_PREFIX "/images/title/title-anim2.png", IGNORE_ALPHA); + texture_load(&anim2,DATA_PREFIX "/images/title/title-anim1.png", IGNORE_ALPHA); /* --- Main title loop: --- */ @@ -69,16 +69,17 @@ int title(void) /* Draw the title background: */ - drawimage(title, 0, 0, UPDATE); + texture_draw(&title, 0, 0, NO_UPDATE); /* Draw the high score: */ last_highscore = load_hs(); sprintf(str, "High score: %d", last_highscore); - drawcenteredtext(str, 460, letters_red, UPDATE); + drawcenteredtext(str, 460, letters_red, NO_UPDATE, 1); while (!done && !quit) { + frame++; @@ -89,7 +90,6 @@ int title(void) if (event.type == SDL_QUIT) { /* Quit event - quit: */ - quit = 1; } else if (event.type == SDL_KEYDOWN) @@ -98,9 +98,9 @@ int title(void) key = event.key.keysym.sym; - /* Check for menu events */ + /* Check for menu events */ menu_event(key); - + if (key == SDLK_ESCAPE) { /* Escape: Quit: */ @@ -127,22 +127,22 @@ int title(void) } - if(menu_change) + if(use_gl || menu_change) { /* Draw the title background: */ - drawimage(title, 0, 0, UPDATE); + texture_draw_bg(&title, NO_UPDATE); /* Draw the high score: */ sprintf(str, "High score: %d", last_highscore); - drawcenteredtext(str, 460, letters_red, UPDATE); + drawcenteredtext(str, 460, letters_red, NO_UPDATE, 1); } /* Don't draw menu, if quit is true */ if(show_menu && !quit) quit = drawmenu(); - if(game_started) + if(game_started || level_editor_started) done = 1; /* Animate title screen: */ @@ -150,13 +150,13 @@ int title(void) pict = (frame / 5) % 3; if (pict == 0) - drawpart(title, 560, 270, 80, 75, UPDATE); + texture_draw_part(&title, 560, 270, 80, 75, NO_UPDATE); else if (pict == 1) - drawimage(anim1, 560, 270, UPDATE); + texture_draw(&anim1, 560, 270, NO_UPDATE); else if (pict == 2) - drawimage(anim2, 560, 270, UPDATE); - + texture_draw(&anim2, 560, 270, NO_UPDATE); + flipscreen(); /* Pause: */ @@ -167,9 +167,9 @@ int title(void) /* Free surfaces: */ - SDL_FreeSurface(title); - SDL_FreeSurface(anim1); - SDL_FreeSurface(anim2); + texture_free(&title); + texture_free(&anim1); + texture_free(&anim2); /* Return to main! */