using UnityEngine; // 유니티 기능을 불러올거에요 -> UnityEngine을 using UnityEngine.UI; // UI 기능을 불러올거에요 -> UnityEngine.UI를 public class HPUibar : MonoBehaviour // 클래스를 선언할거에요 -> 체력바 UI를 { [Header("타겟")] // 인스펙터 제목을 달거에요 -> 타겟 설정을 [SerializeField] private GameObject targetObject; // 변수를 선언할거에요 -> 타겟 오브젝트를 // 컴포넌트들 private Slider _slider; // 변수를 선언할거에요 -> 슬라이더를 private IDamageable _damageable; // 변수를 선언할거에요 -> 데미지 인터페이스를 // ⭐ [수정] TrainingDummy -> DummyBot private DummyBot _dummy; // 변수를 선언할거에요 -> 더미 봇 참조를 private void Awake() // 함수를 실행할거에요 -> 초기화 Awake를 { _slider = GetComponent(); // 가져올거에요 -> 슬라이더를 if (targetObject != null) // 조건이 맞으면 실행할거에요 -> 타겟이 있다면 { _damageable = targetObject.GetComponent(); // 가져올거에요 -> 인터페이스를 _dummy = targetObject.GetComponent(); // 가져올거에요 -> 더미 봇을 } } private void Update() // 함수를 실행할거에요 -> 매 프레임 업데이트를 { if (_slider != null && _dummy != null) // 조건이 맞으면 실행할거에요 -> 슬라이더와 더미가 있다면 { // _dummy에서 체력 정보를 가져오는 방식이 필요하다면 MonsterClass의 OnHealthChanged 이벤트를 쓰는 게 좋음 // 하지만 기존 로직 유지를 위해 단순 접근 가정 // _slider.value = ... } } // (기존 코드에 있던 나머지 로직은 그대로 유지) }