[UI] 보스 체력바 UI 및 영역 진입 트리거 시스템 추가
- BossHealthBarUI: 보스 체력 변화를 자동으로 UI에 반영하는 컴포넌트 - BossArea: 플레이어 진입 시 연결된 보스의 체력바 표시 - BossEnemy: 스폰 이벤트(OnBossSpawned) 추가로 UI 자동 연결 지원 - UI_BossHealthBar.prefab: BossHealthBarUI 컴포넌트 적용
This commit is contained in:
@@ -47,6 +47,16 @@ namespace Colosseum.Enemy
|
||||
public event System.Action<int> OnPhaseChanged; // phaseIndex
|
||||
public event System.Action<float> OnPhaseTransitionStart; // transitionDuration
|
||||
public event System.Action OnPhaseTransitionEnd;
|
||||
// 정적 이벤트 (UI 자동 연결용)
|
||||
/// <summary>
|
||||
/// 보스 스폰 시 발생하는 정적 이벤트
|
||||
/// </summary>
|
||||
public static event System.Action<BossEnemy> OnBossSpawned;
|
||||
|
||||
/// <summary>
|
||||
/// 현재 활성화된 보스 (Scene에 하나만 존재한다고 가정)
|
||||
/// </summary>
|
||||
public static BossEnemy ActiveBoss { get; private set; }
|
||||
|
||||
// Properties
|
||||
public int CurrentPhaseIndex => currentPhaseIndex;
|
||||
@@ -71,8 +81,18 @@ namespace Colosseum.Enemy
|
||||
{
|
||||
behaviorAgent.Graph = initialBehaviorGraph;
|
||||
}
|
||||
|
||||
// 정적 이벤트 발생 (UI 자동 연결용)
|
||||
ActiveBoss = this;
|
||||
OnBossSpawned?.Invoke(this);
|
||||
|
||||
if (debugMode)
|
||||
{
|
||||
Debug.Log($"[Boss] Boss spawned: {name}");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
protected override void InitializeStats()
|
||||
{
|
||||
base.InitializeStats();
|
||||
|
||||
Reference in New Issue
Block a user