using UnityEngine; using TMPro; // TextMeshPro¸¦ À§ÇØ Çʼö public class PlayerStatsUI : MonoBehaviour { [Header("--- µ¥ÀÌÅÍ ¿¬°á ---")] [SerializeField] private Stats playerStats; [Header("--- UI ¿ÀºêÁ§Æ® ---")] [SerializeField] private GameObject statWindowPanel; // CŰ·Î ²°´Ù ÄÓ ºÎ¸ð ÆÇ³Ú [Header("--- ÅØ½ºÆ® UI ---")] [SerializeField] private TextMeshProUGUI maxHealthText; [SerializeField] private TextMeshProUGUI strengthText; [SerializeField] private TextMeshProUGUI damageText; [SerializeField] private TextMeshProUGUI speedText; private void Start() { // ½ÃÀÛÇÒ ¶§´Â âÀ» ´Ý¾ÆµÓ´Ï´Ù. if (statWindowPanel != null) statWindowPanel.SetActive(false); } // âÀ» ¿­°Å³ª ´Ý´Â ÇÔ¼ö public void ToggleWindow() { if (statWindowPanel == null) return; bool isActive = !statWindowPanel.activeSelf; statWindowPanel.SetActive(isActive); // âÀÌ ÄÑÁú ¶§¸¸ ÃֽŠÁ¤º¸·Î ±ÛÀÚ¸¦ °»½ÅÇÕ´Ï´Ù. if (isActive) { UpdateStatTexts(); } } private void UpdateStatTexts() { if (playerStats == null) return; // Stats.csÀÇ ½ÇÁ¦ ·ÎÁ÷¿ë ÇÁ·ÎÆÛƼ¿¡¼­ µ¥ÀÌÅ͸¦ °¡Á®¿É´Ï´Ù. maxHealthText.text = $"MaxHP: {playerStats.MaxHealth}"; strengthText.text = $"Strength: {playerStats.Strength}"; damageText.text = $"Damage: {playerStats.BaseAttackDamage}"; // ½ºÇǵå´Â ¼Ò¼öÁ¡ ÇÑ ÀÚ¸®±îÁö ±ò²ûÇÏ°Ô Ç¥½Ã speedText.text = $"Speed: {playerStats.CurrentMoveSpeed:F1}"; } }