EerieVillage/Assets/Scripts
깃 관리자 35923be06d fix(BT12-Dev): KinematicObject base magic method override·body 초기화 (Enemy 영구 정지 근본)
PD: "여전히 움직이지 않아·실측해보고 근본 원인 체크"

근본 (MCP Play 실측·자성 #12·#13):
- KinematicObject.OnEnable·Start·Update·FixedUpdate 모두 `protected virtual`
- AnimationController는 KinematicObject 상속하지만 override X
- Unity는 Component 정의된 magic method만 호출·base class virtual은 derived가 override 안 하면 호출 안 됨
- 결과: KinematicObject.OnEnable 호출 X → body=NULL·KinematicObject.FixedUpdate 호출 X → velocity 갱신 X·gravity 적용 X
- Enemy 자연 낙하 X·patrol 동작 X·영구 정지

검증:
- MCP Play 후 body field reflection 읽기 → NULL
- Rigidbody2D 컴포넌트 자체는 GetComponent OK·OnEnable이 body 설정 안 함

fix (AnimationController):
1. Awake 영역에 base 초기화 위임:
   - body = GetComponent<Rigidbody2D>()·body.bodyType = Kinematic
   - contactFilter.useTriggers/SetLayerMask/useLayerMask
2. Update·FixedUpdate override 추가:
   - protected override void Update() { base.Update(); }
   - protected override void FixedUpdate() { base.FixedUpdate(); }
   - Unity가 AnimationController 인스턴스의 Update/FixedUpdate 호출 → base 실행

검증 후 (MCP Play):
- body=OK·IsGrounded=True·자연 낙하 정합 (pos.y=-2.5 등)
- Enemy 일부 발판 위 정착·일부 InfiniteHorizontalGround 영역 밖 무한 낙하 (별건)

회귀 영역 X:
- spriteRenderer/animator GetComponentInChildren·field initializer 가드 영역 영역 X
- KinematicObject 자체 영역 영역 X (다른 KinematicObject 상속 클래스는 별도 검증)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 17:57:01 +09:00
..
Background feat(BT12-Dev): InfiniteHorizontalGround 컴포넌트 신규 (PD 결정 (나)·Background 패턴) 2026-05-10 22:35:46 +09:00
Core initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
Gameplay fix(BT12-Dev): 밟기 공격 기능 제거 — PlayerEnemyCollision 폐기·Player↔Enemy 충돌 검출 제거 2026-05-12 11:15:20 +09:00
Mechanics fix(BT12-Dev): KinematicObject base magic method override·body 초기화 (Enemy 영구 정지 근본) 2026-05-12 17:57:01 +09:00
Model initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
MyUI feat(BT12-Dev): 스킬 선택 UI Layer Lab BannerFrame04_Divided 적용 (가로형 Magicka 스타일·옵션 C) 2026-05-10 15:35:52 +09:00
Progression feat(BT12-Dev Phase 2-D): BT12-MVP-A 통합 정정 (placeholder → 정식 ActiveSkillData) + Phase 2-B .meta 보충 2026-05-09 20:57:28 +09:00
Skills fix(BT12-Dev): Camera ortho 5.0 + Enemy PrefabUtility + patrol fallback + RangeTier 2026-05-10 23:47:29 +09:00
UI BT5-Dev #16: PM 변경 영역 일괄 commit (PD Editor GitAutoSync 영역 도달) 2026-05-07 15:29:34 +09:00
View initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
Background.meta auto: 2026-05-12 11:03 · scene: Lobby · 42 files 2026-05-12 11:03:10 +09:00
Core.meta initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
Gameplay.meta initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
Mechanics.meta initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
Model.meta initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
MyUI.meta 로비 ui 등 2026-04-28 17:01:58 +09:00
Progression.meta auto: 2026-05-08 22:14 · scene: Lobby · 125 files 2026-05-08 22:14:06 +09:00
Skills.meta feat(BT12-Dev Phase 2-D): BT12-MVP-A 통합 정정 (placeholder → 정식 ActiveSkillData) + Phase 2-B .meta 보충 2026-05-09 20:57:28 +09:00
UI.meta initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00
View.meta initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트 2026-04-23 00:58:44 +09:00