private:
Timer fps_timer;
Timer frame_timer;
+ Timer endsequence_timer;
World* world;
int st_gl_mode;
int levelnb;
/** If true the end_sequence will be played, user input will be
ignored while doing that */
- bool end_sequence;
+ 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;
bool game_pause;
std::string subset;
public:
- enum ExitStatus { NONE, LEVEL_FINISHED, GAME_OVER, LEVEL_ABORT };
+ enum ExitStatus { ES_NONE, ES_LEVEL_FINISHED, ES_GAME_OVER, ES_LEVEL_ABORT };
private:
ExitStatus exit_status;
public:
void process_events();
void levelintro();
- void drawstatus();
+ void drawstatus(DrawingContext& context);
void drawendscreen();
void drawresultscreen(void);