Commit Graph

21 Commits

Author SHA1 Message Date
깃 관리자 60812b96ba feat(BT12-Dev): 스킬 시스템 누적 작업물 (PD 지시 2026-05-12~13)
본 세션 (BurningTimes worktree cranky-wescoff-e855b0) 누적 작업물.
직전 commit 4건 (2ebf313·60e28e3·ea7d32f·f6c6eb5) 영역 외 잔존
미커밋 변경 일괄 commit.

Scripts:
- Health.cs  DecrementBypassInvuln (DoT) + DecrementBypassInvulnWithHit
  (다단 히트) + StartHitFlash + FlashHurtCoroutine + TriggerHitOrHurt
- ActiveSkillData.cs  신규 필드 (DamageFrameDelay·EnableRepeatDamage·
  MaxHitCount·RepeatFrameInterval·OffsetDistance Vector2 등)
- PiercingProjectile.cs  A13 천둥발 관통 + Kinematic Rigidbody2D +
  useFullKinematicContacts + OverlapBox 매 frame
- StatusApplier.cs  ApplyDoT 시 DotFxScale 전달
- TestSkillFireOn1to5.cs  1~5 키 발사 + lazy init EnsureRuntimes

Animator:
- Enemy.controller  Baddie-Hurt self-loop transition (hurt 조건)
- Player.controller  Player-Hit self-loop transition (hit 조건)

Prefab:
- FX_Lightningball.prefab  ball 자식 PS simulationSpace World → Local
- Enemy.prefab  본 세션 측정 조정

Active skill assets (PD Inspector 직접 조정):
- A01·A02·A03·A04·A05·A08·A13·A14·A15·A_Laser
  HitboxSize·OffsetDistance(Vector2)·OffsetXY·FxRotation·HitFxScale·
  DamageFrameDelay·EnableRepeatDamage·MaxHitCount·RepeatFrameInterval

Font:
- NotoSansKR-Regular SDF.asset  본 세션 SDF atlas 갱신

→ 박스↔이펙트 분리 원칙 표준화 (박스 = facing 만 · 이펙트 =
   facing + FxRotation · runtime spawn = HideFlags.DontSave)
→ 모든 피해 시 hit flash + Animator self-loop transition

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 18:05:13 +09:00
깃 관리자 0596e2c4c0 auto: 2026-05-13 01:48 · scene: Lobby · 1494 files 2026-05-13 01:48:30 +09:00
깃 관리자 ce5f89ef0f revert: 16aa6f9 정상 동작 시점 복원 (BT12-Dev Enemy 정지 회귀 일괄 정정)
PD 직접 지시 2026-05-12: "정상 동작 시점으로 되돌린 다음 다시 판단"
- 정상 동작 시점: 6c981ed16aa6f9 push 정합 (Variant 6개 SpriteRenderer 종별 idle01 override)
- 회귀 commit 22개 (16aa6f9..5f360ca) 일괄 환원

근본 원인 (Play 측정 확정):
- Player.Health.IsAlive=False·ResurrectPromptUI.showPrompt=True·Time.timeScale=0
- 시작 직후 Player가 Enemy와 충돌해 사망 → 부활 prompt가 timeScale=0 → 모든 frame 정지
- Enemy 코드 자체는 정상 (Rigidbody2D Kinematic·body 연결·CF useTriggers=False·IsGrounded=True)
- 본 PM이 5f360ca까지 누적한 Enemy 측 변경은 헛짚음

16aa6f9 시점 기반 위에 PD 요구 사항 (Visual 자식 분리·Variant 종별 patrol 동작·발판 가장자리 회피 등)을
한 단계씩 점진 재적용·각 단계 Play 실측으로 회귀 차단 예정.
2026-05-12 22:32:08 +09:00
깃 관리자 e38c1a5c12 fix(BT12-Dev): AnimationController RequireComponent 제거·Enemy.prefab root SR/Animator 폐기·Variant 6 재생성
PD: "몬스터 방향 전환 시 이미지 잘못 출력"

