Sound documentation followup (#466)

* Start polishing sound documentation

* Sound_SetScene consts

* Surfing theme

* Sound_GetBGMByMapID

* Trainer encounter bgm doc

* A couple of more constants

* Review suggestions

* TrainerId -> TrainerID
This commit is contained in:
Eduardo Quezada 2025-04-13 16:21:31 -04:00 committed by GitHub
parent 4dc33aeff4
commit a7a218da2c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
93 changed files with 415 additions and 353 deletions

View File

@ -1376,9 +1376,9 @@
.short \arg0
.endm
.macro ScrCmd_0EA arg0
.macro PlayTrainerEncounterBGM trainerID
.short 234
.short \arg0
.short \trainerID
.endm
.macro BlackOutFromBattle

View File

@ -84,7 +84,7 @@ metang_generators = {
'species': { 'type': 'enum', 'tag': 'Species' },
'species_data_params': { 'type': 'enum', 'tag': 'SpeciesDataParam' },
'text_banks': { 'type': 'enum', 'tag': 'TextBank' },
'trainers': { 'type': 'enum', 'tag': 'Trainer' },
'trainers': { 'type': 'enum', 'tag': 'TrainerID' },
'trainer_classes': { 'type': 'enum', 'tag': 'TrainerClass' },
'trainer_score_events': { 'type': 'enum', 'tag': 'TrainerScoreEvent' },
'trainer_types': { 'type': 'enum', 'tag': 'TrainerType' },

View File

@ -1048,7 +1048,8 @@ BANK_SE_SHIP
BANK_SE_SLOT
BANK_SE_SCRATCH
BANK_SE_HIROBA
SEQ_PV001 = 1
SEQ_NONE = 0
SEQ_PV001
SEQ_PV
SEQ_PV_END
SEQ_DUMMY = 1000

View File

@ -5,6 +5,8 @@
#include <nitro/spi.h>
#include <nnsys.h>
#include "generated/sdat.h"
#include "sound_system.h"
#define FIELD_BGM_BANK_STATE_IDLE 0
@ -29,14 +31,76 @@
enum SoundScene {
SOUND_SCENE_NONE = 0,
SOUND_SCENE_FIELD = 4,
SOUND_SCENE_1,
SOUND_SCENE_2,
SOUND_SCENE_3,
SOUND_SCENE_FIELD,
SOUND_SCENE_BATTLE,
SOUND_SCENE_CONTEST,
SOUND_SCENE_7,
SOUND_SCENE_8,
SOUND_SCENE_9,
SOUND_SCENE_10,
SOUND_SCENE_11,
SOUND_SCENE_12,
SOUND_SCENE_13,
SOUND_SCENE_14,
SOUND_SCENE_15,
SOUND_SCENE_16,
SOUND_SCENE_17,
SOUND_SCENE_18,
SOUND_SCENE_19,
SOUND_SCENE_20,
SOUND_SCENE_21,
SOUND_SCENE_22,
SOUND_SCENE_23,
SOUND_SCENE_24,
SOUND_SCENE_25,
SOUND_SCENE_26,
SOUND_SCENE_27,
SOUND_SCENE_28,
SOUND_SCENE_29,
SOUND_SCENE_30,
SOUND_SCENE_31,
SOUND_SCENE_32,
SOUND_SCENE_33,
SOUND_SCENE_34,
SOUND_SCENE_35,
SOUND_SCENE_36,
SOUND_SCENE_37,
SOUND_SCENE_38,
SOUND_SCENE_39,
SOUND_SCENE_40,
SOUND_SCENE_41,
SOUND_SCENE_42,
SOUND_SCENE_43,
SOUND_SCENE_44,
SOUND_SCENE_45,
SOUND_SCENE_46,
SOUND_SCENE_47,
SOUND_SCENE_48,
SOUND_SCENE_49,
SOUND_SCENE_50,
SOUND_SCENE_MAX,
SOUND_SCENE_MAX = 51,
SOUND_SCENE_SUB_BAG = 51,
SOUND_SCENE_SUB_BAG = SOUND_SCENE_MAX,
SOUND_SCENE_SUB_52,
SOUND_SCENE_SUB_53,
SOUND_SCENE_SUB_54,
SOUND_SCENE_SUB_55,
SOUND_SCENE_SUB_56,
SOUND_SCENE_SUB_57,
SOUND_SCENE_SUB_58,
SOUND_SCENE_SUB_59,
SOUND_SCENE_SUB_60,
SOUND_SCENE_SUB_61,
SOUND_SCENE_SUB_62,
SOUND_SCENE_SUB_63,
SOUND_SCENE_SUB_64,
SOUND_SCENE_SUB_65,
SOUND_SCENE_SUB_66,
SOUND_SCENE_SUB_67,
SOUND_SCENE_SUB_68,
};
enum WaveOutChannel {
@ -75,7 +139,7 @@ void Sound_SetSubScene(u8 scene);
int Sound_LoadSoundEffectsForScene(u8 scene);
BOOL Sound_SetSceneAndPlayBGM(u8 scene, u16 bgmID, int unused);
void Sound_LoadSoundDataForFieldBGM(u16 seqID, u16 currentBankID);
void sub_02004950(u16 param0);
void Sound_SwapBGM(u16 bgmID);
void Sound_LoadHeapStateBGM(void);
int Sound_GetHeapState(enum SoundHeapState state);
void Sound_SetBGMPlayerPaused(u8 playerID, BOOL paused); // playerID can be either PLAYER_FIELD or PLAYER_BGM

View File

@ -13,7 +13,7 @@ BOOL ScrCmd_StartTagBattle(ScriptContext *ctx);
BOOL ScrCmd_0E7(ScriptContext *param0);
BOOL ScrCmd_0E8(ScriptContext *param0);
BOOL ScrCmd_0E9(ScriptContext *param0);
BOOL ScrCmd_0EA(ScriptContext *param0);
BOOL ScrCmd_PlayTrainerEncounterBGM(ScriptContext *ctx);
BOOL ScrCmd_BlackOutFromBattle(ScriptContext *param0);
BOOL ScrCmd_CheckWonBattle(ScriptContext *ctx);
BOOL ScrCmd_CheckLostBattle(ScriptContext *ctx);

View File

@ -1,18 +1,21 @@
#ifndef POKEPLATINUM_UNK_020553DC_H
#define POKEPLATINUM_UNK_020553DC_H
#include "generated/map_headers.h"
#include "generated/trainers.h"
#include "field/field_system_decl.h"
void sub_020553DC(void);
void Sound_SetSpecialBGM(FieldSystem *fieldSystem, u16 sdatID);
u16 Sound_GetSpecialBGM(FieldSystem *fieldSystem);
void Sound_ClearSpecialBGM(FieldSystem *fieldSystem);
u16 sub_02055428(FieldSystem *fieldSystem, int param1);
u16 sub_020554A4(FieldSystem *fieldSystem, int headerID);
u16 Sound_GetOverrideBGM(FieldSystem *fieldSystem, enum MapHeader mapID);
u16 Sound_GetBGMByMapID(FieldSystem *fieldSystem, int mapID);
BOOL sub_02055554(FieldSystem *fieldSystem, u16 param1, int param2);
u16 sub_0205560C(int param0);
void Sound_TryFadeInBGM(FieldSystem *fieldSystem, int param1);
void Sound_PlayMapBGM(FieldSystem *fieldSystem, int param1);
void sub_020556A0(FieldSystem *fieldSystem, int param1);
u16 Trainer_GetEncounterBGM(enum TrainerID trainerID);
void Sound_TryFadeInBGM(FieldSystem *fieldSystem, int mapID);
void Sound_PlayMapBGM(FieldSystem *fieldSystem, int mapID);
void sub_020556A0(FieldSystem *fieldSystem, int mapID);
#endif // POKEPLATINUM_UNK_020553DC_H

View File

@ -148,7 +148,7 @@ _01C9:
LockAll
FacePlayer
GoToIfGe 0x40AE, 1, _0211
ScrCmd_0EA TRAINER_LASS_CAROLINE
PlayTrainerEncounterBGM TRAINER_LASS_CAROLINE
Message 6
CloseMessage
StartTrainerBattle TRAINER_LASS_CAROLINE
@ -174,7 +174,7 @@ _021C:
LockAll
FacePlayer
GoToIfGe 0x40AE, 2, _0270
ScrCmd_0EA TRAINER_AROMA_LADY_JENNA
PlayTrainerEncounterBGM TRAINER_AROMA_LADY_JENNA
SetVar 0x8007, 3
Call _02DA
Message 8
@ -202,7 +202,7 @@ _027B:
LockAll
FacePlayer
GoToIfGe 0x40AE, 3, _02CF
ScrCmd_0EA TRAINER_AROMA_LADY_ANGELA
PlayTrainerEncounterBGM TRAINER_AROMA_LADY_ANGELA
SetVar 0x8007, 4
Call _02DA
Message 10

View File

@ -12,7 +12,7 @@ _000A:
LockAll
FacePlayer
GoToIfSet FLAG_UNK_0x00B0, _00AC
ScrCmd_0EA TRAINER_ELITE_FOUR_AARON
PlayTrainerEncounterBGM TRAINER_ELITE_FOUR_AARON
Message 0
CloseMessage
CallIfUnset FLAG_UNK_0x00D6, _007A

View File

@ -12,7 +12,7 @@ _000A:
LockAll
FacePlayer
GoToIfSet FLAG_UNK_0x00B1, _00AC
ScrCmd_0EA TRAINER_ELITE_FOUR_BERTHA
PlayTrainerEncounterBGM TRAINER_ELITE_FOUR_BERTHA
Message 0
CloseMessage
CallIfUnset FLAG_UNK_0x00D6, _007A

View File

@ -14,7 +14,7 @@ _000A:
_000E:
ApplyMovement LOCALID_PLAYER, _012C
WaitMovement
ScrCmd_0EA TRAINER_CHAMPION_CYNTHIA
PlayTrainerEncounterBGM TRAINER_CHAMPION_CYNTHIA
CallIfUnset FLAG_GAME_COMPLETED, _00EB
CallIfSet FLAG_GAME_COMPLETED, _00F0
CloseMessage

View File

@ -12,7 +12,7 @@ _000A:
LockAll
FacePlayer
GoToIfSet FLAG_UNK_0x00B2, _00D2
ScrCmd_0EA TRAINER_ELITE_FOUR_FLINT
PlayTrainerEncounterBGM TRAINER_ELITE_FOUR_FLINT
CallIfUnset FLAG_GAME_COMPLETED, _00F0
CallIfSet FLAG_GAME_COMPLETED, _0104
CloseMessage

View File

@ -12,7 +12,7 @@ _000A:
LockAll
FacePlayer
GoToIfSet FLAG_UNK_0x00B3, _00AC
ScrCmd_0EA 0x108
PlayTrainerEncounterBGM TRAINER_ELITE_FOUR_LUCIAN
Message 0
CloseMessage
CallIfUnset FLAG_UNK_0x00D6, _007A

View File

@ -953,7 +953,7 @@ _0E86:
End
_0F01:
ScrCmd_0EA 0x8004
PlayTrainerEncounterBGM 0x8004
OpenMessage
ScrCmd_0E7 0x8000, 0x8001, 0x8002
ScrCmd_0E6 0x8004, 0x8000
@ -995,7 +995,7 @@ _0F73:
End
_0FA3:
ScrCmd_0EA 0x8004
PlayTrainerEncounterBGM 0x8004
OpenMessage
ScrCmd_0E8 0x8000, 0x8001, 0x8002
ScrCmd_0E6 0x8004, 0x8000
@ -1060,7 +1060,7 @@ _1054:
_1083:
ScrCmd_0B9 0, 0x800C
SetVar 0x8004, 0x800C
ScrCmd_0EA 0x8004
PlayTrainerEncounterBGM 0x8004
ScrCmd_0B6 0
Call _10DE
ScrCmd_0B9 0, 0x800C
@ -1085,7 +1085,7 @@ _10DE:
_10F3:
ScrCmd_0B9 0, 0x800C
SetVar 0x8004, 0x800C
ScrCmd_0EA 0x8004
PlayTrainerEncounterBGM 0x8004
ScrCmd_0B6 0
ScrCmd_0B6 1
Call _1178
@ -1121,7 +1121,7 @@ _1178:
_11A0:
ScrCmd_0B9 0, 0x800C
SetVar 0x8004, 0x800C
ScrCmd_0EA 0x8004
PlayTrainerEncounterBGM 0x8004
ScrCmd_0B6 0
Call _123B
ScrCmd_0B9 0, 0x800C
@ -1131,7 +1131,7 @@ _11A0:
CloseMessage
ScrCmd_0B9 1, 0x800C
SetVar 0x8005, 0x800C
ScrCmd_0EA 0x8005
PlayTrainerEncounterBGM 0x8005
ScrCmd_0B6 1
Call _1250
ScrCmd_0B9 1, 0x800C

View File

@ -104,7 +104,7 @@ int JournalController_Init(OverlayManager *ovyManager, int *state)
GXLayers_TurnBothDispOn();
sub_02039734();
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, 1);
Sound_SetSceneAndPlayBGM(67, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_67, SEQ_NONE, 0);
return TRUE;
}

View File

@ -254,7 +254,7 @@ static int PokemonSummaryScreen_Init(OverlayManager *ovyManager, int *state)
PokemonSummaryScreen_SetupCamera(summaryScreen);
SetVBlankCallback(PokemonSummaryScreenVBlank, summaryScreen);
GXLayers_TurnBothDispOn();
Sound_SetSceneAndPlayBGM(61, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_61, SEQ_NONE, 0);
DrawWifiConnectionIcon();
NARC_dtor(narc);

View File

@ -10688,7 +10688,7 @@ static void BattleScript_CatchMonTask(SysTask *param0, void *param1)
v2->tmpData[1] = 30;
v2->seqNum = 9;
Sound_PlayBGM(1127);
Sound_PlayBGM(SEQ_VICTORY_WILD_POKEMON);
BattleSystem_SetRedHPSoundFlag(v2->battleSys, 2);
}
}

