More sync with battle controllers

This commit is contained in:
Eduardo Quezada
2022-08-20 16:13:03 -04:00
parent 2f03c4a62c
commit 616ab63d94
16 changed files with 339 additions and 274 deletions
+10 -10
View File
@@ -863,7 +863,7 @@ static void FreeTrainerSpriteAfterSlide(void)
static void Intro_DelayAndEnd(void)
{
if (--gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay == 0xFF)
if (--gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay == (u8)-1)
{
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].introEndDelay = 0;
PlayerBufferExecCompleted();
@@ -891,9 +891,9 @@ static void Intro_WaitForShinyAnimAndHealthbox(void)
&& gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim)
{
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = 0;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim = FALSE;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = 0;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = FALSE;
FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS);
FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS);
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
@@ -942,7 +942,7 @@ static void SwitchIn_CleanShinyAnimShowSubstitute(void)
&& gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim)
{
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = 0;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim = FALSE;
FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS);
FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS);
if (gBattleSpritesDataPtr->battlerData[gActiveBattler].behindSubstitute)
@@ -1505,7 +1505,7 @@ static void PlayerHandleGetMonData(void)
monToCheck >>= 1;
}
}
BtlController_EmitDataTransfer(1, size, monData);
BtlController_EmitDataTransfer(BUFFER_B, size, monData);
PlayerBufferExecCompleted();
}
@@ -1824,7 +1824,7 @@ void PlayerHandleGetRawMonData(void)
for (i = 0; i < gBattleBufferA[gActiveBattler][2]; ++i)
dst[i] = src[i];
BtlController_EmitDataTransfer(1, gBattleBufferA[gActiveBattler][2], dst);
BtlController_EmitDataTransfer(BUFFER_B, gBattleBufferA[gActiveBattler][2], dst);
PlayerBufferExecCompleted();
}
@@ -2176,13 +2176,13 @@ static void PlayerHandleDrawTrainerPic(void)
if ((gLinkPlayers[GetMultiplayerId()].version & 0xFF) == VERSION_RUBY
|| (gLinkPlayers[GetMultiplayerId()].version & 0xFF) == VERSION_SAPPHIRE
|| (gLinkPlayers[GetMultiplayerId()].version & 0xFF) == VERSION_EMERALD)
trainerPicId = gLinkPlayers[GetMultiplayerId()].gender + BACK_PIC_RS_BRENDAN;
trainerPicId = gLinkPlayers[GetMultiplayerId()].gender + TRAINER_BACK_PIC_RUBY_SAPPHIRE_BRENDAN;
else
trainerPicId = gLinkPlayers[GetMultiplayerId()].gender + BACK_PIC_RED;
trainerPicId = gLinkPlayers[GetMultiplayerId()].gender;
}
else
{
trainerPicId = gSaveBlock2Ptr->playerGender + BACK_PIC_RED;
trainerPicId = gSaveBlock2Ptr->playerGender;
}
DecompressTrainerBackPalette(trainerPicId, gActiveBattler);
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
@@ -2774,7 +2774,7 @@ static void PlayerHandleDrawPartyStatusSummary(void)
}
else
{
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown = 1;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown = TRUE;
gBattlerStatusSummaryTaskId[gActiveBattler] = CreatePartyStatusSummarySprites(gActiveBattler, (struct HpAndStatus *)&gBattleBufferA[gActiveBattler][4], gBattleBufferA[gActiveBattler][1], gBattleBufferA[gActiveBattler][2]);
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusDelayTimer = 0;
if (gBattleBufferA[gActiveBattler][2] != 0)