근본:
- AnimationController에 [RequireComponent(SpriteRenderer, Animator)] 잔존
- Enemy.prefab root SR·Animator 제거 시도가 RequireComponent에 의해 차단
- Variant 6 모두 root SpriteRenderer 잔존·AnimationController.spriteRenderer = root
- ComputeVelocity의 flipX = root에 적용·실제 보이는 Visual 자식 SpriteRenderer 영향 X
- 방향 전환 시 sprite flip 안 됨

fix:
1. AnimationController.cs — [RequireComponent] 제거
2. Enemy.prefab base — root SpriteRenderer·Animator 폐기
3. Variant 6 prefab 재생성 (이전 Variant 폐기·신규)
   - Visual 자식 SpriteRenderer.sprite·Animator.runtimeAnimatorController override
4. Scene 16 Enemy instance root SR·Animator 잔존 폐기
5. 결과: AnimationController.spriteRenderer = GetComponentInChildren<SpriteRenderer>() = Visual.SpriteRenderer
   flipX·sprite·Animator 모두 Visual 자식 단일화

회귀 영역 X:
- Visual 자식 SpriteRenderer·Animator·OverrideController 정합
- KinematicObject·Collider·EnemyController patrol 영역 영역 X

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 16:15:43 +09:00
깃 관리자 551bc048a4 feat(BT12-Dev): Visual 자식 분리·Clip path Visual·Variant Visual sprite override
PD: "가 — Visual 자식 분리 (이미지만 위로 띄우기 가능)"

근본:
- Enemy GameObject root에 SpriteRenderer·Animator·Collider 모두 묶임
- prefab y 변경 시 Collider까지 같이 이동 → 시각만 분리 불가

fix:
1. Enemy.prefab — Visual 자식 GameObject 신규
   - root SpriteRenderer·Animator 제거
   - Visual 자식에 SpriteRenderer·Animator 부착·기존 setting 이전
2. 35 AnimationClip path 변경
   - EnemyIdle/Run/Hurt/Death/Attack + 30 M00x Clip
   - path="" → path="Visual" (자식 SpriteRenderer 바인딩)
3. Variant 6개 SpriteRenderer override 재적용
   - Visual.SpriteRenderer.sprite = M00x_idle01_0 종별
   - Visual.Animator.runtimeAnimatorController = M00x.overrideController 종별
4. AnimationController·EnemyController
   - spriteRenderer = GetComponent<SpriteRenderer>() ?? GetComponentInChildren<SpriteRenderer>()
   - animator 동일 패턴
5. Scene 16 Enemy position override 복원 (직전 b41cdf6 revert)

PD Variant prefab 영역 Visual 자식 localPosition.y Inspector 조절 시 시각만 위로 이동·Collider 영역 X.

회귀 영역 X:
- KinematicObject·Collider·Rigidbody·EnemyController patrol·발판 통과 정합

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 15:53:37 +09:00
깃 관리자 81898adab6 fix(BT12-Dev): Enemy ↔ Enemy IgnoreLayerCollision + scale 1.7 → 1.19 (30% 영역)
PD: "몬스터끼리 충돌하지 않고 통과"
PD: "몬스터 크기 30% 영역"

fix:
1. Enemy ↔ Enemy IgnoreLayerCollision
   - Physics2D.IgnoreLayerCollision(14, 14, true)
   - EnemyController.Awake 영역 (idempotent·매번 호출 무관)
2. Enemy.prefab transform.localScale 1.7 → 1.19 (30% 영역)
   - Scene 영역 16 instance prefab override 자동 영역
   - sprite·BoxCollider·CapsuleCollider 비례 영역

