65 lines
2.0 KiB
C#
Raw Normal View History

using UnityEngine;
public class UIManager : MonoBehaviour, IBase, IBootLoader, IDataLoader
{
private ScreenManager screenManager;
2026-01-30 21:51:33 +05:30
private PopupManager popupManager;
private GameplayManager gameplayManager;
public GameManager GameManager
{
get; private set;
}
public void Initialize()
{
InterfaceManager.Instance.RegisterInterface<UIManager>(this);
}
public void InitializeData()
{
GameManager = InterfaceManager.Instance.GetInterfaceInstance<GameManager>();
2026-01-30 21:51:33 +05:30
popupManager = InterfaceManager.Instance.GetInterfaceInstance<PopupManager>();
gameplayManager = InterfaceManager.Instance.GetInterfaceInstance<GameplayManager>();
}
public void OnDiceViewInteracted()
{
gameplayManager.OnDiceInteracted();
}
public void OnInMenuScreen()
{
screenManager = screenManager == null ? InterfaceManager.Instance.GetInterfaceInstance<ScreenManager>() : screenManager;
screenManager.HideAllScreens();
screenManager.ShowScreen(ScreenType.MainMenuScreen);
screenManager.ShowScreen(ScreenType.MenuScreen);
}
public void OnInGameScreen()
{
screenManager.HideAllScreens();
screenManager.ShowScreen(ScreenType.GameScreen);
screenManager.ShowScreen(ScreenType.InGameHUDScreen);
}
2026-02-06 19:26:29 +05:30
public void UpdatePlayerTurnText(PlayerType type, int remSec)
{
screenManager.GetScreen<GameHUDS>(ScreenType.InGameHUDScreen).UpdatePlayerTurnText(type, remSec);
}
2026-01-30 22:17:18 +05:30
public void UpdatePlayerTurnText(PlayerType type)
{
2026-02-06 19:26:29 +05:30
screenManager.GetScreen<GameHUDS>(ScreenType.InGameHUDScreen).UpdateBotTurnText(type);
2026-01-30 22:17:18 +05:30
}
2026-01-30 21:51:33 +05:30
public void OnGameOver()
{
screenManager.HideAllScreens();
screenManager.ShowScreen(ScreenType.GameOverScreen);
2026-01-30 21:51:33 +05:30
popupManager.GetPopup<GameOverPopup>(PopupType.GameOverPopup).InitData(gameplayManager.PlayerDatas);
popupManager.ShowPopup(PopupType.GameOverPopup);
}
}