33 lines
517 B
C++
33 lines
517 B
C++
#ifndef GAME_STATE_HPP_INCLUDED
|
|
#define GAME_STATE_HPP_INCLUDED
|
|
|
|
#include "game.hpp"
|
|
|
|
|
|
class GameState
|
|
{
|
|
public:
|
|
virtual void Init() = 0;
|
|
virtual void Clean() = 0;
|
|
|
|
virtual void Pause() = 0;
|
|
virtual void Resume() = 0;
|
|
|
|
virtual void HandleEvents ( game * Game ) = 0;
|
|
virtual void Update ( game * Game ) = 0;
|
|
virtual void Draw ( game * Game ) = 0;
|
|
|
|
void ChangeState ( game * Game, GameState * state )
|
|
{
|
|
Game->ChangeState ( state );
|
|
}
|
|
|
|
protected:
|
|
GameState() { }
|
|
|
|
bool FirstRun;
|
|
};
|
|
|
|
|
|
#endif
|