added unstable_tile object
[supertux.git] / src / title.cpp
index 12f1c25..df500cf 100644 (file)
@@ -36,7 +36,6 @@
 #include <ctype.h>
 #endif
 
-#include "defines.h"
 #include "app/globals.h"
 #include "title.h"
 #include "video/screen.h"
@@ -52,7 +51,7 @@
 #include "gameloop.h"
 #include "worldmap.h"
 #include "leveleditor.h"
-#include "scene.h"
+#include "player_status.h"
 #include "tile.h"
 #include "sector.h"
 #include "object/tilemap.h"
@@ -86,7 +85,7 @@ void resume_demo()
 {
   // FIXME: shouldn't be needed if GameSession
   // didn't relay on global variables
-  titlesession->get_current_sector()->activate();
+  titlesession->get_current_sector()->activate("main");
   titlesession->set_current();
 
   frame_rate.update();
@@ -215,7 +214,7 @@ void check_levels_contrib_menu()
     contrib_subset_menu->additem(MN_HL,"",0,0);      
     contrib_subset_menu->additem(MN_BACK, _("Back"), 0, 0);
 
-    titlesession->get_current_sector()->activate();
+    titlesession->get_current_sector()->activate("main");
     titlesession->set_current();
   }
 }
@@ -246,16 +245,16 @@ void draw_demo(float elapsed_time)
 
   world->play_music(LEVEL_MUSIC);
   
-  tux->key_event((SDLKey) keymap.right,DOWN);
+  tux->key_event((SDLKey) keymap.right, true);
   
   if(random_timer.check()) {
     random_timer.start(float(rand() % 3000 + 3000) / 1000.);
     walking = !walking;
   } else {
       if(walking)
-        tux->key_event((SDLKey) keymap.jump,UP);
+        tux->key_event((SDLKey) keymap.jump, false);
       else
-        tux->key_event((SDLKey) keymap.jump,DOWN);
+        tux->key_event((SDLKey) keymap.jump, true);
   }
 
   // Wrap around at the end of the level back to the beginnig
@@ -286,6 +285,7 @@ void title(void)
 {
   walking = true;
   LevelEditor* leveleditor;
+  MusicRef credits_music;
 
   Ticks::pause_init();
 
@@ -297,7 +297,7 @@ void title(void)
   logo = new Surface(datadir + "/images/title/logo.png", true);
   img_choose_subset = new Surface(datadir + "/images/status/choose-level-subset.png", true);
 
-  titlesession->get_current_sector()->activate();
+  titlesession->get_current_sector()->activate("main");
   titlesession->set_current();
 
   /* --- Main title loop: --- */
@@ -385,6 +385,8 @@ void title(void)
                   break;
                 case MNID_CREDITS:
                   fadeout(500);
+                  credits_music = SoundManager::get()->load_music(datadir + "/music/credits.ogg");
+                  SoundManager::get()->play_music(credits_music);
                   display_text_file("credits.txt", SCROLL_SPEED_CREDITS, white_big_text , white_text, white_small_text, blue_text );
                   fadeout(500);
                   Menu::set_current(main_menu);