From 4dd58c04f7cff156ee48e1eb7f43a548b3bd3e74 Mon Sep 17 00:00:00 2001 From: swrring Date: Thu, 7 May 2026 15:45:33 +0900 Subject: [PATCH] =?UTF-8?q?BT5-Dev=20#18:=20Player=20=EC=98=81=EC=97=AD=20?= =?UTF-8?q?fallback=20FindFirstObjectByType=20+=20allPCcount=20=EC=A7=84?= =?UTF-8?q?=EB=8B=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/Mechanics/EnemyController.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) 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) {