evershade/Assets/Scripts/Managers/GameManager.cs

50 lines
1.2 KiB
C#

using Managers;
using UnityEngine;
public class GameManager : MonoBehaviour
{
public PlayerData playerData;
public static GameManager Instance { get; private set; }
public UIManager UIManager { get; private set; }
public PlayerManager PlayerManager { get; private set; }
public GameItemManager GameItemManager { get; set; }
//TODO: Add AudioManager
public AudioManager AudioManager { get; set; }
private void Awake()
{
if (Instance == null)
{
Instance = this;
DontDestroyOnLoad(gameObject);
// Initialize managers
UIManager = GetComponent<UIManager>();
GameItemManager = GetComponent<GameItemManager>();
AudioManager = GetComponent<AudioManager>();
PlayerManager = GetComponent<PlayerManager>();
}
else
{
Destroy(gameObject);
}
}
public void StartGame()
{
UIManager.ShowMainMenuScreen(false);
// AudioManager.PlayMusic("MainTheme");
}
public void EndGame()
{
UIManager.ShowGameOverScreen(true);
// AudioManager.PlayMusic("GameOverTheme");
}
}