using UnityEngine; public class GameManager : MonoBehaviour { public PlayerData playerData; public static GameManager Instance { get; private set; } public UIManager UIManager { get; private set; } public InventoryManager InventoryManager { 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(); GameItemManager = GetComponent(); InventoryManager = GetComponent(); AudioManager = GetComponent(); } else { Destroy(gameObject); } } public void StartGame() { UIManager.ShowMainMenuScreen(false); // AudioManager.PlayMusic("MainTheme"); } public void EndGame() { UIManager.ShowGameOverScreen(true); // AudioManager.PlayMusic("GameOverTheme"); } }