Name all syms in battle_anim_mons

This commit is contained in:
PikalaxALT
2021-03-18 20:32:20 -04:00
parent d95cdf42f5
commit bf69c79b12
11 changed files with 109 additions and 101 deletions
+11 -11
View File
@@ -367,7 +367,7 @@ void TranslateSpriteInCircleOverDuration(struct Sprite *sprite);
void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite);
void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite);
void WaitAnimForDuration(struct Sprite *sprite);
void sub_8074C80(struct Sprite *sprite);
void SetupLinearTranslationWithFixedDuration(struct Sprite *sprite);
void TranslateSpriteLinear(struct Sprite *sprite);
void TranslateSpriteLinearFixedPoint(struct Sprite *sprite);
void TranslateMonSpriteLinear(struct Sprite *sprite);
@@ -412,13 +412,13 @@ void BattleAnim_InitAndRunLinearTranslationWithDuration(struct Sprite *sprite);
void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite);
bool8 AnimFastTranslateLinear(struct Sprite *sprite);
void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite);
void sub_8075830(struct Sprite *sprite);
void InitAndStartAnimFastLinearTranslationWithSpeed(struct Sprite *sprite);
void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation);
void PrepareBattlerSpriteForRotScale(u8 spriteId, u8 objMode);
void ResetSpriteRotScale(u8 spriteId);
void SetBattlerSpriteYOffsetFromRotation(u8 spriteId);
void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 xScale, s16 yScale, u16 rotation);
void sub_8075AD8(struct Sprite *sprite);
void TryResetSpriteAffineState(struct Sprite *sprite);
u16 ArcTan2Neg(s16 a, s16 b);
void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor);
u32 SelectBattleAnimSpriteAndBgPalettes(bool8 battleBackground, bool8 attacker, bool8 target, bool8 attackerPartner, bool8 targetPartner, bool8 a6, bool8 a7);
@@ -439,10 +439,10 @@ void SetBattlerSpriteYOffsetFromYScale(u8 spriteId);
void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId);
void StorePointerInVars(s16 *lo, s16 *hi, const void *ptr);
void *LoadPointerFromVars(s16 lo, s16 hi);
void sub_80765D4(struct Task *task, u8 spriteId, s16 a3, s16 a4, s16 a5, s16 a6, u16 a7);
u8 sub_8076640(struct Task *task);
void BattleAnimHelper_SetSpriteSquashParams(struct Task *task, u8 spriteId, s16 xScale0, s16 yScale0, s16 xScale1, s16 yScale1, u16 duration);
u8 BattleAnimHelper_RunSpriteSquash(struct Task *task);
void AnimTask_GetFrustrationPowerLevel(u8 taskId);
void sub_80767F0(void);
void ResetSpritePriorityOfAllVisibleBattlers(void);
u8 GetBattlerSpriteSubpriority(u8 battlerId);
u8 GetBattlerSpriteBGPriority(u8 battlerId);
@@ -453,12 +453,12 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat
void DestroySpriteAndFreeResources_(struct Sprite *sprite);
s16 GetBattlerSpriteCoordAttr(u8 battlerId, u8 attr);
void SetAverageBattlerPositions(u8 battlerId, bool8 respectMonPicOffsets, s16 *x, s16 *y);
u8 sub_8076E34(s32 battlerId, u8 spriteId, s32 species);
void sub_8076ED8(struct Sprite *sprite);
void sub_8076F58(struct Sprite *sprite);
void sub_8076FD0(struct Sprite *sprite);
u8 CreateCloneOfSpriteInWindowMode(s32 battlerId, u8 spriteId, s32 species);
void SpriteCB_AnimTranslateSpriteLinearAndFlicker(struct Sprite *sprite);
void SpriteCB_AnimTranslateSpriteLinearAndFlicker2(struct Sprite *sprite);
void SpriteCB_TrackOffsetFromAttackerAndWaitAnim(struct Sprite *sprite);
void AnimTask_AttackerPunchWithTrace(u8 taskId);
void sub_807729C(struct Sprite *sprite);
void SpriteCB_WeatherBallUp(struct Sprite *sprite);
void AnimWeatherBallDown(struct Sprite *sprite);
// battle_anim_mon_movement.c
+2 -2
View File
@@ -1823,7 +1823,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
{
s32 i;
sub_80767F0();
ResetSpritePriorityOfAllVisibleBattlers();
UpdateOamPriorityInAllHealthboxes(0);
for (i = 0; i < MAX_BATTLERS_COUNT; i++)
{
@@ -2128,7 +2128,7 @@ static void ScriptCmd_end(void)
if (!continuousAnim)
{
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 256);
sub_80767F0();
ResetSpritePriorityOfAllVisibleBattlers();
UpdateOamPriorityInAllHealthboxes(1);
gAnimScriptActive = FALSE;
}
+1 -1
View File
@@ -3172,7 +3172,7 @@ static void AnimTask_RolePlaySilhouetteStep2(u8 taskId)
TrySetSpriteRotScale(&gSprites[spriteId], TRUE, gTasks[taskId].data[10], gTasks[taskId].data[11], 0);
if (++gTasks[taskId].data[12] == 9)
{
sub_8075AD8(&gSprites[spriteId]);
TryResetSpriteAffineState(&gSprites[spriteId]);
DestroySpriteAndFreeResources_(&gSprites[spriteId]);
gTasks[taskId].func = DestroyAnimVisualTaskAndDisableBlend;
}
+61 -53
View File
@@ -23,17 +23,17 @@ static void PlayerThrowBall_RunLinearTranslation_ThenceSetCBtoStoredInData6(stru
static void SpriteCB_RunAnimFastLinearTranslation(struct Sprite *sprite);
static bool8 Dummy_ReturnFalse(void);
static void AnimThrowProjectile_Step(struct Sprite *sprite);
static void sub_80760D0(u8 taskId);
static void AnimTask_AlphaFadeIn_Step(u8 taskId);
static void AnimTask_BlendMonInAndOutSetup(struct Task *task);
static void AnimTask_BlendMonInAndOutStep(u8 taskId);
static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId);
static void sub_8077118(u8 taskId);
static void sub_80771E4(struct Task *task, u8 taskId);
static void sub_8077268(struct Sprite *sprite);
static void sub_80772F4(struct Sprite *sprite);
static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId);
static void PunchAnim_CreateTraceSprite(struct Task *task, u8 taskId);
static void SpriteCB_PunchTrace(struct Sprite *sprite);
static void SpriteCB_WeatherBallUp_Step(struct Sprite *sprite);
static EWRAM_DATA union AffineAnimCmd *sAnimTaskAffineAnim = NULL;
static EWRAM_DATA u32 gUnknown_2037F2C = 0; // not used
UNUSED static EWRAM_DATA u32 gUnknown_2037F2C = 0; // not used
static const struct UCoords8 sBattlerCoords[][4] =
{
@@ -77,11 +77,11 @@ static const u8 sCastformBackSpriteYCoords[] =
0, // HAIL
};
static const struct SpriteTemplate gUnknown_83AE054[] =
static const struct SpriteTemplate sSpriteTemplates_AdditionalForAnim[] =
{
{
.tileTag = 0xD755,
.paletteTag = 0xD755,
.tileTag = 55125,
.paletteTag = 55125,
.oam = &gOamData_AffineNormal_ObjNormal_64x64,
.anims = gDummySpriteAnimTable,
.images = NULL,
@@ -89,8 +89,8 @@ static const struct SpriteTemplate gUnknown_83AE054[] =
.callback = SpriteCallbackDummy,
},
{
.tileTag = 0xD756,
.paletteTag = 0xD756,
.tileTag = 55126,
.paletteTag = 55126,
.oam = &gOamData_AffineNormal_ObjNormal_64x64,
.anims = gDummySpriteAnimTable,
.images = NULL,
@@ -390,6 +390,8 @@ static void SetCallbackToStoredInData6(struct Sprite *sprite)
sprite->callback = (SpriteCallback)callback;
}
// x = a * sin(theta0 + dtheta * t)
// y = a * cos(theta0 + dtheta * t)
void TranslateSpriteInCircleOverDuration(struct Sprite *sprite)
{
if (sprite->data[3])
@@ -409,6 +411,8 @@ void TranslateSpriteInCircleOverDuration(struct Sprite *sprite)
}
}
// x = (a0 + da * t) * sin(theta0 + dtheta * t)
// y = (a0 + da * t) * cos(theta0 + dtheta * t)
void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite)
{
if (sprite->data[3])
@@ -430,7 +434,9 @@ void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite)
}
// not used
static void sub_8074B5C(struct Sprite *sprite)
// x = alpl * sin(alpha0 + dalpha * t)
// y = ampl * cos(beta0 + dbeta * t)
static void TranslateSpriteInLissajousCurveOverDuration(struct Sprite *sprite)
{
if (sprite->data[3])
{
@@ -454,6 +460,8 @@ static void sub_8074B5C(struct Sprite *sprite)
}
}
// x = a * sin(theta0 + dtheta * t)
// y = b * cos(theta0 + dtheta * t)
void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite)
{
if (sprite->data[3])
@@ -484,14 +492,14 @@ void WaitAnimForDuration(struct Sprite *sprite)
SetCallbackToStoredInData6(sprite);
}
static void sub_8074C64(struct Sprite *sprite)
static void SetupAndStartSpriteLinearTranslation(struct Sprite *sprite)
{
sub_8074C80(sprite);
SetupLinearTranslationWithFixedDuration(sprite);
sprite->callback = TranslateSpriteLinear;
sprite->callback(sprite);
}
void sub_8074C80(struct Sprite *sprite)
void SetupLinearTranslationWithFixedDuration(struct Sprite *sprite)
{
s16 old;
s32 xDiff;
@@ -554,13 +562,13 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite)
}
// not used
static void sub_8074D80(struct Sprite *sprite)
static void SetupAndStartSpriteLinearTranslationToTarget(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x + sprite->pos2.x;
sprite->data[3] = sprite->pos1.y + sprite->pos2.y;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = sub_8074C64;
sprite->callback = SetupAndStartSpriteLinearTranslation;
}
void TranslateMonSpriteLinear(struct Sprite *sprite)
@@ -621,17 +629,17 @@ void DestroySpriteAndMatrix(struct Sprite *sprite)
}
// not used
static void sub_8074EF4(struct Sprite *sprite)
static void SetupAndStartSpriteLinearTranslationToAttacker(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x + sprite->pos2.x;
sprite->data[3] = sprite->pos1.y + sprite->pos2.y;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = sub_8074C64;
sprite->callback = SetupAndStartSpriteLinearTranslation;
}
// not used
static void sub_8074F38(struct Sprite *sprite)
static void SpriteResetPaletteStructAndDestroy(struct Sprite *sprite)
{
ResetPaletteStructByUid(sprite->data[5]);
DestroySpriteAndMatrix(sprite);
@@ -1094,7 +1102,7 @@ void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite)
InitAnimFastLinearTranslation(sprite);
}
void sub_8075830(struct Sprite *sprite)
void InitAndStartAnimFastLinearTranslationWithSpeed(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
@@ -1188,7 +1196,7 @@ void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 x
}
}
void sub_8075AD8(struct Sprite *sprite)
void TryResetSpriteAffineState(struct Sprite *sprite)
{
TrySetSpriteRotScale(sprite, TRUE, 0x100, 0x100, 0);
sprite->affineAnimPaused = FALSE;
@@ -1487,10 +1495,10 @@ void AnimTask_AlphaFadeIn(u8 taskId)
gTasks[taskId].data[7] = gBattleAnimArgs[2];
gTasks[taskId].data[8] = gBattleAnimArgs[3];
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gBattleAnimArgs[0], gBattleAnimArgs[1]));
gTasks[taskId].func = sub_80760D0;
gTasks[taskId].func = AnimTask_AlphaFadeIn_Step;
}
static void sub_80760D0(u8 taskId)
static void AnimTask_AlphaFadeIn_Step(u8 taskId)
{
struct Task *task = &gTasks[taskId];
@@ -1750,19 +1758,19 @@ void *LoadPointerFromVars(s16 lo, s16 hi)
return (void *)((u16)lo | ((u16)hi << 16));
}
void sub_80765D4(struct Task *task, u8 spriteId, s16 a3, s16 a4, s16 a5, s16 a6, u16 a7)
void BattleAnimHelper_SetSpriteSquashParams(struct Task *task, u8 spriteId, s16 xScale0, s16 yScale0, s16 xScale1, s16 yScale1, u16 duration)
{
task->data[8] = a7;
task->data[8] = duration;
task->data[15] = spriteId;
task->data[9] = a3;
task->data[10] = a4;
task->data[13] = a5;
task->data[14] = a6;
task->data[11] = (a5 - a3) / a7;
task->data[12] = (a6 - a4) / a7;
task->data[9] = xScale0;
task->data[10] = yScale0;
task->data[13] = xScale1;
task->data[14] = yScale1;
task->data[11] = (xScale1 - xScale0) / duration;
task->data[12] = (yScale1 - yScale0) / duration;
}
u8 sub_8076640(struct Task *task)
u8 BattleAnimHelper_RunSpriteSquash(struct Task *task)
{
if (!task->data[8])
return 0;
@@ -1801,7 +1809,7 @@ void AnimTask_GetFrustrationPowerLevel(u8 taskId)
}
// not used
static void sub_80766EC(u8 priority)
static void SetOamPriorityOfAllVisibleBattlers(u8 priority)
{
if (IsBattlerSpriteVisible(gBattleAnimTarget))
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].oam.priority = priority;
@@ -1813,7 +1821,7 @@ static void sub_80766EC(u8 priority)
gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)]].oam.priority = priority;
}
void sub_80767F0(void)
void ResetSpritePriorityOfAllVisibleBattlers(void)
{
s32 i;
@@ -1867,7 +1875,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat
{
u8 spriteId;
u16 sheet = LoadSpriteSheet(&sMoveAnimAdtlSprSheets[templateId]);
u16 palette = AllocSpritePalette(gUnknown_83AE054[templateId].paletteTag);
u16 palette = AllocSpritePalette(sSpriteTemplates_AdditionalForAnim[templateId].paletteTag);
if (gMonSpritesGfxPtr != NULL && gMonSpritesGfxPtr->multiUseBuffer == NULL)
gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000);
@@ -1906,9 +1914,9 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat
RequestDma3Copy(gMonSpritesGfxPtr->multiUseBuffer, (void *)(OBJ_VRAM0 + (sheet * 0x20)), 0x800, 1);
FREE_AND_SET_NULL(gMonSpritesGfxPtr->multiUseBuffer);
if (!isBackpic)
spriteId = CreateSprite(&gUnknown_83AE054[templateId], x, y + gMonFrontPicCoords[species].y_offset, subpriority);
spriteId = CreateSprite(&sSpriteTemplates_AdditionalForAnim[templateId], x, y + gMonFrontPicCoords[species].y_offset, subpriority);
else
spriteId = CreateSprite(&gUnknown_83AE054[templateId], x, y + gMonBackPicCoords[species].y_offset, subpriority);
spriteId = CreateSprite(&sSpriteTemplates_AdditionalForAnim[templateId], x, y + gMonBackPicCoords[species].y_offset, subpriority);
return spriteId;
}
@@ -2048,20 +2056,20 @@ void SetAverageBattlerPositions(u8 battlerId, bool8 respectMonPicOffsets, s16 *x
*y = (battlerY + partnerY) / 2;
}
u8 sub_8076E34(s32 battlerId, u8 spriteId, s32 species)
u8 CreateCloneOfSpriteInWindowMode(s32 battlerId, u8 spriteId, s32 species)
{
u8 newSpriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy);
gSprites[newSpriteId] = gSprites[spriteId];
gSprites[newSpriteId].usingSheet = TRUE;
gSprites[newSpriteId].oam.priority = 0;
gSprites[newSpriteId].oam.objMode = 2;
gSprites[newSpriteId].oam.objMode = ST_OAM_OBJ_WINDOW;
gSprites[newSpriteId].oam.tileNum = gSprites[spriteId].oam.tileNum;
gSprites[newSpriteId].callback = SpriteCallbackDummy;
return newSpriteId;
}
void sub_8076ED8(struct Sprite *sprite)
void SpriteCB_AnimTranslateSpriteLinearAndFlicker(struct Sprite *sprite)
{
SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
@@ -2083,7 +2091,7 @@ void sub_8076ED8(struct Sprite *sprite)
sprite->callback = TranslateSpriteLinearAndFlicker;
}
void sub_8076F58(struct Sprite *sprite)
void SpriteCB_AnimTranslateSpriteLinearAndFlicker2(struct Sprite *sprite)
{
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
@@ -2104,7 +2112,7 @@ void sub_8076F58(struct Sprite *sprite)
sprite->callback = TranslateSpriteLinearAndFlicker;
}
void sub_8076FD0(struct Sprite *sprite)
void SpriteCB_TrackOffsetFromAttackerAndWaitAnim(struct Sprite *sprite)
{
SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
@@ -2138,16 +2146,16 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId)
task->data[6] = 3;
CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], 0x20);
BlendPalette(dest, 16, gBattleAnimArgs[1], gBattleAnimArgs[0]);
task->func = sub_8077118;
task->func = AnimTask_AttackerPunchWithTrace_Step;
}
static void sub_8077118(u8 taskId)
static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId)
{
struct Task *task = &gTasks[taskId];
switch (task->data[2])
{
case 0:
sub_80771E4(task, taskId);
PunchAnim_CreateTraceSprite(task, taskId);
gSprites[task->data[0]].pos2.x += task->data[1];
if (++task->data[3] == 5)
{
@@ -2156,7 +2164,7 @@ static void sub_8077118(u8 taskId)
}
break;
case 1:
sub_80771E4(task, taskId);
PunchAnim_CreateTraceSprite(task, taskId);
gSprites[task->data[0]].pos2.x -= task->data[1];
if (--task->data[3] == 0)
{
@@ -2174,7 +2182,7 @@ static void sub_8077118(u8 taskId)
}
}
static void sub_80771E4(struct Task *task, u8 taskId)
static void PunchAnim_CreateTraceSprite(struct Task *task, u8 taskId)
{
s16 spriteId = CloneBattlerSpriteWithBlend(0);
@@ -2186,12 +2194,12 @@ static void sub_80771E4(struct Task *task, u8 taskId)
gSprites[spriteId].data[1] = taskId;
gSprites[spriteId].data[2] = spriteId;
gSprites[spriteId].pos2.x = gSprites[task->data[0]].pos2.x;
gSprites[spriteId].callback = sub_8077268;
gSprites[spriteId].callback = SpriteCB_PunchTrace;
++task->data[5];
}
}
static void sub_8077268(struct Sprite *sprite)
static void SpriteCB_PunchTrace(struct Sprite *sprite)
{
if (--sprite->data[0] == 0)
{
@@ -2200,7 +2208,7 @@ static void sub_8077268(struct Sprite *sprite)
}
}
void sub_807729C(struct Sprite *sprite)
void SpriteCB_WeatherBallUp(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
@@ -2209,10 +2217,10 @@ void sub_807729C(struct Sprite *sprite)
else
sprite->data[0] = -10;
sprite->data[1] = -40;
sprite->callback = sub_80772F4;
sprite->callback = SpriteCB_WeatherBallUp_Step;
}
static void sub_80772F4(struct Sprite *sprite)
static void SpriteCB_WeatherBallUp_Step(struct Sprite *sprite)
{
sprite->data[2] += sprite->data[0];
sprite->data[3] += sprite->data[1];
+7 -7
View File
@@ -43,7 +43,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF3F8 =
.anims = sSpriteAnimTable_83BF3F4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8076F58,
.callback = SpriteCB_AnimTranslateSpriteLinearAndFlicker2,
};
const struct SpriteTemplate gSpriteTemplate_83BF410 =
@@ -54,7 +54,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF410 =
.anims = sSpriteAnimTable_83BF3F4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8076ED8,
.callback = SpriteCB_AnimTranslateSpriteLinearAndFlicker,
};
static const union AnimCmd sUnknown_83BF428[] =
@@ -76,7 +76,7 @@ const struct SpriteTemplate gWeatherBallUpSpriteTemplate =
.anims = sSpriteAnimTable_83BF430,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_807729C,
.callback = SpriteCB_WeatherBallUp,
};
const struct SpriteTemplate gWeatherBallNormalDownSpriteTemplate =
@@ -113,7 +113,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF480 =
.anims = sSpriteAnimTable_83BF47C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8076FD0,
.callback = SpriteCB_TrackOffsetFromAttackerAndWaitAnim,
};
const struct SpriteTemplate gSpriteTemplate_83BF498 =
@@ -124,7 +124,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF498 =
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8076F58,
.callback = SpriteCB_AnimTranslateSpriteLinearAndFlicker2,
};
static const union AnimCmd sUnknown_83BF4B0[] =
@@ -160,7 +160,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF4D4 =
.anims = sSpriteAniimTable_83BF4C8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8076F58,
.callback = SpriteCB_AnimTranslateSpriteLinearAndFlicker2,
};
static const union AnimCmd sUnknown_83BF4EC[] =
@@ -194,7 +194,7 @@ const struct SpriteTemplate gSpriteTemplate_83BF514 =
.anims = sSpriteAnimTable_83BF4F4,
.images = NULL,
.affineAnims = sSpriteAffineAnimTable_83BF510,
.callback = sub_8076ED8,
.callback = SpriteCB_AnimTranslateSpriteLinearAndFlicker,
};
static const u8 sUnknown_83BF52C[] = _("TASK OVER\nタスクがオ-バ-しました");
+5 -5
View File
@@ -330,7 +330,7 @@ void AnimTask_SetUpCurseBackground(u8 taskId)
else
species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gBattleAnimAttacker]], MON_DATA_SPECIES);
spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
newSpriteId = sub_8076E34(gBattleAnimAttacker, spriteId, species);
newSpriteId = CreateCloneOfSpriteInWindowMode(gBattleAnimAttacker, spriteId, species);
GetBattleAnimBg1Data(&animBgData);
AnimLoadCompressedBgTilemap(animBgData.bgId, gFile_graphics_battle_anims_masks_curse_tilemap);
if (IsContest())
@@ -446,11 +446,11 @@ static void sub_80BB2A0(u8 taskId)
u8 battlerSpriteId;
battlerSpriteId = gBattlerSpriteIds[sAnimStatsChangeData->battler1];
spriteId = sub_8076E34(sAnimStatsChangeData->battler1, battlerSpriteId, sAnimStatsChangeData->species);
spriteId = CreateCloneOfSpriteInWindowMode(sAnimStatsChangeData->battler1, battlerSpriteId, sAnimStatsChangeData->species);
if (sAnimStatsChangeData->data[3])
{
battlerSpriteId = gBattlerSpriteIds[sAnimStatsChangeData->battler2];
newSpriteId = sub_8076E34(sAnimStatsChangeData->battler2, battlerSpriteId, sAnimStatsChangeData->species);
newSpriteId = CreateCloneOfSpriteInWindowMode(sAnimStatsChangeData->battler2, battlerSpriteId, sAnimStatsChangeData->species);
}
GetBattleAnimBg1Data(&animBgData);
if (sAnimStatsChangeData->data[0] == 0)
@@ -752,9 +752,9 @@ void sub_80BBA20(u8 taskId, s32 unused, u16 arg2, u8 battler1, u8 arg4, u8 arg5,
species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler1]], MON_DATA_SPECIES);
else
species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battler1]], MON_DATA_SPECIES);
spriteId = sub_8076E34(battler1, gBattlerSpriteIds[battler1], species);
spriteId = CreateCloneOfSpriteInWindowMode(battler1, gBattlerSpriteIds[battler1], species);
if (arg4)
newSpriteId = sub_8076E34(battler2, gBattlerSpriteIds[battler2], species);
newSpriteId = CreateCloneOfSpriteInWindowMode(battler2, gBattlerSpriteIds[battler2], species);
GetBattleAnimBg1Data(&animBgData);
AnimLoadCompressedBgTilemap(animBgData.bgId, tilemap);
if (IsContest())
+1 -1
View File
@@ -799,7 +799,7 @@ void AnimTask_MetallicShine(u8 taskId)
else
species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gBattleAnimAttacker]], MON_DATA_SPECIES);
spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
newSpriteId = sub_8076E34(gBattleAnimAttacker, spriteId, species);
newSpriteId = CreateCloneOfSpriteInWindowMode(gBattleAnimAttacker, spriteId, species);
GetBattleAnimBg1Data(&animBg);
AnimLoadCompressedBgTilemap(animBg.bgId, gMetalShineTilemap);
AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset);
+11 -11
View File
@@ -29,7 +29,7 @@ static void AnimFireRing_Step3(struct Sprite *sprite);
static void UpdateFireRingCircleOffset(struct Sprite *sprite);
static void sub_80ACE28(struct Sprite *sprite);
static void sub_80ACE50(struct Sprite *sprite);
static void sub_80ACF14(u8 taskId);
static void AnimTask_EruptionLaunchRocks_Step(u8 taskId);
static void sub_80AD1F8(u8 spriteId, u8 taskId, u8 a3);
static u16 sub_80AD374(u8 spriteId);
static void sub_80AD3C8(struct Sprite *sprite, s16 x, s16 y);
@@ -741,17 +741,17 @@ void AnimTask_EruptionLaunchRocks(u8 taskId) // initialize animation task for Mo
task->data[5] = GetBattlerSide(gBattleAnimAttacker);
task->data[6] = 0;
PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL);
task->func = sub_80ACF14;
task->func = AnimTask_EruptionLaunchRocks_Step;
}
static void sub_80ACF14(u8 taskId) // animate Move_ERUPTION?
static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) // animate Move_ERUPTION?
{
struct Task *task = &gTasks[taskId];
switch (task->data[0])
{
case 0:
sub_80765D4(task, task->data[15], 0x100, 0x100, 0xE0, 0x200, 0x20);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0x100, 0x100, 0xE0, 0x200, 0x20);
++task->data[0];
// fall through
case 1:
@@ -771,7 +771,7 @@ static void sub_80ACF14(u8 taskId) // animate Move_ERUPTION?
++gSprites[task->data[15]].pos1.y;
}
}
if(!sub_8076640(task))
if(!BattleAnimHelper_RunSpriteSquash(task))
{
SetBattlerSpriteYOffsetFromYScale(task->data[15]);
gSprites[task->data[15]].pos2.x = 0;
@@ -785,15 +785,15 @@ static void sub_80ACF14(u8 taskId) // animate Move_ERUPTION?
if (++task->data[1] > 4)
{
if (task->data[5])
sub_80765D4(task, task->data[15], 0xE0, 0x200, 0x180, 0xF0, 0x6);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0xE0, 0x200, 0x180, 0xF0, 0x6);
else
sub_80765D4(task, task->data[15], 0xE0, 0x200, 0x180, 0xC0, 0x6);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0xE0, 0x200, 0x180, 0xC0, 0x6);
task->data[1] = 0;
++task->data[0];
}
break;
case 3:
if (!sub_8076640(task))
if (!BattleAnimHelper_RunSpriteSquash(task))
{
sub_80AD1F8(task->data[15], taskId, 6);
++task->data[0];
@@ -811,9 +811,9 @@ static void sub_80ACF14(u8 taskId) // animate Move_ERUPTION?
if (++task->data[3] > 0x18)
{
if (task->data[5])
sub_80765D4(task, task->data[15], 0x180, 0xF0, 0x100, 0x100, 0x8);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0x180, 0xF0, 0x100, 0x100, 0x8);
else
sub_80765D4(task, task->data[15], 0x180, 0xC0, 0x100, 0x100, 0x8);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0x180, 0xC0, 0x100, 0x100, 0x8);
if (task->data[2] & 1)
gSprites[task->data[15]].pos2.y -= 3;
task->data[1] = 0;
@@ -825,7 +825,7 @@ static void sub_80ACF14(u8 taskId) // animate Move_ERUPTION?
case 5:
if (task->data[5])
--gSprites[task->data[15]].pos1.y;
if (!sub_8076640(task))
if (!BattleAnimHelper_RunSpriteSquash(task))
{
gSprites[task->data[15]].pos1.y = task->data[4];
ResetSpriteRotScale(task->data[15]);
+1 -1
View File
@@ -1158,7 +1158,7 @@ static void AnimDiveWaterSplash(struct Sprite *sprite)
sprite->pos2.y = t2;
if (sprite->data[2] == 24)
{
sub_8075AD8(sprite);
TryResetSpriteAffineState(sprite);
DestroyAnimSprite(sprite);
}
break;
+3 -3
View File
@@ -533,7 +533,7 @@ static void sub_80AF108(struct Sprite *sprite)
sprite->data[2] = gBattleAnimArgs[2] + targetX;
sprite->data[3] = gBattleAnimArgs[1] + attackerY;
sprite->data[4] = gBattleAnimArgs[3] + targetY;
sub_8074C80(sprite);
SetupLinearTranslationWithFixedDuration(sprite);
// won't match with while loop
for (; (targetX >= -32 && targetX <= 272) && (targetY >= -32 && targetY <= 192); targetX += sprite->data[1], targetY += sprite->data[2])
;
@@ -548,7 +548,7 @@ static void sub_80AF108(struct Sprite *sprite)
sprite->data[2] = targetX;
sprite->data[3] = attackerY;
sprite->data[4] = targetY;
sub_8074C80(sprite);
SetupLinearTranslationWithFixedDuration(sprite);
sprite->data[3] = gBattleAnimArgs[5];
sprite->data[4] = gBattleAnimArgs[6];
sprite->callback = sub_80AF28C;
@@ -686,7 +686,7 @@ static void AnimSwirlingSnowball_Step1(struct Sprite *sprite)
sprite->pos2.x = sprite->pos2.y = 0;
for (i = 0; i < 8; ++i)
sprite->data[i] = tempDataHolder[i];
sprite->callback = sub_8075830;
sprite->callback = InitAndStartAnimFastLinearTranslationWithSpeed;
StoreSpriteCallbackInData6(sprite, AnimSwirlingSnowball_Step2);
}
+6 -6
View File
@@ -1058,7 +1058,7 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
switch (task->data[0])
{
case 0:
sub_80765D4(task, task->data[15], 0x100, 0x100, 224, 0x200, 32);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0x100, 0x100, 224, 0x200, 32);
task->data[0]++;
case 1:
if (++task->data[3] > 1)
@@ -1074,7 +1074,7 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
gSprites[task->data[15]].pos2.x = -3;
}
}
if (sub_8076640(task) == 0)
if (BattleAnimHelper_RunSpriteSquash(task) == 0)
{
SetBattlerSpriteYOffsetFromYScale(task->data[15]);
gSprites[task->data[15]].pos2.x = 0;
@@ -1086,13 +1086,13 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
case 2:
if (++task->data[3] > 4)
{
sub_80765D4(task, task->data[15], 224, 0x200, 384, 224, 8);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 224, 0x200, 384, 224, 8);
task->data[3] = 0;
task->data[0]++;
}
break;
case 3:
if (sub_8076640(task) == 0)
if (BattleAnimHelper_RunSpriteSquash(task) == 0)
{
task->data[3] = 0;
task->data[4] = 0;
@@ -1112,7 +1112,7 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
gSprites[task->data[15]].pos2.y -= 2;
if (task->data[4] == 10)
{
sub_80765D4(task, task->data[15], 384, 224, 0x100, 0x100, 8);
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 384, 224, 0x100, 0x100, 8);
task->data[3] = 0;
task->data[4] = 0;
task->data[0]++;
@@ -1121,7 +1121,7 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
break;
case 6:
gSprites[task->data[15]].pos1.y--;
if (sub_8076640(task) == 0)
if (BattleAnimHelper_RunSpriteSquash(task) == 0)
{
ResetSpriteRotScale(task->data[15]);
gSprites[task->data[15]].pos1.y = task->data[5];