View File

@ -366,7 +366,7 @@ BOOL ChooseStarter_Init(OverlayManager *param0, int *param1)
StartCursorMovement(&app->unk_658);
MakePreviewWindow(&app->unk_6A8, app, HEAP_ID_CHOOSE_STARTER_APP);
Sound_SetSceneAndPlayBGM(60, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_60, SEQ_NONE, 0);
return TRUE;
}

View File

@ -294,8 +294,8 @@ static BOOL FieldTask_WiFiEncounter(FieldTask *task)
switch (*state) {
case 0:
Sound_SetScene(0);
Sound_SetSceneAndPlayBGM(5, encounter->battleBGM, 1);
Sound_SetScene(SOUND_SCENE_NONE);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, encounter->battleBGM, 1);
CallBattleTask(task, encounter->dto);
(*state)++;
break;

View File

@ -5,7 +5,6 @@
#include "constants/field/map_load.h"
#include "constants/overworld_weather.h"
#include "generated/map_headers.h"
#include "struct_decls/struct_0203A790_decl.h"
#include "struct_defs/map_load_mode.h"
@ -1229,7 +1228,7 @@ BOOL FieldTask_MapChangeToUnderground(FieldTask *task)
break;
}
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
Sound_ClearSpecialBGM(fieldSystem);
FieldTransition_StartMap(task);
mapChangeUndergroundData->state++;
@ -1296,7 +1295,7 @@ BOOL FieldTask_MapChangeFromUnderground(FieldTask *task)
break;
}
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
Sound_ClearSpecialBGM(fieldSystem);
FieldTransition_StartMap(task);
mapChangeUndergroundData->state++;

View File

@ -30,7 +30,7 @@ static BOOL FieldTask_RunEncounterEffect(FieldTask *task)
switch (data->taskState) {
case 0:
EncounterEffect_Start(data->encEffectID, fieldSystem, &data->done);
Sound_SetSceneAndPlayBGM(5, data->battleBGM, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, data->battleBGM, 1);
data->taskState++;
break;

View File

@ -427,7 +427,7 @@ static BOOL FieldMap_ChangeZone(FieldSystem *fieldSystem)
sub_0206184C(fieldSystem->mapObjMan, mapId, v0, objEventCount, objEventList);
RadarChain_Clear(fieldSystem->chain);
sub_02055554(fieldSystem, sub_02055428(fieldSystem, fieldSystem->location->mapId), 1);
sub_02055554(fieldSystem, Sound_GetOverrideBGM(fieldSystem, fieldSystem->location->mapId), 1);
sub_0203A418(fieldSystem);
if (fieldSystem->unk_04->unk_0C != NULL) {
@ -471,7 +471,7 @@ void ov5_021D12D0(FieldSystem *fieldSystem, u32 param1)
sub_0206184C(fieldSystem->mapObjMan, mapId, param1, objEventCount, objEventList);
sub_02055554(fieldSystem, sub_02055428(fieldSystem, fieldSystem->location->mapId), 1);
sub_02055554(fieldSystem, Sound_GetOverrideBGM(fieldSystem, fieldSystem->location->mapId), 1);
sub_0203A418(fieldSystem);
if (fieldSystem->unk_04->unk_0C != NULL) {

View File

@ -783,7 +783,7 @@ static BOOL ov5_021E03C8(FieldTask *param0)
sub_0205EC00(v0->playerAvatar, NULL);
PlayerAvatar_SetPlayerState(v0->playerAvatar, 0x0);
sub_02055554(v0->fieldSystem, sub_020554A4(v0->fieldSystem, v0->fieldSystem->location->mapId), 1);
sub_02055554(v0->fieldSystem, Sound_GetBGMByMapID(v0->fieldSystem, v0->fieldSystem->location->mapId), 1);
ov5_021E1134(v0);
return 1;
}

View File

@ -252,7 +252,7 @@ int ov17_0223B140(OverlayManager *param0, int *param1)
GXLayers_TurnBothDispOn();
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, 1);
GXLayers_EngineBToggleLayers(GX_PLANEMASK_OBJ, 1);
Sound_SetSceneAndPlayBGM(6, 1135, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_CONTEST, SEQ_CONTEST_DRESSING_ROOM, 1);
sub_020959F4(v0->unk_00->unk_155);
SetVBlankCallback(ov17_0223B6BC, v0);

View File

@ -213,8 +213,8 @@ int ov17_0223CB1C(OverlayManager *param0, int *param1)
GXLayers_TurnBothDispOn();
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, 1);
GXLayers_EngineBToggleLayers(GX_PLANEMASK_OBJ, 1);
Sound_SetScene(0);
Sound_SetSceneAndPlayBGM(6, 1135, 1);
Sound_SetScene(SOUND_SCENE_NONE);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_CONTEST, SEQ_CONTEST_DRESSING_ROOM, 1);
sub_020959F4(v0->unk_00->unk_155);
SetVBlankCallback(ov17_0223D0C8, v0);
Sound_PlayEffect(SEQ_SE_DP_DOOR_OPEN);

View File

@ -319,7 +319,7 @@ int ov17_0223DAD0(OverlayManager *param0, int *param1)
GXLayers_TurnBothDispOn();
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, 1);
GXLayers_EngineBToggleLayers(GX_PLANEMASK_OBJ, 1);
Sound_SetSceneAndPlayBGM(6, 1135, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_CONTEST, SEQ_CONTEST_DRESSING_ROOM, 1);
sub_020959F4(v0->unk_00->unk_155);
G2_SetBlendBrightness((GX_BLEND_PLANEMASK_BG0 | GX_BLEND_PLANEMASK_BG3 | GX_BLEND_PLANEMASK_BD | GX_BLEND_PLANEMASK_OBJ), -6);

View File

@ -276,7 +276,7 @@ static void ov17_0224D1E8(UnkStruct_ov17_0224F30C *param0, void *param1, const U
SysTask_Start(ov17_0224D240, v1, 30000);
v0->unk_1078 = 0;
Sound_PlayBGM(1135);
Sound_PlayBGM(SEQ_CONTEST_DRESSING_ROOM);
}
static void ov17_0224D240(SysTask *param0, void *param1)
@ -1488,7 +1488,7 @@ static void ov17_0224E86C(SysTask *param0, void *param1)
}
break;
case 4:
Sound_PlayBGM(1135);
Sound_PlayBGM(SEQ_CONTEST_DRESSING_ROOM);
Sound_PlayEffect(SEQ_SE_DP_CON_007);
v0->unk_4C++;
break;

View File

@ -210,7 +210,7 @@ int ov17_0224F4D4(OverlayManager *param0, int *param1)
GXLayers_TurnBothDispOn();
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, 1);
GXLayers_EngineBToggleLayers(GX_PLANEMASK_OBJ, 1);
Sound_SetSceneAndPlayBGM(6, 1135, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_CONTEST, SEQ_CONTEST_DRESSING_ROOM, 1);
sub_020959F4(v0->unk_00->unk_155);
SetVBlankCallback(ov17_0224FA24, v0);

View File

