Commit Graph

5 Commits

Author SHA1 Message Date
깃 관리자 f50196056b fix(BT12-Dev): EnemyDeath 근본 fix — Animator transition 5 + UnscaledTime + 진단 회수
근본 원인 (본 PM MCP 직접 진단):
- Enemy.controller 영역 Idle/Run/Hurt → Death/Hurt transition 부재 → death Trigger 호출 영역 transition X
- Animator updateMode = Normal·Time.timeScale = 0 (LevelUp 카드 선택) → Animator.Update 정지 → transition 영역 X

해결 (본 PM 자율 결정 + MCP 직접 적용):
- Enemy.controller transition 5 추가 (Idle→Death, Idle→Hurt, Run→Death, Run→Hurt, Hurt→Death)
  → manage_animation controller_add_transition 영역 직접 호출
- EnemyDeath.cs animator.updateMode = AnimatorUpdateMode.UnscaledTime 추가
  → Time.timeScale = 0 영역 영역 Animator 영역 정상 진행 → death animation 재생 + transition 발동
- 진단 Debug.Log 회수: Projectile (8 분기)·AttackHitbox (1줄)·EnemyDeath (1줄)
  → 사망 원인 확정 영역 회수 의무 정합

본 PM MCP 직접 진단 절차:
1. read_console — Console 직접 읽기 (Health@Enemy·Projectile 출력 검증)
2. controller_get_info — Enemy.controller parameters·states·transitions 직접 검증
3. execute_code — Player·Enemy 위치·Schedule<EnemyDeath> 직접 호출·Animator state 검증
4. manage_animation controller_add_transition — Animator transition 5 직접 추가
5. anim.SetTrigger("death") + anim.Update(0.5f) → Baddie-Death 진입 정합 검증

PD 결정 (2026-05-10): "MCP 활용해서 네가 직접 체크해" — 본 PM 자율 진단·fix·검증.
PD 자성 #13: PD에게 작업 떠넘기기 금지·MCP 능동 활용 의무.
2026-05-10 01:09:17 +09:00
깃 관리자 d27a63f32e diag(BT12-Dev): Projectile.OnTriggerEnter2D 진단 Debug.Log 추가 — 적 피격 X 근본 진단
목적:
- 본 PM 가설 4회 누적 부정확 + 회귀 1회 → feedback_pm_root_diagnosis_priority 의무 적용
- 가설 즉시 중단·실측 우선 진단 도구 추가
- PD Play 영역 Console [Projectile] prefix 필터 → 호출 여부·other 정보·각 분기 reach·return 시점 정확 진단

진단 Debug.Log 영역 (prefix [Projectile][...] 통일·grep 영역):
- [Enter] OnTriggerEnter2D 진입 영역 (other.name·layer·t)
- [Return] _hitTargets duplicate
- [Return] PlayerController detected
- [LayerCheck] enemyLayer·otherLayer·hasEnemyController·isEnemy
- [Return] not Enemy
- [Return] Health component missing
- [Return] Health not alive (hp 정보)
- [Hit] damage 적용

회수 의무:
- PD Console 결과 수령 + 근본 fix 적용 후 본 진단 Debug.Log 일괄 제거 (대화로그 영역 명시)

PD 결정 (2026-05-09): "A 안으로 해" — 진단 Debug.Log 즉시 추가.
pm-auditor 통과 (조건부) + 권고 4종 수용.
2026-05-09 23:46:05 +09:00
깃 관리자 e31c34cf24 feat(BT12-Dev): SkillInventoryHUD 시각화 + 사망 원인 디버그 로그 (PD 후속 지시 2건)
PD 직접 발화 2건:
1. PlayerSkillInventory 등록 시각화 (유니티 기본 자원 활용)
2. 스킬 습득 후 사망 버그 수정

작업 내용:
- SkillInventoryHUD.cs 신규 (OnGUI 좌상단·장착 액티브 DisplayName/Lv/CD·패시브 카운트)
- PlayerController.Awake에 HUD 자동 부착
- ProjectileSpawner fallback prefab 시각화 (SpriteRenderer + 16x16 동적 흰색 원 + 속성별 색상)
- Projectile.OnTriggerEnter2D Player 명시 차단 (defensive proxy)
- Health.Decrement·DecrementSilent·Die에 Debug.Log + StackTrace (사망 호출자 추적)

가설 (미검증): BT5-Dev EnemyController patrol → PlayerEnemyCollision Event → player.health.Decrement().
검증 절차: PD Play 테스트 → Console log StackTrace 분석 → 호출자 확정.

