22 lines
1.0 KiB
Markdown
22 lines
1.0 KiB
Markdown
# 58. 패배 시 저장 데이터 삭제 (Permadeath Implementation)
|
|
|
|
## 1. 목표 (Goal)
|
|
- 로그라이크 장르 특성에 맞춰 플레이어 패배(사망) 시 저장된 진행 데이터를 즉시 삭제하여 영구적인 죽음(Permadeath)을 구현합니다.
|
|
|
|
## 2. 구현 상세 (Implementation Details)
|
|
|
|
### `BattleProvider`
|
|
- **`_onDefeat` 메서드 추가:**
|
|
- 비동기(`async`) 메서드.
|
|
- "Player defeated! Enemy wins!" 로그 추가.
|
|
- `SaveManager.clearSaveData()` 호출하여 저장 파일 삭제.
|
|
- `notifyListeners()` 호출하여 UI 갱신.
|
|
- **패배 조건 체크 추가:**
|
|
- `playerAction`: 턴 시작 시 상태이상(출혈 등)으로 인한 사망 체크.
|
|
- `_enemyTurn`: 적 공격 후 및 턴 종료 시 사망 체크.
|
|
- 사망 확인 시 `_onDefeat` 호출.
|
|
|
|
## 3. 결과 (Result)
|
|
- 플레이어가 게임에서 패배하면 메인 메뉴로 돌아가더라도 '이어하기' 버튼이 활성화되지 않습니다(저장 데이터 삭제됨).
|
|
- 긴장감 있는 게임 플레이 환경이 조성되었습니다.
|