This commit is contained in:
Bram Verhulst
2024-06-09 22:03:29 +02:00
parent d7389411f5
commit 5f1dcd5788
76 changed files with 1532 additions and 385 deletions

View File

@@ -1,20 +1,21 @@
#include "pch.h"
#include "ScreenManager.h"
#include "FuelScreen.h"
#include "FuelScreen/FuelScreen.h"
#include "SellScreen/SellScreen.h"
#include "utils.h"
ScreenManager* ScreenManager::m_pInstance = nullptr;
Screen* ScreenManager::m_FuelScreen{ nullptr };
Screen* ScreenManager::m_SellScreen{ nullptr };
Screen* ScreenManager::m_FuelScreen { nullptr };
Screen* ScreenManager::m_SellScreen { nullptr };
ScreenManager* ScreenManager::GetInstance() {
ScreenManager * ScreenManager::GetInstance() {
if(m_pInstance == nullptr) {
if (m_pInstance == nullptr) {
m_pInstance = new ScreenManager();
}
if(!m_pInstance->m_AreScreensInitialized) {
m_pInstance->InitializeScreens(); //TODO: Ask if this a hack
if (!m_pInstance->m_AreScreensInitialized) {
m_pInstance->InitializeScreens();
m_pInstance->m_AreScreensInitialized = true;
}
return m_pInstance;
@@ -25,19 +26,19 @@ void ScreenManager::DestroyInstance() {
}
void ScreenManager::OpenScreen(Screen* screen) {
if(m_IsScreenOpen == false) {
if (m_IsScreenOpen == false) {
m_currentScreen = screen;
m_IsScreenOpen = true;
}
}
void ScreenManager::CloseScreen() {
if(m_IsScreenOpen == true) {
if (m_IsScreenOpen == true) {
m_IsScreenOpen = false;
m_currentScreen = nullptr;
}
}
bool ScreenManager::IsScreenOpen() {
bool ScreenManager::IsScreenOpen() const {
return m_IsScreenOpen;
}
ScreenManager::~ScreenManager() {
@@ -51,8 +52,7 @@ void ScreenManager::InitializeScreens() {
Vector2f sellScreenSize = Vector2f { 533, 398 };
Vector2f sellScreenCenter = Vector2f { utils::GetViewport().x / 2 - sellScreenSize.x / 2, utils::GetViewport().y / 2 - sellScreenSize.y / 2 };
m_SellScreen = new Screen { "gui/sell/background.png", sellScreenCenter, sellScreenSize, TextureManager::GetInstance() };
m_SellScreen = new SellScreen { "gui/sell/background.png", sellScreenCenter, sellScreenSize, TextureManager::GetInstance() };
//m_Button = Button { "gui/close.png", closeButtonPos, closeButtonSize, TextureManager::GetInstance() };
}