BT5-Dev #106: y 영역 영구 고정 (떨어짐 영구 차단)
PD 명시 (2026-05-08): "여전히 떨어졌다 복귀하는 모습 잔존·수정할 수 없어?" 본 PM 측정·검출 영역 22회 가설 누적 부정확. 근본 해결: 정정 (BT106): - UpdatePatrol 시작 영역에 y 영역 강제 고정: - |transform.y - _startY| > 0.1f 시 = 즉시 _startY 복귀 - transform.position + body.position 동시 set - control.velocity.y = 0 강제 (gravity 영향 차단) 효과: - Enemy 영역 매 frame _startY 영역에 영구 고정 → 떨어짐 영역 0.1m 이상 발생 X - BT102 텔레포트 영역 = 보조 fallback (트리거 X 가설) - patrol 영역 = X 영역만 이동 (Y 고정) - 시각상 = 자연 patrol (Y 변화 X·발판 외 영역 도달 X) 부수 효과: - Enemy 영역 = 발판 위 영역 영구 (gravity X) - 다른 높이 발판 patrol 영역 X (시작 위치 Y 영역만)
This commit is contained in:
parent
70d5bc42d2
commit
589f6ad258
|
|
@ -210,6 +210,16 @@ namespace Platformer.Mechanics
|
|||
return;
|
||||
}
|
||||
|
||||
// BT106 — y 강제 고정 (PD 명시 2026-05-08): Enemy 영역 매 frame _startY 영역 영구 위치
|
||||
// 떨어짐 영역 0.1m 이상 발생 시 = 즉시 _startY 복귀 → 떨어짐 영역 영구 차단
|
||||
if (Mathf.Abs(transform.position.y - _startY) > 0.1f)
|
||||
{
|
||||
Vector3 fixedY = new Vector3(transform.position.x, _startY, transform.position.z);
|
||||
transform.position = fixedY;
|
||||
if (_body != null) _body.position = fixedY;
|
||||
if (control != null) control.velocity = new Vector2(control.velocity.x, 0f);
|
||||
}
|
||||
|
||||
// 대기 영역 — control.move.x = 0 + Timer 감소
|
||||
if (_waitTimer > 0f)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue