Projext/Assets/Scripts/UI/HUD/Player Stat UI.cs

43 lines
1.4 KiB
C#
Raw Normal View History

using UnityEngine;
using TMPro;
2026-01-30 03:24:13 +00:00
public class PlayerStatsUI : MonoBehaviour
{
[Header("--- 데이터 연결 ---")]
2026-01-30 03:24:13 +00:00
[SerializeField] private Stats playerStats;
[Header("--- UI 오브젝트 ---")]
[SerializeField] private GameObject statWindowPanel;
2026-01-30 03:24:13 +00:00
[Header("--- 텍스트 UI ---")]
2026-01-30 03:24:13 +00:00
[SerializeField] private TextMeshProUGUI maxHealthText;
// [제거] strengthText 변수는 인스펙터에서 비워두거나 삭제하세요.
2026-01-30 03:24:13 +00:00
[SerializeField] private TextMeshProUGUI damageText;
[SerializeField] private TextMeshProUGUI speedText;
private void Start()
{
if (statWindowPanel != null) statWindowPanel.SetActive(false);
2026-01-30 03:24:13 +00:00
}
public void ToggleWindow()
{
if (statWindowPanel == null) return;
bool isActive = !statWindowPanel.activeSelf;
statWindowPanel.SetActive(isActive);
if (isActive) UpdateStatTexts();
2026-01-30 03:24:13 +00:00
}
public void UpdateStatTexts()
2026-01-30 03:24:13 +00:00
{
if (playerStats == null) return;
maxHealthText.text = $"MaxHP: {playerStats.MaxHealth}";
// ✨ [수정] 힘 텍스트 업데이트 로직 삭제
damageText.text = $"Damage: {playerStats.TotalAttackDamage} (+{playerStats.weaponDamage})";
// ✨ [수정] 무게 페널티 없이 현재 속도만 깔끔하게 표기
speedText.text = $"Speed: {playerStats.CurrentMoveSpeed:F1}";
2026-01-30 03:24:13 +00:00
}
}