@ -481,7 +481,7 @@ static void ov17_022523AC(SysTask *param0, void *param1)
break;
case 2:
StartScreenTransition(0, 0, 0, 0x0, 6, 1, HEAP_ID_24);
Sound_StopBGM(1135, 30);
Sound_StopBGM(SEQ_CONTEST_DRESSING_ROOM, 30);
v0->unk_10++;
break;
case 3:
@ -522,7 +522,7 @@ static void ov17_022523AC(SysTask *param0, void *param1)
break;
case 6:
if (IsScreenTransitionDone() == 1) {
Sound_PlayBGM(1181);
Sound_PlayBGM(SEQ_CO_KEKKA);
v0->unk_10++;
}
break;
@ -629,7 +629,7 @@ static void ov17_0225266C(SysTask *param0, void *param1)
case 0:
ov17_02250FE4(v0->unk_00);
ov17_02251598(v0->unk_00, 0, &v0->unk_12);
Sound_PlayBGM(1182);
Sound_PlayBGM(SEQ_CO_FANFA);
Sound_PlayEffect(SEQ_SE_DP_CON_007);
v0->unk_10++;
break;
@ -822,7 +822,7 @@ static void ov17_022529C8(SysTask *param0, void *param1)
switch (v0->unk_10) {
case 0:
BrightnessController_StartTransition(90, 16, 0, (GX_BLEND_PLANEMASK_BG0 | GX_BLEND_PLANEMASK_BG1 | GX_BLEND_PLANEMASK_BG2 | GX_BLEND_PLANEMASK_BG3 | GX_BLEND_PLANEMASK_OBJ | GX_BLEND_PLANEMASK_BD), BRIGHTNESS_BOTH_SCREENS);
Sound_StopBGM(1182, 90);
Sound_StopBGM(SEQ_CO_FANFA, 90);
v0->unk_10++;
break;
case 1:

View File

@ -125,7 +125,7 @@ int ov20_021D0D80(OverlayManager *param0, int *param1)
switch (*param1) {
case 0:
Sound_SetSceneAndPlayBGM(62, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_62, SEQ_NONE, 0);
Heap_Create(HEAP_ID_APPLICATION, HEAP_ID_34, 32768);
Heap_Create(HEAP_ID_APPLICATION, HEAP_ID_35, 163840);
v0 = ov20_021D0EC8(param0);

View File

@ -90,7 +90,7 @@ int PokedexMain_Init(OverlayManager *overlayMan, int *state)
{
PokedexOverlayArgs pokedexOverlayArgs;
Sound_SetSceneAndPlayBGM(54, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_54, SEQ_NONE, 0);
Heap_Create(HEAP_ID_APPLICATION, HEAP_ID_POKEDEX, 0x40000);
PokedexApp **appPtr = OverlayManager_NewData(overlayMan, sizeof(PokedexApp **), HEAP_ID_POKEDEX);

View File

@ -229,7 +229,7 @@ int ov22_02255D44(OverlayManager *param0, int *param1)
v0->unk_718 = Window_New(HEAP_ID_13, 1);
v0->unk_70C = 0;
Sound_SetSceneAndPlayBGM(53, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_53, SEQ_NONE, 0);
return 1;
}
@ -554,7 +554,7 @@ int ov22_022562EC(OverlayManager *param0, int *param1)
break;
case 12:
if (IsScreenTransitionDone()) {
Sound_SetSceneAndPlayBGM(7, 1169, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_7, SEQ_CO_DRESS, 0);
(*param1)++;
}
break;

View File

@ -1292,7 +1292,7 @@ static void ov23_0223EE80(UnkStruct_ov23_0223EE80 *param0)
void *v4;
int v5;
Sound_SetSceneAndPlayBGM(58, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_58, SEQ_NONE, 0);
ov23_0223E140();
GXLayers_EngineAToggleLayers(GX_PLANEMASK_BG0, 0);

View File

@ -385,7 +385,7 @@ static void ov23_0224A6E4(UnkStruct_ov23_0224A570 *param0, BOOL param1, SecretBa
ov23_02253F40(ov23_022421AC(), 11, 1, ov23_0224A5B0);
}
Sound_FadeOutAndPlayBGM(4, 1060, 60, 0, 0xff, NULL);
Sound_FadeOutAndPlayBGM(4, SEQ_TANKOU, 60, 0, 0xff, NULL);
Sound_PlayEffect(SEQ_SE_DP_CARD10);
}
@ -406,7 +406,7 @@ void ov23_0224A77C(int param0, int param1, void *param2, void *param3)
if (v1->unk_01 == CommSys_CurNetId()) {
sub_020594FC();
ov23_02253F40(ov23_022421AC(), 2, 1, ov23_0224A308);
Sound_FadeOutAndPlayBGM(4, 1060, 60, 0, 0xff, NULL);
Sound_FadeOutAndPlayBGM(4, SEQ_TANKOU, 60, 0, 0xff, NULL);
}
}
break;
@ -443,7 +443,7 @@ void ov23_0224A77C(int param0, int param1, void *param2, void *param3)
sub_02059464(0x1);
ov23_02254068(ov23_022421AC(), CommInfo_TrainerInfo(v1->unk_02));
ov23_02253F40(ov23_022421AC(), 12, 1, ov23_0224A328);
Sound_PlayBGM(1061);
Sound_PlayBGM(SEQ_HATANIGE);
Sound_PlayEffect(SEQ_SE_DP_UG_021);
} else if (v1->unk_02 == CommSys_CurNetId()) {
ov23_0224A6E4(v1, 1, v4);
@ -492,7 +492,7 @@ void ov23_0224A77C(int param0, int param1, void *param2, void *param3)
CommSys_SendDataFixedSize(96, &v6);
}
Sound_FadeOutAndPlayBGM(4, 1060, 60, 0, 0xff, NULL);
Sound_FadeOutAndPlayBGM(4, SEQ_TANKOU, 60, 0, 0xff, NULL);
}
if (commPlayerMan->unk_290[v1->unk_01]) {

View File

@ -941,7 +941,7 @@ void ov23_02252178(int param0, int param1, void *param2, void *param3)
if (CommSys_CurNetId() == v1->unk_00) {
ov23_02254068(ov23_022421AC(), CommInfo_TrainerInfo(v1->unk_01));
ov23_02253F40(ov23_022421AC(), 8, 1, ov23_022513A4);
Sound_PlayBGM(1061);
Sound_PlayBGM(SEQ_HATANIGE);
}
ov23_0224AEC4(v1->unk_00, v1->unk_01);

View File

@ -203,7 +203,7 @@ int ov58_021D0D80(OverlayManager *param0, int *param1)
ov58_021D16D8(v0);
ov58_021D18AC(v0, param0);
Sound_SetSceneAndPlayBGM(52, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_52, SEQ_NONE, 0);
GX_SetDispSelect(GX_DISP_SELECT_SUB_MAIN);

View File

@ -204,7 +204,7 @@ int ov59_021D0D80(OverlayManager *param0, int *param1)
ov59_021D1598(v0);
ov59_021D16A0(v0, param0);
Sound_SetSceneAndPlayBGM(52, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_52, SEQ_NONE, 0);
sub_020961E8(v0);
sub_02037878();
sub_02037B58(3);

View File

@ -1616,7 +1616,7 @@ static int ov65_0222F010(UnkStruct_ov65_0222EBE0 *param0, int param1)
param0->unk_3A8 = 61;
}
} else {
Sound_SetSceneAndPlayBGM(11, 1175, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_11, SEQ_WIFILOBBY, 1);
ov65_0222EE98(param0);
if (!DWC_CheckHasProfile(sub_0202AD28(param0->unk_00))) {
@ -3797,19 +3797,19 @@ static u32 ov65_022319B8(UnkStruct_ov65_0222EBE0 *param0)
static void ov65_02231A0C(void)
{
u32 v0;
u32 bgmID;
ov4_021D2584(0);
if (ov65_02231A54() == 0) {
if (IsNight() == 0) {
v0 = 1085;
if (IsNight() == FALSE) {
bgmID = SEQ_PC_01;
} else {
v0 = 1086;
bgmID = SEQ_PC_02;
}
Sound_SetScene(0);
Sound_SetSceneAndPlayBGM(11, v0, 1);
Sound_SetScene(SOUND_SCENE_NONE);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_11, bgmID, 1);
} else {
Sound_SetInitialVolumeForSequence(Sound_GetCurrentBGM(), 120);
}

View File

@ -771,10 +771,10 @@ void ov66_0222E2C4(UnkStruct_ov66_0222DFF8 *param0, BOOL param1)
void ov66_0222E2CC(const UnkStruct_ov66_0222DFF8 *param0)
{
if ((param0->unk_1FC.unk_00_4 == 1) && (param0->unk_1FC.unk_0A <= 0)) {
Sound_SetSceneAndPlayBGM(21, 1213, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_21, SEQ_PL_WIFIPARADE, 0);
ov66_0222FBAC(&param0->unk_1FC);
} else {
Sound_SetSceneAndPlayBGM(21, 1212, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_21, SEQ_PL_WIFIUNION, 0);
ov66_0222FBAC(&param0->unk_1FC);
}
}
@ -2453,7 +2453,7 @@ static void ov66_0222FA88(UnkStruct_ov66_0222FB64 *param0, UnkStruct_ov66_0222FA
ov66_022302D0(param2);
if (param0->unk_0C == 0) {
Sound_PlayBGM(1213);
Sound_PlayBGM(SEQ_PL_WIFIPARADE);
}
param0->unk_00_4 = 1;

View File

@ -175,7 +175,7 @@ int ov67_0225C700(OverlayManager *param0, int *param1)
v1 = OverlayManager_Args(param0);
v0->unk_00 = v1->unk_00;
Sound_SetSceneAndPlayBGM(11, 1175, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_11, SEQ_WIFILOBBY, 0);
v1->unk_10 = 0;
ov67_0225CE30(v0, 112);

View File

@ -167,7 +167,7 @@ int ov71_0223B140(OverlayManager *param0, int *param1)
sub_0201E3D8();
sub_0201E450(4);
Sound_SetSceneAndPlayBGM(56, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_56, SEQ_NONE, 0);
ov71_0223D324(&v0->unk_3354);
Sound_PlayEffect(SEQ_SE_DP_CARD3);
ov71_0223CF0C(&v0->unk_30E4, v1);

View File

@ -156,7 +156,7 @@ int ov72_0223D7A0(OverlayManager *param0, int *param1)
ov72_0223DF58(v0);
ov72_0223E0A0(v0, param0);
Sound_SetSceneAndPlayBGM(56, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_56, SEQ_NONE, 0);
GX_SetDispSelect(GX_DISP_SELECT_SUB_MAIN);
NARC_dtor(v1);
(*param1)++;

View File

@ -1416,8 +1416,8 @@ static BOOL ov73_021D2318(UnkStruct_ov73_021D1058 *param0)
switch (param0->unk_0C) {
case 0:
Sound_SetSceneAndPlayBGM(2, 1029, 1);
Sound_StopBGM(1029, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_2, SEQ_OPENING, 1);
Sound_StopBGM(SEQ_OPENING, 0);
Bg_ToggleLayer(0, 1);
Bg_ToggleLayer(7, 1);
StartScreenTransition(0, 1, 1, 0x0, 6, 1, param0->heapId);
@ -1439,7 +1439,7 @@ static BOOL ov73_021D2318(UnkStruct_ov73_021D1058 *param0)
}
break;
case 3:
Sound_PlayBGM(1029);
Sound_PlayBGM(SEQ_OPENING);
param0->unk_89 = 1;
param0->unk_8A = 0;
ov73_021D1A20(param0);

View File

@ -96,8 +96,8 @@ int ov73_021D3280 (OverlayManager * param0, int * param1)
if (v0->unk_24) {
v0->unk_24--;
} else {
Sound_SetFieldBGM(1030);
Sound_SetSceneAndPlayBGM(4, 1030, 1);
Sound_SetFieldBGM(SEQ_TV_HOUSOU);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, SEQ_TV_HOUSOU, 1);
v0->unk_24 = 3 * 30;
*param1 = 2;

View File

@ -224,8 +224,8 @@ static int ov77_021D0E3C(OverlayManager *param0, int *param1)
}
break;
case 2:
Sound_SetScene(0);
Sound_SetSceneAndPlayBGM(1, 1173, 1);
Sound_SetScene(SOUND_SCENE_NONE);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_1, SEQ_TITLE01, 1);
*param1 = 3;
break;
case 3:
@ -278,7 +278,7 @@ static int ov77_021D0E3C(OverlayManager *param0, int *param1)
}
if ((Sound_IsPokemonCryPlaying() == 0) && (IsScreenTransitionDone() == 1) && (v0->unk_4FC >= 10)) {
Sound_StopBGM(1173, 0);
Sound_StopBGM(SEQ_TITLE01, 0);
GXLayers_EngineAToggleLayers(GX_PLANEMASK_BG0, 0);
GXLayers_EngineAToggleLayers(GX_PLANEMASK_BG1, 0);
@ -297,7 +297,7 @@ static int ov77_021D0E3C(OverlayManager *param0, int *param1)
ov77_021D20E4(&v0->unk_238, v0->unk_04, v0->heapID);
if (Sound_IsFadeActive() == FALSE) {
Sound_StopBGM(1173, 0);
Sound_StopBGM(SEQ_TITLE01, 0);
StartScreenTransition(0, 0, 0, 0x7fff, 6, 1, v0->heapID);
*param1 = 6;
}
@ -337,7 +337,7 @@ static int ov77_021D10FC(OverlayManager *param0, int *param1)
EnqueueApplication(0xffffffff, &Unk_020F8A48);
break;
case 3:
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
EnqueueApplication(FS_OVERLAY_ID(overlay77), &gOpeningCutsceneOverlayTemplate);
break;
}

View File

@ -1111,7 +1111,7 @@ static BOOL ov77_021D30D0(UnkStruct_ov77_021D2F38 *param0, const int param1)
param0->unk_06 = 0;
param0->unk_08 = 0;
param0->unk_10 = SysTask_Start(ov77_021D32A4, param0, 0);
Sound_SetSceneAndPlayBGM(1, 1172, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_1, SEQ_TITLE00, 1);
(*v0)++;
break;
case 1:

View File

@ -113,7 +113,7 @@ int ov80_021D0D80(OverlayManager *param0, int *param1)
v0->unk_02 = v1->unk_13C;
v0->heapID = HEAP_ID_17;
Sound_SetSceneAndPlayBGM(55, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_55, SEQ_NONE, 0);
return 1;
}

