diff --git a/Assets/Scripts/Mechanics/EnemyController.cs b/Assets/Scripts/Mechanics/EnemyController.cs index 8a8a695..2b25fd0 100644 --- a/Assets/Scripts/Mechanics/EnemyController.cs +++ b/Assets/Scripts/Mechanics/EnemyController.cs @@ -69,10 +69,21 @@ namespace Platformer.Mechanics // PD 지시 2026-05-07 — Player ↔ Enemy 통과 가능이지만 Bounds.Intersects로 매 프레임 감지 if (_cachedPlayer == null) { + // 1차: tag 영역 발견 var pgo = GameObject.FindGameObjectWithTag("Player"); if (pgo != null) _cachedPlayer = pgo.GetComponent(); + + // 2차 fallback: tag 영역 미설정 영역에 대비해 PlayerController 영역 직접 검색 + if (_cachedPlayer == null) + { + _cachedPlayer = Object.FindFirstObjectByType(); + } + if (Time.frameCount % 60 == 0) - Debug.Log($"[BT17-Update@{name}] f={Time.frameCount} cached={(_cachedPlayer != null ? _cachedPlayer.name : "NULL")}"); + { + int allCount = Object.FindObjectsByType(FindObjectsSortMode.None).Length; + Debug.Log($"[BT17-Update@{name}] f={Time.frameCount} cached={(_cachedPlayer != null ? _cachedPlayer.name : "NULL")} pgoTag={(pgo != null ? pgo.name : "NULL")} allPCcount={allCount}"); + } } if (_cachedPlayer != null && _cachedPlayer.health != null && _cachedPlayer.health.IsAlive) {