Files
prog2/Game/GameManager.h
Bram Verhulst 5f1dcd5788 Add Alot
2024-06-09 22:03:29 +02:00

56 lines
1.1 KiB
C++

#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 };
};