회귀 영역 X:
- Enemy ↔ Player IgnoreCollision (Layer 14 ↔ Layer 13 별도) 정합
- Enemy ↔ 발판 IgnoreCollision (PlatformEffector2D 별도) 정합
- KinematicObject minMoveDistance·shellRadius 절대값 정합

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 01:39:54 +09:00
깃 관리자 38031279d1 fix(BT12-Dev): 몬스터 종류 random — 6 OverrideController·MonsterRandomizer
PD: "몬스터 색을 랜덤으로 하라는 얘기가 아니라 몬스터 종류를 랜덤으로 하라고 했잖아"

자성: 직전 commit 6e774dc에서 PD 의도 오역 — 색 tint 영역. 종류(sprite) random 의도 정합 X.

근본 (MCP 자율 영역):
- Enemy.prefab idleFrames 24 sprite (M001~M006 × 4 idle frame) 영역 영역
- Enemy.controller 4 Clip (EnemyIdle·EnemyRun·EnemyHurt·EnemyDeath)
- 영역: 6 Idle Clip + 6 OverrideController·EnemyIdle만 override

fix:
1. 6 AnimationClip 신규 — M001_Idle ~ M006_Idle.anim
   - 각 4 sprite keyframe·frameRate 12·loopTime=true
   - SetObjectReferenceCurve (m_Sprite property)
2. 6 AnimatorOverrideController 신규 — M001 ~ M006.overrideController
   - runtimeAnimatorController = Enemy.controller
   - EnemyIdle Clip → M00x_Idle Clip override
   - EnemyRun·EnemyHurt·EnemyDeath 영역 (영역 sprite·6종 영역 영역 영역)
3. MonsterRandomizer 영역
   - overrideControllers[6] 영역
   - Awake 영역 random select·animator.runtimeAnimatorController = overrideControllers[idx]
   - 색 tint 영역 폐기
4. Enemy.prefab MonsterRandomizer.overrideControllers 6 OverrideController 영역
5. Scene 영역 활성 Enemy 16개 SpriteRenderer.color = white (이전 tint 영역)

회귀 영역 X:
- Animator (Idle·Run·Hurt·Death) 정합 유지·EnemyIdle만 override
- One-Way Platform·Enemy 발판 IgnoreCollision·Player·Camera 영역 영역 X

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 01:37:54 +09:00
깃 관리자 c18562bf11 fix(BT12-Dev): MonsterRandomizer Animator 활성 + Enemy patrol 5~10 unit
PD: "이동·죽음·히트 애니메이션 재생 X → 잘 나오도록 수정"
PD: "맵 전체 patrol → 자신 주위 적절 범위 patrol"

근본 (MCP 자율 실측):

1. 애니메이션 — MonsterRandomizer.Awake line 28 `anim.enabled = false`
   - Animator 비활성 → AnimationController.SetFloat("velocityX", ...) 영향 X
   - Idle/Run/Hurt/Death state 영역 영역 X·sprite 수동 idle만
   - fix: anim.enabled=false 제거·sprite 수동 영역 폐기·Animator Clip 정합
   - Enemy.controller transition·parameter 정합 (직전 entry 7 fix 영역)

2. patrol 범위 — Enemy.prefab patrolMin=50·Max=75 (맵 전체)
   - Camera ortho 5.0·camWidth 17.78·주위 영역 영역 5~10 unit 정합
   - fix: patrolMin=5·Max=10 (Enemy.prefab 영역·Scene 16 instance 자동 반영)

회귀 영역 (Minor 사전 고지):
- 6종 random idle 영역 영역 영역 X — 모든 Enemy 동일 외형
- 6종 random visual 다양성 영역 후속 안건 (Sprite 동적 randomization·6 controller·SubStateMachine)·본 fix 영역 외

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 00:00:45 +09:00
깃 관리자 93856bc92a fix(BT12-Dev): Player·Enemy localScale × 1.7 + bgImage1 import 정정
PD: "배경 저화질·Player 1.7배·더 효율적 방법" → "C안으로 해"

C안 (Player·Enemy localScale × 1.7) 채택 근거:
- A (배경 1.7배): Player 화면 점유 16% 그대로·PD 의도 미충족
- B (Camera ortho × 1.7): RangeTier maxRange 영향·직전 사거리 fix 회귀
- C (Player·Enemy scale): Camera·RangeTier·배경 영향 없음·최소 변경