View File

@ -134,7 +134,7 @@ int ov83_0223B5B0(OverlayManager *param0, int *param1)
SetVBlankCallback(ov83_0223B5A0, v0);
DisableHBlank();
Sound_SetSceneAndPlayBGM(12, 1183, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_12, SEQ_KINOMI1, 1);
return 1;
}

View File

@ -442,7 +442,7 @@ int ov84_0223B5A0(OverlayManager *param0, int *param1)
}
SetVBlankCallback(ov84_0223BA14, v0);
Sound_SetSceneAndPlayBGM(51, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_BAG, SEQ_NONE, 0);
DrawWifiConnectionIcon();
return 1;

View File

@ -334,7 +334,7 @@ int ov86_0223B140(OverlayManager *param0, int *param1)
v0->unk_00 = 0;
v0->unk_1C28 = ov86_0223B744(ov86_0223B6CC, v0, 6);
Sound_SetSceneAndPlayBGM(8, 1171, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_8, SEQ_BLD_EV_DENDO2, 1);
return 1;
}

View File

@ -318,11 +318,11 @@ int ov88_0223B140(OverlayManager *param0, int *param1)
sub_02038A1C(26, v0->unk_174);
sub_02039734();
if (IsNight() == 0) {
Sound_SetSceneAndPlayBGM(4, 1085, 1);
if (IsNight() == FALSE) {
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, SEQ_PC_01, 1);
Sound_AdjustVolumeForVoiceChat(1085);
} else {
Sound_SetSceneAndPlayBGM(4, 1086, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, SEQ_PC_02, 1);
Sound_AdjustVolumeForVoiceChat(1086);
}

View File

@ -127,7 +127,7 @@ int ov94_0223BCB0(OverlayManager *param0, int *param1)
ov94_0223C03C(v0, param0);
ov94_0223C4E0(v0);
Sound_SetSceneAndPlayBGM(11, 1175, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_11, SEQ_WIFILOBBY, 1);
v0->unk_4C = Heap_AllocFromHeap(HEAP_ID_62, 0x20000 + 32);
v0->unk_50 = NNS_FndCreateExpHeap((void *)(((u32)v0->unk_4C + 31) / 32 * 32), 0x20000);

View File

@ -83,7 +83,7 @@ int ov94_0223C610(UnkStruct_ov94_0223FD4C *param0, int param1)
ov94_02245934(param0);
ov94_0223CF3C(param0);
Sound_SetSceneAndPlayBGM(23, 1097, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_23, SEQ_BLD_BLD_GTC, 1);
if (param0->unk_34 == 0) {
ov94_0223C85C(param0);

View File

@ -131,7 +131,7 @@ int ov95_02246C20(OverlayManager *param0, int *param1)
Heap_Create(HEAP_ID_APPLICATION, HEAP_ID_57, 98304);
Heap_Create(HEAP_ID_APPLICATION, HEAP_ID_58, 98304);
ov95_02247688();
Sound_SetSceneAndPlayBGM(3, 1170, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_3, SEQ_KOUKAN, 1);
v0 = OverlayManager_NewData(param0, sizeof(UnkStruct_ov95_02247628), HEAP_ID_57);

View File

@ -96,12 +96,12 @@ int ov96_0223B6A0(OverlayManager *param0, int *param1)
SetAutorepeat(4, 8);
ov96_0223B980(v0, param0);
ov96_0223BC64(v0);
Sound_SetSceneAndPlayBGM(52, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_52, SEQ_NONE, 0);
v0->unk_24 = Heap_AllocFromHeap(HEAP_ID_68, 0x20000 + 32);
v0->unk_28 = NNS_FndCreateExpHeap((void *)(((u32)v0->unk_24 + 31) / 32 * 32), 0x20000);
Sound_SetSceneAndPlayBGM(11, 1175, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_11, SEQ_WIFILOBBY, 1);
*param1 = 1;
break;

View File

@ -1837,7 +1837,7 @@ static int GBAMigrator_Init(OverlayManager *param0, int *state)
migrator->unk_12668 = Strbuf_Init(256, HEAP_ID_MIGRATE_FROM_GBA);
migrator->unk_1266C = Strbuf_Init(256, HEAP_ID_MIGRATE_FROM_GBA);
Sound_SetSceneAndPlayBGM(9, 1174, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_9, SEQ_PRESENT, 1);
if (OS_IsTickAvailable() == 0) {
OS_InitTick();

View File

@ -995,7 +995,7 @@ static int ov97_0222BD70(OverlayManager *param0, int *param1)
}
Sound_ConfigureBGMChannelsAndReverb(SOUND_CHANNEL_CONFIG_DEFAULT);
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
return 1;
}

View File

@ -688,7 +688,7 @@ static int ov97_0222C6F8(OverlayManager *param0, int *param1)
v0->unk_158 = 0;
Heap_Create(HEAP_ID_SYSTEM, HEAP_ID_91, 0x300);
Sound_SetSceneAndPlayBGM(9, 1174, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_9, SEQ_PRESENT, 1);
return 1;
}

View File

@ -1090,7 +1090,7 @@ static int ov97_0222E2DC(OverlayManager *param0, int *param1)
sub_0200F344(0, 0x0);
sub_0200F344(1, 0x0);
Sound_SetSceneAndPlayBGM(10, 1174, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_10, SEQ_PRESENT, 1);
ov97_02237520(86);
if (ov97_02237624()) {

View File

@ -107,7 +107,7 @@ int ov98_02246C20(OverlayManager *param0, int *param1)
v0->unk_08 = SaveData_GetOptions(v0->saveData);
v0->unk_114 = Strbuf_Init(100, HEAP_ID_108);
v0->unk_118 = Strbuf_Init(100, HEAP_ID_108);
Sound_SetSceneAndPlayBGM(17, 1175, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_17, SEQ_WIFILOBBY, 1);
v0->unk_8C = 0;
return 1;

View File

@ -167,7 +167,7 @@ int ov99_021D0D80(OverlayManager *param0, int *param1)
v0->unk_14 = SysTask_Start(ov99_021D1244, v0, 60000);
SetVBlankCallback(ov99_021D1350, v0);
Sound_SetSceneAndPlayBGM(14, 1186, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_14, SEQ_BLD_ENDING, 1);
BrightnessController_SetScreenBrightness(-16, (GX_BLEND_PLANEMASK_BG0 | GX_BLEND_PLANEMASK_BG2 | GX_BLEND_PLANEMASK_BG3 | GX_BLEND_PLANEMASK_OBJ | GX_BLEND_PLANEMASK_OBJ | GX_BLEND_PLANEMASK_BD), BRIGHTNESS_BOTH_SCREENS);
sub_0200F44C(0, 0);

View File

@ -110,8 +110,8 @@ BOOL ov100_021D14A8(void *param0)
break;
}
Sound_SetSceneAndPlayBGM(18, 1065, 0);
Sound_SetSceneAndPlayBGM(63, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_18, SEQ_D_RYAYHY, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_63, SEQ_NONE, 0);
v0->unk_00 = 2;
break;
case 2:

View File

@ -455,8 +455,8 @@ BOOL ov100_021D2428(void *param0)
case 11:
v0->unk_1A0.unk_10DC[0].unk_160 = 1;
Easy3DObject_SetVisibility(&v0->unk_1A0.unk_10DC[0].unk_00, 1);
Sound_PlayBGM(1214);
Sound_SetSceneAndPlayBGM(63, 0, 0);
Sound_PlayBGM(SEQ_PL_EV_GIRA);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_63, SEQ_NONE, 0);
v0->unk_00++;
break;
case 12:
@ -586,7 +586,7 @@ BOOL ov100_021D2428(void *param0)
ov100_021D4788(v0->unk_1EBC);
}
Sound_PlayBGM(1215);
Sound_PlayBGM(SEQ_PL_EV_GIRA2);
v0->unk_1A0.unk_934[4].unk_160 = 1;
@ -631,9 +631,9 @@ BOOL ov100_021D2428(void *param0)
G2S_SetBlendBrightness((GX_BLEND_PLANEMASK_BG0 | GX_BLEND_PLANEMASK_BG1 | GX_BLEND_PLANEMASK_OBJ | GX_BLEND_PLANEMASK_BD), v0->unk_1EBC->unk_50.unk_03);
{
u16 v2 = Sound_GetCurrentBGM();
u16 currentBGM = Sound_GetCurrentBGM();
Sound_StopBGM(v2, 0);
Sound_StopBGM(currentBGM, 0);
}
ov100_021D4788(v0->unk_1EBC);

View File

@ -277,7 +277,7 @@ void *ov100_021D3620(UnkStruct_ov100_021D4DD8 *param0)
v0->unk_1D28->unk_44.z = FX32_CONST(34);
ov100_021D3504(v0->unk_1D28->camera, &v0->unk_1D28->unk_44);
Sound_SetSceneAndPlayBGM(63, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_63, SEQ_NONE, 0);
return v0;
}

View File

