using TMPro;
using UnityEngine;
using UnityEngine.InputSystem;
using UnityEngine.UI;
public class UIManager : MonoBehaviour
{
[SerializeField]
private Slider healthBar;
[SerializeField]
private TMP_Text healthText;
[SerializeField]
private TMP_Text coinsText;
[SerializeField]
private GameObject pausePanel;
[SerializeField]
private InputActionReference pauseAction;
private bool paused;
void Update()
{
if (pauseAction.action.WasPressedThisFrame())
{
TogglePause();
}
}
public void UpdateHealth(
int current,
int maximum)
{
healthBar.maxValue = maximum;
healthBar.value = current;
healthText.text =
$"{current} / {maximum}";
}
public void UpdateCoins(int coins)
{
coinsText.text = coins.ToString();
}
public void TogglePause()
{
paused = !paused;
pausePanel.SetActive(paused);
Time.timeScale =
paused ? 0f : 1f;
Cursor.visible = paused;
Cursor.lockState =
paused
? CursorLockMode.None
: CursorLockMode.Locked;
}
}