18 lines
1.2 KiB
Markdown
18 lines
1.2 KiB
Markdown
# 62. Implement Enemy Attack Animation
|
|
|
|
## 1. 목표 (Goal)
|
|
- 플레이어뿐만 아니라 적(Enemy)이 공격할 때도 플레이어 쪽으로 돌진하는 애니메이션을 추가하여 전투의 역동성을 높입니다.
|
|
|
|
## 2. 구현 계획 (Implementation Plan)
|
|
1. **`BattleScreen` 수정:**
|
|
- `GlobalKey<BattleAnimationWidgetState> _enemyAnimKey`를 추가합니다.
|
|
- 적 캐릭터 UI(`CharacterStatusCard`)를 `BattleAnimationWidget`으로 감쌉니다.
|
|
2. **애니메이션 트리거 로직 (`_addFloatingEffect`):**
|
|
- 기존 플레이어 공격 감지 로직과 유사하게, `event.type == ActionType.attack`이고 `event.target == EffectTarget.player`인 경우를 감지합니다.
|
|
- 적 위치에서 플레이어 위치로의 오프셋(`playerPos - enemyPos`)을 계산하여 `_enemyAnimKey`로 애니메이션을 실행합니다.
|
|
- 공격 모션 중에는 적의 스탯 정보(HP바 등)를 일시적으로 숨기는 로직(`_isEnemyAttacking`)도 추가합니다.
|
|
|
|
## 3. 기대 효과 (Expected Outcome)
|
|
- 적의 턴에도 시각적인 움직임이 발생하여 전투가 더 생동감 있게 느껴짐.
|
|
- 플레이어와 적의 상호작용이 명확해짐.
|