@ -103,7 +103,7 @@ int ov101_021D0D80(OverlayManager *param0, int *param1)
ov101_021D59AC(v1);
ov101_021D5AF0(v1);
ov101_021D5C28(v1);
Sound_SetSceneAndPlayBGM(66, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_66, SEQ_NONE, 0);
ov101_021D18C0(v1);
StartScreenTransition(0, 1, 1, 0x0, 8, 1, HEAP_ID_79);
@ -625,10 +625,10 @@ static void ov101_021D18F4(SysTask *param0, void *param1)
Sound_SetBGMPlayerPaused(1, 1);
break;
case UnkEnum_ov101_021D1894_01:
Sound_StopBGM(1184, 0);
Sound_StopBGM(SEQ_SLOT_ATARI, 0);
break;
case UnkEnum_ov101_021D1894_02:
Sound_StopBGM(1185, 0);
Sound_StopBGM(SEQ_SLOT_OOATARI, 0);
break;
}
@ -640,10 +640,10 @@ static void ov101_021D18F4(SysTask *param0, void *param1)
Sound_SetBGMPlayerPaused(1, 0);
break;
case UnkEnum_ov101_021D1894_01:
Sound_PlayBasicBGM(1184);
Sound_PlayBasicBGM(SEQ_SLOT_ATARI);
break;
case UnkEnum_ov101_021D1894_02:
Sound_PlayBasicBGM(1185);
Sound_PlayBasicBGM(SEQ_SLOT_OOATARI);
break;
}

View File

@ -1642,7 +1642,7 @@ static BOOL ov104_02230B50(UnkStruct_ov104_0222E930 *param0)
MI_CpuClear8(v1, sizeof(FieldBattleDTO));
sub_0202F298(v2->saveData, 11, &v0, v1, 0);
Sound_SetSceneAndPlayBGM(5, 1119, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, SEQ_BATTLE_TRAINER, 1);
sub_0209B988(param0->unk_00->unk_00, &gBattleOverlayTemplate, v1, 1, NULL);
return 1;
@ -2477,7 +2477,7 @@ static BOOL ov104_02231A28(UnkStruct_ov104_0222E930 *param0)
v0 = sub_0209B970(param0->unk_00->unk_00);
param0->unk_78[0] = ov104_0222FC00(param0);
Sound_SetSceneAndPlayBGM(5, 1119, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, SEQ_BATTLE_TRAINER, 1);
v1 = Heap_AllocFromHeap(HEAP_ID_FIELDMAP, sizeof(UnkStruct_ov104_02231148));
v1->unk_14 = sub_0209B978(param0->unk_00->unk_00);
@ -2720,7 +2720,7 @@ static BOOL ov104_02231DAC(UnkStruct_ov104_0222E930 *param0)
ov104_0223D554(v0, &v2, &v3);
ov104_0223DC7C(v1, v0->unk_00, v0->unk_34.unk_00, v0->unk_34.unk_04, v0->unk_04, &param0->unk_78[0], v2, v3);
Sound_SetSceneAndPlayBGM(5, 1202, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, SEQ_BATTLE_FRONTIER_BRAIN, 1);
ov104_0222E974(param0, ov104_02231E14);
return 1;

View File

@ -162,7 +162,7 @@ BOOL ov104_022349B8(UnkStruct_ov104_0222E930 *param0)
v1->unk_700 = v0;
Sound_SetSceneAndPlayBGM(5, 1119, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, SEQ_BATTLE_TRAINER, 1);
sub_0209B988(param0->unk_00->unk_00, &gBattleOverlayTemplate, v0, 0, NULL);
return 1;

View File

@ -196,7 +196,7 @@ BOOL ov104_02239314(UnkStruct_ov104_0222E930 *param0)
v1->unk_8D0 = v0;
Sound_SetSceneAndPlayBGM(5, 1119, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, SEQ_BATTLE_TRAINER, 1);
sub_0209B988(param0->unk_00->unk_00, &gBattleOverlayTemplate, v0, 0, NULL);
return 1;

View File

@ -180,7 +180,7 @@ UnkStruct_ov104_0223C4CC *ov104_0223C2D4(UnkStruct_0209B75C *param0)
GXLayers_TurnBothDispOn();
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, 1);
GXLayers_EngineBToggleLayers(GX_PLANEMASK_OBJ, 1);
Sound_SetSceneAndPlayBGM(4, ov104_0222EA90(v2, 3), 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, ov104_0222EA90(v2, 3), 1);
RenderControlFlags_SetAutoScrollFlags(1);
RenderControlFlags_SetCanABSpeedUpPrint(0);

View File

@ -785,7 +785,7 @@ static int ov109_021D122C(UnkStruct_ov109_021D0F70 *param0)
param0->unk_D4.unk_40 = (FX32_ONE * (v1->unk_04));
param0->unk_00 = 17;
Sound_SetSceneAndPlayBGM(15, 1210, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_15, SEQ_PL_GURUGURU, 1);
ov109_021D2788(param0);
return 1;
@ -1455,7 +1455,7 @@ static int ov109_021D1BA4(UnkStruct_ov109_021D0F70 *param0)
StartScreenTransition(2, 0, 0, 0x0, 8, 1, HEAP_ID_95);
if (param0->unk_1C != Sound_Impl_GetCurrentBGM()) {
Sound_SetSceneAndPlayBGM(4, param0->unk_1C, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, param0->unk_1C, 1);
}
param0->unk_00 = 52;

View File

@ -204,7 +204,7 @@ int ov109_021D3D50(OverlayManager *param0, int *param1)
ov109_021D441C(v0, v1);
ov109_021D4518(v0);
ov109_021D45F4(v0);
Sound_SetSceneAndPlayBGM(52, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_52, SEQ_NONE, 0);
sub_0209BE50(v2->unk_34);
sub_020378B8();
sub_02037B58(3);

View File

@ -351,7 +351,7 @@ int ov111_021D0D80(OverlayManager *param0, int *param1)
ov111_021D1D68(v1);
(*param1) = 0;
Sound_SetSceneAndPlayBGM(68, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_68, SEQ_NONE, 0);
return 1;
}

View File

@ -1621,7 +1621,7 @@ static UnkStruct_ov114_0225D678 *ov114_0225D48C(const UnkStruct_ov114_0225C76C *
UnkStruct_ov114_0225D678 *v0;
int v1;
Sound_SetSceneAndPlayBGM(19, 1211, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_19, SEQ_PL_WIFIGAME, 0);
v0 = Heap_AllocFromHeap(heapID, sizeof(UnkStruct_ov114_0225D678));
memset(v0, 0, sizeof(UnkStruct_ov114_0225D678));

View File

@ -76,7 +76,7 @@ static BOOL ov119_021D1930(UnkStruct_ov119_021D0FD0 *param0)
case 2:
if (IsScreenTransitionDone() == 1) {
Sound_StopWaveOutAndSequences();
Sound_SetSceneAndPlayBGM(13, 1141, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_13, SEQ_SHINKA, 1);
param0->unk_60++;
}
break;
@ -255,7 +255,7 @@ static BOOL ov119_021D1BD0(UnkStruct_ov119_021D0FD0 *param0)
param0->unk_60++;
case 2:
if (IsScreenTransitionDone() == 1) {
Sound_SetSceneAndPlayBGM(13, 1141, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_13, SEQ_SHINKA, 1);
param0->unk_60++;
}
break;

View File

@ -138,7 +138,7 @@ BOOL RadarSpawnPatches(FieldSystem *fieldSystem, const int param1, const int par
if (v7 == 0) {
RadarChain_Clear(chain);
sub_02055554(fieldSystem, sub_02055428(fieldSystem, fieldSystem->location->mapId), 1);
sub_02055554(fieldSystem, Sound_GetOverrideBGM(fieldSystem, fieldSystem->location->mapId), 1);
} else {
chain->active = TRUE;
}
@ -291,7 +291,7 @@ void sub_0206979C(FieldSystem *fieldSystem)
if (v3 == 4) {
RadarChain_Clear(fieldSystem->chain);
sub_02055554(fieldSystem, sub_02055428(fieldSystem, fieldSystem->location->mapId), 1);
sub_02055554(fieldSystem, Sound_GetOverrideBGM(fieldSystem, fieldSystem->location->mapId), 1);
}
}

View File

@ -125,10 +125,10 @@ BOOL IsNight(void)
switch (GetTimeOfDay()) {
case TIMEOFDAY_LATE_NIGHT:
case TIMEOFDAY_NIGHT:
return 1;
return TRUE;
}
return 0;
return FALSE;
}
enum TimeOfDay GetTimeOfDay(void)

View File

@ -999,7 +999,7 @@ const ScrCmdFunc Unk_020EAC58[] = {
ScrCmd_0E7,
ScrCmd_0E8,
ScrCmd_0E9,
ScrCmd_0EA,
ScrCmd_PlayTrainerEncounterBGM,
ScrCmd_BlackOutFromBattle,
ScrCmd_CheckWonBattle,
ScrCmd_CheckLostBattle,
@ -4712,7 +4712,7 @@ static BOOL ScrCmd_SetPlayerBike(ScriptContext *ctx)
PlayerAvatar_SetRequestStateBit(ctx->fieldSystem->playerAvatar, (1 << 0));
PlayerAvatar_RequestChangeState(ctx->fieldSystem->playerAvatar);
Sound_SetSpecialBGM(ctx->fieldSystem, 0);
sub_02055554(ctx->fieldSystem, sub_02055428(ctx->fieldSystem, ctx->fieldSystem->location->mapId), 1);
sub_02055554(ctx->fieldSystem, Sound_GetOverrideBGM(ctx->fieldSystem, ctx->fieldSystem->location->mapId), 1);
}
return FALSE;
@ -6366,7 +6366,7 @@ static BOOL ScrCmd_20F(ScriptContext *ctx)
u16 *v0 = ScriptContext_GetVarPointer(ctx);
u16 v1 = ScriptContext_ReadHalfWord(ctx);
Sound_SetSceneAndPlayBGM(65, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_65, SEQ_NONE, 0);
ov6_02242B58(ctx->fieldSystem, *v0, v1);
return 1;

View File

