From 779f3163cfbf74f0c726148f7bdc9e4baefa9586 Mon Sep 17 00:00:00 2001 From: swrring Date: Mon, 18 May 2026 19:38:59 +0900 Subject: [PATCH] =?UTF-8?q?fix(BT12-Dev-Clone):=20=EB=B6=84=EC=8B=A0=20fli?= =?UTF-8?q?pX=20=EC=98=81=EC=97=AD=20Player=20=EC=A6=89=EC=8B=9C=20?= =?UTF-8?q?=EB=8F=99=EC=A1=B0=20(PD=20=EC=A7=80=EC=8B=9C=202026-05-18)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PD 보고: '이동할 때 분신의 방향이 반대로 뒤집혀버렸어. (방향전환 할 때는 자연스러움)' 원인: 분신 flipX 영역 = deltaX < 0 영역 영역 (이동 방향 영역 영역) - Player 영역 영역 영역 영역 영역 영역 영역 → 분신 영역 영역 영역 영역 영역 영역 영역 영역 영역 → deltaX < 0 → flipX = true → 영역 영역 sprite - Player.flipX 영역 영역 영역 영역 (이미 영역 영역 sprite + flipX true 영역 영역 영역) → 분신 영역 flipX 영역 영역 영역 → 영역 영역 근본 fix: 분신 flipX 영역 = _playerSr.flipX 영역 즉시 동조 - PlayerController L306·311 영역 spriteRenderer.flipX 변경 → 분신 영역 직접 영역 - 분신 sprite (Player Animator frame) + flipX 영역 영역 Player 영역 영역 영역 영역 영역 영역 - 방향 전환 자연 영역 = 분신 영역 영역 영역 영역 (MoveTowards) 영역 영역 영역 (flipX 영역 영역 X) MCP 검증: refresh_unity + read_console errors 0 --- .../Scripts/Skills/Effectors/CloneInstance.cs | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/Assets/Scripts/Skills/Effectors/CloneInstance.cs b/Assets/Scripts/Skills/Effectors/CloneInstance.cs index 1bf4ff7..ff18485 100644 --- a/Assets/Scripts/Skills/Effectors/CloneInstance.cs +++ b/Assets/Scripts/Skills/Effectors/CloneInstance.cs @@ -233,18 +233,13 @@ namespace EerieVillage.Skills.Effectors Vector3 currentPos = transform.position; Vector3 newPos = Vector3.MoveTowards(currentPos, _targetLocalPos, MOVE_SPEED * Time.deltaTime); - // 4. PD 지시 2026-05-18 — 분신 영역 영역 영역 영역 영역 영역 영역 영역 (영역 영역 X·자연 영역 영역) - if (_cloneSr != null) + // 4. PD 지시 2026-05-18 — 분신 flipX 영역 = Player.flipX 영역 즉시 동조 (deltaX 영역 영역 폐기·영역 영역 영역 영역 영역 영역 영역) + // PlayerController 영역 영역 영역 (L306·311) = spriteRenderer.flipX 변경 영역 영역. + // 분신 sprite + flipX 영역 영역 Player 영역 영역 동조 → 분신 영역 영역 영역 영역 영역 영역 영역 영역 영역. + // 자연 영역 영역 = 분신 영역 영역 영역 (MoveTowards) 영역 영역 영역. + if (_cloneSr != null && _playerSr != null) { - float deltaX = newPos.x - currentPos.x; - if (Mathf.Abs(deltaX) > 0.0001f) - { - _cloneSr.flipX = deltaX < 0f; // 영역 영역 → false (영역) · 영역 영역 → true (영역) - } - else if (_playerSr != null) - { - _cloneSr.flipX = _playerSr.flipX; // 대기 영역 영역 Player 영역 영역 영역 - } + _cloneSr.flipX = _playerSr.flipX; } transform.position = newPos;