Guest User

Untitled

a guest
Jun 6th, 2017
35
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.46 KB | None | 0 0
  1. #include "ScreenManager.h"
  2.  
  3. ScreenManager::ScreenManager(void)
  4.     : SplashScreen(NULL), TitleScreen(NULL), currentScreen(NULL)
  5. {
  6. }
  7.  
  8.  
  9. ScreenManager::~ScreenManager()
  10. {
  11. }
  12.  
  13. ScreenManager &ScreenManager::GetInstance()
  14. {
  15.     static ScreenManager instance;
  16.     return instance;
  17. }
  18.  
  19. void ScreenManager::Initialize(SDL_Renderer *renderer)
  20. {
  21.     SplashScreen = new GameScreen;
  22.     TitleScreen = new GameScreen;
  23.  
  24.     if (SplashScreen) SplashScreen->LoadContent(renderer);
  25.     if (TitleScreen) TitleScreen->LoadContent(renderer);
  26.  
  27.     currentScreen = SplashScreen;
  28.  
  29.     /*transition = false;
  30.     fade.LoadContent(renderer);
  31.     file.LoadContent("tests.cme", attributes, contents);*/
  32. }
  33.  
  34. void ScreenManager::LoadContent(SDL_Renderer *renderer)
  35. {
  36.     currentScreen->LoadContent(renderer);
  37. }
  38.  
  39. void ScreenManager::Update(SDL_Renderer *renderer, SDL_Event &event)
  40. {
  41.     if(currentScreen)
  42.     {
  43.         currentScreen->Update(renderer, event);
  44.     }
  45. }
  46.  
  47. void ScreenManager::Draw(SDL_Renderer *renderer)
  48. {
  49.     if(currentScreen)
  50.     {
  51.         currentScreen->Draw(renderer);
  52.     }
  53. }
  54.  
  55. void ScreenManager::SetScreen(GameScreen *newScreen)
  56. {
  57.     currentScreen = newScreen;
  58. }
  59.  
  60. void ScreenManager::Transition(SDL_Renderer *renderer)
  61. {
  62. }
  63.  
  64. Uint8 ScreenManager::GetAlpha()
  65. {
  66.     return fade.getAlpha();
  67. }
  68.  
  69. void ScreenManager::UnloadContent()
  70. {
  71.     if (TitleScreen) TitleScreen->UnloadContent(); delete TitleScreen; TitleScreen = NULL;
  72.     if (SplashScreen) SplashScreen->UnloadContent(); delete SplashScreen; SplashScreen = NULL;
  73. }
Add Comment
Please, Sign In to add comment