@ -4,7 +4,6 @@
#include <string.h>
#include "constants/species.h"
#include "generated/sdat.h"
#include "global/utility.h"
@ -55,7 +54,7 @@ void Sound_SetCurrentBGM(u16 bgmID)
u16 *param = SoundSystem_GetParam(SOUND_SYSTEM_PARAM_CURRENT_BGM);
*param = bgmID;
Sound_SetNextBGM(0);
Sound_SetNextBGM(SEQ_NONE);
}
u16 Sound_Impl_GetCurrentBGM(void)
@ -278,7 +277,7 @@ BOOL Sound_SetSceneAndPlayBGM(u8 scene, u16 bgmID, int unused)
case SOUND_SCENE_CONTEST:
Sound_Impl_PlayContestBGM(bgmID, unused);
break;
case 7:
case SOUND_SCENE_7:
sub_020048F0(bgmID, unused);
break;
case SOUND_SCENE_SUB_BAG:
@ -301,35 +300,35 @@ BOOL Sound_SetSceneAndPlayBGM(u8 scene, u16 bgmID, int unused)
case 68:
Sound_Impl_LoadSubSceneSoundData(scene);
break;
case 1:
case SOUND_SCENE_1:
Sound_ConfigureBGMChannelsAndReverb(SOUND_CHANNEL_CONFIG_TITLE);
Sound_Impl_PlayCutsceneBGM(scene, bgmID, unused);
break;
case 14:
case SOUND_SCENE_14:
Sound_ConfigureBGMChannelsAndReverb(SOUND_CHANNEL_CONFIG_ENDING);
Sound_Impl_PlayCutsceneBGM(scene, bgmID, unused);
break;
case 2:
case SOUND_SCENE_2:
Sound_ConfigureBGMChannelsAndReverb(SOUND_CHANNEL_CONFIG_DEFAULT);
Sound_Impl_PlayCutsceneBGM(scene, bgmID, unused);
break;
case 3:
case 8:
case 9:
case 10:
case 12:
case 13:
case 15:
case 16:
case 17:
case 18:
case 19:
case 20:
case 21:
case 23:
case SOUND_SCENE_3:
case SOUND_SCENE_8:
case SOUND_SCENE_9:
case SOUND_SCENE_10:
case SOUND_SCENE_12:
case SOUND_SCENE_13:
case SOUND_SCENE_15:
case SOUND_SCENE_16:
case SOUND_SCENE_17:
case SOUND_SCENE_18:
case SOUND_SCENE_19:
case SOUND_SCENE_20:
case SOUND_SCENE_21:
case SOUND_SCENE_23:
Sound_Impl_PlayCutsceneBGM(scene, bgmID, unused);
break;
case 22:
case SOUND_SCENE_22:
Sound_Impl_PlayCutsceneBGM(scene, bgmID, unused);
break;
}
@ -488,14 +487,14 @@ static void Sound_Impl_PlayCutsceneBGM(u8 scene, u16 bgmID, int unused)
Sound_PlayBGM(bgmID);
}
void sub_02004950(u16 param0)
void Sound_SwapBGM(u16 bgmID)
{
int v0;
BOOL v0;
SoundSystem *v1 = SoundSystem_Get();
Sound_Impl_PauseOrStopFieldBGM();
v0 = Sound_PlayBGM(param0);
v0 = Sound_PlayBGM(bgmID);
return;
}
@ -1091,7 +1090,7 @@ static void Sound_Impl_FadeToBGM(u8 unused1, u16 bgmID, int fadeOutFrames, int f
const NNSSndArcBankInfo **currentBankInfo = SoundSystem_GetParam(SOUND_SYSTEM_PARAM_CURRENT_BANK_INFO);
Sound_FadeOutBGM(SOUND_VOLUME_MIN, fadeOutFrames);
Sound_SetCurrentBGM(0);
Sound_SetCurrentBGM(SEQ_NONE);
Sound_SetNextBGM(bgmID);
Sound_SetFollowUpWaitFrames(fadeInFrames);

View File

@ -151,8 +151,8 @@ void Sound_StopBGM(u16 bgmID, int fadeOutFrames)
static void Sound_Impl_ResetBGM(void)
{
Sound_SetCurrentBGM(0);
Sound_SetNextBGM(0);
Sound_SetCurrentBGM(SEQ_NONE);
Sound_SetNextBGM(SEQ_NONE);
SoundSystem_SetState(SOUND_SYSTEM_STATE_IDLE);
}

View File

@ -1921,8 +1921,8 @@ static void StartMenu_Evolve(FieldTask *taskMan)
if (sub_0207B0D0(menu->taskData) == 1) {
sub_0207B0E0(menu->taskData);
Heap_Destroy(HEAP_ID_73);
Sound_StopBGM(1141, 0);
Sound_SetScene(0);
Sound_StopBGM(SEQ_SHINKA, 0);
Sound_SetScene(SOUND_SCENE_NONE);
sub_020556A0(fieldSystem, fieldSystem->location->mapId);
menu->taskData = sub_0203D20C(fieldSystem, &menu->unk_230);

View File

@ -54,7 +54,7 @@ int sub_02017498(OverlayManager *param0, int *param1)
MI_CpuClear8(v0, sizeof(UnkStruct_02017498));
v0->unk_00 = OverlayManager_Args(param0);
Sound_SetSceneAndPlayBGM(11, 1175, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_11, SEQ_WIFILOBBY, 1);
return 1;
}

View File

@ -1513,7 +1513,7 @@ void sub_0203E2FC(FieldSystem *fieldSystem)
v0.unk_00 = v2;
v0.unk_04 = SaveData_GetOptions(fieldSystem->saveData);
v0.unk_08 = SaveData_GetTrainerInfo(fieldSystem->saveData);
v0.unk_0C = sub_02055428(fieldSystem, fieldSystem->location->mapId);
v0.unk_0C = Sound_GetOverrideBGM(fieldSystem, fieldSystem->location->mapId);
sub_020985AC(fieldSystem->task, &v0);
}

View File

@ -60,7 +60,7 @@ BOOL ScrCmd_StopMusic(ScriptContext *ctx)
BOOL ScrCmd_PlayDefaultMusic(ScriptContext *ctx)
{
Sound_PlayBGM(sub_020554A4(ctx->fieldSystem, ctx->fieldSystem->location->mapId));
Sound_PlayBGM(Sound_GetBGMByMapID(ctx->fieldSystem, ctx->fieldSystem->location->mapId));
return FALSE;
}
@ -219,7 +219,7 @@ BOOL ScrCmd_05C(ScriptContext *param0)
BOOL ScrCmd_05D(ScriptContext *param0)
{
Sound_SetSceneAndPlayBGM(63, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_63, SEQ_NONE, 0);
return 1;
}
@ -235,9 +235,9 @@ BOOL ScrCmd_283(ScriptContext *param0)
BOOL ScrCmd_2F8(ScriptContext *param0)
{
if (gSystem.heldKeys & PAD_KEY_UP) {
Sound_SetSceneAndPlayBGM(22, 1218, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_22, SEQ_PL_TOWN02, 1);
} else {
Sound_SetSceneAndPlayBGM(22, 1218, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_22, SEQ_PL_TOWN02, 1);
}
return 1;
@ -245,9 +245,9 @@ BOOL ScrCmd_2F8(ScriptContext *param0)
BOOL ScrCmd_2F9(ScriptContext *param0)
{
u16 v0 = ScriptContext_GetVar(param0);
u16 bgmID = ScriptContext_GetVar(param0);
Sound_SetSceneAndPlayBGM(4, v0, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, bgmID, 1);
return 1;
}

View File

@ -35,7 +35,6 @@ BOOL ScrCmd_StartTagBattle(ScriptContext *ctx);
BOOL ScrCmd_0E7(ScriptContext *param0);
BOOL ScrCmd_0E8(ScriptContext *param0);
BOOL ScrCmd_0E9(ScriptContext *param0);
BOOL ScrCmd_0EA(ScriptContext *param0);
BOOL ScrCmd_BlackOutFromBattle(ScriptContext *param0);
BOOL ScrCmd_CheckHasTwoAliveMons(ScriptContext *param0);
BOOL ScrCmd_StartDummyTrainerBattle(ScriptContext *ctx);
@ -256,12 +255,12 @@ BOOL ScrCmd_0E9(ScriptContext *param0)
return 0;
}
BOOL ScrCmd_0EA(ScriptContext *param0)
BOOL ScrCmd_PlayTrainerEncounterBGM(ScriptContext *ctx)
{
u16 v0 = ScriptContext_GetVar(param0);
u16 trainerID = ScriptContext_GetVar(ctx);
sub_02004950(sub_0205560C(v0));
return 1;
Sound_SwapBGM(Trainer_GetEncounterBGM(trainerID));
return TRUE;
}
BOOL ScrCmd_BlackOutFromBattle(ScriptContext *param0)

View File

