diff --git a/include/sound_system.h b/include/sound_system.h index a6f8517a88..9083661223 100644 --- a/include/sound_system.h +++ b/include/sound_system.h @@ -63,6 +63,8 @@ enum SoundSystemParam { SOUND_SYSTEM_PARAM_HEAP_STATE_BGM, SOUND_SYSTEM_PARAM_FIELD_BGM = 32, + + SOUND_SYSTEM_PARAM_CHATOT_CRY = 36, }; typedef struct SoundSystem { diff --git a/include/unk_02005474.h b/include/unk_02005474.h index 11f0594b0a..d9c55e8823 100644 --- a/include/unk_02005474.h +++ b/include/unk_02005474.h @@ -37,11 +37,11 @@ BOOL Sound_IsAnyEffectPlaying(); // tracks is for example (SOUND_EFFECT_TRACK(10) | SOUND_EFFECT_TRACK(2)) or SOUND_EFFECT_TRACK_ALL void Sound_PanEffect(u16 seqID, u16 tracks, int pan); void Sound_PanAllEffects(int param0); -BOOL sub_02005844(u16 species, u8 form); +BOOL Sound_PlayPokemonCry(u16 species, u8 form); BOOL sub_0200590C(u16 species, u8 delay, u8 form); void sub_0200592C(int param0); int sub_0200598C(void); -BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, int volume, int heapID, u8 form); +BOOL Sound_PlayPokemonCryEx(enum PokemonCryMod cryMod, u16 species, int param2, int volume, int heapID, u8 form); void Sound_PlayDelayedPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, int volume, int heapID, u8 delay, u8 form); void sub_0200605C(void); BOOL sub_02006150(u16 param0); diff --git a/src/choose_starter/choose_starter_app.c b/src/choose_starter/choose_starter_app.c index 4849af3ee3..4f1a8f0b21 100644 --- a/src/choose_starter/choose_starter_app.c +++ b/src/choose_starter/choose_starter_app.c @@ -1241,7 +1241,7 @@ static void ov78_021D1E44(ChooseStarterApp *param0, int param1) PokemonSprite_SetAttribute(param0->sprites[param0->cursorPosition], MON_SPRITE_HIDE, FALSE); if (ov78_021D26A4(param0)) { - sub_02005844(GetSelectedSpecies(param0->cursorPosition), 0); + Sound_PlayPokemonCry(GetSelectedSpecies(param0->cursorPosition), 0); param0->unk_04++; } diff --git a/src/overlay006/ov6_0223E140.c b/src/overlay006/ov6_0223E140.c index db8efb7994..d5da46e3c2 100644 --- a/src/overlay006/ov6_0223E140.c +++ b/src/overlay006/ov6_0223E140.c @@ -1118,7 +1118,7 @@ static BOOL ov6_0223EBDC(UnkStruct_ov6_0223EA98 *param0) Easy3DObject_SetPosition(¶m0->unk_24, param0->unk_E4.unk_00, v2, param0->unk_F4.unk_00); if (v0[0] && v0[1]) { - Sound_PlayPokemonCry(POKECRY_NORMAL, SPECIES_UXIE, 0, 100, HEAP_ID_FIELD, 0); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, SPECIES_UXIE, 0, 100, HEAP_ID_FIELD, 0); param0->unk_18++; } break; @@ -1341,7 +1341,7 @@ static BOOL ov6_0223EE5C(UnkStruct_ov6_0223EA98 *param0) } param0->unk_D0 = 0; - Sound_PlayPokemonCry(POKECRY_NORMAL, SPECIES_MESPRIT, 0, 100, HEAP_ID_FIELD, 0); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, SPECIES_MESPRIT, 0, 100, HEAP_ID_FIELD, 0); param0->unk_18++; break; case 16: @@ -1482,7 +1482,7 @@ static BOOL ov6_0223F744(UnkStruct_ov6_0223EA98 *param0) Easy3DObject_SetPosition(¶m0->unk_24, param0->unk_E4.unk_00, v2, param0->unk_F4.unk_00); if (v0[0] && v0[1]) { - Sound_PlayPokemonCry(POKECRY_NORMAL, SPECIES_AZELF, 0, 100, HEAP_ID_FIELD, 0); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, SPECIES_AZELF, 0, 100, HEAP_ID_FIELD, 0); param0->unk_18++; } diff --git a/src/overlay009/ov9_02249960.c b/src/overlay009/ov9_02249960.c index 1ae59dbfe6..4f27ee24c2 100644 --- a/src/overlay009/ov9_02249960.c +++ b/src/overlay009/ov9_02249960.c @@ -6721,7 +6721,7 @@ static void ov9_0224EA94(UnkStruct_ov101_021D5D90 *param0, void *param1) switch (v1->unk_2C) { case 0: if (v2->unk_07 == 1) { - sub_02005844(SPECIES_GIRATINA, 0); + Sound_PlayPokemonCry(SPECIES_GIRATINA, 0); } else if (v2->unk_07 == 2) { Sound_PlayEffect(SEQ_SE_DP_FW019); } @@ -8862,7 +8862,7 @@ static int ov9_02250918(UnkStruct_ov9_02249B04 *param0, FieldTask *param1, u16 * UnkStruct_ov9_02250918 *v0 = ov9_0224E37C(param0, sizeof(UnkStruct_ov9_02250918)); v0->unk_20 = ov9_0224F0D4(param0, 579, (0x80 + 3)); - sub_02005844(SPECIES_UXIE, 0); + Sound_PlayPokemonCry(SPECIES_UXIE, 0); v0->unk_04 = 1; *param2 = 1; @@ -8991,7 +8991,7 @@ static int ov9_02250AFC(UnkStruct_ov9_02249B04 *param0, FieldTask *param1, u16 * UnkStruct_ov9_02250AFC *v0 = ov9_0224E37C(param0, sizeof(UnkStruct_ov9_02250AFC)); v0->unk_14 = ov9_0224F0D4(param0, 579, (0x80 + 4)); - sub_02005844(SPECIES_AZELF, 0); + Sound_PlayPokemonCry(SPECIES_AZELF, 0); *param2 = 1; return 0; @@ -9156,7 +9156,7 @@ static int ov9_02250C14(UnkStruct_ov9_02249B04 *param0, FieldTask *param1, u16 * UnkStruct_ov9_02250C14 *v0 = ov9_0224E37C(param0, sizeof(UnkStruct_ov9_02250AFC)); v0->unk_18 = ov9_0224F0D4(param0, 579, (0x80 + 5)); - sub_02005844(SPECIES_MESPRIT, 0); + Sound_PlayPokemonCry(SPECIES_MESPRIT, 0); *param2 = 1; return 0; } diff --git a/src/overlay021/ov21_021DE668.c b/src/overlay021/ov21_021DE668.c index 34ea237184..a16dce15d6 100644 --- a/src/overlay021/ov21_021DE668.c +++ b/src/overlay021/ov21_021DE668.c @@ -221,7 +221,7 @@ static int ov21_021DE79C(UnkStruct_ov21_021E6A68 *param0, void *param1) switch (param0->unk_00) { case 0: if (v0->unk_1C == 1) { - Sound_PlayPokemonCry(POKECRY_POKEDEX, PokedexSort_CurrentSpecies(v0->unk_04), 0x1ff, 0x1ff, 0x1ff, 0); + Sound_PlayPokemonCryEx(POKECRY_POKEDEX, PokedexSort_CurrentSpecies(v0->unk_04), 0x1ff, 0x1ff, 0x1ff, 0); v0->unk_1C = 0; } diff --git a/src/overlay021/ov21_021E4CA4.c b/src/overlay021/ov21_021E4CA4.c index 0ec5459939..247a84699b 100644 --- a/src/overlay021/ov21_021E4CA4.c +++ b/src/overlay021/ov21_021E4CA4.c @@ -1257,7 +1257,7 @@ static void ov21_021E5DE8(UnkStruct_ov21_021E51DC *param0, UnkStruct_ov21_021E4D { param0->unk_2C = 1; - Sound_PlayPokemonCry(POKECRY_POKEDEX_CHORUS, species, 0, 127, 0x1ff, 0); + Sound_PlayPokemonCryEx(POKECRY_POKEDEX_CHORUS, species, 0, 127, 0x1ff, 0); ov21_021E5F00(param0); } diff --git a/src/overlay021/ov21_021E8D48.c b/src/overlay021/ov21_021E8D48.c index 17630c3a92..5b60fb1051 100644 --- a/src/overlay021/ov21_021E8D48.c +++ b/src/overlay021/ov21_021E8D48.c @@ -680,7 +680,7 @@ static void ov21_021E9828(SysTask *param0, void *param1) } break; case 2: - v1 = Sound_PlayPokemonCry(POKECRY_POKEDEX, v0->unk_220, 0x1ff, 0x1ff, 0x1ff, 0); + v1 = Sound_PlayPokemonCryEx(POKECRY_POKEDEX, v0->unk_220, 0x1ff, 0x1ff, 0x1ff, 0); GF_ASSERT(v1); v0->unk_21C++; break; diff --git a/src/overlay025/poketch_system.c b/src/overlay025/poketch_system.c index f18301075e..ee54c9043b 100644 --- a/src/overlay025/poketch_system.c +++ b/src/overlay025/poketch_system.c @@ -674,7 +674,7 @@ void PoketchSystem_PlayCry(u32 species, u32 form) PoketchSystem *poketchSys = PoketchSystem_GetFromFieldSystem(); if (poketchSys->appChanging == FALSE && PoketechSystem_IsRunningTask(poketchSys) == 0) { - sub_02005844(species, form); + Sound_PlayPokemonCry(species, form); } } diff --git a/src/overlay062/ov62_02239D60.c b/src/overlay062/ov62_02239D60.c index ea6d45e4ce..a149b617e4 100644 --- a/src/overlay062/ov62_02239D60.c +++ b/src/overlay062/ov62_02239D60.c @@ -397,7 +397,7 @@ static void ov62_02239F98(u32 param0, u32 param1, void *param2) ov62_0223ADC0(v0, v1->unk_1B0); if ((v1->unk_04.unk_28[v1->unk_1B0] != 0) && (ov62_0223ADB0(v1->unk_04.unk_154, (1 << v1->unk_1B0)) != 1)) { - sub_02005844(v1->unk_04.unk_28[v1->unk_1B0], v1->unk_04.unk_158[v1->unk_1B0]); + Sound_PlayPokemonCry(v1->unk_04.unk_28[v1->unk_1B0], v1->unk_04.unk_158[v1->unk_1B0]); } break; case 1: @@ -1971,7 +1971,7 @@ static BOOL ov62_0223C138(UnkStruct_0208C06C *param0) sub_0208BA08(param0->unk_6F0, 12, 12); if ((v0->unk_04.unk_28[v0->unk_1B0] != 0) && (ov62_0223ADB0(v0->unk_04.unk_154, (1 << v0->unk_1B0)) != 1)) { - sub_02005844(v0->unk_04.unk_28[v0->unk_1B0], v0->unk_04.unk_158[v0->unk_1B0]); + Sound_PlayPokemonCry(v0->unk_04.unk_28[v0->unk_1B0], v0->unk_04.unk_158[v0->unk_1B0]); } ov62_0222FB60(param0, 10); diff --git a/src/overlay070/ov70_0226CE54.c b/src/overlay070/ov70_0226CE54.c index 7a206e0fed..0cd9518c1f 100644 --- a/src/overlay070/ov70_0226CE54.c +++ b/src/overlay070/ov70_0226CE54.c @@ -294,10 +294,10 @@ static void ov70_0226D27C(BOOL param0, BOOL param1, BOOL param2, u32 species) { if (param0) { if (param1) { - sub_02005844(species, 0); + Sound_PlayPokemonCry(species, 0); } } else { - sub_02005844(species, 0); + Sound_PlayPokemonCry(species, 0); } } diff --git a/src/overlay073/ov73_021D0D80.c b/src/overlay073/ov73_021D0D80.c index 7fbcebd2b7..ea94b725d9 100644 --- a/src/overlay073/ov73_021D0D80.c +++ b/src/overlay073/ov73_021D0D80.c @@ -1395,7 +1395,7 @@ static BOOL ov73_021D200C(UnkStruct_ov73_021D1058 *param0, int *param1) } } break; case 6: - sub_02005844(SPECIES_BUNEARY, 0); + Sound_PlayPokemonCry(SPECIES_BUNEARY, 0); v0 = 1; break; } diff --git a/src/overlay077/ov77_021D0D80.c b/src/overlay077/ov77_021D0D80.c index cc814584fc..396c26608a 100644 --- a/src/overlay077/ov77_021D0D80.c +++ b/src/overlay077/ov77_021D0D80.c @@ -245,7 +245,7 @@ static int ov77_021D0E3C(OverlayManager *param0, int *param1) if (((gSystem.pressedKeys & PAD_BUTTON_A) == PAD_BUTTON_A) || ((gSystem.pressedKeys & PAD_BUTTON_START) == PAD_BUTTON_START)) { v0->unk_4E8 = 1; Sound_FadeOutBGM(0, 60); - sub_02005844(SPECIES_GIRATINA, 1); + Sound_PlayPokemonCry(SPECIES_GIRATINA, 1); ov77_021D1D48(v0->unk_04, v0->heapID); *param1 = 4; break; diff --git a/src/overlay079/ov79_021D2268.c b/src/overlay079/ov79_021D2268.c index 6af8ce9e50..bb7a24cf40 100644 --- a/src/overlay079/ov79_021D2268.c +++ b/src/overlay079/ov79_021D2268.c @@ -682,10 +682,10 @@ static int ov79_021D2AF0(UnkStruct_ov79_021D2928 *param0, UnkStruct_ov79_021D29B switch (param0->unk_30.unk_09) { case 1: - Sound_PlayPokemonCry(POKECRY_PINCH_NORMAL, param0->unk_30.unk_04, 0, 127, param0->heapID, form); + Sound_PlayPokemonCryEx(POKECRY_PINCH_NORMAL, param0->unk_30.unk_04, 0, 127, param0->heapID, form); break; default: - Sound_PlayPokemonCry(POKECRY_NORMAL, param0->unk_30.unk_04, 0, 127, param0->heapID, form); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, param0->unk_30.unk_04, 0, 127, param0->heapID, form); break; } diff --git a/src/overlay086/ov86_0223B140.c b/src/overlay086/ov86_0223B140.c index f500ec217f..b936e57010 100644 --- a/src/overlay086/ov86_0223B140.c +++ b/src/overlay086/ov86_0223B140.c @@ -1210,7 +1210,7 @@ static void ov86_0223C398(SysTask *param0, void *param1) int v1; if (v0->unk_6C) { - sub_02005844(v0->unk_70, v0->unk_74); + Sound_PlayPokemonCry(v0->unk_70, v0->unk_74); v0->unk_6C = 0; } diff --git a/src/overlay087/ov87_021D106C.c b/src/overlay087/ov87_021D106C.c index 8091f8d5b3..190a09e46a 100644 --- a/src/overlay087/ov87_021D106C.c +++ b/src/overlay087/ov87_021D106C.c @@ -201,7 +201,7 @@ static BOOL ov87_021D12C0(UnkStruct_ov87_021D106C *param0, int *param1) Sprite_SetPriority(param0->unk_1C4[v1], 0); Sound_FlagDefaultChatotCry(TRUE); - sub_02005844(v0->unk_20[v1].unk_10, v0->unk_20[v1].unk_13); + Sound_PlayPokemonCry(v0->unk_20[v1].unk_10, v0->unk_20[v1].unk_13); } else { Sprite_SetExplicitOAMMode(param0->unk_1C4[v1], GX_OAM_MODE_XLU); Sprite_SetPriority(param0->unk_1C4[v1], v1 + 1); @@ -550,7 +550,7 @@ static void ov87_021D1970(UnkStruct_ov87_021D106C *param0) if (v3 == v2->unk_18) { Sound_FlagDefaultChatotCry(TRUE); - sub_02005844(v2->unk_20[v3].unk_10, v2->unk_20[v3].unk_13); + Sound_PlayPokemonCry(v2->unk_20[v3].unk_10, v2->unk_20[v3].unk_13); Sprite_SetExplicitOAMMode(param0->unk_1C4[v3], GX_OAM_MODE_NORMAL); } else { Sprite_SetExplicitOAMMode(param0->unk_1C4[v3], GX_OAM_MODE_XLU); diff --git a/src/overlay088/ov88_0223B140.c b/src/overlay088/ov88_0223B140.c index 101c463388..e6340247c4 100644 --- a/src/overlay088/ov88_0223B140.c +++ b/src/overlay088/ov88_0223B140.c @@ -1512,7 +1512,7 @@ static void ov88_0223CE74(UnkStruct_02095E80 *param0) if (species == SPECIES_CHATOT) { Sound_PlayChatotCry(SaveData_GetChatotCry(param0->unk_04), 0, 100, 0); } else { - sub_02005844(species, form); + Sound_PlayPokemonCry(species, form); } Sprite_SetAnimateFlag(param0->unk_464[v2], 1); diff --git a/src/overlay097/gba_migrator.c b/src/overlay097/gba_migrator.c index 2d22b7220d..c0f7d24830 100644 --- a/src/overlay097/gba_migrator.c +++ b/src/overlay097/gba_migrator.c @@ -1308,7 +1308,7 @@ static void ov97_02234B0C(GBAMigrator *migrator, BoxPokemonGBA *boxMonGBA) ov97_02233DD0(migrator, &v4, 0x2); Strbuf_Free(strBuf); - sub_02005844(species, 0); + Sound_PlayPokemonCry(species, 0); } static void ov97_02234CC4(GBAMigrator *migrator, int param1, int param2, int *state) diff --git a/src/overlay100/ov100_021D13E4.c b/src/overlay100/ov100_021D13E4.c index 2f86a75ca3..646d78d88f 100644 --- a/src/overlay100/ov100_021D13E4.c +++ b/src/overlay100/ov100_021D13E4.c @@ -127,7 +127,7 @@ BOOL ov100_021D14A8(void *param0) } if (v0->unk_04 == v2[v0->unk_08]) { - Sound_PlayPokemonCry(POKECRY_NORMAL, v4[v0->unk_08], 0, 100, HEAP_ID_111, 0); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, v4[v0->unk_08], 0, 100, HEAP_ID_111, 0); } if ((++v0->unk_04) >= v1[v0->unk_08]) { diff --git a/src/overlay100/ov100_021D1C44.c b/src/overlay100/ov100_021D1C44.c index baa57bb896..254bf57b16 100644 --- a/src/overlay100/ov100_021D1C44.c +++ b/src/overlay100/ov100_021D1C44.c @@ -515,11 +515,11 @@ BOOL ov100_021D2428(void *param0) } if (v0->unk_04 == 15 + 25) { - Sound_PlayPokemonCry(POKECRY_NORMAL, SPECIES_DIALGA, -80, 40, HEAP_ID_111, 0); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, SPECIES_DIALGA, -80, 40, HEAP_ID_111, 0); } if (v0->unk_04 == 40 + 25) { - Sound_PlayPokemonCry(POKECRY_NORMAL, SPECIES_PALKIA, +80, 40, HEAP_ID_111, 0); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, SPECIES_PALKIA, +80, 40, HEAP_ID_111, 0); } if (v0->unk_04 < 15 + 25) { @@ -557,7 +557,7 @@ BOOL ov100_021D2428(void *param0) Easy3DObject_SetVisibility(&v0->unk_1A0.unk_934[1].unk_00, 0); Easy3DObject_SetVisibility(&v0->unk_1A0.unk_934[2].unk_00, 1); - Sound_PlayPokemonCry(POKECRY_FIELD_EVENT, SPECIES_GIRATINA, 0, 127, HEAP_ID_111, 0); + Sound_PlayPokemonCryEx(POKECRY_FIELD_EVENT, SPECIES_GIRATINA, 0, 127, HEAP_ID_111, 0); v0->unk_04 = 0; v0->unk_00++; @@ -597,7 +597,7 @@ BOOL ov100_021D2428(void *param0) break; case 19: if ((++v0->unk_04) == 238) { - Sound_PlayPokemonCry(POKECRY_FIELD_EVENT, SPECIES_GIRATINA, 0, 127, HEAP_ID_111, 0); + Sound_PlayPokemonCryEx(POKECRY_FIELD_EVENT, SPECIES_GIRATINA, 0, 127, HEAP_ID_111, 0); } if (v0->unk_04 == 170) { diff --git a/src/overlay100/ov100_021D2F0C.c b/src/overlay100/ov100_021D2F0C.c index 48e2dc83da..835acd2e9d 100644 --- a/src/overlay100/ov100_021D2F0C.c +++ b/src/overlay100/ov100_021D2F0C.c @@ -373,7 +373,7 @@ static void ov100_021D37F4(SysTask *param0, void *param1) break; case 1: if ((++v0->unk_04) >= NELEMS(v1)) { - Sound_PlayPokemonCry(POKECRY_NORMAL, v0->unk_08, v0->unk_0C, 80, HEAP_ID_111, 0); + Sound_PlayPokemonCryEx(POKECRY_NORMAL, v0->unk_08, v0->unk_0C, 80, HEAP_ID_111, 0); v0->unk_00++; } else { Easy3DObject_SetScale(&v0->unk_10->unk_00, FX32_CONST(v1[v0->unk_04]), FX32_CONST(1.00f), FX32_CONST(1.00f)); diff --git a/src/overlay101/ov101_021D1A28.c b/src/overlay101/ov101_021D1A28.c index 6ee2444e61..19d84616e8 100644 --- a/src/overlay101/ov101_021D1A28.c +++ b/src/overlay101/ov101_021D1A28.c @@ -1348,7 +1348,7 @@ static int ov101_021D2A78(UnkStruct_ov101_021D13C8 *param0) return 0; } - sub_02005844(SPECIES_CLEFAIRY, 0); + Sound_PlayPokemonCry(SPECIES_CLEFAIRY, 0); param0->unk_00 = 42; return 0; } @@ -3439,7 +3439,7 @@ static int ov101_021D4A30(UnkStruct_ov101_021D4764 *param0) if (param0->unk_10 >= 48) { param0->unk_10 = 0; param0->unk_04++; - sub_02005844(SPECIES_CLEFAIRY, 0); + Sound_PlayPokemonCry(SPECIES_CLEFAIRY, 0); ov101_021D679C(param0->unk_30, UnkEnum_ov101_021D679C_04); } diff --git a/src/overlay101/ov101_021D59AC.c b/src/overlay101/ov101_021D59AC.c index fef7f3ba54..2377a08574 100644 --- a/src/overlay101/ov101_021D59AC.c +++ b/src/overlay101/ov101_021D59AC.c @@ -1160,7 +1160,7 @@ static int ov101_021D6908(UnkStruct_ov101_021D66D0 *param0) param0->unk_14 = 0; param0->unk_08++; - sub_02005844(SPECIES_CLEFAIRY, 0); + Sound_PlayPokemonCry(SPECIES_CLEFAIRY, 0); } Sprite_SetAffineScale(param0->unk_24.unk_04, &v1); diff --git a/src/overlay119/ov119_021D191C.c b/src/overlay119/ov119_021D191C.c index 78fdb8c308..f4d865b6c8 100644 --- a/src/overlay119/ov119_021D191C.c +++ b/src/overlay119/ov119_021D191C.c @@ -126,7 +126,7 @@ static BOOL ov119_021D1930(UnkStruct_ov119_021D0FD0 *param0) { int species = Pokemon_GetValue(param0->unk_00->unk_0C.unk_00, MON_DATA_SPECIES, NULL); int form = Pokemon_GetValue(param0->unk_00->unk_0C.unk_00, MON_DATA_FORM, NULL); - sub_02005844(species, form); + Sound_PlayPokemonCry(species, form); param0->unk_04.unk_08 = ov119_021D1158(¶m0->unk_04.unk_14[0], 0, param0->unk_00->unk_0C.unk_00, param0->unk_04.unk_0C); } param0->unk_60++; @@ -269,7 +269,7 @@ static BOOL ov119_021D1BD0(UnkStruct_ov119_021D0FD0 *param0) { int species = Pokemon_GetValue(param0->unk_00->unk_0C.unk_00, MON_DATA_SPECIES, NULL); int form = Pokemon_GetValue(param0->unk_00->unk_0C.unk_00, MON_DATA_FORM, NULL); - sub_02005844(species, form); + Sound_PlayPokemonCry(species, form); param0->unk_04.unk_08 = ov119_021D1158(¶m0->unk_04.unk_14[0], 0, param0->unk_00->unk_0C.unk_00, param0->unk_04.unk_0C); } diff --git a/src/pokemon.c b/src/pokemon.c index a50762819a..0cb287872c 100644 --- a/src/pokemon.c +++ b/src/pokemon.c @@ -4319,7 +4319,7 @@ void Pokemon_PlayCry(ChatotCry *chatotCry, enum PokemonCryMod cryMod, u16 specie if (species == SPECIES_CHATOT) { if (Sound_CanPlayChatotCry(cryMod) == FALSE) { Sound_FlagDefaultChatotCry(TRUE); - Sound_PlayPokemonCry(cryMod, species, pan, volume, heapID, form); + Sound_PlayPokemonCryEx(cryMod, species, pan, volume, heapID, form); } else { if (forceDefaultChatot) { Sound_FlagDefaultChatotCry(TRUE); @@ -4331,7 +4331,7 @@ void Pokemon_PlayCry(ChatotCry *chatotCry, enum PokemonCryMod cryMod, u16 specie return; } - Sound_PlayPokemonCry(cryMod, species, pan, volume, heapID, form); + Sound_PlayPokemonCryEx(cryMod, species, pan, volume, heapID, form); } void Pokemon_PlayDelayedCry(ChatotCry *chatotCry, enum PokemonCryMod cryMod, u16 species, int form, int pan, int volume, int forceDefaultChatot, int heapID, u8 delay) @@ -4359,7 +4359,7 @@ BOOL Pokemon_IsEligibleForAction(Pokemon *mon) int species = Pokemon_GetValue(mon, MON_DATA_SPECIES, NULL); int form = Pokemon_GetValue(mon, MON_DATA_FORM, NULL); - return sub_02005844(species, form); + return Sound_PlayPokemonCry(species, form); } void Pokemon_SetCatchData(Pokemon *mon, TrainerInfo *trainerInfo, int monPokeball, int metLocation, int metTerrain, enum HeapId heapId) diff --git a/src/sound_system.c b/src/sound_system.c index 523b35330b..d6f5625171 100644 --- a/src/sound_system.c +++ b/src/sound_system.c @@ -70,7 +70,7 @@ void SoundSystem_Update() soundSys->unk_BCDD0[i]--; if (soundSys->unk_BCDD0[i] == 0) { - Sound_PlayPokemonCry(soundSys->unk_BCDAC[i], soundSys->unk_BCDCC[i], soundSys->unk_BCDB4[i], soundSys->unk_BCDBC[i], soundSys->unk_BCDC4[i], 0); + Sound_PlayPokemonCryEx(soundSys->unk_BCDAC[i], soundSys->unk_BCDCC[i], soundSys->unk_BCDB4[i], soundSys->unk_BCDBC[i], soundSys->unk_BCDC4[i], 0); } } } @@ -229,7 +229,7 @@ void *SoundSystem_GetParam(enum SoundSystemParam param) return &soundSys->unk_BCD8C; case 35: return &soundSys->unk_BCD94; - case 36: + case SOUND_SYSTEM_PARAM_CHATOT_CRY: return &soundSys->chatotCry; case 37: return &soundSys->unk_BCD9C[0]; diff --git a/src/unk_02005474.c b/src/unk_02005474.c index 39360062fa..4d58ba534f 100644 --- a/src/unk_02005474.c +++ b/src/unk_02005474.c @@ -345,27 +345,28 @@ void Sound_PanAllEffects(int pan) } } -BOOL sub_02005844(u16 species, u8 form) +BOOL Sound_PlayPokemonCry(u16 species, u8 form) { int v1; u8 *v2 = SoundSystem_GetParam(18); - ChatotCry **chatotCry = SoundSystem_GetParam(36); + ChatotCry **chatotCry = SoundSystem_GetParam(SOUND_SYSTEM_PARAM_CHATOT_CRY); u8 *v4 = SoundSystem_GetParam(53); + u16 waveID = species; if (sub_02006038(species, form) == 1) { - species = SPECIES_EGG; + waveID = WAVE_ARC_PV516_SKY; } - if (species != SPECIES_EGG) { - if ((species > MAX_SPECIES) || (species == SPECIES_NONE)) { - species = SPECIES_BULBASAUR; + if (waveID != WAVE_ARC_PV516_SKY) { + if (waveID > MAX_SPECIES || waveID == SPECIES_NONE) { + waveID = SPECIES_BULBASAUR; } } - if (species == SPECIES_CHATOT) { + if (waveID == SPECIES_CHATOT) { if (ProcessAudioInput(*chatotCry, 0, 127, 0) == TRUE) { Sound_FlagDefaultChatotCry(FALSE); - return 1; + return TRUE; } } @@ -374,11 +375,11 @@ BOOL sub_02005844(u16 species, u8 form) sub_0200592C(0); } - v1 = NNS_SndArcPlayerStartSeqEx(SoundSystem_GetSoundHandle(1), -1, species, -1, 2); - Sound_AdjustVolumeForVoiceChat(species, 1); + v1 = NNS_SndArcPlayerStartSeqEx(SoundSystem_GetSoundHandle(SOUND_HANDLE_TYPE_POKEMON_CRY), -1, waveID, -1, 2); + Sound_AdjustVolumeForVoiceChat(waveID, 1); } else { - v1 = NNS_SndArcPlayerStartSeqEx(SoundSystem_GetSoundHandle(8), -1, species, -1, 2); - Sound_AdjustVolumeForVoiceChat(species, 8); + v1 = NNS_SndArcPlayerStartSeqEx(SoundSystem_GetSoundHandle(8), -1, waveID, -1, 2); + Sound_AdjustVolumeForVoiceChat(waveID, 8); } Sound_FlagDefaultChatotCry(FALSE); @@ -439,7 +440,7 @@ int sub_0200598C(void) return Sound_GetNumberOfPlayingSequencesForPlayer(0); } -BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, int volume, int heapID, u8 form) +BOOL Sound_PlayPokemonCryEx(enum PokemonCryMod cryMod, u16 species, int param2, int volume, int heapID, u8 form) { int v0, v1; u16 v3; @@ -498,7 +499,7 @@ BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, in case POKECRY_FAINT: case POKECRY_PINCH_NORMAL: case POKECRY_PINCH_HALF_DURATION: - sub_02005844(SPECIES_CHATOT, form); + Sound_PlayPokemonCry(SPECIES_CHATOT, form); if (*v11 == 0) { sub_02004F94(1, 0xffff, param2); @@ -522,18 +523,18 @@ BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, in switch (cryMod) { case POKECRY_NORMAL: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); break; case POKECRY_HALF_DURATION: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02005E64(20, heapID); break; case POKECRY_FIELD_EVENT: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02004F68(1, 0xffff, 64); @@ -542,7 +543,7 @@ BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, in sub_02005E4C(species, 8, v1); break; case POKECRY_MID_MOVE: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02005E64(30, heapID); @@ -561,13 +562,13 @@ BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, in sub_02004D2C(15, (32768 + 1536)); break; case POKECRY_FAINT: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02004F68(1, 0xffff, -224); break; case POKECRY_HYPERVOICE_2: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02004F68(1, 0xffff, 44); @@ -576,14 +577,14 @@ BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, in sub_02005E4C(species, 8, v1); break; case POKECRY_HOWL_1: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02005E64(11, heapID); sub_02004F68(1, 0xffff, -128); break; case POKECRY_HOWL_2: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02005E64(60, heapID); @@ -597,34 +598,34 @@ BOOL Sound_PlayPokemonCry(enum PokemonCryMod cryMod, u16 species, int param2, in sub_02004D2C(14, (32768 - 6144)); break; case POKECRY_UPROAR_2: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02005E64(100, heapID); sub_02004F68(1, 0xffff, -44); break; case POKECRY_PINCH_NORMAL: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02004F68(1, 0xffff, -96); break; case POKECRY_PINCH_HALF_DURATION: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); sub_02004F94(1, 0xffff, param2); sub_02005E4C(species, 1, volume); sub_02005E64(20, heapID); sub_02004F68(1, 0xffff, -96); break; case POKECRY_POKEDEX_CHORUS: - sub_02005844(species, form); + Sound_PlayPokemonCry(species, form); sub_02005E4C(species, 1, 127); sub_020060EC(species, 20, form); sub_02004F94(8, 0xffff, param2); Sound_FadeVolumeForHandle(8, volume, 0); break; case POKECRY_POKEDEX: - v4 = sub_02005844(species, form); + v4 = Sound_PlayPokemonCry(species, form); break; } @@ -757,7 +758,7 @@ void Sound_PlayDelayedPokemonCry(enum PokemonCryMod cryMod, u16 species, int par } if (delay == 0) { - Sound_PlayPokemonCry(cryMod, species, param2, volume, heapID, form); + Sound_PlayPokemonCryEx(cryMod, species, param2, volume, heapID, form); return; } @@ -826,7 +827,7 @@ static BOOL sub_020060EC(u16 species, s8 pitch, u8 form) *v1 = 1; Sound_FlagDefaultChatotCry(TRUE); - v0 = sub_02005844(species, form); + v0 = Sound_PlayPokemonCry(species, form); sub_02004F68(8, 0xffff, pitch); return v0; diff --git a/src/unk_02006224.c b/src/unk_02006224.c index 96d941f003..76876f2406 100644 --- a/src/unk_02006224.c +++ b/src/unk_02006224.c @@ -176,7 +176,7 @@ BOOL Sound_PlayChatotCry(ChatotCry *param0, u32 param1, int volume, int pan) if (v0 == FALSE) { Sound_FlagDefaultChatotCry(TRUE); - v0 = Sound_PlayPokemonCry(POKECRY_NORMAL, SPECIES_CHATOT, pan, volume, HEAP_ID_FIELDMAP, 0); + v0 = Sound_PlayPokemonCryEx(POKECRY_NORMAL, SPECIES_CHATOT, pan, volume, HEAP_ID_FIELDMAP, 0); } return v0; diff --git a/src/unk_020482D4.c b/src/unk_020482D4.c index 2214449961..83b05d0de3 100644 --- a/src/unk_020482D4.c +++ b/src/unk_020482D4.c @@ -148,7 +148,7 @@ BOOL ScrCmd_PlayCry(ScriptContext *ctx) u16 species = ScriptContext_GetVar(ctx); u16 unused = ScriptContext_GetVar(ctx); - sub_02005844(species, 0); + Sound_PlayPokemonCry(species, 0); return FALSE; }