Document a bunch of battle anims

This commit is contained in:
Marcus Huderle
2018-12-19 21:13:26 -06:00
parent 48d7c0a7a3
commit b7ce383a96
24 changed files with 807 additions and 710 deletions
+9 -5
View File
@@ -1671,7 +1671,11 @@ static void ScriptCmd_createsprite(void)
if (subpriority < 3)
subpriority = 3;
CreateSpriteAndAnimate(template, GetBattlerSpriteCoord(gBattleAnimTarget, 2), GetBattlerSpriteCoord(gBattleAnimTarget, 3), subpriority);
CreateSpriteAndAnimate(
template,
GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2),
GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET),
subpriority);
gAnimVisualTaskCount++;
}
@@ -3029,12 +3033,12 @@ static void ScriptCmd_doublebattle_2D(void)
{
if (wantedBattler == ANIM_ATTACKER)
{
r4 = sub_80A8364(gBattleAnimAttacker);
r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
}
else
{
r4 = sub_80A8364(gBattleAnimTarget);
r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
}
if (spriteId != 0xFF)
@@ -3064,12 +3068,12 @@ static void ScriptCmd_doublebattle_2E(void)
{
if (wantedBattler == ANIM_ATTACKER)
{
r4 = sub_80A8364(gBattleAnimAttacker);
r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
}
else
{
r4 = sub_80A8364(gBattleAnimTarget);
r4 = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
spriteId = GetAnimBattlerSpriteId(ANIM_TARGET);
}
+61 -55
View File
@@ -568,7 +568,7 @@ void TranslateSpriteOverDuration(struct Sprite *sprite)
}
}
void TranslateAnimLinearSimple(struct Sprite *sprite)
void AnimTranslateLinearSimple(struct Sprite *sprite)
{
if (sprite->data[0] > 0)
{
@@ -716,7 +716,9 @@ void SetSpriteCoordsToAnimAttackerCoords(struct Sprite *sprite)
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
}
void sub_80A6864(struct Sprite *sprite, s16 xOffset)
// Sets the initial x offset of the anim sprite depending on the horizontal orientation
// of the two involved mons.
void SetAnimSpriteInitialXOffset(struct Sprite *sprite, s16 xOffset)
{
u16 attackerX = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X);
u16 targetX = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X);
@@ -749,7 +751,7 @@ void InitAnimArcTranslation(struct Sprite *sprite)
bool8 TranslateAnimArc(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
return TRUE;
sprite->data[7] += sprite->data[6];
sprite->pos2.y += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
@@ -758,7 +760,7 @@ bool8 TranslateAnimArc(struct Sprite *sprite)
bool8 sub_80A6934(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
return TRUE;
sprite->data[7] += sprite->data[6];
sprite->pos2.x += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
@@ -773,18 +775,20 @@ void oamt_add_pos2_onto_pos1(struct Sprite *sprite)
sprite->pos2.y = 0;
}
void sub_80A6980(struct Sprite *sprite, bool8 a2)
void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets)
{
if (!a2)
// Battle anim sprites are automatically created at the anim target's center, which
// is why there is no else clause for the "respectMonPicOffsets" check.
if (!respectMonPicOffsets)
{
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y);
}
sub_80A6864(sprite, gBattleAnimArgs[0]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
}
void InitAnimSpritePos(struct Sprite *sprite, u8 respectMonPicOffsets)
void InitSpritePosToAnimAttacker(struct Sprite *sprite, u8 respectMonPicOffsets)
{
if (!respectMonPicOffsets)
{
@@ -796,7 +800,7 @@ void InitAnimSpritePos(struct Sprite *sprite, u8 respectMonPicOffsets)
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
}
sub_80A6864(sprite, gBattleAnimArgs[0]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
}
@@ -917,7 +921,7 @@ void sub_80A6BFC(struct UnknownAnimStruct2 *unk, u8 unused)
unk->tilesOffset = 0;
unk->unkC = 0;
}
else if (sub_80A8364(gBattleAnimAttacker) == 1)
else if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
{
unk->unk8 = 8;
unk->bgId = 1;
@@ -1058,7 +1062,7 @@ void sub_80A6F14(struct Sprite *sprite)
sprite->callback(sprite);
}
bool8 TranslateAnimLinear(struct Sprite *sprite)
bool8 AnimTranslateLinear(struct Sprite *sprite)
{
u16 v1, v2, x, y;
@@ -1090,14 +1094,14 @@ bool8 TranslateAnimLinear(struct Sprite *sprite)
void sub_80A6F98(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
SetCallbackToStoredInData6(sprite);
}
void sub_80A6FB4(struct Sprite *sprite)
{
sub_8039E9C(sprite);
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
SetCallbackToStoredInData6(sprite);
}
@@ -1117,14 +1121,14 @@ void sub_80A7000(struct Sprite *sprite)
sprite->callback(sprite);
}
void sub_80A7028(struct Sprite *sprite)
static void InitAnimFastLinearTranslation(struct Sprite *sprite)
{
int x = sprite->data[2] - sprite->data[1];
int y = sprite->data[4] - sprite->data[3];
bool8 x_sign = x < 0;
bool8 y_sign = y < 0;
u16 x2 = abs(x) << 4;
u16 y2 = abs(y) << 4;
int xDiff = sprite->data[2] - sprite->data[1];
int yDiff = sprite->data[4] - sprite->data[3];
bool8 x_sign = xDiff < 0;
bool8 y_sign = yDiff < 0;
u16 x2 = abs(xDiff) << 4;
u16 y2 = abs(yDiff) << 4;
x2 /= sprite->data[0];
y2 /= sprite->data[0];
@@ -1145,16 +1149,16 @@ void sub_80A7028(struct Sprite *sprite)
sprite->data[3] = 0;
}
void sub_80A70C0(struct Sprite *sprite)
void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sub_80A7028(sprite);
InitAnimFastLinearTranslation(sprite);
sprite->callback = sub_80A7144;
sprite->callback(sprite);
}
bool8 sub_80A70E8(struct Sprite *sprite)
bool8 AnimFastTranslateLinear(struct Sprite *sprite)
{
u16 v1, v2, x, y;
@@ -1186,22 +1190,22 @@ bool8 sub_80A70E8(struct Sprite *sprite)
void sub_80A7144(struct Sprite *sprite)
{
if (sub_80A70E8(sprite))
if (AnimFastTranslateLinear(sprite))
SetCallbackToStoredInData6(sprite);
}
void sub_80A7160(struct Sprite *sprite)
void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite)
{
int v1 = abs(sprite->data[2] - sprite->data[1]) << 4;
sprite->data[0] = v1 / sprite->data[0];
sub_80A7028(sprite);
int xDiff = abs(sprite->data[2] - sprite->data[1]) << 4;
sprite->data[0] = xDiff / sprite->data[0];
InitAnimFastLinearTranslation(sprite);
}
void sub_80A718C(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sub_80A7160(sprite);
InitAnimFastLinearTranslationWithSpeed(sprite);
sprite->callback = sub_80A7144;
sprite->callback(sprite);
}
@@ -1471,9 +1475,9 @@ void sub_80A77C8(struct Sprite *sprite)
else
var = FALSE;
if (!gBattleAnimArgs[2])
InitAnimSpritePos(sprite, var);
InitSpritePosToAnimAttacker(sprite, var);
else
sub_80A6980(sprite, var);
InitSpritePosToAnimTarget(sprite, var);
sprite->data[0]++;
}
@@ -1506,7 +1510,7 @@ void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite)
else
coordType = BATTLER_COORD_Y;
InitAnimSpritePos(sprite, v1);
InitSpritePosToAnimAttacker(sprite, v1);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
@@ -1519,7 +1523,7 @@ void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite)
void sub_80A78AC(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
if (GetBattlerSide(gBattleAnimAttacker))
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[4];
@@ -1553,17 +1557,17 @@ void sub_80A7938(struct Sprite *sprite)
}
if (!gBattleAnimArgs[5])
{
InitAnimSpritePos(sprite, r4);
InitSpritePosToAnimAttacker(sprite, r4);
battlerId = gBattleAnimAttacker;
}
else
{
sub_80A6980(sprite, r4);
InitSpritePosToAnimTarget(sprite, r4);
battlerId = gBattleAnimTarget;
}
if (GetBattlerSide(gBattleAnimAttacker))
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sub_80A6980(sprite, r4);
InitSpritePosToAnimTarget(sprite, r4);
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[2] = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + gBattleAnimArgs[2];
sprite->data[4] = GetBattlerSpriteCoord(battlerId, attributeId) + gBattleAnimArgs[3];
@@ -2006,7 +2010,7 @@ u8 GetBattlerSpriteSubpriority(u8 battlerId)
return subpriority;
}
u8 sub_80A8328(u8 battlerId)
u8 GetBattlerSpriteBGPriority(u8 battlerId)
{
u8 position = GetBattlerPosition(battlerId);
@@ -2018,7 +2022,7 @@ u8 sub_80A8328(u8 battlerId)
return GetAnimBgAttribute(1, BG_ANIM_PRIORITY);
}
u8 sub_80A8364(u8 battlerId)
u8 GetBattlerSpriteBGPriorityRank(u8 battlerId)
{
if (!IsContest())
{
@@ -2229,36 +2233,38 @@ s16 sub_80A861C(u8 battlerId, u8 a2)
}
}
void SetAverageBattlerPositions(u8 battlerId, bool8 a2, s16 *x, s16 *y)
void SetAverageBattlerPositions(u8 battlerId, bool8 respectMonPicOffsets, s16 *x, s16 *y)
{
u8 v1, v2;
s16 v3, v4;
s16 v5, v6;
u8 xCoordType, yCoordType;
s16 battlerX, battlerY;
s16 partnerX, partnerY;
if (!a2)
if (!respectMonPicOffsets)
{
v1 = 0;
v2 = 1;
xCoordType = BATTLER_COORD_X;
yCoordType = BATTLER_COORD_Y;
}
else
{
v1 = 2;
v2 = 3;
xCoordType = BATTLER_COORD_X_2;
yCoordType = BATTLER_COORD_Y_PIC_OFFSET;
}
v3 = GetBattlerSpriteCoord(battlerId, v1);
v4 = GetBattlerSpriteCoord(battlerId, v2);
battlerX = GetBattlerSpriteCoord(battlerId, xCoordType);
battlerY = GetBattlerSpriteCoord(battlerId, yCoordType);
if (IsDoubleBattle() && !IsContest())
{
v5 = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), v1);
v6 = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), v2);
partnerX = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), xCoordType);
partnerY = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), yCoordType);
}
else
{
v5 = v3;
v6 = v4;
partnerX = battlerX;
partnerY = battlerY;
}
*x = (v3 + v5) / 2;
*y = (v4 + v6) / 2;
*x = (battlerX + partnerX) / 2;
*y = (battlerY + partnerY) / 2;
}
u8 sub_80A89C8(int battlerId, u8 spriteId, int species)
+2 -2
View File
@@ -1971,7 +1971,7 @@ void sub_8172D98(u8 taskId)
switch (gTasks[taskId].data[15])
{
case 0:
if (sub_80A8364(gBattleAnimAttacker) == B_POSITION_OPPONENT_LEFT)
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == B_POSITION_OPPONENT_LEFT)
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG1 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL);
else
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG2 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL);
@@ -2188,7 +2188,7 @@ void sub_81732E4(u8 taskId)
static void sub_817330C(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, 0);
InitSpritePosToAnimAttacker(sprite, 0);
sprite->data[0] = 30;
sprite->data[2] = GetBattlerSpriteCoord(GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT), 0) + gBattleAnimArgs[2];
sprite->data[4] = GetBattlerSpriteCoord(GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT), 1) + gBattleAnimArgs[3];
File diff suppressed because it is too large Load Diff
+19 -19
View File
@@ -1257,7 +1257,7 @@ const struct SpriteTemplate gUnknown_08593C64 =
void sub_8103448(struct Sprite *sprite)
{
SetSpriteCoordsToAnimAttackerCoords(sprite);
sub_80A6864(sprite, gBattleAnimArgs[0]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->data[1] = gBattleAnimArgs[2];
sprite->data[2] = gBattleAnimArgs[4];
@@ -1339,7 +1339,7 @@ void sub_810358C(struct Sprite *sprite)
void sub_8103620(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3];
sprite->data[5] = gBattleAnimArgs[4];
@@ -1451,7 +1451,7 @@ void Anim_KinesisZapEnergy(struct Sprite *sprite)
// arg 1: y pixel offset
void Anim_SwordsDanceBlade(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
StoreSpriteCallbackInData6(sprite, Anim_SwordsDanceBladeStep);
}
@@ -1489,7 +1489,7 @@ void AnimSonicBoomProjectile(struct Sprite *sprite)
gBattleAnimArgs[3] = -gBattleAnimArgs[3];
}
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
targetXPos = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2];
targetYPos = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
rotation = ArcTan2Neg(targetXPos - sprite->pos1.x, targetYPos - sprite->pos1.y);
@@ -1732,7 +1732,7 @@ void sub_8103CF0(u8 taskId)
void sub_8103FE8(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
sprite->data[0] = 0x100 + (IndexOfSpritePaletteTag(gUnknown_085934A0.paletteTag) << 4);
sprite->callback = sub_8104018;
}
@@ -1828,7 +1828,7 @@ void sub_8104088(struct Sprite *sprite)
s16 r7;
u16 var;
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
r6 = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
r7 = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
@@ -1872,7 +1872,7 @@ static void sub_8104154(struct Sprite *sprite)
void sub_81041C4(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = 20;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
@@ -1931,7 +1931,7 @@ static void sub_81042A0(struct Sprite *sprite)
// arg 6: duration
void Anim_RazorWindTornado(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
sprite->pos1.y += 16;
@@ -2009,7 +2009,7 @@ void Anim_GuillotinePincer(struct Sprite *sprite)
static void Anim_GuillotinePincerStep1(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite) && sprite->animEnded)
if (AnimTranslateLinear(sprite) && sprite->animEnded)
{
SeekSpriteAnim(sprite, 0);
sprite->animPaused = 1;
@@ -2049,7 +2049,7 @@ static void Anim_GuillotinePincerStep2(struct Sprite *sprite)
static void Anim_GuillotinePincerStep3(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
DestroyAnimSprite(sprite);
}
@@ -2318,7 +2318,7 @@ void Anim_BreathPuff(struct Sprite *sprite)
sprite->data[3] = 0;
sprite->data[4] = 0;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
sprite->callback = TranslateAnimLinearSimple;
sprite->callback = AnimTranslateLinearSimple;
}
// Animates an "angry" mark above a mon's head.
@@ -2448,7 +2448,7 @@ void sub_8104E74(u8 taskId)
task->data[5] = 0;
task->data[15] = sub_80A861C(gBattleAnimTarget, 0);
if (sub_80A8364(gBattleAnimTarget) == 1)
if (GetBattlerSpriteBGPriorityRank(gBattleAnimTarget) == 1)
{
task->data[6] = gBattle_BG1_X;
params.dmaDest = (u16 *)REG_ADDR_BG1HOFS;
@@ -2628,7 +2628,7 @@ void sub_81051C4(struct Sprite *sprite)
void sub_8105284(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
{
FreeSpriteOamMatrix(sprite);
DestroyAnimSprite(sprite);
@@ -2736,7 +2736,7 @@ void sub_81054E8(struct Sprite *sprite)
void sub_8105538(struct Sprite *sprite)
{
s16 r1;
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
r1 = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? -160 : 160;
sprite->data[0] = 0x380;
sprite->data[1] = r1;
@@ -3098,7 +3098,7 @@ static void sub_8105D88(struct Sprite *sprite, u8 a, u8 b)
void sub_8105DE8(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
@@ -3113,7 +3113,7 @@ void sub_8105DE8(struct Sprite *sprite)
void sub_8105E60(struct Sprite *sprite)
{
if (++sprite->data[0] == 1)
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
sprite->pos2.x = Sin(sprite->data[1], 8);
sprite->pos2.y = sprite->data[2] >> 8;
@@ -3218,7 +3218,7 @@ void sub_81060B0(u8 taskId)
void sub_8106140(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = 95;
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
@@ -3230,7 +3230,7 @@ void sub_8106140(struct Sprite *sprite)
static void sub_810618C(struct Sprite *sprite)
{
if (!TranslateAnimLinear(sprite))
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.y += Sin(sprite->data[5], 14);
sprite->data[5] = (sprite->data[5] + 4) & 0xFF;
@@ -3550,7 +3550,7 @@ static void sub_810699C(struct Sprite *sprite)
void sub_81069B8(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->callback = sub_810699C;
}
+22 -22
View File
@@ -1225,7 +1225,7 @@ void sub_815A254(struct Sprite *sprite)
u8 x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
u8 y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
rotation = ArcTan2Neg(sprite->pos1.x - x, sprite->pos1.y - y);
rotation += 0x6000;
@@ -1406,7 +1406,7 @@ void sub_815A6C4(struct Sprite *sprite)
u16 x;
u16 y;
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
SetAverageBattlerPositions(gBattleAnimTarget, FALSE, &x, &y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
@@ -1444,7 +1444,7 @@ static void sub_815A76C(struct Sprite *sprite)
void sub_815A7B0(struct Sprite *sprite)
{
SetSpriteCoordsToAnimAttackerCoords(sprite);
sub_80A6864(sprite, gBattleAnimArgs[0]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@@ -1458,7 +1458,7 @@ void sub_815A7EC(struct Sprite *sprite)
if (sprite->data[0] == 0)
{
SetSpriteCoordsToAnimAttackerCoords(sprite);
sub_80A6864(sprite, gBattleAnimArgs[0]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
if (!IsContest())
{
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
@@ -1528,7 +1528,7 @@ void sub_815A934(struct Sprite *sprite)
SetGpuReg(REG_OFFSET_WIN0H, gBattle_WIN0H);
SetGpuReg(REG_OFFSET_WIN0V, gBattle_WIN0V);
sub_80A6980(sprite, FALSE);
InitSpritePosToAnimTarget(sprite, FALSE);
sprite->oam.objMode = ST_OAM_OBJ_WINDOW;
sprite->invisible = 1;
@@ -1745,12 +1745,12 @@ void sub_815ADB0(u8 taskId)
if (!gBattleAnimArgs[0])
{
var0 = GetBattlerYCoordWithElevation(gBattleAnimAttacker);
toBG2 = sub_80A8364(gBattleAnimAttacker);
toBG2 = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
}
else
{
var0 = GetBattlerYCoordWithElevation(gBattleAnimTarget);
toBG2 = sub_80A8364(gBattleAnimTarget);
toBG2 = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
}
task->data[0] = var0 + 36;
@@ -2000,7 +2000,7 @@ static void sub_815B23C(struct Sprite *sprite)
void sub_815B27C(struct Sprite *sprite)
{
if (sprite->data[0] == 0)
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
if (++sprite->data[0] < 40)
{
@@ -2204,7 +2204,7 @@ void sub_815B70C(struct Sprite *sprite)
switch (sprite->data[0])
{
case 0:
InitAnimSpritePos(sprite, FALSE);
InitSpritePosToAnimAttacker(sprite, FALSE);
sprite->data[1] = 0x900;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->data[0]++;
@@ -2246,7 +2246,7 @@ void sub_815B7D0(u8 taskId)
{
case 0:
SetGpuReg(REG_OFFSET_MOSAIC, 0);
if (sub_80A8364(gBattleAnimAttacker) == 1)
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
SetAnimBgAttribute(1, BG_ANIM_MOSAIC, 1);
else
SetAnimBgAttribute(2, BG_ANIM_MOSAIC, 1);
@@ -2326,7 +2326,7 @@ void sub_815B7D0(u8 taskId)
break;
case 4:
SetGpuReg(REG_OFFSET_MOSAIC, 0);
if (sub_80A8364(gBattleAnimAttacker) == 1)
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
SetAnimBgAttribute(1, BG_ANIM_MOSAIC, 0);
else
SetAnimBgAttribute(2, BG_ANIM_MOSAIC, 0);
@@ -2666,7 +2666,7 @@ void sub_815C400(struct Sprite *sprite)
{
if (sprite->data[0] == 0)
{
InitAnimSpritePos(sprite, 0);
InitSpritePosToAnimAttacker(sprite, 0);
sprite->data[0]++;
}
else if (sprite->data[0]++ > 20)
@@ -3064,7 +3064,7 @@ void sub_815CC94(struct Sprite *sprite)
SetGpuReg(REG_OFFSET_WIN0V, gBattle_WIN0V);
sprite->data[0] = gBattleAnimArgs[2];
sub_80A6980(sprite, FALSE);
InitSpritePosToAnimTarget(sprite, FALSE);
sprite->oam.objMode = ST_OAM_OBJ_WINDOW;
sprite->invisible = 1;
sprite->callback = sub_815CD0C;
@@ -3166,7 +3166,7 @@ void sub_815CED8(u8 taskId)
otId = gContestResources->field_18->unkC;
species = gContestResources->field_18->unk2;
xOffset = 20;
priority = sub_80A8328(gBattleAnimAttacker);
priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
}
else
{
@@ -3188,7 +3188,7 @@ void sub_815CED8(u8 taskId)
}
xOffset = 20;
priority = sub_80A8328(gBattleAnimAttacker);
priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
}
else
{
@@ -3208,7 +3208,7 @@ void sub_815CED8(u8 taskId)
}
xOffset = -20;
priority = sub_80A8328(gBattleAnimAttacker);
priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
}
}
@@ -3290,7 +3290,7 @@ void sub_815D240(u8 taskId)
task->data[14] = task->data[13] + 66;
task->data[15] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
if (sub_80A8364(battler) == 1)
if (GetBattlerSpriteBGPriorityRank(battler) == 1)
{
scanlineParams.dmaDest = &REG_BG1HOFS;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1);
@@ -3333,7 +3333,7 @@ static void sub_815D398(u8 taskId)
s16 var3;
task = &gTasks[taskId];
if (sub_80A8364(task->data[5]) == 1)
if (GetBattlerSpriteBGPriorityRank(task->data[5]) == 1)
{
bgX = gBattle_BG1_X;
bgY = gBattle_BG1_Y;
@@ -4009,7 +4009,7 @@ void sub_815E444(struct Sprite *sprite)
sprite->data[4] = gBattleAnimArgs[3];
sprite->data[0] = gBattleAnimArgs[4];
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
sprite->callback = sub_80A70C0;
sprite->callback = InitAndRunAnimFastLinearTranslation;
}
void sub_815E47C(u8 taskId)
@@ -4452,7 +4452,7 @@ void sub_815EE84(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == 0)
{
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[7] = gBattleAnimAttacker;
}
else
@@ -4463,7 +4463,7 @@ void sub_815EE84(struct Sprite *sprite)
if (GetBattlerSide(sprite->data[7]) == B_SIDE_OPPONENT)
sprite->oam.matrixNum = 8;
sprite->oam.priority = sub_80A8328(sprite->data[7]);
sprite->oam.priority = GetBattlerSpriteBGPriority(sprite->data[7]);
sprite->oam.objMode = ST_OAM_OBJ_BLEND;
sprite->callback = sub_815EF08;
}
@@ -4517,7 +4517,7 @@ static void sub_815EF08(struct Sprite *sprite)
sprite->data[5]++;
break;
case 1:
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
{
switch (sprite->data[6])
{
+4 -4
View File
@@ -252,7 +252,7 @@ void sub_81104E4(struct Sprite *sprite)
if (IsContest())
gBattleAnimArgs[2] /= 2;
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
@@ -274,7 +274,7 @@ void sub_81104E4(struct Sprite *sprite)
static void sub_811057C(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
{
DestroyAnimSprite(sprite);
return;
@@ -389,7 +389,7 @@ void AnimTranslateStinger(struct Sprite *sprite)
}
}
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2];
lVarY = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
@@ -414,7 +414,7 @@ void AnimTranslateStinger(struct Sprite *sprite)
// arg 5: wave amplitude
void AnimMissileArc(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
if (GetBattlerSide(gBattleAnimAttacker))
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
+2 -2
View File
@@ -251,7 +251,7 @@ void sub_81131B4(struct Sprite *sprite)
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
}
sub_80A6864(sprite, gBattleAnimArgs[1]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[1]);
sprite->pos1.y += gBattleAnimArgs[2];
sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
@@ -329,7 +329,7 @@ void sub_81133E8(u8 taskId)
struct Task *task = &gTasks[taskId];
u16 i;
u8 r1;
if (sub_80A8364(gBattleAnimAttacker) == 1)
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
{
sp.dmaDest = &REG_BG1HOFS;
task->data[2] = gBattle_BG1_X;
+5 -5
View File
@@ -556,7 +556,7 @@ static void sub_810A308(struct Sprite *sprite)
sprite->pos2.y = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8;
if (gBattleAnimArgs[6] & 1)
sprite->oam.priority = sub_80A8328(battler) + 1;
sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1;
matrixNum = sprite->oam.matrixNum;
sineVal = gSineTable[gBattleAnimArgs[2]];
@@ -571,7 +571,7 @@ static void sub_810A308(struct Sprite *sprite)
static void sub_810A46C(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
@@ -588,7 +588,7 @@ static void sub_810A46C(struct Sprite *sprite)
static void sub_810A4F4(struct Sprite *sprite)
{
if (!TranslateAnimLinear(sprite))
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.x += Sin(sprite->data[7], sprite->data[5]);
sprite->pos2.y += Cos(sprite->data[7], sprite->data[5]);
@@ -665,7 +665,7 @@ static void sub_810A6EC(struct Sprite *sprite)
static void sub_810A75C(struct Sprite *sprite)
{
sub_80A6980(sprite, FALSE);
InitSpritePosToAnimTarget(sprite, FALSE);
sprite->oam.tileNum += gBattleAnimArgs[3] * 4;
if (gBattleAnimArgs[3] == 1)
@@ -1073,7 +1073,7 @@ void sub_810AB78(u8 taskId)
static void sub_810AC8C(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
{
gTasks[sprite->data[5]].data[7]--;
DestroySprite(sprite);
+15 -15
View File
@@ -416,7 +416,7 @@ const struct SpriteTemplate gUnknown_08596104 =
void unc_080B08A0(struct Sprite *sprite)
{
sub_80A6864(sprite, gBattleAnimArgs[0]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->data[0] = 15;
sprite->callback = WaitAnimForDuration;
@@ -459,9 +459,9 @@ void AnimBasicFistOrFoot(struct Sprite *sprite)
StartSpriteAnim(sprite, gBattleAnimArgs[4]);
if (gBattleAnimArgs[3] == 0)
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
else
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[2];
sprite->callback = WaitAnimForDuration;
@@ -534,7 +534,7 @@ static void sub_810D0B8(struct Sprite *sprite)
void sub_810D10C(struct Sprite *sprite)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = 30;
if (gBattleAnimArgs[2] == 0)
@@ -574,7 +574,7 @@ void sub_810D1B4(struct Sprite *sprite)
if (BATTLE_PARTNER(gBattleAnimAttacker) == gBattleAnimTarget && GetBattlerPosition(gBattleAnimTarget) < B_POSITION_PLAYER_RIGHT)
gBattleAnimArgs[0] *= -1;
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
@@ -596,7 +596,7 @@ void sub_810D1B4(struct Sprite *sprite)
static void sub_810D240(struct Sprite *sprite)
{
if (!TranslateAnimLinear(sprite))
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.y += Sin(sprite->data[7] >> 8, sprite->data[5]);
sprite->data[7] += sprite->data[6];
@@ -615,7 +615,7 @@ static void sub_810D240(struct Sprite *sprite)
// arg 3: spin duration
void AnimSpinningKickOrPunch(struct Sprite *sprite)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
StartSpriteAnim(sprite, gBattleAnimArgs[2]);
sprite->data[0] = gBattleAnimArgs[3];
@@ -639,7 +639,7 @@ static void AnimSpinningKickOrPunchFinish(struct Sprite *sprite)
// arg 2: initial wait duration
void AnimStompFoot(struct Sprite *sprite)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[2];
sprite->callback = AnimStompFootStep;
@@ -670,7 +670,7 @@ void sub_810D37C(struct Sprite *sprite)
{
if (sprite->data[0] == 0)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[1] = gBattleAnimArgs[2];
sprite->data[2] = gBattleAnimArgs[3];
sprite->data[0]++;
@@ -800,12 +800,12 @@ void sub_810D608(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
sprite->oam.priority = sub_80A8328(gBattleAnimAttacker);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
sprite->data[7] = gBattleAnimTarget;
}
else
{
sprite->oam.priority = sub_80A8328(gBattleAnimTarget);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget);
sprite->data[7] = gBattleAnimAttacker;
}
@@ -903,12 +903,12 @@ void sub_810D874(struct Sprite *sprite)
sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
battler = gBattleAnimTarget;
sprite->oam.priority = sub_80A8328(gBattleAnimAttacker);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
}
else
{
battler = gBattleAnimAttacker;
sprite->oam.priority = sub_80A8328(gBattleAnimTarget);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget);
}
if (IsContest())
@@ -965,9 +965,9 @@ void sub_810D984(struct Sprite *sprite)
void sub_810DA10(struct Sprite *sprite)
{
if (gBattleAnimArgs[2] == 0)
InitAnimSpritePos(sprite, 0);
InitSpritePosToAnimAttacker(sprite, 0);
else
sub_80A6980(sprite, FALSE);
InitSpritePosToAnimTarget(sprite, FALSE);
if (IsContest())
{
+10 -10
View File
@@ -472,14 +472,14 @@ static void sub_8108EC8(struct Sprite *sprite)
static void sub_8108F08(struct Sprite *sprite)
{
sub_80A6864(sprite, gBattleAnimArgs[0]);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = gBattleAnimArgs[2];
sprite->data[2] = gBattleAnimArgs[3];
sprite->callback = TranslateAnimLinearSimple;
sprite->callback = AnimTranslateLinearSimple;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
}
@@ -644,7 +644,7 @@ static void sub_8109200(struct Sprite *sprite)
//void AnimFireRing(struct Sprite *sprite)
void AnimFireRing(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[7] = gBattleAnimArgs[2];
sprite->data[0] = 0;
@@ -672,7 +672,7 @@ static void AnimFireRingStep1(struct Sprite *sprite)
static void AnimFireRingStep2(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
{
sprite->data[0] = 0;
@@ -731,7 +731,7 @@ static void AnimFireCross(struct Sprite *sprite)
static void sub_81093A4(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[1] = gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[3];
@@ -1054,7 +1054,7 @@ static void sub_8109AFC(struct Sprite *sprite)
switch (sprite->data[0])
{
case 0:
InitAnimSpritePos(sprite, 0);
InitSpritePosToAnimAttacker(sprite, 0);
StartSpriteAnim(sprite, gBattleAnimArgs[2]);
sprite->data[7] = gBattleAnimArgs[2];
@@ -1067,7 +1067,7 @@ static void sub_8109AFC(struct Sprite *sprite)
sprite->data[4] = -4;
}
sprite->oam.priority = sub_80A8328(gBattleAnimTarget);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget);
sprite->data[0]++;
break;
case 1:
@@ -1119,7 +1119,7 @@ static void sub_8109C4C(struct Sprite *sprite)
s16 initialData5;
s16 newData5;
if (!TranslateAnimLinear(sprite))
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.x += Sin(sprite->data[5], 16);
initialData5 = sprite->data[5];
@@ -1157,9 +1157,9 @@ void sub_8109CB0(struct Sprite *sprite)
if (!IsContest())
{
if (sprite->data[1] < 64 || sprite->data[1] > 195)
sprite->oam.priority = sub_80A8328(gBattleAnimTarget);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget);
else
sprite->oam.priority = sub_80A8328(gBattleAnimTarget) + 1;
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget) + 1;
}
else
{
+10 -10
View File
@@ -217,7 +217,7 @@ const struct SpriteTemplate gUnknown_08596E48 =
static void sub_811160C(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
@@ -235,7 +235,7 @@ static void sub_8111674(struct Sprite *sprite)
s16 r0;
s16 r2;
sub_8111764(sprite);
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
{
sprite->callback = sub_81116E8;
return;
@@ -258,7 +258,7 @@ static void sub_81116E8(struct Sprite *sprite)
s16 r2;
s16 r0;
sprite->data[0] = 1;
TranslateAnimLinear(sprite);
AnimTranslateLinear(sprite);
sprite->pos2.x += Sin(sprite->data[5], 10);
sprite->pos2.y += Cos(sprite->data[5], 15);
@@ -313,7 +313,7 @@ static void sub_8111764(struct Sprite *sprite)
static void sub_81117F4(struct Sprite *sprite)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->callback = sub_8111814;
sprite->callback(sprite);
}
@@ -461,7 +461,7 @@ static void AnimShadowBallStep(struct Sprite *sprite)
static void sub_8111B9C(struct Sprite *sprite)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->callback = sub_8111BB4;
}
@@ -536,7 +536,7 @@ void sub_8111C50(u8 taskId)
gSprites[task->data[0]].data[3] = 0;
gSprites[task->data[0]].data[4] = 0;
StoreSpriteCallbackInData6(&gSprites[task->data[0]], SpriteCallbackDummy);
gSprites[task->data[0]].callback = TranslateAnimLinearSimple;
gSprites[task->data[0]].callback = AnimTranslateLinearSimple;
task->func = sub_8111D78;
}
@@ -590,7 +590,7 @@ static void sub_8111E78(u8 taskId)
{
s16 startLine;
struct Task *task = &gTasks[taskId];
u8 position = sub_80A8364(gBattleAnimTarget);
u8 position = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
switch (task->data[15])
{
@@ -698,7 +698,7 @@ static void sub_81120DC(u8 taskId)
static void sub_8112170(u8 taskId)
{
struct Task *task = &gTasks[taskId];
u8 position = sub_80A8364(gBattleAnimTarget);
u8 position = GetBattlerSpriteBGPriorityRank(gBattleAnimTarget);
switch (task->data[15])
{
@@ -1026,7 +1026,7 @@ static void sub_81129F0(struct Sprite *sprite)
s16 xDelta;
s16 xDelta2;
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{
xDelta = 24;
@@ -1170,7 +1170,7 @@ void sub_8112C6C(u8 taskId)
task->data[10] = GetBattlerYCoordWithElevation(gBattleAnimAttacker);
task->data[11] = (sub_80A861C(gBattleAnimAttacker, 1) / 2) + 8;
task->data[7] = 0;
task->data[5] = sub_80A8328(gBattleAnimAttacker);
task->data[5] = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
task->data[6] = GetBattlerSpriteSubpriority(gBattleAnimAttacker) - 2;
task->data[3] = 0;
task->data[4] = 16;
+5 -5
View File
@@ -183,7 +183,7 @@ static void AnimBonemerangProjectileEnd(struct Sprite *sprite)
// arg 4: duration
void AnimBoneHitProjectile(struct Sprite *sprite)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
@@ -205,7 +205,7 @@ void AnimDirtScatter(struct Sprite *sprite)
u8 targetXPos, targetYPos;
s16 xOffset, yOffset;
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
targetXPos = GetBattlerSpriteCoord2(gBattleAnimTarget, 2);
targetYPos = GetBattlerSpriteCoord2(gBattleAnimTarget, 3);
@@ -306,7 +306,7 @@ static void sub_8114CFC(u8 taskId)
{
case 0:
task->data[10] = GetAnimBattlerSpriteId(0);
task->data[11] = sub_80A8364(gBattleAnimAttacker);
task->data[11] = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
if (task->data[11] == 1)
{
task->data[12] = gBattle_BG1_X;
@@ -375,7 +375,7 @@ static void sub_8114EB4(u8 taskId)
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].pos2.y = 0;
if (sub_80A8364(gBattleAnimAttacker) == 1)
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
gBattle_BG1_Y = 0;
else
gBattle_BG2_Y = 0;
@@ -422,7 +422,7 @@ static void sub_8114FD8(u8 taskId)
{
case 0:
task->data[10] = GetAnimBattlerSpriteId(0);
task->data[11] = sub_80A8364(gBattleAnimAttacker);
task->data[11] = GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker);
if (task->data[11] == 1)
task->data[12] = gBattle_BG1_X;
else
+10 -10
View File
@@ -880,9 +880,9 @@ void sub_8116388(struct Sprite *sprite)
{
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
if (gBattleAnimArgs[2] == 0)
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
else
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@@ -892,9 +892,9 @@ static void sub_81163D0(struct Sprite *sprite)
{
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
if (gBattleAnimArgs[2] == 0)
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
else
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4];
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
@@ -916,9 +916,9 @@ void sub_8116458(struct Sprite *sprite)
StartSpriteAffineAnim(sprite, gBattleAnimArgs[1]);
if (gBattleAnimArgs[0] == 0)
InitAnimSpritePos(sprite, 0);
InitSpritePosToAnimAttacker(sprite, 0);
else
sub_80A6980(sprite, FALSE);
InitSpritePosToAnimTarget(sprite, FALSE);
sprite->pos2.x += (Random2() % 48) - 24;
sprite->pos2.y += (Random2() % 24) - 12;
@@ -942,9 +942,9 @@ void sub_81164F0(struct Sprite *sprite)
void sub_8116560(struct Sprite *sprite)
{
if (gBattleAnimArgs[2] == 0)
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
else
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[3];
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@@ -955,9 +955,9 @@ void sub_81165A8(struct Sprite *sprite)
{
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
if (gBattleAnimArgs[2] == 0)
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
else
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->callback = sub_81165E4;
}
+4 -4
View File
@@ -194,7 +194,7 @@ void sub_810DBAC(struct Sprite *sprite)
if (!gBattleAnimArgs[3])
StartSpriteAnim(sprite, 2);
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
@@ -218,7 +218,7 @@ void sub_810DC2C(struct Sprite *sprite)
if (!gBattleAnimArgs[3])
StartSpriteAnim(sprite, 2);
InitAnimSpritePos(sprite, 1);
InitSpritePosToAnimAttacker(sprite, 1);
SetAverageBattlerPositions(gBattleAnimTarget, 1, &l1, &l2);
if (GetBattlerSide(gBattleAnimAttacker))
@@ -258,7 +258,7 @@ void sub_810DCD0(struct Sprite *sprite)
static void sub_810DD24(struct Sprite *sprite)
{
TranslateAnimLinearSimple(sprite);
AnimTranslateLinearSimple(sprite);
sprite->data[1] -= sprite->data[5];
sprite->data[2] -= sprite->data[6];
@@ -295,7 +295,7 @@ void AnimBubbleEffect(struct Sprite *sprite)
{
if (!gBattleAnimArgs[2])
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
}
else
{
+1 -1
View File
@@ -922,7 +922,7 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
StartSpriteAffineAnim(sprite, 4);
}
r4 = sprite->data[0];
TranslateAnimLinear(sprite);
AnimTranslateLinear(sprite);
sprite->data[7] += sprite->sBattler / 3;
sprite->pos2.y += Sin(HIBYTE(sprite->data[7]), sprite->data[5]);
sprite->oam.affineParam += 0x100;
+4 -4
View File
@@ -367,16 +367,16 @@ void sub_8110AB4(struct Sprite *sprite)
sprite->data[3] = 0;
sprite->data[4] = 0;
sprite->callback = TranslateAnimLinearSimple;
sprite->callback = AnimTranslateLinearSimple;
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
}
void sub_8110B38(struct Sprite *sprite)
{
if (gBattleAnimArgs[6] == 0)
InitAnimSpritePos(sprite, 0);
InitSpritePosToAnimAttacker(sprite, 0);
else
sub_80A6980(sprite, FALSE);
InitSpritePosToAnimTarget(sprite, FALSE);
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = gBattleAnimArgs[2];
@@ -555,7 +555,7 @@ void AnimDirtParticleAcrossScreen(struct Sprite *sprite)
void AnimRaiseSprite(struct Sprite *sprite)
{
StartSpriteAnim(sprite, gBattleAnimArgs[4]);
InitAnimSpritePos(sprite, 0);
InitSpritePosToAnimAttacker(sprite, 0);
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[2] = sprite->pos1.x;
+11 -11
View File
@@ -563,7 +563,7 @@ void sub_8107380(struct Sprite *sprite)
u16 trigIndex = gSprites[otherSpriteId].data[3];
sprite->data[0] = 1;
TranslateAnimLinear(sprite);
AnimTranslateLinear(sprite);
sprite->pos2.x += Sin(trigIndex >> 8, gSprites[otherSpriteId].data[0]);
sprite->pos2.y += Cos(trigIndex >> 8, gSprites[otherSpriteId].data[1]);
gSprites[otherSpriteId].data[3] = trigIndex + gSprites[otherSpriteId].data[2];
@@ -596,7 +596,7 @@ void sub_810744C(struct Sprite *sprite)
{
s16 unkArg;
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
unkArg = -gBattleAnimArgs[2];
else
@@ -619,7 +619,7 @@ void sub_81074E4(struct Sprite *sprite)
StartSpriteAnim(sprite, 1);
sprite->affineAnimPaused = FALSE;
}
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
DestroyAnimSprite(sprite);
}
@@ -727,7 +727,7 @@ void sub_81075EC(struct Sprite *sprite)
{
u16 retArg;
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = 30;
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
@@ -752,7 +752,7 @@ void sub_81075EC(struct Sprite *sprite)
void sub_8107674(struct Sprite *sprite)
{
if (TranslateAnimLinear(sprite))
if (AnimTranslateLinear(sprite))
DestroyAnimSprite(sprite);
sprite->pos2.y += Sin(sprite->data[6] >> 8, sprite->data[7]);
if ((sprite->data[6] + sprite->data[5]) >> 8 > 127)
@@ -833,7 +833,7 @@ void sub_81077C0(struct Sprite *sprite)
coordType = 3;
else
coordType = 1;
InitAnimSpritePos(sprite, animType);
InitSpritePosToAnimAttacker(sprite, animType);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[4];
@@ -845,7 +845,7 @@ void sub_81077C0(struct Sprite *sprite)
void sub_8107894(struct Sprite *sprite)
{
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[4];
@@ -856,9 +856,9 @@ void sub_8107894(struct Sprite *sprite)
void sub_81078D0(struct Sprite *sprite)
{
if (gBattleAnimArgs[3])
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
else
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[7] = gBattleAnimArgs[2];
sprite->callback = sub_810790C;
}
@@ -1887,7 +1887,7 @@ void sub_8108034(struct Sprite *sprite)
s16 randData2;
sprite->oam.tileNum += 8;
sub_80A6980(sprite, TRUE);
InitSpritePosToAnimTarget(sprite, TRUE);
randData = (Random2() & 0xFF) | 256;
randData2 = (Random2() & 0x1FF);
if (randData2 > 255)
@@ -2387,7 +2387,7 @@ void sub_8108C54(struct Sprite *sprite)
void sub_8108C94(struct Sprite *sprite)
{
InitAnimSpritePos(sprite, TRUE);
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->data[3] = gBattleAnimArgs[2];