#pragma once #include "Player.h" #include "Gui/Screens/MainScreen.h" #include "Inventory/PlayerInventory.h" class GameManager { public: static GameManager& GetInstance(); static GameManager* m_pInstance; static void DestroyInstance(); void SetMainScreen(MainScreen* pMainScreen); void SetPlayer(Player* pPlayer); //No time void SetFuel(float fuel); float GetFuel() const; void DecreaseFuel(float fuel); void AddFuel(float fuel); void SetHullIntegrity(int hullIntegrity); int GetHullIntegrity() const; void DamageHull(int damage); void SetScore(int score); int GetScore() const; void IncreaseScore(int score); void SetMoney(int money); int GetMoney() const; void IncreaseMoney(int money); void Update(float elapsedSecs); int GetMaxFuel(); PlayerInventory* GetInventory(); Player* GetPlayer(); private: GameManager(); float m_Balance{ 0.0f }; int m_HullIntegrity{ 100 }; float m_Fuel{ 100.0f }; int m_Score{ 0 }; int m_Money{ 0 }; MainScreen* m_pMainScreen{ nullptr }; PlayerInventory* m_pInventory{ nullptr }; Player* m_pPlayer{ nullptr }; SoundEffect* m_FuelLowSound{ nullptr }; };