No Description

battle_music_lookup.c 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. #include <songlist.h>
  2. #include <game_engine.h>
  3. #include <bpre.h>
  4. #include <battle_structs.h>
  5. #include <battle_common.h>
  6. #include <pokemon.h>
  7. u16 mhk_intro_music_id_to_song(u8 introid) {
  8. u16 res = 0;
  9. switch (introid) {
  10. case 0:
  11. case 4:
  12. case 5:
  13. case 8:
  14. case 10:
  15. case 11:
  16. case 12:
  17. case 13:
  18. res = SEQ_FRLG_E_3;
  19. break;
  20. case 1:
  21. case 2:
  22. case 9:
  23. res = SEQ_FRLG_E_2;
  24. break;
  25. default:
  26. res = SEQ_FRLG_E_3;
  27. break;
  28. }
  29. return res;
  30. }
  31. // replaces sub_08043FD4
  32. u16 mhk_song_id_for_battle(void) {
  33. u16 res = 0;
  34. if (battle_type_flags._battle_unk_3) {
  35. res = SEQ_BGM_VS_POKE;
  36. } else if (battle_type_flags._battle_unk_5 || battle_type_flags.battle_link) {
  37. res = SEQ_BGM_VS_RSE;
  38. } else if (battle_type_flags.battle_trainer) {
  39. switch (trainer_data[trainerbattle_flag_id].trainer_class) {
  40. case 90:
  41. res = SEQ_BGM_VS_CHAMP;
  42. break;
  43. case 84:
  44. case 87:
  45. res = SEQ_BGM_VS_LEADER;
  46. break;
  47. default:
  48. res = SEQ_BGM_VS_TRAINER;
  49. break;
  50. }
  51. } else {
  52. res = SEQ_BGM_VS_POKE;
  53. }
  54. return res;
  55. }
  56. void mhk_trainer_battle_play_defeat(void) {
  57. u16 song = 0;
  58. switch (trainer_data[trainerbattle_flag_id].trainer_class) {
  59. case 84:
  60. case 90:
  61. song = SEQ_BGM_VIC_LEADER;
  62. break;
  63. default:
  64. song = SEQ_BGM_VIC_TRAINER;
  65. break;
  66. }
  67. song_play_for_text(song);
  68. }
  69. void mhk_wild_poke_def_music(void) {
  70. song_play_for_text(SEQ_BGM_VIC_POKE);
  71. }
  72. u16 mhk_species_to_song(u16 species) {
  73. u16 res = 0;
  74. switch (species) {
  75. case POKE_MEWTWO:
  76. res = SEQ_BGM_VS_MEWTWO;
  77. break;
  78. case POKE_ARTICUNO:
  79. case POKE_ZAPDOS:
  80. case POKE_MOLTRES:
  81. case POKE_LUGIA:
  82. case POKE_HOOH:
  83. res = SEQ_BGM_VS_LEG1;
  84. break;
  85. case POKE_DEOXYS:
  86. res = SEQ_BGM_VS_DEOXYS;
  87. break;
  88. default:
  89. res = SEQ_BGM_VS_RSE;
  90. break;
  91. }
  92. return res;
  93. }