|
dEngine
Simple 2D C++ game engine
|
The base level of the engine. More...
#include <Game.h>
Public Member Functions | |
| Game () | |
| GameLevel & | GetCurrentState () |
| Retrieves the current GameLevel. More... | |
| void | Push (GameLevel *state) |
| Pushes a new GameLevel onto the internal stack. More... | |
| void | Pop () |
| Pops a level from the internal stack. More... | |
| void | loop () |
| The game loop. More... | |
| void | cleanup () |
| SDL_Renderer * | GetRenderer () |
| template<typename T > | |
| bool | SaveState (Serializer< T > *serializer) |
| template<typename T > | |
| bool | LoadState (Serializer< T > *serializer) |
| UI * | GetUI () |
| EventSystem * | GetEventSystem () |
Static Public Member Functions | |
| static Game & | GetInstance () |
Public Attributes | |
| SDL_Window * | window = NULL |
Private Attributes | |
| UI * | ui |
| EventSystem * | eventSystem |
| SDL_Renderer * | renderer |
| std::stack< std::unique_ptr< GameLevel > > | stateStack |
| GameLevel * | storedState |
Static Private Attributes | |
| static Game * | instance |
The base level of the engine.
A Game is the most bottom level of the game engine. The game controls the game loop, managing state, and others. For individual developers there shouldn't be a need to inherit from or overwrite this class.
| Game::Game | ( | ) |
Referenced by GetInstance().
| void Game::cleanup | ( | ) |
Frees up any allocated resources
Referenced by loop().
| EventSystem * Game::GetEventSystem | ( | ) |
|
static |
Returns an instance of the current game
Referenced by dengine::CameraManager::GetMainCamera(), dengine::Sprite::Render(), dengine::SpriteSheet::Render(), dengine::Sprite::Sprite(), and dengine::SpriteSheet::SpriteSheet().
| SDL_Renderer * Game::GetRenderer | ( | ) |
Returns the current game's renderer
Referenced by dengine::SpriteSheet::Render().
| bool dengine::Game::LoadState | ( | Serializer< T > * | serializer | ) |
Loads a state from a file and sets the games state
| serializer | The serializer to use for loading |
| void Game::loop | ( | ) |
The game loop.
| void Game::Pop | ( | ) |
Pops a level from the internal stack.
Referenced by loop().
| bool dengine::Game::SaveState | ( | Serializer< T > * | serializer | ) |
Saves the current game state to a file
| serializer | The serializer to use for saving |
|
private |
Referenced by Game(), GetEventSystem(), and loop().
|
staticprivate |
Referenced by Game(), and GetInstance().
|
private |
Referenced by Game(), GetRenderer(), and loop().
|
private |
Referenced by GetCurrentState(), loop(), and Pop().
1.8.13