Tetris/gamestate.hpp

33 lines
517 B
C++
Raw Normal View History

2014-11-07 20:47:50 +01:00
#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