fix(audio): 타이틀 BGM 재생 위치 수정

- build() 내 반복 호출 대신 세이브 확인 완료 후 1회 재생
This commit is contained in:
JiWoong Sul
2026-01-08 16:19:07 +09:00
parent 4af3830bb5
commit df876cae6d

View File

@@ -133,6 +133,8 @@ class _AskiiNeverDieAppState extends State<AskiiNeverDieApp> {
_savedGamePreview = preview;
_isCheckingSave = false;
});
// 세이브 확인 완료 후 타이틀 BGM 재생
_audioService.playBgm('title');
}
}
@@ -455,8 +457,6 @@ class _AskiiNeverDieAppState extends State<AskiiNeverDieApp> {
return const _SplashScreen();
}
// 항상 프론트 화면 표시 (타이틀 BGM 재생)
_audioService.playBgm('title');
return FrontScreen(
onNewCharacter: _navigateToNewCharacter,
onLoadSave: _loadSave,
@@ -478,7 +478,7 @@ class _AskiiNeverDieAppState extends State<AskiiNeverDieApp> {
),
),
).then((_) {
// 새 게임 후 돌아오면 세이브 정보 갱신
// 새 게임 후 돌아오면 세이브 정보 갱신 (BGM은 _checkForExistingSave에서 재생)
_checkForExistingSave();
});
}
@@ -554,7 +554,7 @@ class _AskiiNeverDieAppState extends State<AskiiNeverDieApp> {
),
),
).then((_) {
// 게임에서 돌아오면 세이브 정보 갱신
// 게임에서 돌아오면 세이브 정보 갱신 (BGM은 _checkForExistingSave에서 재생)
_checkForExistingSave();
});
}
@@ -563,7 +563,10 @@ class _AskiiNeverDieAppState extends State<AskiiNeverDieApp> {
void _navigateToHallOfFame(BuildContext context) {
Navigator.of(context).push(
MaterialPageRoute<void>(builder: (context) => const HallOfFameScreen()),
);
).then((_) {
// 명예의 전당에서 돌아오면 타이틀 BGM 재생
_audioService.playBgm('title');
});
}
/// 로컬 아레나 화면으로 이동
@@ -573,8 +576,9 @@ class _AskiiNeverDieAppState extends State<AskiiNeverDieApp> {
builder: (context) => const ArenaScreen(),
),
).then((_) {
// 아레나에서 돌아오면 명예의 전당 다시 로드
// 아레나에서 돌아오면 명예의 전당 다시 로드 및 타이틀 BGM 재생
_loadHallOfFame();
_audioService.playBgm('title');
});
}
}