X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fgame_session.hpp;h=fdb8f4f965f0ac9f82174e9d1d2313aaad35a214;hb=9d05abe97c11bec660967594ca889f89338ab343;hp=abc507e95c6b35476b22231a3be5b0d59fbb75a9;hpb=35fedf071665852c1c1e10b3d4b053a2347129e5;p=supertux.git diff --git a/src/game_session.hpp b/src/game_session.hpp index abc507e95..fdb8f4f96 100644 --- a/src/game_session.hpp +++ b/src/game_session.hpp @@ -21,12 +21,11 @@ #include #include +#include #include "screen.hpp" -#include "timer.hpp" -#include "statistics.hpp" #include "math/vector.hpp" -#include "console.hpp" #include "video/surface.hpp" +#include "object/endsequence.hpp" class Level; class Sector; @@ -62,6 +61,12 @@ public: void finish(bool win = true); void respawn(const std::string& sectorname, const std::string& spawnpointname); void set_reset_point(const std::string& sectorname, const Vector& pos); + std::string get_reset_point_sectorname() + { return reset_sector; } + + Vector get_reset_point_pos() + { return reset_pos; } + void display_info_box(const std::string& text); Sector* get_current_sector() @@ -78,7 +83,7 @@ public: * resources for the current level/world */ std::string get_working_directory(); - void restart_level(bool fromBeginning = true); + void restart_level(); void toggle_pause(); @@ -95,7 +100,6 @@ private: void on_escape_press(); void process_menu(); - Timer endsequence_timer; std::auto_ptr level; std::auto_ptr statistics_backdrop; @@ -108,18 +112,10 @@ private: int levelnb; int pause_menu_frame; - /** If true the end_sequence will be played, user input will be - ignored while doing that */ - enum EndSequenceState { - NO_ENDSEQUENCE, - ENDSEQUENCE_RUNNING, // tux is running right - ENDSEQUENCE_WAITING // waiting for the end of the music - }; - EndSequenceState end_sequence; - float last_x_pos; - CodeController* end_sequence_controller; - - bool game_pause; + EndSequence* end_sequence; + + bool game_pause; + float speed_before_pause; std::string levelfile;