fix(game): 게임 플레이 화면 개선
This commit is contained in:
@@ -256,6 +256,9 @@ class _GamePlayScreenState extends State<GamePlayScreen>
|
|||||||
final taskType = state.progress.currentTask.type;
|
final taskType = state.progress.currentTask.type;
|
||||||
final isInBattleTask = taskType == TaskType.kill;
|
final isInBattleTask = taskType == TaskType.kill;
|
||||||
|
|
||||||
|
debugPrint(
|
||||||
|
'[BGM] TaskType: $taskType, isInBattle: $isInBattleTask, currentBgm: ${audio.currentBgm}');
|
||||||
|
|
||||||
// 전투 태스크 상태 결정
|
// 전투 태스크 상태 결정
|
||||||
if (isInBattleTask) {
|
if (isInBattleTask) {
|
||||||
// 전투 태스크: 보스 여부에 따라 BGM 선택
|
// 전투 태스크: 보스 여부에 따라 BGM 선택
|
||||||
@@ -266,11 +269,15 @@ class _GamePlayScreenState extends State<GamePlayScreen>
|
|||||||
|
|
||||||
// 전환 시점이거나 현재 BGM이 일치하지 않으면 재생
|
// 전환 시점이거나 현재 BGM이 일치하지 않으면 재생
|
||||||
if (!_wasInBattleTask || audio.currentBgm != expectedBgm) {
|
if (!_wasInBattleTask || audio.currentBgm != expectedBgm) {
|
||||||
|
debugPrint('[BGM] Playing battle BGM: $expectedBgm');
|
||||||
audio.playBgm(expectedBgm);
|
audio.playBgm(expectedBgm);
|
||||||
}
|
}
|
||||||
} else if (_wasInBattleTask || audio.currentBgm == 'battle' || audio.currentBgm == 'boss') {
|
} else {
|
||||||
// 전투 태스크 종료 또는 BGM 불일치: 마을 BGM으로 복귀
|
// 비전투 태스크: 항상 마을 BGM 유지 (이미 town이면 스킵)
|
||||||
audio.playBgm('town');
|
if (audio.currentBgm != 'town') {
|
||||||
|
debugPrint('[BGM] Playing town BGM (was: ${audio.currentBgm})');
|
||||||
|
audio.playBgm('town');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_wasInBattleTask = isInBattleTask;
|
_wasInBattleTask = isInBattleTask;
|
||||||
|
|||||||
Reference in New Issue
Block a user