@ -20,101 +20,101 @@
#include "trainer_data.h"
#include "vars_flags.h"
const static u16 Unk_020EC3E0[][2] = {
{ 0x7, 0x450 },
{ 0x30, 0x451 },
{ 0x52, 0x458 },
{ 0x2D, 0x44D },
{ 0x2C, 0x44D },
{ 0x2F, 0x457 },
{ 0x19, 0x455 },
{ 0x18, 0x455 },
{ 0x21, 0x452 },
{ 0x24, 0x450 },
{ 0x20, 0x452 },
{ 0x2A, 0x457 },
{ 0xE, 0x44E },
{ 0x34, 0x44E },
{ 0x4, 0x44C },
{ 0x32, 0x44E },
{ 0x31, 0x44E },
{ 0x22, 0x452 },
{ 0x3D, 0x456 },
{ 0x3C, 0x44C },
{ 0x15, 0x458 },
{ 0x14, 0x458 },
{ 0x2, 0x44C },
{ 0xB, 0x453 },
{ 0x1D, 0x455 },
{ 0x1E, 0x457 },
{ 0x1C, 0x44D },
{ 0xA, 0x44E },
{ 0x50, 0x450 },
{ 0x2B, 0x450 },
{ 0x5, 0x456 },
{ 0x8, 0x44D },
{ 0x2E, 0x453 },
{ 0x25, 0x454 },
{ 0x11, 0x450 },
{ 0x10, 0x44C },
{ 0x28, 0x455 },
{ 0x27, 0x455 },
{ 0x3, 0x456 },
{ 0x6, 0x44C },
{ 0x9, 0x451 },
{ 0x17, 0x458 },
{ 0xC, 0x457 },
{ 0xD, 0x457 },
{ 0x49, 0x44F },
{ 0x59, 0x44F },
{ 0x48, 0x44F },
{ 0x57, 0x44F },
{ 0x58, 0x44F },
{ 0x23, 0x452 },
{ 0x51, 0x458 },
{ 0x1A, 0x458 },
{ 0x3B, 0x458 },
{ 0x47, 0x451 },
{ 0x12, 0x451 },
{ 0x46, 0x451 },
{ 0x3A, 0x458 },
{ 0x55, 0x456 },
{ 0xF, 0x458 },
{ 0x16, 0x44D },
{ 0x26, 0x44E },
{ 0x1F, 0x455 },
{ 0x37, 0x457 },
{ 0x38, 0x457 },
{ 0x39, 0x44E },
{ 0x29, 0x454 },
{ 0x13, 0x457 },
{ 0x1B, 0x455 },
{ 0x53, 0x458 },
{ 0x54, 0x458 },
{ 0x33, 0x452 },
{ 0x36, 0x455 },
{ 0x35, 0x455 },
{ 0x41, 0x459 },
{ 0x42, 0x459 },
{ 0x43, 0x459 },
{ 0x44, 0x459 },
{ 0x45, 0x45A },
{ 0x62, 0x458 }
// clang-format off
// Class, Eyes meet theme
const static u16 sTrainerEncounterBGMs[][2] = {
{ TRAINER_CLASS_AROMA_LADY, SEQ_EYE_LADY },
{ TRAINER_CLASS_RUIN_MANIAC, SEQ_EYE_MOUNT },
{ TRAINER_CLASS_INTERVIEWERS, SEQ_EYE_FUN },
{ TRAINER_CLASS_TUBER_FEMALE, SEQ_EYE_KID },
{ TRAINER_CLASS_TUBER_MALE, SEQ_EYE_KID },
{ TRAINER_CLASS_SIS_AND_BRO, SEQ_EYE_SPORT },
{ TRAINER_CLASS_ACE_TRAINER_FEMALE, SEQ_EYE_ELITE },
{ TRAINER_CLASS_ACE_TRAINER_MALE, SEQ_EYE_ELITE },
{ TRAINER_CLASS_LADY, SEQ_EYE_RICH },
{ TRAINER_CLASS_BEAUTY, SEQ_EYE_LADY },
{ TRAINER_CLASS_RICH_BOY, SEQ_EYE_RICH },
{ TRAINER_CLASS_SWIMMER_MALE, SEQ_EYE_SPORT },
{ TRAINER_CLASS_BLACK_BELT, SEQ_EYE_FIGHT },
{ TRAINER_CLASS_GUITARIST, SEQ_EYE_FIGHT },
{ TRAINER_CLASS_CAMPER, SEQ_EYE_BOY },
{ TRAINER_CLASS_PSYCHIC_FEMALE, SEQ_EYE_FIGHT },
{ TRAINER_CLASS_PSYCHIC_MALE, SEQ_EYE_FIGHT },
{ TRAINER_CLASS_GENTLEMAN, SEQ_EYE_RICH },
{ TRAINER_CLASS_SCHOOL_KID_FEMALE, SEQ_EYE_GIRL },
{ TRAINER_CLASS_SCHOOL_KID_MALE, SEQ_EYE_BOY },
{ TRAINER_CLASS_POKEFAN_FEMALE, SEQ_EYE_FUN },
{ TRAINER_CLASS_POKEFAN_MALE, SEQ_EYE_FUN },
{ TRAINER_CLASS_YOUNGSTER, SEQ_EYE_BOY },
{ TRAINER_CLASS_FISHERMAN, SEQ_EYE_ENKA },
{ TRAINER_CLASS_DRAGON_TAMER, SEQ_EYE_ELITE },
{ TRAINER_CLASS_BIRD_KEEPER, SEQ_EYE_SPORT },
{ TRAINER_CLASS_NINJA_BOY, SEQ_EYE_KID },
{ TRAINER_CLASS_BATTLE_GIRL, SEQ_EYE_FIGHT },
{ TRAINER_CLASS_PARASOL_LADY, SEQ_EYE_LADY },
{ TRAINER_CLASS_SWIMMER_FEMALE, SEQ_EYE_LADY },
{ TRAINER_CLASS_PICNICKER, SEQ_EYE_GIRL },
{ TRAINER_CLASS_TWINS, SEQ_EYE_KID },
{ TRAINER_CLASS_SAILOR, SEQ_EYE_ENKA },
{ TRAINER_CLASS_COLLECTOR, SEQ_EYE_MYS },
{ TRAINER_CLASS_BREEDER_FEMALE, SEQ_EYE_LADY },
{ TRAINER_CLASS_BREEDER_MALE, SEQ_EYE_BOY },
{ TRAINER_CLASS_RANGER_FEMALE, SEQ_EYE_ELITE },
{ TRAINER_CLASS_RANGER_MALE, SEQ_EYE_ELITE },
{ TRAINER_CLASS_LASS, SEQ_EYE_GIRL },
{ TRAINER_CLASS_BUG_CATCHER, SEQ_EYE_BOY },
{ TRAINER_CLASS_HIKER, SEQ_EYE_MOUNT },
{ TRAINER_CLASS_YOUNG_COUPLE, SEQ_EYE_FUN },
{ TRAINER_CLASS_CYCLIST_MALE, SEQ_EYE_SPORT },
{ TRAINER_CLASS_CYCLIST_FEMALE, SEQ_EYE_SPORT },
{ TRAINER_CLASS_GALACTIC_GRUNT_MALE, SEQ_EYE_GINGA },
{ TRAINER_CLASS_GALACTIC_GRUNT_FEMALE, SEQ_EYE_GINGA },
{ TRAINER_CLASS_COMMANDER_MARS, SEQ_EYE_GINGA },
{ TRAINER_CLASS_COMMANDER_JUPITER, SEQ_EYE_GINGA },
{ TRAINER_CLASS_COMMANDER_SATURN, SEQ_EYE_GINGA },
{ TRAINER_CLASS_SOCIALITE, SEQ_EYE_RICH },
{ TRAINER_CLASS_WAITER, SEQ_EYE_FUN },
{ TRAINER_CLASS_WAITRESS, SEQ_EYE_FUN },
{ TRAINER_CLASS_WORKER, SEQ_EYE_FUN },
{ TRAINER_CLASS_RANCHER, SEQ_EYE_MOUNT },
{ TRAINER_CLASS_COWGIRL, SEQ_EYE_MOUNT },
{ TRAINER_CLASS_BELLE_AND_PA, SEQ_EYE_MOUNT },
{ TRAINER_CLASS_CLOWN, SEQ_EYE_FUN },
{ TRAINER_CLASS_IDOL, SEQ_EYE_GIRL },
{ TRAINER_CLASS_ARTIST, SEQ_EYE_FUN },
{ TRAINER_CLASS_POKE_KID, SEQ_EYE_KID },
{ TRAINER_CLASS_POLICEMAN, SEQ_EYE_FIGHT },
{ TRAINER_CLASS_DOUBLE_TEAM, SEQ_EYE_ELITE },
{ TRAINER_CLASS_SKIER_MALE, SEQ_EYE_SPORT },
{ TRAINER_CLASS_SKIER_FEMALE, SEQ_EYE_SPORT },
{ TRAINER_CLASS_ROUGHNECK, SEQ_EYE_FIGHT },
{ TRAINER_CLASS_SCIENTIST, SEQ_EYE_MYS },
{ TRAINER_CLASS_JOGGER, SEQ_EYE_SPORT },
{ TRAINER_CLASS_VETERAN, SEQ_EYE_ELITE },
{ TRAINER_CLASS_CAMERAMAN, SEQ_EYE_FUN },
{ TRAINER_CLASS_REPORTER, SEQ_EYE_FUN },
{ TRAINER_CLASS_PI, SEQ_EYE_RICH },
{ TRAINER_CLASS_ACE_TRAINER_SNOW_FEMALE, SEQ_EYE_ELITE },
{ TRAINER_CLASS_ACE_TRAINER_SNOW_MALE, SEQ_EYE_ELITE },
{ TRAINER_CLASS_ELITE_FOUR_AARON, SEQ_EYE_TENNO },
{ TRAINER_CLASS_ELITE_FOUR_BERTHA, SEQ_EYE_TENNO },
{ TRAINER_CLASS_ELITE_FOUR_FLINT, SEQ_EYE_TENNO },
{ TRAINER_CLASS_ELITE_FOUR_LUCIAN, SEQ_EYE_TENNO },
{ TRAINER_CLASS_CHAMPION_CYNTHIA, SEQ_EYE_CHAMP },
{ TRAINER_CLASS_MAID, SEQ_EYE_FUN }
};
// clang-format on
void sub_020553DC(void);
u16 sub_02055428(FieldSystem *fieldSystem, int param1);
u16 sub_020554A4(FieldSystem *fieldSystem, int param1);
static u16 sub_020554E8(FieldSystem *fieldSystem, int param1);
static u16 FieldSystem_GetAltMusicForCyclingRoad(FieldSystem *fieldSystem, int headerID);
BOOL sub_02055554(FieldSystem *fieldSystem, u16 param1, int param2);
static void sub_020555CC(FieldSystem *fieldSystem, int param1, int *param2, int *param3);
u16 sub_0205560C(int param0);
void sub_020553DC()
{
Sound_StopWaveOutAndSequences();
Sound_ClearBGMPauseFlags();
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
}
void Sound_SetSpecialBGM(FieldSystem *fieldSystem, u16 sdatID)
@ -137,71 +137,68 @@ void Sound_ClearSpecialBGM(FieldSystem *fieldSystem)
*bgm = 0;
}
u16 sub_02055428(FieldSystem *fieldSystem, int param1)
u16 Sound_GetOverrideBGM(FieldSystem *fieldSystem, enum MapHeader mapID)
{
PlayerAvatar *playerAvatar = fieldSystem->playerAvatar;
int v1;
u16 v2, v3;
int playerState = PlayerAvatar_GetPlayerState(playerAvatar);
v1 = PlayerAvatar_GetPlayerState(playerAvatar);
if (v1 == 0x2) {
switch (param1) {
case 573:
case 574:
case 575:
case 576:
case 577:
case 579:
case 580:
case 581:
case 582:
case 583:
if (playerState == PLAYER_STATE_SURFING) {
switch (mapID) {
case MAP_HEADER_DISTORTION_WORLD_1F:
case MAP_HEADER_DISTORTION_WORLD_B1F:
case MAP_HEADER_DISTORTION_WORLD_B2F:
case MAP_HEADER_DISTORTION_WORLD_B3F:
case MAP_HEADER_DISTORTION_WORLD_B4F:
case MAP_HEADER_DISTORTION_WORLD_B5F:
case MAP_HEADER_DISTORTION_WORLD_B6F:
case MAP_HEADER_DISTORTION_WORLD_B7F:
case MAP_HEADER_DISTORTION_WORLD_GIRATINA_ROOM:
case MAP_HEADER_DISTORTION_WORLD_TURNBACK_CAVE_ROOM:
break;
default:
return 1151;
return SEQ_NAMINORI;
}
}
if (GetRadarChainActive(fieldSystem->chain) == 1) {
return 1150;
if (GetRadarChainActive(fieldSystem->chain) == TRUE) {
return SEQ_POKERADAR;
}
v2 = sub_020554A4(fieldSystem, param1);
u16 bgmID = Sound_GetBGMByMapID(fieldSystem, mapID);
if (Sound_GetSpecialBGM(fieldSystem) != 0) {
v2 = Sound_GetSpecialBGM(fieldSystem);
if (Sound_GetSpecialBGM(fieldSystem) != SEQ_NONE) {
bgmID = Sound_GetSpecialBGM(fieldSystem);
}
return v2;
return bgmID;
}
u16 sub_020554A4(FieldSystem *fieldSystem, int headerID)
u16 Sound_GetBGMByMapID(FieldSystem *fieldSystem, int mapID)
{
u16 sdatID;
if (IsNight() == FALSE) {
sdatID = MapHeader_GetDayMusicID(headerID);
sdatID = MapHeader_GetDayMusicID(mapID);
} else {
sdatID = MapHeader_GetNightMusicID(headerID);
sdatID = MapHeader_GetNightMusicID(mapID);
}
u16 v1 = SystemFlag_GetAltMusicForHeader(SaveData_GetVarsFlags(fieldSystem->saveData), headerID);
u16 altSdatID = SystemFlag_GetAltMusicForHeader(SaveData_GetVarsFlags(fieldSystem->saveData), mapID);
if (v1 != 0) {
sdatID = v1;
if (altSdatID != SEQ_NONE) {
sdatID = altSdatID;
}
v1 = sub_020554E8(fieldSystem, headerID);
altSdatID = FieldSystem_GetAltMusicForCyclingRoad(fieldSystem, mapID);
if (v1 != 0) {
sdatID = v1;
if (altSdatID != SEQ_NONE) {
sdatID = altSdatID;
}
return sdatID;
}
static u16 sub_020554E8(FieldSystem *fieldSystem, int param1)
static u16 FieldSystem_GetAltMusicForCyclingRoad(FieldSystem *fieldSystem, int headerID)
{
int x, y;
FieldOverworldState *fieldState = SaveData_GetFieldOverworldState(fieldSystem->saveData);
@ -210,8 +207,8 @@ static u16 sub_020554E8(FieldSystem *fieldSystem, int param1)
x = Player_GetXPos(fieldSystem->playerAvatar);
y = Player_GetZPos(fieldSystem->playerAvatar);
if (param1 != 350) {
return 0;
if (headerID != MAP_HEADER_ROUTE_206) {
return SEQ_NONE;
}
if ((location->mapId == 80) || (location->mapId == 351)) {
@ -224,36 +221,36 @@ static u16 sub_020554E8(FieldSystem *fieldSystem, int param1)
}
if ((y == 576) || (y == 681)) {
return 1189;
return SEQ_PL_BICYCLE;
}
}
return 0;
}
BOOL sub_02055554(FieldSystem *fieldSystem, u16 param1, int param2)
BOOL sub_02055554(FieldSystem *fieldSystem, u16 bgmID, int param2)
{
PlayerAvatar *playerAvatar;
int v1, v2, v3;
int v1, v2, playerState;
playerAvatar = fieldSystem->playerAvatar;
v3 = PlayerAvatar_GetPlayerState(playerAvatar);
playerState = PlayerAvatar_GetPlayerState(playerAvatar);
if (Sound_IsBGMFixed() == 1) {
return 0;
}
if (param1 == Sound_GetCurrentBGM1(fieldSystem)) {
if (bgmID == Sound_GetCurrentBGM1(fieldSystem)) {
return 0;
}
Sound_ClearBGMPauseFlags();
sub_020555CC(fieldSystem, param2, &v1, &v2);
if ((v3 == 0x1) || (v3 == 0x1)) {
Sound_FadeToBGM(4, param1, v1, v2, 30, 0, NULL);
if ((playerState == PLAYER_STATE_CYCLING) || (playerState == PLAYER_STATE_CYCLING)) { // Yes, it's checking bike twice. Maybe there was a point were Acro and Mach Bikes were still a thing?
Sound_FadeToBGM(4, bgmID, v1, v2, 30, 0, NULL);
} else {
Sound_FadeOutAndPlayBGM(4, param1, v1, v2, 0, NULL);
Sound_FadeOutAndPlayBGM(4, bgmID, v1, v2, 0, NULL);
}
return 1;
@ -281,52 +278,52 @@ static void sub_020555CC(FieldSystem *fieldSystem, int param1, int *param2, int
}
}
u16 sub_0205560C(int param0)
u16 Trainer_GetEncounterBGM(enum TrainerID trainerID)
{
u8 v0 = (u8)Trainer_LoadParam(param0, 1);
u16 i, v1 = 1101;
u8 class = (u8)Trainer_LoadParam(trainerID, TRDATA_CLASS);
u16 i, bgmID = SEQ_EYE_KID;
for (i = 0; i < 79; i++) {
if (Unk_020EC3E0[i][0] == v0) {
v1 = Unk_020EC3E0[i][1];
for (i = 0; i < NELEMS(sTrainerEncounterBGMs); i++) {
if (sTrainerEncounterBGMs[i][0] == class) {
bgmID = sTrainerEncounterBGMs[i][1];
break;
}
}
return v1;
return bgmID;
}
void Sound_TryFadeInBGM(FieldSystem *fieldSystem, int param1)
void Sound_TryFadeInBGM(FieldSystem *fieldSystem, int mapID)
{
if (Sound_IsBGMFixed() == 1) {
return;
}
if (Sound_GetCurrentBGM() != sub_020554A4(fieldSystem, param1)) {
if (Sound_GetCurrentBGM() != Sound_GetBGMByMapID(fieldSystem, mapID)) {
Sound_FadeOutBGM(0, 40);
}
}
void Sound_PlayMapBGM(FieldSystem *fieldSystem, int param1)
void Sound_PlayMapBGM(FieldSystem *fieldSystem, int mapID)
{
u16 v0;
u16 bgmID;
if (Sound_IsBGMFixed() == 1) {
return;
}
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
v0 = sub_020554A4(fieldSystem, param1);
bgmID = Sound_GetBGMByMapID(fieldSystem, mapID);
Sound_SetFieldBGM(v0);
Sound_SetSceneAndPlayBGM(4, v0, 1);
Sound_SetFieldBGM(bgmID);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, bgmID, 1);
}
void sub_020556A0(FieldSystem *fieldSystem, int param1)
void sub_020556A0(FieldSystem *fieldSystem, int mapID)
{
u16 v0 = sub_02055428(fieldSystem, param1);
u16 bgmID = Sound_GetOverrideBGM(fieldSystem, mapID);
Sound_SetFieldBGM(sub_020554A4(fieldSystem, param1));
Sound_SetSceneAndPlayBGM(4, v0, 1);
Sound_SetFieldBGM(Sound_GetBGMByMapID(fieldSystem, mapID));
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, bgmID, 1);
}

View File

@ -488,7 +488,7 @@ static BOOL sub_02068884(FieldTask *task)
Sound_SetSpecialBGM(fieldSystem, 0);
sub_02055554(
fieldSystem, sub_02055428(fieldSystem, fieldSystem->location->mapId), 1);
fieldSystem, Sound_GetOverrideBGM(fieldSystem, fieldSystem->location->mapId), 1);
} else {
Sound_SetSpecialBGM(fieldSystem, 1152);
sub_02055554(fieldSystem, 1152, 1);

View File

@ -39,7 +39,7 @@ typedef struct {
int unk_0C;
fx32 unk_10;
fx32 unk_14;
int unk_18;
int mapID;
int unk_1C;
int unk_20;
VecFx32 unk_24;
@ -69,7 +69,7 @@ void sub_0206C784(FieldSystem *fieldSystem, const u8 param1, const u8 param2, co
v0->unk_01 = param1;
v0->unk_04 = param2;
v0->unk_18 = param3;
v0->mapID = param3;
v0->unk_1C = param4;
v0->unk_20 = param5;
v0->unk_34 = *(fieldSystem->areaModelAttrs);
@ -80,7 +80,7 @@ void sub_0206C784(FieldSystem *fieldSystem, const u8 param1, const u8 param2, co
v0->unk_05 = 0;
v0->unk_08 = 0;
Sound_SetSceneAndPlayBGM(64, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_64, SEQ_NONE, 0);
if (param1 == 3) {
v4 = MAP_PROP_MODEL_REGULAR_SHIP;
@ -221,11 +221,11 @@ static BOOL sub_0206C964(FieldTask *taskMan)
v1->unk_00 = 5;
break;
case 5:
FieldTask_ChangeMapToLocation(taskMan, v1->unk_18, -1, v1->unk_1C, v1->unk_20, v1->unk_04);
FieldTask_ChangeMapToLocation(taskMan, v1->mapID, -1, v1->unk_1C, v1->unk_20, v1->unk_04);
v1->unk_00 = 6;
break;
case 6:
Sound_PlayMapBGM(fieldSystem, v1->unk_18);
Sound_PlayMapBGM(fieldSystem, v1->mapID);
FieldTransition_StartMapAndFadeIn(taskMan);
v1->unk_00 = 7;
break;

View File

@ -300,7 +300,7 @@ static void sub_0207B180(UnkStruct_0207AE68 *param0)
case 5:
if ((Text_IsPrinterActive(param0->unk_65) == 0) && (Sound_IsPokemonCryPlaying() == 0) && (sub_020160F4(param0->unk_44, 0) == 1) && (PokemonSprite_IsAnimActive(param0->unk_1C[0]) == 0)) {
sub_02015738(param0->unk_58, 1);
Sound_PlayBasicBGM(1141);
Sound_PlayBasicBGM(SEQ_SHINKA);
param0->unk_66 = 20;
param0->unk_64 = 6;
}
@ -635,7 +635,7 @@ static void sub_0207B180(UnkStruct_0207AE68 *param0)
param0->unk_74 = 0xff;
param0->unk_75 = 0xa0;
param0->unk_70 = 0;
Sound_StopBGM(1141, 0);
Sound_StopBGM(SEQ_SHINKA, 0);
sub_0207C8F4(param0->unk_30);
param0->unk_64++;
}

View File

@ -269,7 +269,7 @@ static int sub_0207E0B8(OverlayManager *param0, int *param1)
sub_0207EB6C(v0, v1);
sub_0201E3D8();
sub_0201E450(4);
Sound_SetSceneAndPlayBGM(57, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_57, SEQ_NONE, 0);
sub_02081A24(v0);
sub_02082C2C(v0);
sub_02082E58(v0);

View File

@ -909,7 +909,7 @@ static int sub_0208694C(OverlayManager *param0, int *param1)
sub_02087A10(v0);
sub_02087FC0(v0, param0, v1);
sub_02088754(&v0->unk_41C[4], v0->unk_D8, v0->unk_158, v0->unk_15A, v0->unk_528, v0->unk_17C);
Sound_SetSceneAndPlayBGM(52, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_52, SEQ_NONE, 0);
StartScreenTransition(0, 1, 1, 0x0, 16, 1, HEAP_ID_18);
sub_0208732C(1);

View File

@ -289,9 +289,9 @@ static BOOL sub_0208BC8C(UnkStruct_0208BC3C *param0, int heapID)
sub_02005464(1);
if (sub_0208BE80(param0->unk_10->trainer[1].header.trainerType) == 1) {
Sound_SetSceneAndPlayBGM(5, 1202, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, SEQ_BATTLE_FRONTIER_BRAIN, 1);
} else {
Sound_SetSceneAndPlayBGM(5, 1119, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_BATTLE, SEQ_BATTLE_TRAINER, 1);
}
}
param0->unk_08 = OverlayManager_New(&gBattleOverlayTemplate, param0->unk_10, heapID);
@ -315,15 +315,15 @@ static BOOL sub_0208BC8C(UnkStruct_0208BC3C *param0, int heapID)
OverlayManager_Free(param0->unk_08);
{
u16 v1;
u16 bgmID;
sub_02005464(0);
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
v1 = sub_02055428(param0->fieldSystem, param0->fieldSystem->location->mapId);
bgmID = Sound_GetOverrideBGM(param0->fieldSystem, param0->fieldSystem->location->mapId);
Sound_SetFieldBGM(sub_020554A4(param0->fieldSystem, param0->fieldSystem->location->mapId));
Sound_SetSceneAndPlayBGM(4, v1, 1);
Sound_SetFieldBGM(Sound_GetBGMByMapID(param0->fieldSystem, param0->fieldSystem->location->mapId));
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, bgmID, 1);
}
param0->unk_00 = 0;

View File

@ -53,7 +53,7 @@ static int sub_0208BEBC(OverlayManager *param0, int *param1, int param2)
Sound_SetPlayerVolume(1, (127 / 3));
if (param2 != 0) {
Sound_SetSceneAndPlayBGM(4, 1196, 1);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_FIELD, SEQ_PL_WIFITOWER, 1);
}
if (param2 == 0) {

View File

@ -180,7 +180,7 @@ static int sub_02097B18(OverlayManager *param0, int *param1)
ov76_0223DCC0(v0);
SetVBlankCallback(ov76_0223ECB0, v0);
ov76_0223B8A8(v0);
Sound_SetSceneAndPlayBGM(59, 0, 0);
Sound_SetSceneAndPlayBGM(SOUND_SCENE_SUB_59, SEQ_NONE, 0);
return 1;
}

View File

@ -101,9 +101,9 @@ int sub_02099E38(OverlayManager *param0, int *param1)
switch (*param1) {
case 0:
Sound_StopBGM(1173, 0);
Sound_StopBGM(SEQ_TITLE01, 0);
Sound_ConfigureBGMChannelsAndReverb(SOUND_CHANNEL_CONFIG_DEFAULT);
Sound_SetScene(0);
Sound_SetScene(SOUND_SCENE_NONE);
sub_0200F344(0, 0x0);
sub_0200F344(1, 0x0);
SetVBlankCallback(NULL, NULL);