From ebedf6d9ee0de23e9b0fd607b5bdb27b4fca9f19 Mon Sep 17 00:00:00 2001 From: swrring Date: Wed, 13 May 2026 20:28:19 +0900 Subject: [PATCH] =?UTF-8?q?fix(BT12-Dev):=20A04=20=EB=B2=88=EA=B0=9C=20?= =?UTF-8?q?=EC=B6=A9=EA=B2=A9=20=EC=A0=81=20=EC=9C=A0=EB=AC=B4=20=EB=AC=B4?= =?UTF-8?q?=EA=B4=80=20=EC=9E=90=EB=8F=99=20=EB=B0=9C=EB=8F=99=20(PD=20?= =?UTF-8?q?=EC=A7=80=EC=8B=9C=202026-05-13)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 원인: LightningStrikeSpawner.Trigger 영역 candidates.Count == 0 시 즉시 return → 적 0명 영역 발동 X. fix: candidates 0 시 Player 위치 영역 fallback (primaryPos = inventory.transform.position) → 일정 쿨타임 자동 발동. A05 MeleeAreaSpawner·A_Laser LaserSpawner = Player 위치 기준 발동·적 무관 영역 이미 정합. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../Skills/Effectors/LightningStrikeSpawner.cs | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/Assets/Scripts/Skills/Effectors/LightningStrikeSpawner.cs b/Assets/Scripts/Skills/Effectors/LightningStrikeSpawner.cs index 402646f..a1c8af0 100644 --- a/Assets/Scripts/Skills/Effectors/LightningStrikeSpawner.cs +++ b/Assets/Scripts/Skills/Effectors/LightningStrikeSpawner.cs @@ -43,13 +43,19 @@ namespace EerieVillage.Skills.Effectors if (p.x < xMin || p.x > xMax || p.y < yMin || p.y > yMax) continue; candidates.Add(e); } - if (candidates.Count == 0) return; - - // 2. 임의 1기 선택 (Primary target) - var primary = candidates[Random.Range(0, candidates.Count)]; + // PD 지시 2026-05-13 — 적 유무 관계 없이 일정 쿨타임 자동 발동. candidates 영역 0 시 Player 위치 영역 fallback. + Vector2 primaryPos; + if (candidates.Count > 0) + { + primaryPos = candidates[Random.Range(0, candidates.Count)].transform.position; + } + else + { + primaryPos = (Vector2)inventory.transform.position; + } // PD 정합 2026-05-13 — OffsetDistance = (X, Y) 절대 오프셋·OffsetXY = 이펙트만 - Vector2 hitboxPos = (Vector2)primary.transform.position + data.OffsetDistance; - Vector2 fxPos = (Vector2)primary.transform.position + data.OffsetXY; + Vector2 hitboxPos = primaryPos + data.OffsetDistance; + Vector2 fxPos = primaryPos + data.OffsetXY; // 3. 이펙트 spawn (data.OnHitFxPrefab — FX_Thunder) + 총 lifetime 측정 float fxTotalLifetime = 1f;