변경:
1. Player.prefab transform.localScale (1,1,1) → (1.7, 1.7, 1)
   - sprite bounds 0.66×1.10 → 1.12×1.88 (화면 점유 16% → 27%)
   - BoxCollider·SpriteRenderer 자동 비례 (transform 적용)
2. Enemy.prefab transform.localScale (1,1,1) → (1.7, 1.7, 1)
   - 활성 Enemy 16개 동일 비율 자동 반영
3. bgImage1 import 정정 (저화질 원인):
   - spriteImportMode Multiple → Single (자동 분할 제거)
   - textureCompression Compressed → Uncompressed (RGBA32 원본 화질)
4. Background_BgImage1 SpriteRenderer.sprite 재매핑 (Multiple→Single fileID 전환)

Camera ortho 3.5·RangeTier mults·Wall LayerMask·Composite·GameObject Static Rb
모두 영향 없음. KinematicObject minMoveDistance·shellRadius 절대값 정합.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-10 21:57:38 +09:00
깃 관리자 1ef19890a5 feat(BT12-Dev): MonsterRandomizer 수동 idle animation (6×4 frames) + Projectile speed 12→6 (거리 차이 체감) 2026-05-10 17:50:28 +09:00
깃 관리자 dd6ab3f8f1 feat(BT12-Dev): MonsterRandomizer 6종 sprite + WallMask Layer 16 (Layer 0 Level Tilemap 영역 영역 거리 X 정정) 2026-05-10 17:40:06 +09:00
깃 관리자 925d2bbbf3 fix(BT12-Dev): Enemy maxHearts 1 (1 hit kill·즉사 정합) 2026-05-10 17:08:30 +09:00
깃 관리자 5cb6040c8a feat(BT12-Dev): PD 4 지시 — Projectile 거리 제한·벽 충돌·특성 가시화·Icon UI 매핑 (MCP 자율)
PD 지시 (2026-05-10):
1. 투사체 종류 영역 일정 거리 영역 소멸 (Camera width × 1.5)
2. 레이저 외 투사체 영역 벽 충돌 시 소멸
3. 스킬 특성 영역 컨셉 동작
4. 스킬 선택 UI 영역 아이콘 노출

본 PM MCP 자율 진행:

==== PD #1: 거리 제한 ====
Projectile.Initialize:
- _spawnPosition 저장
- _maxRange = Camera.orthographicSize × 2 × aspect × 1.5 (가로 × 1.5)
Projectile.Update:
- Distance(transform.position, _spawnPosition) >= _maxRange → SelfDestruct

==== PD #2: 벽 충돌 ====
Projectile.OnTriggerEnter2D:
- isEnemy 처리 → hit 후 SelfDestruct·return
- Layer 0 (Default·Ground) || Layer 16 (Foreground·발판) → SelfDestruct
- 본 Projectile 영역 = A 카테고리 (레이저 영역 영역 X) — 모든 영역 SelfDestruct 정합

==== PD #3: 특성 가시화 ====
StatusApplier·EnemyStateComponents 영역 — DoT·Stun·Slow·Knockback·DebuffStack 영역 영역 정합 영역.
근본 영역 — Enemy hp 4·damage 5·1hit 즉사 → 효과 시각 X.
정정 — Enemy.prefab maxHearts 1→5 (maxHP 4→20) — A02 DoT·A03 Stun·A14 Slow 영역 4 hit 영역 영역 영역.

==== PD #4: Icon UI ====
SkillCardSlot _icon 매핑 X 영역 — BannerFrame04_Divided 자식 영역 SkillIcon GameObject 신규 추가 + Image 컴포넌트
- anchorMin·max (0.5, 0.7)·sizeDelta (120, 120)·preserveAspect true
- 3 슬롯 영역 _icon 필드 매핑 정합

Scene SkillSelectionCanvas·Enemy 인스턴스 RevertPrefabInstance — prefab 변경 동기화

