Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "ScreenManager.h"
- ScreenManager::ScreenManager(void)
- : SplashScreen(NULL), TitleScreen(NULL), currentScreen(NULL)
- {
- }
- ScreenManager::~ScreenManager()
- {
- }
- ScreenManager &ScreenManager::GetInstance()
- {
- static ScreenManager instance;
- return instance;
- }
- void ScreenManager::Initialize(SDL_Renderer *renderer)
- {
- SplashScreen = new GameScreen;
- TitleScreen = new GameScreen;
- if (SplashScreen) SplashScreen->LoadContent(renderer);
- if (TitleScreen) TitleScreen->LoadContent(renderer);
- currentScreen = SplashScreen;
- /*transition = false;
- fade.LoadContent(renderer);
- file.LoadContent("tests.cme", attributes, contents);*/
- }
- void ScreenManager::LoadContent(SDL_Renderer *renderer)
- {
- currentScreen->LoadContent(renderer);
- }
- void ScreenManager::Update(SDL_Renderer *renderer, SDL_Event &event)
- {
- if(currentScreen)
- {
- currentScreen->Update(renderer, event);
- }
- }
- void ScreenManager::Draw(SDL_Renderer *renderer)
- {
- if(currentScreen)
- {
- currentScreen->Draw(renderer);
- }
- }
- void ScreenManager::SetScreen(GameScreen *newScreen)
- {
- currentScreen = newScreen;
- }
- void ScreenManager::Transition(SDL_Renderer *renderer)
- {
- }
- Uint8 ScreenManager::GetAlpha()
- {
- return fade.getAlpha();
- }
- void ScreenManager::UnloadContent()
- {
- if (TitleScreen) TitleScreen->UnloadContent(); delete TitleScreen; TitleScreen = NULL;
- if (SplashScreen) SplashScreen->UnloadContent(); delete SplashScreen; SplashScreen = NULL;
- }
Add Comment
Please, Sign In to add comment