57 lines
1.1 KiB
C++
57 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 };
|
|
bool m_GameOver{ false };
|
|
};
|
|
|
|
|
|
|