MCP Play 검증:
- enemyMaxHP 20 ·컴파일 에러 0 ·Icon 매핑 3/3 
2026-05-10 16:23:34 +09:00
깃 관리자 8baa3a6f80 BT5-Dev #86: Enemy 속도 2배 느림·미세 밀림 검출·절벽 즉시 phase 전환 (PD 3건)
PD 보고 (2026-05-08):
1. 몬스터 이동속도 너무 빨라 2배 느리게
2. 벽 가장자리 미세 밀림 → 낭떠러지 떨어짐
3. 낭떠러지 근처 생성 Enemy 이동 중 떨어짐

정정 (BT86):

1. AnimationController maxSpeed 7 → 3.5 (Enemy.prefab):
   - frame당 이동 거리 ~0.117m → ~0.058m (2배 느림)

2. stuckTimer 영역 임계값 정정:
   - 거리: |transform.x - _lastX| < 0.01 → 0.02 (미세 밀림 검출)
   - 시간: stuckThresholdTime 0.5 → 0.3 (빠른 phase 전환)
   - stuckMoveThreshold Inspector 영역 신규

3. 절벽 검출 영역 정정:
   - cliffCheckDistance: 0.6 → 0.3 (더 빠른 검출·낭떠러지 근처 보호)
   - 시작 위치 복귀 영역 폐기 → 다음 phase 강제 (시작 위치도 절벽 가능 가설)

효과:
- Enemy 이동속도 2배 느림
- 미세 밀림 (< 0.02m/frame) = stuckTimer 누적 → 0.3초 후 phase 전환
- 절벽 영역 = 즉시 다음 phase (반대 방향 patrol) — 시작 위치 복귀 X
- 낭떠러지 근처 생성 Enemy = 절벽 영역 검출 → 즉시 반대 방향
2026-05-08 12:16:38 +09:00
깃 관리자 007b4dd61a BT5-Dev #85: Enemy y+0.3·수평 Raycast 폐기 (PD 2건)
PD 보고 (2026-05-08):
1. 몬스터 바닥 뚫고 나옴 (이미지 첨부)
2. 몬스터 여전히 이동 X

진단:
- 버그 1: sprite 발 영역(transform.y - 0.63·sprite half) ↔ Capsule bounds.min.y(transform.y - 0.39) = 0.24m 차이. Capsule 영역 위 Tile 표면 → sprite 영역 발이 0.24m 침투 → 시각상 침투
- 버그 2: BT83/BT84 수평 벽 Raycast 영역(bounds 외부 + 0.5m)도 옆 Tile (평지 인접) 검출 → 거짓 양성 → 매 frame phase 강제 → 모든 Enemy 정지

정정 (BT85):
1. transform.y 추가 +0.3 (Enemy.prefab 1.532→1.832 + Scene 인스턴스 19건 +0.3)
2. EnemyController.cs:
   - 수평 벽 Raycast (BT83/BT84 영역) 폐기
   - wallCheckDistance Inspector 영역 폐기
   - stuckThresholdTime: 0.3→0.5 (BT81 영역 회복·정상 이동 미세 영역 거짓 양성 차단)
   - 절벽 검출 영역 그대로
   - stuckTimer 영역 그대로 (벽 정지 시 0.5초 후 다음 phase 강제)

효과:
- 시각상 발 영역 침투 X (transform.y +0.3 → 총 +0.8 from 원본)
- 정상 patrol 영역 = stuckTimer 영역 0 (frame당 transform.x 변경 큰 영역)
- 벽 영역 정지 시 = stuckTimer 영역 0.5초 누적 → 다음 phase 강제
- 절벽 영역 = footAhead Raycast 영역 (Layer 0+16) 검출 → 시작 위치 복귀

