Merge remote-tracking branch 'Diego/master'
This commit is contained in:
@@ -92,8 +92,8 @@ extern struct UnknownPokemonStruct2 gUnknown_02022FF8[3]; // what is it used for
|
||||
extern struct UnknownPokemonStruct2* gUnknown_02023058; // what is it used for?
|
||||
extern u8 gUnknown_02039B28[]; // possibly a struct?
|
||||
extern struct UnknownStruct6 gUnknown_02038C28; // todo: identify & document
|
||||
extern struct MusicPlayerInfo gMPlay_SE1;
|
||||
extern struct MusicPlayerInfo gMPlay_SE2;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE1;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE2;
|
||||
extern u8 gDecompressionBuffer[];
|
||||
extern u16 gUnknown_020243FC;
|
||||
extern u8 gHealthBoxesIds[BATTLE_BANKS_COUNT];
|
||||
@@ -1610,8 +1610,8 @@ void CB2_QuitRecordedBattle(void)
|
||||
UpdatePaletteFade();
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
m4aMPlayStop(&gMPlay_SE1);
|
||||
m4aMPlayStop(&gMPlay_SE2);
|
||||
m4aMPlayStop(&gMPlayInfo_SE1);
|
||||
m4aMPlayStop(&gMPlayInfo_SE2);
|
||||
FreeRestoreBattleData();
|
||||
FreeAllWindowBuffers();
|
||||
SetMainCallback2(gMain.savedCallback);
|
||||
|
||||
@@ -37,9 +37,9 @@ extern u16 gBattle_BG2_X;
|
||||
extern u16 gBattle_BG2_Y;
|
||||
extern u16 gBattlePartyID[BATTLE_BANKS_COUNT];
|
||||
extern u8 gBankSpriteIds[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlay_SE1;
|
||||
extern struct MusicPlayerInfo gMPlay_SE2;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE1;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE2;
|
||||
extern u8 gDecompressionBuffer[];
|
||||
|
||||
extern const u16 gUnknown_082C8D64[];
|
||||
@@ -272,7 +272,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
|
||||
{
|
||||
if (tableId == gUnknown_082C8D64[i])
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 128);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 128);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -514,8 +514,8 @@ static void ScriptCmd_end(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayStop(&gMPlay_SE1);
|
||||
m4aMPlayStop(&gMPlay_SE2);
|
||||
m4aMPlayStop(&gMPlayInfo_SE1);
|
||||
m4aMPlayStop(&gMPlayInfo_SE2);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -534,7 +534,7 @@ static void ScriptCmd_end(void)
|
||||
|
||||
if (!continuousAnim) // may have been used for debug?
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 256);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256);
|
||||
if (!IsContest())
|
||||
{
|
||||
sub_80A8278();
|
||||
@@ -1650,8 +1650,8 @@ static void ScriptCmd_waitsound(void)
|
||||
{
|
||||
if (++sSoundAnimFramesToWait > 90)
|
||||
{
|
||||
m4aMPlayStop(&gMPlay_SE1);
|
||||
m4aMPlayStop(&gMPlay_SE2);
|
||||
m4aMPlayStop(&gMPlayInfo_SE1);
|
||||
m4aMPlayStop(&gMPlayInfo_SE2);
|
||||
sSoundAnimFramesToWait = 0;
|
||||
}
|
||||
else
|
||||
@@ -1833,7 +1833,7 @@ static void ScriptCmd_doublebattle_2E(void)
|
||||
|
||||
static void ScriptCmd_stopsound(void)
|
||||
{
|
||||
m4aMPlayStop(&gMPlay_SE1);
|
||||
m4aMPlayStop(&gMPlay_SE2);
|
||||
m4aMPlayStop(&gMPlayInfo_SE1);
|
||||
m4aMPlayStop(&gMPlayInfo_SE2);
|
||||
sBattleAnimScriptPtr++;
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ extern u8 gBankTarget;
|
||||
extern u8 gAbsentBankFlags;
|
||||
extern u8 gUnknown_020244B4[];
|
||||
extern u32 gTransformedPersonalities[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern struct UnusedControllerStruct gUnknown_02022D0C;
|
||||
extern u16 gTrainerBattleOpponent_A;
|
||||
extern u16 gTrainerBattleOpponent_B;
|
||||
@@ -353,11 +353,11 @@ static void sub_8064734(void)
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
{
|
||||
if (GetBankIdentity(gActiveBank) == IDENTITY_OPPONENT_MON1)
|
||||
m4aMPlayContinue(&gMPlay_BGM);
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -499,7 +499,7 @@ static void sub_8064DD0(void)
|
||||
if (gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy
|
||||
|| gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy_2)
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
LinkOpponentBufferExecCompleted();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ extern u8 gBankSpriteIds[BATTLE_BANKS_COUNT];
|
||||
extern u8 gBattleBufferA[BATTLE_BANKS_COUNT][0x200];
|
||||
extern u8 gBattleBufferB[BATTLE_BANKS_COUNT][0x200];
|
||||
extern u8 gHealthBoxesIds[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern u8 gUnknown_03005D7C[BATTLE_BANKS_COUNT];
|
||||
extern void (*gBattleBankFunc[BATTLE_BANKS_COUNT])(void);
|
||||
extern void *gUnknown_020244D8;
|
||||
@@ -350,10 +350,10 @@ static void sub_805F560(void)
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
{
|
||||
if (GetBankIdentity(gActiveBank) == 1)
|
||||
m4aMPlayContinue(&gMPlay_BGM);
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
}
|
||||
else
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
}
|
||||
gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x20 = 1;
|
||||
sp = TRUE;
|
||||
@@ -485,7 +485,7 @@ static void sub_805FC80(void)
|
||||
{
|
||||
if (gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy || gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy_2)
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
OpponentBufferExecCompleted();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ extern u8 gBattleBufferA[BATTLE_BANKS_COUNT][0x200];
|
||||
extern u8 gBattleBufferB[BATTLE_BANKS_COUNT][0x200];
|
||||
extern u8 gMultiUsePlayerCursor;
|
||||
extern struct BattlePokemon gBattleMons[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern u16 gPartnerTrainerId;
|
||||
extern struct SpriteTemplate gUnknown_0202499C;
|
||||
extern u8 gBattleMonForms[BATTLE_BANKS_COUNT];
|
||||
@@ -1054,9 +1054,9 @@ static void sub_8058B40(void)
|
||||
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x20)
|
||||
{
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
m4aMPlayContinue(&gMPlay_BGM);
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
else
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
}
|
||||
gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x20 = 1;
|
||||
r9 = TRUE;
|
||||
@@ -1119,7 +1119,7 @@ static void sub_8058FC0(void)
|
||||
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].specialAnimActive
|
||||
&& !IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
HandleLowHpMusicChange(&gPlayerParty[gBattlePartyID[gActiveBank]], gActiveBank);
|
||||
PlayerBufferExecCompleted();
|
||||
}
|
||||
@@ -1148,7 +1148,7 @@ void c3_0802FDF4(u8 taskId)
|
||||
{
|
||||
if (!IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ extern u8 gBankTarget;
|
||||
extern u8 gAbsentBankFlags;
|
||||
extern u8 gUnknown_020244B4[];
|
||||
extern u32 gTransformedPersonalities[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern struct UnusedControllerStruct gUnknown_02022D0C;
|
||||
extern u16 gTrainerBattleOpponent_A;
|
||||
extern u16 gTrainerBattleOpponent_B;
|
||||
@@ -331,11 +331,11 @@ static void sub_818686C(void)
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
{
|
||||
if (GetBankIdentity(gActiveBank) == IDENTITY_OPPONENT_MON1)
|
||||
m4aMPlayContinue(&gMPlay_BGM);
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
}
|
||||
}
|
||||
gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x20 = 1;
|
||||
@@ -484,7 +484,7 @@ static void sub_8186F14(void)
|
||||
if (gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy
|
||||
|| gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy_2)
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
RecordedOpponentBufferExecCompleted();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ extern u8 gUnknown_020244B4[];
|
||||
extern u32 gTransformedPersonalities[BATTLE_BANKS_COUNT];
|
||||
extern u8 gBattleCommunication[];
|
||||
extern u8 gUnknown_0203C7B4;
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern struct UnusedControllerStruct gUnknown_02022D0C;
|
||||
|
||||
extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[];
|
||||
@@ -354,11 +354,11 @@ static void sub_8189D40(void)
|
||||
if ((gBattleTypeFlags & BATTLE_TYPE_LINK) && (gBattleTypeFlags & BATTLE_TYPE_MULTI))
|
||||
{
|
||||
if (GetBankIdentity(gActiveBank) == IDENTITY_PLAYER_MON1)
|
||||
m4aMPlayContinue(&gMPlay_BGM);
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ extern u8 gBattleBufferA[BATTLE_BANKS_COUNT][0x200];
|
||||
extern u8 gBattleBufferB[BATTLE_BANKS_COUNT][0x200];
|
||||
extern u8 gMultiUsePlayerCursor;
|
||||
extern struct BattlePokemon gBattleMons[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern u16 gPartnerTrainerId;
|
||||
extern struct SpriteTemplate gUnknown_0202499C;
|
||||
extern u8 gBattleMonForms[BATTLE_BANKS_COUNT];
|
||||
|
||||
@@ -34,9 +34,9 @@ extern u8 gBankSpriteIds[BATTLE_BANKS_COUNT];
|
||||
extern u8 gHealthBoxesIds[BATTLE_BANKS_COUNT];
|
||||
extern u8 gBattleMonForms[BATTLE_BANKS_COUNT];
|
||||
extern u32 gTransformedPersonalities[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_SE1;
|
||||
extern struct MusicPlayerInfo gMPlay_SE2;
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE1;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE2;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
|
||||
extern const struct BattleMove gBattleMoves[];
|
||||
extern const u8 gUnknown_0831C604[];
|
||||
@@ -527,8 +527,8 @@ bool8 mplay_80342A4(u8 bank)
|
||||
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_8 < 30)
|
||||
return TRUE;
|
||||
|
||||
m4aMPlayStop(&gMPlay_SE1);
|
||||
m4aMPlayStop(&gMPlay_SE2);
|
||||
m4aMPlayStop(&gMPlayInfo_SE1);
|
||||
m4aMPlayStop(&gMPlayInfo_SE2);
|
||||
}
|
||||
if (zero == 0)
|
||||
{
|
||||
|
||||
@@ -112,7 +112,7 @@ extern u16 gBattle_BG1_Y;
|
||||
extern u16 gBattle_BG2_X;
|
||||
extern u16 gBattle_BG2_Y;
|
||||
extern u16 gBattle_BG3_X;
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
|
||||
struct TrainerMoney
|
||||
{
|
||||
@@ -7103,10 +7103,10 @@ static void atk76_various(void)
|
||||
}
|
||||
break;
|
||||
case 21:
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x55);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x55);
|
||||
break;
|
||||
case 22:
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
break;
|
||||
case 23:
|
||||
gBattleStruct->field_2A2 |= gBitTable[gActiveBank];
|
||||
|
||||
@@ -127,8 +127,8 @@ struct BerryBlenderData
|
||||
struct BlenderGameBlock gameBlock;
|
||||
};
|
||||
|
||||
extern struct MusicPlayerInfo gMPlay_SE2;
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE2;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern u16 gSpecialVar_ItemId;
|
||||
extern u8 gInGameOpponentsNo;
|
||||
extern u8 gUnknown_020322D5;
|
||||
@@ -801,7 +801,7 @@ static const struct WindowTemplate sBlenderRecordWindowTemplate = {0, 6, 4, 0x12
|
||||
|
||||
static void Blender_ControlHitPitch(void)
|
||||
{
|
||||
m4aMPlayPitchControl(&gMPlay_SE2, 0xFFFF, 2 * (sBerryBlenderData->field_4C - 128));
|
||||
m4aMPlayPitchControl(&gMPlayInfo_SE2, 0xFFFF, 2 * (sBerryBlenderData->field_4C - 128));
|
||||
}
|
||||
|
||||
static void VBlankCB0_BerryBlender(void)
|
||||
@@ -1938,9 +1938,9 @@ static void sub_80814F4(void)
|
||||
if (gRecvCmds[i][2] == 0x2345 || gRecvCmds[2][i] == 0x4523 || gRecvCmds[2][i] == 0x5432) // could be a bug, 2 and i are reversed
|
||||
{
|
||||
if (sBerryBlenderData->field_4C > 1500)
|
||||
m4aMPlayTempoControl(&gMPlay_BGM, ((sBerryBlenderData->field_4C - 750) / 20) + 256);
|
||||
m4aMPlayTempoControl(&gMPlayInfo_BGM, ((sBerryBlenderData->field_4C - 750) / 20) + 256);
|
||||
else
|
||||
m4aMPlayTempoControl(&gMPlay_BGM, 0x100);
|
||||
m4aMPlayTempoControl(&gMPlayInfo_BGM, 0x100);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2335,7 +2335,7 @@ static void CB2_HandleBlenderEndGame(void)
|
||||
switch (sBerryBlenderData->gameEndState)
|
||||
{
|
||||
case 1:
|
||||
m4aMPlayTempoControl(&gMPlay_BGM, 256);
|
||||
m4aMPlayTempoControl(&gMPlayInfo_BGM, 256);
|
||||
for (i = 0; i < gSpecialVar_0x8004; i++)
|
||||
{
|
||||
DestroyTask(sBerryBlenderData->field_120[i]);
|
||||
@@ -2355,7 +2355,7 @@ static void CB2_HandleBlenderEndGame(void)
|
||||
sBerryBlenderData->gameEndState = 5;
|
||||
|
||||
sBerryBlenderData->mainState = 0;
|
||||
m4aMPlayStop(&gMPlay_SE2);
|
||||
m4aMPlayStop(&gMPlayInfo_SE2);
|
||||
}
|
||||
Blender_ControlHitPitch();
|
||||
break;
|
||||
|
||||
@@ -54,7 +54,7 @@ static EWRAM_DATA struct HofGfx *sHofGfxPtr = NULL;
|
||||
extern bool8 gHasHallOfFameRecords;
|
||||
extern u32 gUnknown_0203BCD4;
|
||||
extern u8 gDecompressionBuffer[];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern MainCallback gGameContinueCallback;
|
||||
extern u32 gDamagedSaveSectors;
|
||||
extern u8 gReservedSpritePaletteCount;
|
||||
@@ -1040,7 +1040,7 @@ static void Task_HofPC_HandleInput(u8 taskId)
|
||||
if (IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
StopCryAndClearCrySongs();
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
}
|
||||
gTasks[taskId].func = Task_HofPC_HandlePaletteOnExit;
|
||||
}
|
||||
@@ -1050,7 +1050,7 @@ static void Task_HofPC_HandleInput(u8 taskId)
|
||||
if (IsCryPlayingOrClearCrySongs())
|
||||
{
|
||||
StopCryAndClearCrySongs();
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
}
|
||||
gTasks[taskId].func = Task_HofPC_HandlePaletteOnExit;
|
||||
}
|
||||
|
||||
@@ -11,10 +11,10 @@ void *gMPlayJumpTable[36];
|
||||
struct CgbChannel gCgbChans[4];
|
||||
struct MusicPlayerTrack gPokemonCryTracks[MAX_POKEMON_CRIES * 2];
|
||||
struct PokemonCrySong gPokemonCrySong;
|
||||
struct MusicPlayerInfo gMPlay_BGM;
|
||||
struct MusicPlayerInfo gMPlay_SE1;
|
||||
struct MusicPlayerInfo gMPlay_SE2;
|
||||
struct MusicPlayerInfo gMPlay_SE3;
|
||||
struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
struct MusicPlayerInfo gMPlayInfo_SE1;
|
||||
struct MusicPlayerInfo gMPlayInfo_SE2;
|
||||
struct MusicPlayerInfo gMPlayInfo_SE3;
|
||||
u8 gMPlayMemAccArea[0x10];
|
||||
|
||||
u32 MidiKeyToFreq(struct WaveData *wav, u8 key, u8 fineAdjust)
|
||||
|
||||
@@ -21,7 +21,7 @@ extern u8 gBankTarget;
|
||||
extern u16 gBattlePartyID[];
|
||||
extern u8 gBankSpriteIds[];
|
||||
extern u8 gHealthBoxesIds[];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
|
||||
// this file's functions
|
||||
static void Task_DoPokeballSendOutAnim(u8 taskId);
|
||||
@@ -773,11 +773,11 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite)
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK)
|
||||
{
|
||||
if (IsBGMPlaying())
|
||||
m4aMPlayStop(&gMPlay_BGM);
|
||||
m4aMPlayStop(&gMPlayInfo_BGM);
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 128);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 128);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ struct PokeblockFeedStruct
|
||||
};
|
||||
|
||||
extern u16 gSpecialVar_ItemId;
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern struct SpriteTemplate gUnknown_0202499C;
|
||||
|
||||
extern const u8 gBattleTerrainPalette_Frontier[];
|
||||
@@ -802,7 +802,7 @@ static void Task_ReturnAfterPaletteFade(u8 taskId)
|
||||
{
|
||||
ResetSpriteData();
|
||||
FreeAllSpritePalettes();
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, -1, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, -1, 0x100);
|
||||
SetMainCallback2(gMain.savedCallback);
|
||||
DestroyTask(taskId);
|
||||
FreeAllWindowBuffers();
|
||||
|
||||
@@ -41,7 +41,7 @@ struct ContestEffect
|
||||
extern struct UnkSummaryStruct* gUnknown_0203CF1C;
|
||||
extern struct BgTemplate gUnknown_0861CBB4;
|
||||
extern u8 gUnknown_0203CF20;
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern s8 gUnknown_0861CC1C[];
|
||||
extern u8 gUnknown_08329D22[];
|
||||
extern u8 gUnknown_0203CF21;
|
||||
@@ -793,7 +793,7 @@ void sub_81C0484(u8 taskId)
|
||||
ResetSpriteData();
|
||||
FreeAllSpritePalettes();
|
||||
StopCryAndClearCrySongs();
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0x100);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0x100);
|
||||
if (gMonSpritesGfxPtr == 0)
|
||||
sub_806F47C(0);
|
||||
sub_81C0434();
|
||||
|
||||
76
src/sound.c
76
src/sound.c
@@ -29,10 +29,10 @@ IWRAM_DATA static u16 sFanfareCounter;
|
||||
bool8 gDisableMusic;
|
||||
|
||||
extern u32 gBattleTypeFlags;
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlay_SE1;
|
||||
extern struct MusicPlayerInfo gMPlay_SE2;
|
||||
extern struct MusicPlayerInfo gMPlay_SE3;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_BGM;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE1;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE2;
|
||||
extern struct MusicPlayerInfo gMPlayInfo_SE3;
|
||||
extern struct ToneData gCryTable[];
|
||||
extern struct ToneData gCryTable2[];
|
||||
extern const struct Fanfare sFanfares[];
|
||||
@@ -171,7 +171,7 @@ bool8 IsNotWaitingForBGMStop(void)
|
||||
void PlayFanfareByFanfareNum(u8 fanfareNum)
|
||||
{
|
||||
u16 songNum;
|
||||
m4aMPlayStop(&gMPlay_BGM);
|
||||
m4aMPlayStop(&gMPlayInfo_BGM);
|
||||
songNum = sFanfares[fanfareNum].songNum;
|
||||
sFanfareCounter = sFanfares[fanfareNum].duration;
|
||||
m4aSongNumStart(songNum);
|
||||
@@ -187,7 +187,7 @@ bool8 WaitFanfare(bool8 stop)
|
||||
else
|
||||
{
|
||||
if (!stop)
|
||||
m4aMPlayContinue(&gMPlay_BGM);
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
else
|
||||
m4aSongNumStart(MUS_DUMMY);
|
||||
|
||||
@@ -232,7 +232,7 @@ static void Task_Fanfare(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayContinue(&gMPlay_BGM);
|
||||
m4aMPlayContinue(&gMPlayInfo_BGM);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
@@ -250,46 +250,46 @@ void FadeInNewBGM(u16 songNum, u8 speed)
|
||||
if (songNum == 0xFFFF)
|
||||
songNum = 0;
|
||||
m4aSongNumStart(songNum);
|
||||
m4aMPlayImmInit(&gMPlay_BGM);
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 0);
|
||||
m4aMPlayImmInit(&gMPlayInfo_BGM);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 0);
|
||||
m4aSongNumStop(songNum);
|
||||
m4aMPlayFadeIn(&gMPlay_BGM, speed);
|
||||
m4aMPlayFadeIn(&gMPlayInfo_BGM, speed);
|
||||
}
|
||||
|
||||
void FadeOutBGMTemporarily(u8 speed)
|
||||
{
|
||||
m4aMPlayFadeOutTemporarily(&gMPlay_BGM, speed);
|
||||
m4aMPlayFadeOutTemporarily(&gMPlayInfo_BGM, speed);
|
||||
}
|
||||
|
||||
bool8 IsBGMPausedOrStopped(void)
|
||||
{
|
||||
if (gMPlay_BGM.status & MUSICPLAYER_STATUS_PAUSE)
|
||||
if (gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_PAUSE)
|
||||
return TRUE;
|
||||
if (!(gMPlay_BGM.status & MUSICPLAYER_STATUS_TRACK))
|
||||
if (!(gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_TRACK))
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void FadeInBGM(u8 speed)
|
||||
{
|
||||
m4aMPlayFadeIn(&gMPlay_BGM, speed);
|
||||
m4aMPlayFadeIn(&gMPlayInfo_BGM, speed);
|
||||
}
|
||||
|
||||
void FadeOutBGM(u8 speed)
|
||||
{
|
||||
m4aMPlayFadeOut(&gMPlay_BGM, speed);
|
||||
m4aMPlayFadeOut(&gMPlayInfo_BGM, speed);
|
||||
}
|
||||
|
||||
bool8 IsBGMStopped(void)
|
||||
{
|
||||
if (!(gMPlay_BGM.status & MUSICPLAYER_STATUS_TRACK))
|
||||
if (!(gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_TRACK))
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void PlayCry1(u16 species, s8 pan)
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 85);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85);
|
||||
PlayCryInternal(species, pan, CRY_VOLUME, 10, 0);
|
||||
gPokemonCryBGMDuckingCounter = 2;
|
||||
RestoreBGMVolumeAfterPokemonCry();
|
||||
@@ -308,7 +308,7 @@ void PlayCry3(u16 species, s8 pan, u8 mode)
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 85);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85);
|
||||
PlayCryInternal(species, pan, CRY_VOLUME, 10, mode);
|
||||
gPokemonCryBGMDuckingCounter = 2;
|
||||
RestoreBGMVolumeAfterPokemonCry();
|
||||
@@ -324,7 +324,7 @@ void PlayCry4(u16 species, s8 pan, u8 mode)
|
||||
else
|
||||
{
|
||||
if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI))
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 85);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85);
|
||||
PlayCryInternal(species, pan, CRY_VOLUME, 10, mode);
|
||||
}
|
||||
}
|
||||
@@ -337,7 +337,7 @@ void PlayCry6(u16 species, s8 pan, u8 mode) // not present in R/S
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 85);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85);
|
||||
PlayCryInternal(species, pan, CRY_VOLUME, 10, mode);
|
||||
gPokemonCryBGMDuckingCounter = 2;
|
||||
}
|
||||
@@ -345,7 +345,7 @@ void PlayCry6(u16 species, s8 pan, u8 mode) // not present in R/S
|
||||
|
||||
void PlayCry5(u16 species, u8 mode)
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 85);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 85);
|
||||
PlayCryInternal(species, 0, CRY_VOLUME, 10, mode);
|
||||
gPokemonCryBGMDuckingCounter = 2;
|
||||
RestoreBGMVolumeAfterPokemonCry();
|
||||
@@ -529,7 +529,7 @@ static void Task_DuckBGMForPokemonCry(u8 taskId)
|
||||
|
||||
if (!IsPokemonCryPlaying(gMPlay_PokemonCry))
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 256);
|
||||
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
}
|
||||
@@ -557,55 +557,55 @@ void PlaySE(u16 songNum)
|
||||
void PlaySE12WithPanning(u16 songNum, s8 pan)
|
||||
{
|
||||
m4aSongNumStart(songNum);
|
||||
m4aMPlayImmInit(&gMPlay_SE1);
|
||||
m4aMPlayImmInit(&gMPlay_SE2);
|
||||
m4aMPlayPanpotControl(&gMPlay_SE1, 0xFFFF, pan);
|
||||
m4aMPlayPanpotControl(&gMPlay_SE2, 0xFFFF, pan);
|
||||
m4aMPlayImmInit(&gMPlayInfo_SE1);
|
||||
m4aMPlayImmInit(&gMPlayInfo_SE2);
|
||||
m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan);
|
||||
m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan);
|
||||
}
|
||||
|
||||
void PlaySE1WithPanning(u16 songNum, s8 pan)
|
||||
{
|
||||
m4aSongNumStart(songNum);
|
||||
m4aMPlayImmInit(&gMPlay_SE1);
|
||||
m4aMPlayPanpotControl(&gMPlay_SE1, 0xFFFF, pan);
|
||||
m4aMPlayImmInit(&gMPlayInfo_SE1);
|
||||
m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan);
|
||||
}
|
||||
|
||||
void PlaySE2WithPanning(u16 songNum, s8 pan)
|
||||
{
|
||||
m4aSongNumStart(songNum);
|
||||
m4aMPlayImmInit(&gMPlay_SE2);
|
||||
m4aMPlayPanpotControl(&gMPlay_SE2, 0xFFFF, pan);
|
||||
m4aMPlayImmInit(&gMPlayInfo_SE2);
|
||||
m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan);
|
||||
}
|
||||
|
||||
void SE12PanpotControl(s8 pan)
|
||||
{
|
||||
m4aMPlayPanpotControl(&gMPlay_SE1, 0xFFFF, pan);
|
||||
m4aMPlayPanpotControl(&gMPlay_SE2, 0xFFFF, pan);
|
||||
m4aMPlayPanpotControl(&gMPlayInfo_SE1, 0xFFFF, pan);
|
||||
m4aMPlayPanpotControl(&gMPlayInfo_SE2, 0xFFFF, pan);
|
||||
}
|
||||
|
||||
bool8 IsSEPlaying(void)
|
||||
{
|
||||
if ((gMPlay_SE1.status & MUSICPLAYER_STATUS_PAUSE) && (gMPlay_SE2.status & MUSICPLAYER_STATUS_PAUSE))
|
||||
if ((gMPlayInfo_SE1.status & MUSICPLAYER_STATUS_PAUSE) && (gMPlayInfo_SE2.status & MUSICPLAYER_STATUS_PAUSE))
|
||||
return FALSE;
|
||||
if (!(gMPlay_SE1.status & MUSICPLAYER_STATUS_TRACK) && !(gMPlay_SE2.status & MUSICPLAYER_STATUS_TRACK))
|
||||
if (!(gMPlayInfo_SE1.status & MUSICPLAYER_STATUS_TRACK) && !(gMPlayInfo_SE2.status & MUSICPLAYER_STATUS_TRACK))
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 IsBGMPlaying(void)
|
||||
{
|
||||
if (gMPlay_BGM.status & MUSICPLAYER_STATUS_PAUSE)
|
||||
if (gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_PAUSE)
|
||||
return FALSE;
|
||||
if (!(gMPlay_BGM.status & MUSICPLAYER_STATUS_TRACK))
|
||||
if (!(gMPlayInfo_BGM.status & MUSICPLAYER_STATUS_TRACK))
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 IsSpecialSEPlaying(void)
|
||||
{
|
||||
if (gMPlay_SE3.status & MUSICPLAYER_STATUS_PAUSE)
|
||||
if (gMPlayInfo_SE3.status & MUSICPLAYER_STATUS_PAUSE)
|
||||
return FALSE;
|
||||
if (!(gMPlay_SE3.status & MUSICPLAYER_STATUS_TRACK))
|
||||
if (!(gMPlayInfo_SE3.status & MUSICPLAYER_STATUS_TRACK))
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -2418,12 +2418,12 @@ _08005ABA:\n\
|
||||
strb r0, [r6, #0x9]\n\
|
||||
b _08005A0A\n\
|
||||
_08005ABE:\n\
|
||||
ldr r0, =gMPlay_BGM\n\
|
||||
ldr r0, =gMPlayInfo_BGM\n\
|
||||
bl m4aMPlayStop\n\
|
||||
b _08005A0A\n\
|
||||
.pool\n\
|
||||
_08005ACC:\n\
|
||||
ldr r0, =gMPlay_BGM\n\
|
||||
ldr r0, =gMPlayInfo_BGM\n\
|
||||
bl m4aMPlayContinue\n\
|
||||
b _08005A0A\n\
|
||||
.pool\n\
|
||||
|
||||
Reference in New Issue
Block a user