diff --git a/Assets/Scripts/Skills/Effectors/CloneInstance.cs b/Assets/Scripts/Skills/Effectors/CloneInstance.cs index 9a2951d..9e31e72 100644 --- a/Assets/Scripts/Skills/Effectors/CloneInstance.cs +++ b/Assets/Scripts/Skills/Effectors/CloneInstance.cs @@ -105,11 +105,19 @@ namespace EerieVillage.Skills.Effectors Vector2 spawnPos = playerPos + new Vector2(-signX * SPAWN_OFFSET_X, 0f); // 4. 신규 GameObject — sprite 복제 + alpha 0.5 + collider 미부착 (무적) + // PD 지시 2026-05-18: Player 자식 부착 (Player 이동 시 분신 자동 동조) + scale 영역 Player 동일 (크기 정합) var go = new GameObject("Clone_A10"); go.hideFlags = HideFlags.DontSave; // Scene 오염 방지 (BT12-Dev SOT 정합) - go.transform.position = spawnPos; var playerSr = playerInventory.GetComponentInChildren(); + + // Player 자식 부착 (worldPositionStays=false) + localPosition 영역 facing 반대 1유닛 + go.transform.SetParent(playerInventory.transform, false); + go.transform.localPosition = new Vector3(-signX * SPAWN_OFFSET_X, 0f, 0f); + // PD 지시 2026-05-18 — 분신 크기 = Player 동일. PlayerSr 자식 영역 localScale 영역 정합 (자식 lossyScale 영역 영역 영역). + go.transform.localScale = playerSr != null ? playerSr.transform.localScale : Vector3.one; + go.transform.localRotation = Quaternion.identity; + if (playerSr != null) { var sr = go.AddComponent(); diff --git a/Assets/Scripts/Skills/Test/TestSkillFireOn1to5.cs b/Assets/Scripts/Skills/Test/TestSkillFireOn1to5.cs index 879444a..dea2149 100644 --- a/Assets/Scripts/Skills/Test/TestSkillFireOn1to5.cs +++ b/Assets/Scripts/Skills/Test/TestSkillFireOn1to5.cs @@ -107,6 +107,13 @@ namespace EerieVillage.Skills.Test if (data.CardId == "A10") _cloneEffector.Trigger(rt, _inventory); else _spiritFireSpawner.Trigger(rt, _inventory); } + + // BT12-Dev-Clone (2026-05-18) — Player 발동 영역 분신 hook 발화 + // IsCloneFireActive 분기 — 분신 발동 시 발화 X (무한 재귀 방지) + // Test 영역 직접 Effector.Trigger 영역 ActiveSkillRuntime.Fire 영역 영역 X·OnPlayerSkillFired 발화 X → + // 본 영역 영역 별도 발화 영역 추가 (분신 영역 hook 영역 미러링 발동) + if (!_inventory.IsCloneFireActive) + _inventory.RaisePlayerSkillFired(rt); } } }