pm-auditor Major 1 정정 완료 (PD 지시 로그 2행 등재)·Minor 2 정정 완료.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 21:23:25 +09:00
깃 관리자 d53150b5ed feat(BT12-Dev Phase 2-D): BT12-MVP-A 통합 정정 (placeholder → 정식 ActiveSkillData) + Phase 2-B .meta 보충
C49 Phase 2-D — Sonnet 위임 (코드 Write·검증만·git 본 PM 처리 정합·feedback_pm_sonnet_subagent_unauthorized_push 정합).

수정 6 파일:
- LevelUpManager.cs (Phase 2-D 정정·_pool 제거·SkillRuntimeFactory.RandomDraw3·HandleCardConfirmed(ActiveSkillData)·PlayerSkillInventory.AddSkillByCardId)
- SkillSelectionUI.cs (Show(List<ActiveSkillData>)·_selected·BindSlot·OnCardSelected ActiveSkillData 전환)
- SkillCardSlot.cs (Bind(ActiveSkillData)·DisplayName/Description/Icon PascalCase·rarity 배너 갈색 고정)
- PlayerController.cs (PlayerSkillInventory 자동 부착·line 100)
- Projectile.cs (Layer Enemy 미등재 fallback — EnemyController 컴포넌트 검사·proxy)
- SkillRuntimeFactory.cs (RandomDraw3 메서드·Active 카테고리 무작위 3장)

신규 9 .meta (Phase 2-B Sonnet 자율 push 영역 영역 영역 영역 X·Unity Editor Refresh 후 자동 생성·본 commit 보충):
- Skills.meta + Effectors.meta + 7 Effectors/*.cs.meta

Layer Enemy 영역 = proxy 개선 신호 (C2-2):
- 현 시점 = Projectile.OnTriggerEnter2D 영역 EnemyController 컴포넌트 fallback (proxy)
- 근본 해결안 = Layer "Enemy" 정식 등재 (별도 PD 안건·후속)

기능:
- 적 처치 → EXP +1 → 즉시 레벨업 → 카드 3장 노출 → 선택 → PlayerSkillInventory 등록 → ActiveSkillRuntime Tick → 1.5s 영역 자동 발사 + 부가 효과 (DoT·Stun·Slow·DebuffStack)

기존 영역 변경 X (BT5-Dev·BT7-Dev·Phase 2-A·2-B·2-C·BT12-MVP-A asset 5장·Scene·SkillCardPlaceholder·SkillCardPlaceholderPool·deprecate 차후)

Compile error 0건 (read_console·도메인 리로드 정합)

C49 — Phase 2-D Sonnet 위임 + Phase 3 본 PM 직접 (단순 반복 카탈로그 v1)
C50 — ~95K (PD 사전 승인 70~95K 영역 상한 정합)
C19-2 — Sonnet 자율 git X·본 PM 직접 commit·push (feedback 정합)

pm-auditor 사전 감사 = Pass + Minor 1 (Layer fallback proxy 명시·본 commit + 대화로그 영역 정정 적용)

후속:
- Phase 2-A·2-B·2-C·2-D 영역 PD Play 검증 (자동 발동·레벨업·카드 선택·등록·Tick)
- Layer "Enemy" 정식 등재 (별도 PD 안건·근본 해결안)
- Phase 2-E EditMode 테스트
- 다른 카테고리 (B·C·D·E·F) 영역
- BT12-MVP-A asset 5장 deprecate (차기)
- Screenshots·_Recovery .gitignore (별도)
2026-05-09 20:57:28 +09:00
깃 관리자 2f2790ce57 feat(BT12-Dev Phase 2-B): 투사체 카테고리 6종 효과 발동기 구현
- Effectors/IEffector.cs: 효과 발동기 공통 인터페이스
- Effectors/Projectile.cs: Line 직선 투사체 (단일 적 타격 후 소멸)
- Effectors/HomingProjectile.cs: Homing 유도 투사체 A15 (FindNearestEnemy)
- Effectors/ProjectileSpawner.cs: IEffector 구현 — 다중 발사·궤적 분기
- Effectors/StatusApplier.cs: DoT·Stun·Slow·Knockback·DebuffStack 통합 적용기
- Effectors/DebuffStack.cs: A08 저주 스택 N회 폭발 레지스트리
- Effectors/EnemyStateComponents.cs: DoT·Stun·Slow MonoBehaviour 통합
- Events/SkillFireEvent.cs: Execute stub → ActiveCategory.Projectile 분기 정식 연결

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 19:00:27 +09:00