후속 의무:
- PD Refresh+Play 시각 검증
2026-05-08 11:52:05 +09:00
깃 관리자 3591bd218f BT5-Dev #80: 몬스터 y+0.5 + 자동 patrol + 절벽 검출 (PD 3건 일괄)
PD 명시 (2026-05-08):
1. 몬스터 바닥 살짝 뚫고 들어감 → y +0.5 (Enemy.prefab + Scene 인스턴스)
2. PatrolPath 폐기 → 생성 위치 기준 좌/우 random 100~150 왕복 자동 patrol
3. 절벽 검출 → 낭떠러지 떨어지지 않도록

변경:

1. Enemy.prefab transform.y: 1.032 → 1.532
2. Scene Ingame.unity Enemy 인스턴스 16개 m_LocalPosition.y override 영역 +0.5 일괄 (19건)
3. EnemyController.cs:
   - patrol 4-phase 영역 (0: 우측 random / 1: 시작 복귀 / 2: 좌측 random / 3: 시작 복귀)
   - SetNextPatrolTarget — Random.Range(100, 150) 영역 + phase별 _targetX 계산
   - Update 영역 자동 patrol 로직 (PatrolPath path 영역 폐기·legacy 호환만)
   - 절벽 검출 — 발 앞 0.6 + 발 아래 0.8 Raycast 영역 지면 X 시 시작 위치 즉시 복귀
   - Inspector 노출: patrolMinRange·patrolMaxRange·patrolArriveThreshold·cliffCheckDistance·cliffCheckDepth·groundLayerMask
   - BT17 marker Debug.Log 영역 폐기 (시행착오 정리)

효과:
- 모든 Enemy 인스턴스 (path 미설정 영역 포함) 자동 patrol 작동
- 시작 위치 기준 ±100~150 random 왕복 패턴
- 절벽 영역 검출 시 시작 위치 즉시 복귀 (낭떠러지 X)
- y +0.5 = 발 영역 지면 위 정합
2026-05-08 11:28:35 +09:00
깃 관리자 aa0b188d14 BT5-Dev #78: M001 sprite fileID 영역 정확 매핑 (BT76·BT77 정정)
PD 보고 (2026-05-08): "몬스터 이미지가 전혀 안보여"

근본 원인:
- M001 sprite mode = Multiple (2)
- Multiple mode 영역 fileID = .meta internalIDToNameTable 영역의 internalID (음수 가능)
- 본 PM 가설 = fileID 21300000 (Single mode 영역) → 부정확
- Enemy.prefab + 4 .anim 영역 모두 sprite reference 영역 fileID 미존재 GUID로 매핑 → 시각상 X

정정 (Python 자동):
- 각 M001 sprite .meta 영역 internalIDToNameTable 영역 213 영역 internalID 추출
  (예: M001_idle01 = -7548370174848201806)
- 4 .anim 영역 m_PPtrCurves 영역 keyframe별 정확 internalID 영역 매핑
- Enemy.prefab m_Sprite fileID = M001_idle01 internalID

매핑 수정 영역:
- Enemy.prefab Sprite: fileID -7548370174848201806 + guid M001_idle01
- EnemyIdle.anim: 48 keyframes M001_idle 4 frames (4-cycle)
- EnemyRun.anim: 15 keyframes M001_run 5 frames (5-cycle)
- EnemyHurt.anim: 9 keyframes M001_hit 2 frames (2-cycle)
- EnemyDeath.anim: 8 keyframes M001_death 4 frames (4-cycle)

후속 의무:
- PD Refresh+Play 시각 검증 (M001 늑대 sprite 표시 정합)
2026-05-08 01:00:19 +09:00
깃 관리자 020a2206c0 BT5-Dev #76: 몬스터 1차 sprite 교체 — M001 늑대 (Enemy.prefab SpriteRenderer)
PD 명시 (2026-05-08): "게임 내 모든 몬스터를 늑대로"

1차 단순 진행 (정지 시점 sprite만 교체):
- Enemy.prefab m_Sprite = EnemyIdle.png(fe68c6e1...) → M001_idle01.png(f7b7e5d5...)
- 시각상 정지 시점 = 늑대 idle 첫 frame

