summaryrefslogtreecommitdiff
path: root/src/battle_controller_wally.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/battle_controller_wally.c')
-rw-r--r--src/battle_controller_wally.c244
1 files changed, 124 insertions, 120 deletions
diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c
index aa50bc159..b35ffa692 100644
--- a/src/battle_controller_wally.c
+++ b/src/battle_controller_wally.c
@@ -52,7 +52,7 @@ static void WallyHandleMoveAnimation(void);
static void WallyHandlePrintString(void);
static void WallyHandlePrintSelectionString(void);
static void WallyHandleChooseAction(void);
-static void WallyHandleUnknownYesNoBox(void);
+static void WallyHandleYesNoBox(void);
static void WallyHandleChooseMove(void);
static void WallyHandleChooseItem(void);
static void WallyHandleChoosePokemon(void);
@@ -70,12 +70,12 @@ static void WallyHandleTwoReturnValues(void);
static void WallyHandleChosenMonReturnValue(void);
static void WallyHandleOneReturnValue(void);
static void WallyHandleOneReturnValue_Duplicate(void);
-static void WallyHandleCmd37(void);
-static void WallyHandleCmd38(void);
-static void WallyHandleCmd39(void);
-static void WallyHandleCmd40(void);
+static void WallyHandleClearUnkVar(void);
+static void WallyHandleSetUnkVar(void);
+static void WallyHandleClearUnkFlag(void);
+static void WallyHandleToggleUnkFlag(void);
static void WallyHandleHitAnimation(void);
-static void WallyHandleCmd42(void);
+static void WallyHandleCantSwitch(void);
static void WallyHandlePlaySE(void);
static void WallyHandlePlayFanfareOrBGM(void);
static void WallyHandleFaintingCry(void);
@@ -88,77 +88,77 @@ static void WallyHandleSpriteInvisibility(void);
static void WallyHandleBattleAnimation(void);
static void WallyHandleLinkStandbyMsg(void);
static void WallyHandleResetActionMoveSelection(void);
-static void WallyHandleCmd55(void);
+static void WallyHandleEndLinkBattle(void);
static void WallyCmdEnd(void);
static void WallyBufferRunCommand(void);
static void WallyBufferExecCompleted(void);
static void CompleteOnChosenItem(void);
-static void sub_8168818(void);
+static void Intro_WaitForShinyAnimAndHealthbox(void);
static u32 CopyWallyMonData(u8 monId, u8 *dst);
static void SetWallyMonData(u8 monId);
static void WallyDoMoveAnimation(void);
-static void sub_816AC04(u8 taskId);
+static void Task_StartSendOutAnim(u8 taskId);
static void (*const sWallyBufferCommands[CONTROLLER_CMDS_COUNT])(void) =
{
- WallyHandleGetMonData,
- WallyHandleGetRawMonData,
- WallyHandleSetMonData,
- WallyHandleSetRawMonData,
- WallyHandleLoadMonSprite,
- WallyHandleSwitchInAnim,
- WallyHandleReturnMonToBall,
- WallyHandleDrawTrainerPic,
- WallyHandleTrainerSlide,
- WallyHandleTrainerSlideBack,
- WallyHandleFaintAnimation,
- WallyHandlePaletteFade,
- WallyHandleSuccessBallThrowAnim,
- WallyHandleBallThrowAnim,
- WallyHandlePause,
- WallyHandleMoveAnimation,
- WallyHandlePrintString,
- WallyHandlePrintSelectionString,
- WallyHandleChooseAction,
- WallyHandleUnknownYesNoBox,
- WallyHandleChooseMove,
- WallyHandleChooseItem,
- WallyHandleChoosePokemon,
- WallyHandleCmd23,
- WallyHandleHealthBarUpdate,
- WallyHandleExpUpdate,
- WallyHandleStatusIconUpdate,
- WallyHandleStatusAnimation,
- WallyHandleStatusXor,
- WallyHandleDataTransfer,
- WallyHandleDMA3Transfer,
- WallyHandlePlayBGM,
- WallyHandleCmd32,
- WallyHandleTwoReturnValues,
- WallyHandleChosenMonReturnValue,
- WallyHandleOneReturnValue,
- WallyHandleOneReturnValue_Duplicate,
- WallyHandleCmd37,
- WallyHandleCmd38,
- WallyHandleCmd39,
- WallyHandleCmd40,
- WallyHandleHitAnimation,
- WallyHandleCmd42,
- WallyHandlePlaySE,
- WallyHandlePlayFanfareOrBGM,
- WallyHandleFaintingCry,
- WallyHandleIntroSlide,
- WallyHandleIntroTrainerBallThrow,
- WallyHandleDrawPartyStatusSummary,
- WallyHandleHidePartyStatusSummary,
- WallyHandleEndBounceEffect,
- WallyHandleSpriteInvisibility,
- WallyHandleBattleAnimation,
- WallyHandleLinkStandbyMsg,
- WallyHandleResetActionMoveSelection,
- WallyHandleCmd55,
- WallyCmdEnd
+ [CONTROLLER_GETMONDATA] = WallyHandleGetMonData,
+ [CONTROLLER_GETRAWMONDATA] = WallyHandleGetRawMonData,
+ [CONTROLLER_SETMONDATA] = WallyHandleSetMonData,
+ [CONTROLLER_SETRAWMONDATA] = WallyHandleSetRawMonData,
+ [CONTROLLER_LOADMONSPRITE] = WallyHandleLoadMonSprite,
+ [CONTROLLER_SWITCHINANIM] = WallyHandleSwitchInAnim,
+ [CONTROLLER_RETURNMONTOBALL] = WallyHandleReturnMonToBall,
+ [CONTROLLER_DRAWTRAINERPIC] = WallyHandleDrawTrainerPic,
+ [CONTROLLER_TRAINERSLIDE] = WallyHandleTrainerSlide,
+ [CONTROLLER_TRAINERSLIDEBACK] = WallyHandleTrainerSlideBack,
+ [CONTROLLER_FAINTANIMATION] = WallyHandleFaintAnimation,
+ [CONTROLLER_PALETTEFADE] = WallyHandlePaletteFade,
+ [CONTROLLER_SUCCESSBALLTHROWANIM] = WallyHandleSuccessBallThrowAnim,
+ [CONTROLLER_BALLTHROWANIM] = WallyHandleBallThrowAnim,
+ [CONTROLLER_PAUSE] = WallyHandlePause,
+ [CONTROLLER_MOVEANIMATION] = WallyHandleMoveAnimation,
+ [CONTROLLER_PRINTSTRING] = WallyHandlePrintString,
+ [CONTROLLER_PRINTSTRINGPLAYERONLY] = WallyHandlePrintSelectionString,
+ [CONTROLLER_CHOOSEACTION] = WallyHandleChooseAction,
+ [CONTROLLER_YESNOBOX] = WallyHandleYesNoBox,
+ [CONTROLLER_CHOOSEMOVE] = WallyHandleChooseMove,
+ [CONTROLLER_OPENBAG] = WallyHandleChooseItem,
+ [CONTROLLER_CHOOSEPOKEMON] = WallyHandleChoosePokemon,
+ [CONTROLLER_23] = WallyHandleCmd23,
+ [CONTROLLER_HEALTHBARUPDATE] = WallyHandleHealthBarUpdate,
+ [CONTROLLER_EXPUPDATE] = WallyHandleExpUpdate,
+ [CONTROLLER_STATUSICONUPDATE] = WallyHandleStatusIconUpdate,
+ [CONTROLLER_STATUSANIMATION] = WallyHandleStatusAnimation,
+ [CONTROLLER_STATUSXOR] = WallyHandleStatusXor,
+ [CONTROLLER_DATATRANSFER] = WallyHandleDataTransfer,
+ [CONTROLLER_DMA3TRANSFER] = WallyHandleDMA3Transfer,
+ [CONTROLLER_PLAYBGM] = WallyHandlePlayBGM,
+ [CONTROLLER_32] = WallyHandleCmd32,
+ [CONTROLLER_TWORETURNVALUES] = WallyHandleTwoReturnValues,
+ [CONTROLLER_CHOSENMONRETURNVALUE] = WallyHandleChosenMonReturnValue,
+ [CONTROLLER_ONERETURNVALUE] = WallyHandleOneReturnValue,
+ [CONTROLLER_ONERETURNVALUE_DUPLICATE] = WallyHandleOneReturnValue_Duplicate,
+ [CONTROLLER_CLEARUNKVAR] = WallyHandleClearUnkVar,
+ [CONTROLLER_SETUNKVAR] = WallyHandleSetUnkVar,
+ [CONTROLLER_CLEARUNKFLAG] = WallyHandleClearUnkFlag,
+ [CONTROLLER_TOGGLEUNKFLAG] = WallyHandleToggleUnkFlag,
+ [CONTROLLER_HITANIMATION] = WallyHandleHitAnimation,
+ [CONTROLLER_CANTSWITCH] = WallyHandleCantSwitch,
+ [CONTROLLER_PLAYSE] = WallyHandlePlaySE,
+ [CONTROLLER_PLAYFANFAREORBGM] = WallyHandlePlayFanfareOrBGM,
+ [CONTROLLER_FAINTINGCRY] = WallyHandleFaintingCry,
+ [CONTROLLER_INTROSLIDE] = WallyHandleIntroSlide,
+ [CONTROLLER_INTROTRAINERBALLTHROW] = WallyHandleIntroTrainerBallThrow,
+ [CONTROLLER_DRAWPARTYSTATUSSUMMARY] = WallyHandleDrawPartyStatusSummary,
+ [CONTROLLER_HIDEPARTYSTATUSSUMMARY] = WallyHandleHidePartyStatusSummary,
+ [CONTROLLER_ENDBOUNCE] = WallyHandleEndBounceEffect,
+ [CONTROLLER_SPRITEINVISIBILITY] = WallyHandleSpriteInvisibility,
+ [CONTROLLER_BATTLEANIMATION] = WallyHandleBattleAnimation,
+ [CONTROLLER_LINKSTANDBYMSG] = WallyHandleLinkStandbyMsg,
+ [CONTROLLER_RESETACTIONMOVESELECTION] = WallyHandleResetActionMoveSelection,
+ [CONTROLLER_ENDLINKBATTLE] = WallyHandleEndLinkBattle,
+ [CONTROLLER_TERMINATOR_NOP] = WallyCmdEnd
};
static void SpriteCB_Null7(void)
@@ -190,7 +190,7 @@ static void WallyHandleActions(void)
switch (gBattleStruct->wallyBattleState)
{
case 0:
- gBattleStruct->wallyWaitFrames = 64;
+ gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG;
gBattleStruct->wallyBattleState++;
case 1:
if (--gBattleStruct->wallyWaitFrames == 0)
@@ -200,7 +200,7 @@ static void WallyHandleActions(void)
WallyBufferExecCompleted();
gBattleStruct->wallyBattleState++;
gBattleStruct->wallyMovesState = 0;
- gBattleStruct->wallyWaitFrames = 64;
+ gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG;
}
break;
case 2:
@@ -211,17 +211,17 @@ static void WallyHandleActions(void)
WallyBufferExecCompleted();
gBattleStruct->wallyBattleState++;
gBattleStruct->wallyMovesState = 0;
- gBattleStruct->wallyWaitFrames = 64;
+ gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG;
}
break;
case 3:
if (--gBattleStruct->wallyWaitFrames == 0)
{
- BtlController_EmitTwoReturnValues(1, 9, 0);
+ BtlController_EmitTwoReturnValues(1, B_ACTION_WALLY_THROW, 0);
WallyBufferExecCompleted();
gBattleStruct->wallyBattleState++;
gBattleStruct->wallyMovesState = 0;
- gBattleStruct->wallyWaitFrames = 64;
+ gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG;
}
break;
case 4:
@@ -230,7 +230,7 @@ static void WallyHandleActions(void)
PlaySE(SE_SELECT);
ActionSelectionDestroyCursorAt(0);
ActionSelectionCreateCursorAt(1, 0);
- gBattleStruct->wallyWaitFrames = 64;
+ gBattleStruct->wallyWaitFrames = B_WAIT_TIME_LONG;
gBattleStruct->wallyBattleState++;
}
break;
@@ -268,7 +268,7 @@ static void OpenBagAfterPaletteFade(void)
if (!gPaletteFade.active)
{
gBattlerControllerFuncs[gActiveBattler] = CompleteOnChosenItem;
- nullsub_35();
+ ReshowBattleScreenDummy();
FreeAllWindowBuffers();
DoWallyTutorialBagMenu();
}
@@ -283,7 +283,7 @@ static void CompleteOnChosenItem(void)
}
}
-static void sub_816864C(void)
+static void Intro_TryShinyAnimShowHealthbox(void)
{
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim
&& !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive)
@@ -295,35 +295,35 @@ static void sub_816864C(void)
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].ballAnimActive
&& !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].ballAnimActive
- && gSprites[gUnknown_03005D7C[gActiveBattler]].callback == SpriteCallbackDummy
+ && gSprites[gBattleControllerData[gActiveBattler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy)
{
if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI))
{
- DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBattler ^ BIT_FLANK]]);
+ DestroySprite(&gSprites[gBattleControllerData[gActiveBattler ^ BIT_FLANK]]);
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler ^ BIT_FLANK]], HEALTHBOX_ALL);
- sub_8076918(gActiveBattler ^ BIT_FLANK);
+ StartHealthboxSlideIn(gActiveBattler ^ BIT_FLANK);
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler ^ BIT_FLANK]);
}
- DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBattler]]);
+ DestroySprite(&gSprites[gBattleControllerData[gActiveBattler]]);
UpdateHealthboxAttribute(gHealthboxSpriteIds[gActiveBattler], &gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], HEALTHBOX_ALL);
- sub_8076918(gActiveBattler);
+ StartHealthboxSlideIn(gActiveBattler);
SetHealthboxSpriteVisible(gHealthboxSpriteIds[gActiveBattler]);
- gBattleSpritesDataPtr->animationData->field_9_x1 = 0;
- gBattlerControllerFuncs[gActiveBattler] = sub_8168818;
+ gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
+ gBattlerControllerFuncs[gActiveBattler] = Intro_WaitForShinyAnimAndHealthbox;
}
}
-static void sub_8168818(void)
+static void Intro_WaitForShinyAnimAndHealthbox(void)
{
- bool32 r4 = FALSE;
+ bool32 healthboxAnimDone = FALSE;
if (gSprites[gHealthboxSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy)
- r4 = TRUE;
+ healthboxAnimDone = TRUE;
- if (r4 && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim
+ if (healthboxAnimDone && gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim
&& gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim)
{
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim = FALSE;
@@ -332,10 +332,10 @@ static void sub_8168818(void)
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].triedShinyMonAnim = FALSE;
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler ^ BIT_FLANK].finishedShinyMonAnim = FALSE;
- FreeSpriteTilesByTag(0x27F9);
- FreeSpritePaletteByTag(0x27F9);
+ FreeSpriteTilesByTag(ANIM_TAG_GOLD_STARS);
+ FreeSpritePaletteByTag(ANIM_TAG_GOLD_STARS);
- CreateTask(c3_0802FDF4, 10);
+ CreateTask(Task_PlayerController_RestoreBgmAfterCry, 10);
HandleLowHpMusicChange(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], gActiveBattler);
WallyBufferExecCompleted();
@@ -378,7 +378,7 @@ static void DoHitAnimBlinkSpriteEffect(void)
}
}
-static void sub_8168A20(void)
+static void DoSwitchOutAnimation(void)
{
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].specialAnimActive)
{
@@ -1019,7 +1019,7 @@ static void WallyHandleReturnMonToBall(void)
if (gBattleBufferA[gActiveBattler][1] == 0)
{
InitAndLaunchSpecialAnimation(gActiveBattler, gActiveBattler, gActiveBattler, B_ANIM_SWITCH_OUT_PLAYER_MON);
- gBattlerControllerFuncs[gActiveBattler] = sub_8168A20;
+ gBattlerControllerFuncs[gActiveBattler] = DoSwitchOutAnimation;
}
else
{
@@ -1030,6 +1030,8 @@ static void WallyHandleReturnMonToBall(void)
}
}
+#define sSpeedX data[0]
+
static void WallyHandleDrawTrainerPic(void)
{
DecompressTrainerBackPic(TRAINER_BACK_PIC_WALLY, gActiveBattler);
@@ -1039,9 +1041,9 @@ static void WallyHandleDrawTrainerPic(void)
80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size),
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
- gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240;
- gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2;
- gSprites[gBattlerSpriteIds[gActiveBattler]].callback = sub_805D7AC;
+ gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
+ gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
+ gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy;
}
@@ -1055,11 +1057,13 @@ static void WallyHandleTrainerSlide(void)
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96;
- gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2;
- gSprites[gBattlerSpriteIds[gActiveBattler]].callback = sub_805D7AC;
+ gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2;
+ gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBankSpriteCallbackDummy2;
}
+#undef sSpeedX
+
static void WallyHandleTrainerSlideBack(void)
{
WallyBufferExecCompleted();
@@ -1137,7 +1141,7 @@ static void WallyDoMoveAnimation(void)
case 1:
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].specialAnimActive)
{
- sub_805EB9C(ST_OAM_AFFINE_OFF);
+ SetBattlerSpriteAffineMode(ST_OAM_AFFINE_OFF);
DoMoveAnim(move);
gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].animationState = 2;
}
@@ -1146,7 +1150,7 @@ static void WallyDoMoveAnimation(void)
gAnimScriptCallback();
if (!gAnimScriptActive)
{
- sub_805EB9C(ST_OAM_AFFINE_NORMAL);
+ SetBattlerSpriteAffineMode(ST_OAM_AFFINE_NORMAL);
if (gBattleSpritesDataPtr->battlerData[gActiveBattler].behindSubstitute)
{
InitAndLaunchSpecialAnimation(gActiveBattler, gActiveBattler, gActiveBattler, B_ANIM_MON_TO_SUBSTITUTE);
@@ -1191,7 +1195,7 @@ static void HandleChooseActionAfterDma3(void)
if (!IsDma3ManagerBusyWithBgCopy())
{
gBattle_BG0_X = 0;
- gBattle_BG0_Y = 160;
+ gBattle_BG0_Y = DISPLAY_HEIGHT;
gBattlerControllerFuncs[gActiveBattler] = WallyHandleActions;
}
}
@@ -1211,7 +1215,7 @@ static void WallyHandleChooseAction(void)
BattlePutTextOnWindow(gDisplayedStringBattle, 1);
}
-static void WallyHandleUnknownYesNoBox(void)
+static void WallyHandleYesNoBox(void)
{
WallyBufferExecCompleted();
}
@@ -1229,7 +1233,7 @@ static void WallyHandleChooseMove(void)
if (!IsDma3ManagerBusyWithBgCopy())
{
gBattle_BG0_X = 0;
- gBattle_BG0_Y = 0x140;
+ gBattle_BG0_Y = DISPLAY_HEIGHT * 2;
gBattleStruct->wallyMovesState++;
}
break;
@@ -1246,7 +1250,7 @@ static void WallyHandleChooseMove(void)
static void WallyHandleChooseItem(void)
{
- BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
+ BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
gBattlerControllerFuncs[gActiveBattler] = OpenBagAfterPaletteFade;
gBattlerInMenuId = gActiveBattler;
}
@@ -1346,22 +1350,22 @@ static void WallyHandleOneReturnValue_Duplicate(void)
WallyBufferExecCompleted();
}
-static void WallyHandleCmd37(void)
+static void WallyHandleClearUnkVar(void)
{
WallyBufferExecCompleted();
}
-static void WallyHandleCmd38(void)
+static void WallyHandleSetUnkVar(void)
{
WallyBufferExecCompleted();
}
-static void WallyHandleCmd39(void)
+static void WallyHandleClearUnkFlag(void)
{
WallyBufferExecCompleted();
}
-static void WallyHandleCmd40(void)
+static void WallyHandleToggleUnkFlag(void)
{
WallyBufferExecCompleted();
}
@@ -1381,7 +1385,7 @@ static void WallyHandleHitAnimation(void)
}
}
-static void WallyHandleCmd42(void)
+static void WallyHandleCantSwitch(void)
{
WallyBufferExecCompleted();
}
@@ -1435,39 +1439,39 @@ static void WallyHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;
- StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], sub_805CC00);
+ StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
paletteNum = AllocSpritePalette(0xD6F8);
LoadCompressedPalette(gTrainerBackPicPaletteTable[TRAINER_BACK_PIC_WALLY].data, 0x100 + paletteNum * 16, 32);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum;
- taskId = CreateTask(sub_816AC04, 5);
+ taskId = CreateTask(Task_StartSendOutAnim, 5);
gTasks[taskId].data[0] = gActiveBattler;
if (gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].partyStatusSummaryShown)
gTasks[gBattlerStatusSummaryTaskId[gActiveBattler]].func = Task_HidePartyStatusSummary;
- gBattleSpritesDataPtr->animationData->field_9_x1 = 1;
- gBattlerControllerFuncs[gActiveBattler] = nullsub_21;
+ gBattleSpritesDataPtr->animationData->introAnimActive = TRUE;
+ gBattlerControllerFuncs[gActiveBattler] = BattleControllerDummy;
}
-static void sub_816AA80(u8 battlerId)
+static void StartSendOutAnim(u8 battlerId)
{
u16 species;
gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies = 0;
gBattlerPartyIndexes[battlerId] = gBattleBufferA[battlerId][1];
species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
- gUnknown_03005D7C[battlerId] = CreateInvisibleSpriteWithCallback(sub_805D714);
+ gBattleControllerData[battlerId] = CreateInvisibleSpriteWithCallback(SpriteCB_WaitForBattlerBallReleaseAnim);
SetMultiuseSpriteTemplateToPokemon(species, GetBattlerPosition(battlerId));
gBattlerSpriteIds[battlerId] = CreateSprite(&gMultiuseSpriteTemplate,
GetBattlerSpriteCoord(battlerId, 2),
GetBattlerSpriteDefault_Y(battlerId),
GetBattlerSpriteSubpriority(battlerId));
- gSprites[gUnknown_03005D7C[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
- gSprites[gUnknown_03005D7C[battlerId]].data[2] = battlerId;
+ gSprites[gBattleControllerData[battlerId]].data[1] = gBattlerSpriteIds[battlerId];
+ gSprites[gBattleControllerData[battlerId]].data[2] = battlerId;
gSprites[gBattlerSpriteIds[battlerId]].data[0] = battlerId;
gSprites[gBattlerSpriteIds[battlerId]].data[2] = species;
@@ -1476,10 +1480,10 @@ static void sub_816AA80(u8 battlerId)
StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerId]], gBattleMonForms[battlerId]);
gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
gSprites[gBattlerSpriteIds[battlerId]].callback = SpriteCallbackDummy;
- gSprites[gUnknown_03005D7C[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
+ gSprites[gBattleControllerData[battlerId]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT);
}
-static void sub_816AC04(u8 taskId)
+static void Task_StartSendOutAnim(u8 taskId)
{
if (gTasks[taskId].data[1] < 31)
{
@@ -1491,8 +1495,8 @@ static void sub_816AC04(u8 taskId)
gActiveBattler = gTasks[taskId].data[0];
gBattleBufferA[gActiveBattler][1] = gBattlerPartyIndexes[gActiveBattler];
- sub_816AA80(gActiveBattler);
- gBattlerControllerFuncs[gActiveBattler] = sub_816864C;
+ StartSendOutAnim(gActiveBattler);
+ gBattlerControllerFuncs[gActiveBattler] = Intro_TryShinyAnimShowHealthbox;
gActiveBattler = savedActiveBank;
DestroyTask(taskId);
}
@@ -1548,7 +1552,7 @@ static void WallyHandleResetActionMoveSelection(void)
WallyBufferExecCompleted();
}
-static void WallyHandleCmd55(void)
+static void WallyHandleEndLinkBattle(void)
{
gBattleOutcome = gBattleBufferA[gActiveBattler][1];
FadeOutMapMusic(5);
@@ -1556,7 +1560,7 @@ static void WallyHandleCmd55(void)
WallyBufferExecCompleted();
if (!(gBattleTypeFlags & BATTLE_TYPE_IS_MASTER) && gBattleTypeFlags & BATTLE_TYPE_LINK)
- gBattlerControllerFuncs[gActiveBattler] = sub_80587B0;
+ gBattlerControllerFuncs[gActiveBattler] = SetBattleEndCallbacks;
}
static void WallyCmdEnd(void)