Projext/Assets/Scripts/Enemy/BossAI/BossCounterDebugPanel.cs

32 lines
1.8 KiB
C#

using UnityEngine; // 유니티 기능을 불러올거에요 -> UnityEngine을
using UnityEngine.UI; // UI 기능을 불러올거에요 -> UnityEngine.UI를
using System.Text; // 문자열 빌더를 사용할거에요 -> System.Text를
public class BossCounterDebugPanel : MonoBehaviour // 클래스를 선언할거에요 -> 디버그 패널을
{
[SerializeField] private BossCounterSystem system; // 변수를 선언할거에요 -> 시스템 참조를
[SerializeField] private Text debugText; // 변수를 선언할거에요 -> 텍스트 UI를
private void Update() // 함수를 실행할거에요 -> 매 프레임
{
if (!system || !debugText) return; // 중단할거에요 -> 참조가 없으면
StringBuilder sb = new StringBuilder(); // 생성할거에요 -> 빌더 객체를
sb.AppendLine("=== Boss Counter Debug ==="); // 추가할거에요 -> 제목 줄을
var counters = system.GetActiveCounters(); // 가져올거에요 -> 활성 카운터 목록을
foreach (var pair in counters) // 반복할거에요 -> 각 카운터마다
sb.AppendLine($"{pair.Key}: {pair.Value}"); // 추가할거에요 -> 키와 값을
// ⭐ [수정] 괄호 () 추가하여 올바르게 메서드를 호출합니다.
sb.AppendLine($"Reward: {system.IsHabitChangeRewarded()}"); // 추가할거에요 -> 보상 상태를
debugText.text = sb.ToString(); // 적용할거에요 -> 텍스트 UI에
}
public void OnClickClearData() // 함수를 선언할거에요 -> 초기화 버튼용
{
if (BossCounterPersistence.Instance) // 조건이 맞으면 실행할거에요 -> 인스턴스가 있다면
BossCounterPersistence.Instance.ResetAllData(); // 실행할거에요 -> 데이터 삭제 함수를
}
}