44 lines
883 B
C#
44 lines
883 B
C#
using UnityEngine;
|
|
|
|
public enum GameState
|
|
{
|
|
InMenu,
|
|
InGame,
|
|
}
|
|
|
|
public class GameManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
|
|
{
|
|
private UIManager uiManager;
|
|
|
|
public GameState GameState
|
|
{
|
|
get; private set;
|
|
}
|
|
|
|
public void Initialize()
|
|
{
|
|
InterfaceManager.Instance.RegisterInterface<GameManager>(this);
|
|
}
|
|
|
|
public void InitializeData()
|
|
{
|
|
uiManager = InterfaceManager.Instance.GetInterfaceInstance<UIManager>();
|
|
|
|
GameState = GameState.InMenu;
|
|
OnGameStateChanged(GameState);
|
|
}
|
|
|
|
public void OnGameStateChanged(GameState gameState)
|
|
{
|
|
switch (gameState)
|
|
{
|
|
case GameState.InMenu:
|
|
uiManager.OnInMenuScreen();
|
|
break;
|
|
case GameState.InGame:
|
|
uiManager.OnInGameScreen();
|
|
break;
|
|
}
|
|
}
|
|
}
|