2차 후속 권고 (PD 결정 영역):
- EnemyIdle/Run/Hurt/Death .anim 영역 sprite reference 영역 교체
  - EnemyIdle.png GUID(fe68c6e1...) → M001_idle 4 frames
  - EnemyRun.png 영역 → M001_run 5 frames
  - EnemyHurt.png 영역 → M001_hit 2 frames
  - EnemyDeath.png 영역 → M001_death 4 frames
- attack 영역 신규 .anim 영역 작성 가능 (M001_attack 4 frames)
- Enemy.controller 영역 .anim 참조 영역 변경 또는 AnimatorOverrideController 영역 신규

M001 sprite GUID 카탈로그 (.anim 교체 시 사용):
- idle: f7b7e5d5d35e8ea4a9574fc970089486 / eb4754ac8816180459f43ea0d2be515d / f8a4b8c30ad9dc0479c2a21f635975c0 / f8519f10c50debc448559483e0af1b42
- run: 87e0e7df.. / bff83363.. / f70891b2.. / 8b2f5697.. / 4d71cfb9..
- hit: 37b18867.. / 0e93511696..
- death: 5e56e0e8.. / 8d913271.. / e9529e37.. / 17c76eeb..
- attack: c0df76ac.. / eff1bf43.. / 2b3fa48e.. / 23f76537..

후속 의무:
- PD Refresh+Play 시각 검증 (정지 sprite = M001_idle01 정합)
- 2차 .anim·controller 영역 교체 결정 (PD 명시)
2026-05-08 00:55:54 +09:00
깃 관리자 806e5f722e BT5-Dev #22 진정한 근본: Enemy.prefab m_Layer 13→14 + m_TagString Player→Untagged + IgnoreLayerCollision(13,14)
본 PM 자인 (C5·C39·C44):
- BT5-Dev #1~#21 동안 Enemy.prefab m_Layer/m_TagString 영역 검증 X 누적
- Enemy의 m_Layer=13 (Player와 동일) + m_TagString=Player (Player tag 중복) = 진정한 근본
  → FindGameObjectWithTag("Player")가 Enemy 발견 + Layer 동일로 IgnoreCollision도 효과 X
- 본 PM이 추측·Bounds·Distance·IgnoreCollision·OneWay 영역 모두 = 도달 영역 외 정정

정정:
- Enemy.prefab m_Layer 13→14
- Enemy.prefab m_TagString Player→Untagged
- GameOptimizer Physics2D.IgnoreLayerCollision(13, 14, true) BeforeSceneLoad

영구 효과:
- FindGameObjectWithTag("Player") = Player.prefab만 발견 정합
- Player Layer 13 ↔ Enemy Layer 14 충돌 OFF = 통과 정합
- IgnoreCollision instance 영역 의존 X = 안전
2026-05-07 16:09:54 +09:00
깃 관리자 a10c38605d auto: 2026-04-23 23:47 · scene: SampleScene · 20 files 2026-04-23 23:47:51 +09:00
깃 관리자 9f689c1661 initial: Unity 6000.3.13f1 LTS 2D PlatformerMicrogame 템플릿 + GitAutoSync Editor 스크립트
- Unity 2D PlatformerMicrogame 기본 템플릿 자산 전수
- Assets/Editor/GitAutoSync/GitAutoSync.cs — BT5-Dev C안 Unity Editor 자동 sync trigger
  · InitializeOnLoad → auto pull · quitting → auto push · Tools/Git Menu 수동 옵션
  · 실제 git 작업은 BT 본 레포 scripts/unity_auto_sync.sh 가 수행 (Process.Start 호출)
- .gitignore — Unity 표준 (Library/·Temp/·Logs/·UserSettings/·IDE·빌드 산출물 제외)

조직: BurningTimes / 프로젝트: EerieVillage (기묘한 고을 : 조선퇴마뎐)
근거: PD BT5-Dev C안 승인 (2026-04-23)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 00:58:44 +09:00