feat(debug): 모바일 레이아웃에 치트 기능 추가

- MobileCarouselLayout에 치트 버튼 추가
- GameSessionController에 치트 활성화 상태 관리 추가
- ProgressLoop/ProgressService에 치트 메서드 추가
This commit is contained in:
JiWoong Sul
2025-12-31 18:14:31 +09:00
parent a990eb0038
commit 9b668d80a4
5 changed files with 144 additions and 5 deletions

View File

@@ -40,6 +40,7 @@ class ProgressLoop {
DateTime Function()? now,
this.cheatsEnabled = false,
this.onPlayerDied,
this.onGameComplete,
List<int> availableSpeeds = const [1, 5],
}) : _state = initialState,
_tickInterval = tickInterval,
@@ -54,6 +55,9 @@ class ProgressLoop {
/// 플레이어 사망 시 콜백 (Phase 4)
final void Function()? onPlayerDied;
/// 게임 클리어 시 콜백 (Act V 완료)
final void Function()? onGameComplete;
final AutoSaveConfig _autoSaveConfig;
final DateTime Function() _now;
final StreamController<GameState> _stateController;
@@ -135,6 +139,13 @@ class ProgressLoop {
onPlayerDied?.call();
}
// 게임 클리어 시 루프 정지 및 콜백 호출 (Act V 완료)
if (result.gameComplete) {
_timer?.cancel();
_timer = null;
onGameComplete?.call();
}
return _state;
}