fix(BT12-Dev): A06 독 늪 IsFlying 강제 재 check (PD 진단 2026-05-15)
PD 추가 보고: "여전히 독 늪이 공중 몬스터의 Y 위치에 발생되고 있어.
공격 가능한 적이 없을 경우(공중 몬스터만 있을 경우 등) 독 늪이
플레이어 X 위치에서 이동 가능한 영역 바닥에 생성 되도록 해줘."
원인: 직전 commit 2516ef9 의 e.IsFlying check 영역 — Enemy.Awake/Start
호출 순서·controller late assign race 시 IsFlying=false 잔존 가능 →
박쥐 nearest 후보 영역 → 박쥐 y 위치 spawn (Raycast hit 후 ground y 사용
하더라도 박쥐가 ground 위에 있다면 박쥐 위치 그대로).
정정: PoisonSwampSpawner.Trigger 루프 영역 e.RecheckFlyingFromAnimator()
강제 호출. Animator.runtimeAnimatorController.name 영역 flyingControllerNames
list 매칭 → IsFlying 즉시 갱신.
검증 시나리오 (Play 모드):
- 비박쥐 Enemy 13기 사망 처리 (Player 주변 박쥐 1기만 남김)
- 박쥐 1기 IsFlying=True 정합
- A06 발사 → spawn pos=(-15.14, -2.61) = Player.x(-15.14) + ground.y(-2.61)
- 박쥐 y=-2.00 위치 영역 spawn 안 됨 (차단 정합)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
2516ef9cb1
commit
3c5a3bce31
|
|
@ -35,6 +35,8 @@ namespace EerieVillage.Skills.Effectors
|
||||||
if (e == null) continue;
|
if (e == null) continue;
|
||||||
var h = e.GetComponent<Health>();
|
var h = e.GetComponent<Health>();
|
||||||
if (h == null || !h.IsAlive) continue;
|
if (h == null || !h.IsAlive) continue;
|
||||||
|
// PD 지시 2026-05-15 — IsFlying 강제 재 check (Awake race·controller late assign 케이스 보강)
|
||||||
|
e.RecheckFlyingFromAnimator();
|
||||||
// PD 지시 2026-05-15 — 공중 몬스터 (박쥐 등) skip · 독 늪 ground spawn 의도
|
// PD 지시 2026-05-15 — 공중 몬스터 (박쥐 등) skip · 독 늪 ground spawn 의도
|
||||||
if (e.IsFlying) continue;
|
if (e.IsFlying) continue;
|
||||||
var p = e.transform.position;
|
var p = e.transform.position;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue