60 lines
2.5 KiB
C#
60 lines
2.5 KiB
C#
using System;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class TutorialUI : MonoBehaviour
|
|
{
|
|
[SerializeField] private TextMeshProUGUI keyMoveUpText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveDownText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveLeftText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveRightText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveInteractText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveInteractAlternateText;
|
|
[SerializeField] private TextMeshProUGUI keyMovePauseText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveGamepadInteractText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveGamepadInteractAlternateText;
|
|
[SerializeField] private TextMeshProUGUI keyMoveGamepadPauseText;
|
|
|
|
private void Start()
|
|
{
|
|
GameInput.Instance.OnBindingRebind += GameInput_OnBindingRebind;
|
|
KitchenGameManager.Instance.OnStateChanged += KitchenGameManager_OnStateChanged;
|
|
UpdateVisual();
|
|
Show();
|
|
}
|
|
|
|
private void GameInput_OnBindingRebind(object sender, System.EventArgs e) => UpdateVisual();
|
|
|
|
private void KitchenGameManager_OnStateChanged(object sender, System.EventArgs e)
|
|
{
|
|
if (KitchenGameManager.Instance.IsCountToStartActive())
|
|
{
|
|
Hide();
|
|
}
|
|
}
|
|
|
|
private void UpdateVisual()
|
|
{
|
|
keyMoveUpText.text = GameInput.Instance.GetBindingText(GameInput.Binding.MoveUp);
|
|
keyMoveDownText.text = GameInput.Instance.GetBindingText(GameInput.Binding.MoveDown);
|
|
keyMoveLeftText.text = GameInput.Instance.GetBindingText(GameInput.Binding.MoveLeft);
|
|
keyMoveRightText.text = GameInput.Instance.GetBindingText(GameInput.Binding.MoveRight);
|
|
keyMoveInteractText.text = GameInput.Instance.GetBindingText(GameInput.Binding.Interact);
|
|
keyMoveInteractAlternateText.text = GameInput.Instance.GetBindingText(GameInput.Binding.InteractAlternate);
|
|
keyMovePauseText.text = GameInput.Instance.GetBindingText(GameInput.Binding.Pause);
|
|
keyMoveGamepadInteractText.text = GameInput.Instance.GetBindingText(GameInput.Binding.Gamepad_Interact);
|
|
keyMoveGamepadInteractAlternateText.text = GameInput.Instance.GetBindingText(GameInput.Binding.Gamepad_InteractAlternate);
|
|
keyMoveGamepadPauseText.text = GameInput.Instance.GetBindingText(GameInput.Binding.Gamepad_Pause);
|
|
}
|
|
|
|
private void Show()
|
|
{
|
|
gameObject.SetActive(true);
|
|
}
|
|
|
|
private void Hide()
|
|
{
|
|
gameObject.SetActive(false);
|
|
}
|
|
} |