diff --git a/src/Z2AudioLib/Z2SceneMgr.cpp b/src/Z2AudioLib/Z2SceneMgr.cpp index 1b2152fcb7..a20d258d43 100644 --- a/src/Z2AudioLib/Z2SceneMgr.cpp +++ b/src/Z2AudioLib/Z2SceneMgr.cpp @@ -1230,7 +1230,8 @@ void Z2SceneMgr::setSceneName(char* spot, s32 room, s32 layer) { bgm_id = Z2BGM_DUNGEON_FOREST; bgm_wave1 = 0xa; /* dSv_event_flag_c::M_022 - Forest Temple - Forest Temple clear (Midna creates warp hole) */ - } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[55])) { + // In rando, check for boss defeated instead + } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[55]) IF_DUSK(&& (!randomizer_IsActive() || dComIfGs_isStageBossEnemy()))) { bgm_id = 0x200005b; } else { bgm_wave1 = 0xc; @@ -1290,11 +1291,13 @@ void Z2SceneMgr::setSceneName(char* spot, s32 room, s32 layer) { break; case Z2SCENE_LAKEBED_TEMPLE_BOSS: se_wave1 = 9; - if (dComIfGs_isStageSwitch(4, 0xe)) { + // In rando, check for boss defeated instead + if (dComIfGs_isStageSwitch(4, 0xe) IF_DUSK(&& (!randomizer_IsActive() || dComIfGs_isStageBossEnemy()))) { bgm_id = Z2BGM_DUNGEON_LV3; bgm_wave1 = 0x15; /* dSv_event_flag_c::M_045 - Lakebed Temple - Lakebed Temple clear */ - } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[78])) { + // In rando, check for boss defeated instead + } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[78]) IF_DUSK(&& (!randomizer_IsActive() || dComIfGs_isStageBossEnemy()))) { bgm_id = 0x200005b; } else { bgm_wave1 = 0x1e; @@ -1324,11 +1327,11 @@ void Z2SceneMgr::setSceneName(char* spot, s32 room, s32 layer) { break; case Z2SCENE_ARBITERS_GROUNDS_BOSS: se_wave1 = 0xd; - if (dComIfGs_isStageSwitch(0xa, 0xa)) { + if (dComIfGs_isStageSwitch(0xa, 0xa) IF_DUSK(&& (!randomizer_IsActive() || dComIfGs_isStageBossEnemy()))) { bgm_id = Z2BGM_DUNGEON_LV4; bgm_wave1 = 0x1a; /* dSv_event_flag_c::F_0265 - Arbiter's Grounds - Arbiter's Grounds clear */ - } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[265])) { + } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[265]) IF_DUSK(&& (!randomizer_IsActive() || dComIfGs_isStageBossEnemy()))) { bgm_id = 0x200005b; } else { bgm_wave1 = 0x4c; @@ -1389,11 +1392,11 @@ void Z2SceneMgr::setSceneName(char* spot, s32 room, s32 layer) { break; case Z2SCENE_TEMPLE_OF_TIME_BOSS: se_wave1 = 0x15; - if (dComIfGs_isStageSwitch(7, 0x18)) { + if (dComIfGs_isStageSwitch(7, 0x18) IF_DUSK(&& (!randomizer_IsActive() || dComIfGs_isStageBossEnemy()))) { bgm_id = Z2BGM_DUNGEON_LV6; bgm_wave1 = 0x26; /* dSv_event_flag_c::F_0267 - Temple of Time - Temple of Time clear */ - } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[267])) { + } else if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[267]) IF_DUSK(&& (!randomizer_IsActive() || dComIfGs_isStageBossEnemy()))) { bgm_id = 0x200005b; } else { bgm_wave1 = 0x4e;