// ============================================================ // BossEnums.cs — 보스 AI 전용 열거형 정의 // // [역할] // 보스 FSM 상태와 공격 패턴 종류를 독립 파일로 분리. // 다른 클래스에서 NorcielBoss.BossState 대신 BossState로 직접 접근 가능. // // [설계] // 열거형은 특정 클래스에 종속되지 않으므로 독립 파일이 정석. // BossDebugDisplay, BossPhaseManager 등 외부 컴포넌트도 자유롭게 참조 가능. // ============================================================ /// /// 보스 FSM(유한 상태 머신) 상태 — 보스의 현재 행동을 결정하는 상태값 /// public enum BossState // 열거형을 선언할거에요 -> 보스의 FSM 상태를 { Idle, // 전투 전 대기 상태 (트리거존 진입 전) Chase, // 플레이어를 NavMesh로 추격하는 상태 PreAttack, // 공격 사거리 안에서 쿨타임을 기다리는 상태 Attacking, // 공격 패턴 코루틴이 실행 중인 상태 (다른 패턴 차단) Recovering, // 공격 후 짧은 경직 상태 Resting, // 숨돌리기 상태 — 공격 예산(budget) 소진 시 진입 Retrieving, // 쇠공을 주우러 가는 상태 Dead // 사망 상태 (모든 행동 정지) } /// /// 보스 공격 패턴 종류 — SelectAndFire에서 가중치 룰렛으로 선택됨 /// public enum BossPattern // 열거형을 선언할거에요 -> 보스의 공격 패턴 종류를 { Throw, // 쇠공 던지기 — 원거리 메인 패턴 Smash, // 내려찍기 — 근접 강타 (흡인 효과 포함) Sweep, // 휩쓸기 — 근접 광역 (전방 반원) Dash, // 대시 돌진 — 갭클로저 (원거리 접근용) DashSmash // 대시 + 내려찍기 콤보 — 고급 갭클로저 }