2026-02-06 19:26:29 +05:30

68 lines
2.0 KiB
C#

using UnityEngine;
using UnityEngine.UI;
using TMPro;
using System.Collections;
public class GameHUDS : ScreenBase
{
[SerializeField] private Button diceBtn;
[SerializeField] private Button pauseBtn;
[Header("Text")]
[SerializeField] private TMP_Text diceCountText;
[SerializeField] private TMP_Text playerTurnText;
private SoundManager soundManager;
private UIManager uiManager;
private void OnEnable()
{
pauseBtn.onClick.AddListener(OnClick_PauseButton);
diceBtn.onClick.AddListener(OnClick_DiceButton);
}
private void OnDisable()
{
pauseBtn.onClick.RemoveListener(OnClick_PauseButton);
diceBtn.onClick.RemoveListener(OnClick_DiceButton);
}
private void OnClick_PauseButton()
{
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
screenManager.HideScreen(screenType);
PopupManager popupManager = InterfaceManager.Instance?.GetInterfaceInstance<PopupManager>();
popupManager.ShowPopup(PopupType.PauseMenuPopup);
SetUIManager();
uiManager.GameManager.SetGameState(GameState.IsPaused);
}
private void OnClick_DiceButton()
{
SetUIManager();
uiManager.OnDiceViewInteracted();
}
private void SetUIManager()
{
uiManager = uiManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<UIManager>() : uiManager;
}
public void UpdatePlayerTurnText(PlayerType playerType, int remSec)
{
Debug.Log($"GameHUDS: UpdatePlayerTurnText: {playerType}");
playerTurnText.text = $"Turn : {(PlayerColorType)((int)playerType)} ({remSec})";
}
public void UpdateBotTurnText(PlayerType playerType)
{
Debug.Log($"GameHUDS: UpdatePlayerTurnText: {playerType}");
playerTurnText.text = $"Turn : {(PlayerColorType)((int)playerType)}";
}
}