Flatten pos fields in struct Sprite
This commit is contained in:
+185
-185
@@ -1266,7 +1266,7 @@ static void AnimCirclingFinger(struct Sprite *sprite)
|
||||
{
|
||||
SetSpriteCoordsToAnimAttackerCoords(sprite);
|
||||
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
sprite->y += gBattleAnimArgs[1];
|
||||
sprite->data[1] = gBattleAnimArgs[2];
|
||||
sprite->data[2] = gBattleAnimArgs[4];
|
||||
sprite->data[3] = gBattleAnimArgs[5];
|
||||
@@ -1295,12 +1295,12 @@ static void AnimBouncingMusicNote_Step(struct Sprite *sprite)
|
||||
switch (sprite->data[0])
|
||||
{
|
||||
case 0:
|
||||
sprite->pos2.y -= 3;
|
||||
sprite->y2 -= 3;
|
||||
if (++sprite->data[1] == 6)
|
||||
sprite->data[0]++;
|
||||
break;
|
||||
case 1:
|
||||
sprite->pos2.y += 3;
|
||||
sprite->y2 += 3;
|
||||
if (--sprite->data[1] == 0)
|
||||
sprite->data[0]++;
|
||||
break;
|
||||
@@ -1314,12 +1314,12 @@ static void AnimBouncingMusicNote_Step(struct Sprite *sprite)
|
||||
static void AnimVibrateBattlerBack_Step(struct Sprite *sprite)
|
||||
{
|
||||
s16 temp;
|
||||
gSprites[sprite->data[2]].pos2.x += sprite->data[1];
|
||||
gSprites[sprite->data[2]].x2 += sprite->data[1];
|
||||
temp = sprite->data[1];
|
||||
sprite->data[1] = -temp;
|
||||
if (sprite->data[0] == 0)
|
||||
{
|
||||
gSprites[sprite->data[2]].pos2.x = 0;
|
||||
gSprites[sprite->data[2]].x2 = 0;
|
||||
DestroySpriteAndMatrix(sprite);
|
||||
}
|
||||
|
||||
@@ -1329,15 +1329,15 @@ static void AnimVibrateBattlerBack_Step(struct Sprite *sprite)
|
||||
static void AnimVibrateBattlerBack(struct Sprite *sprite)
|
||||
{
|
||||
u8 spriteId;
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
spriteId = gBattlerSpriteIds[gBattleAnimTarget];
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
sprite->pos1.x -= gBattleAnimArgs[0];
|
||||
sprite->x -= gBattleAnimArgs[0];
|
||||
else
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->x += gBattleAnimArgs[0];
|
||||
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
sprite->y += gBattleAnimArgs[1];
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
sprite->data[1] = gBattleAnimArgs[3];
|
||||
sprite->data[2] = spriteId;
|
||||
@@ -1358,8 +1358,8 @@ static void AnimMovingClamp(struct Sprite *sprite)
|
||||
static void AnimMovingClamp_Step(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = sprite->data[1];
|
||||
sprite->data[2] = sprite->pos1.x;
|
||||
sprite->data[4] = sprite->pos1.y + 15;
|
||||
sprite->data[2] = sprite->x;
|
||||
sprite->data[4] = sprite->y + 15;
|
||||
sprite->callback = StartAnimLinearTranslation;
|
||||
StoreSpriteCallbackInData6(sprite, AnimMovingClamp_End);
|
||||
}
|
||||
@@ -1394,7 +1394,7 @@ static void AnimTask_Withdraw_Step(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[0] += 0xB0;
|
||||
// this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation()
|
||||
gSprites[spriteId].pos2.y++;
|
||||
gSprites[spriteId].y2++;
|
||||
}
|
||||
else if (gTasks[taskId].data[1] == 1)
|
||||
{
|
||||
@@ -1407,7 +1407,7 @@ static void AnimTask_Withdraw_Step(u8 taskId)
|
||||
{
|
||||
gTasks[taskId].data[0] -= 0xB0;
|
||||
// this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation()
|
||||
gSprites[spriteId].pos2.y--;
|
||||
gSprites[spriteId].y2--;
|
||||
}
|
||||
|
||||
SetBattlerSpriteYOffsetFromRotation(spriteId);
|
||||
@@ -1433,11 +1433,11 @@ static void AnimKinesisZapEnergy(struct Sprite *sprite)
|
||||
{
|
||||
SetSpriteCoordsToAnimAttackerCoords(sprite);
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
sprite->pos1.x -= gBattleAnimArgs[0];
|
||||
sprite->x -= gBattleAnimArgs[0];
|
||||
else
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->x += gBattleAnimArgs[0];
|
||||
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
sprite->y += gBattleAnimArgs[1];
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
{
|
||||
sprite->hFlip = 1;
|
||||
@@ -1467,8 +1467,8 @@ static void AnimSwordsDanceBlade(struct Sprite *sprite)
|
||||
static void AnimSwordsDanceBlade_Step(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] = 6;
|
||||
sprite->data[2] = sprite->pos1.x;
|
||||
sprite->data[4] = sprite->pos1.y - 32;
|
||||
sprite->data[2] = sprite->x;
|
||||
sprite->data[4] = sprite->y - 32;
|
||||
sprite->callback = StartAnimLinearTranslation;
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
@@ -1500,7 +1500,7 @@ static void AnimSonicBoomProjectile(struct Sprite *sprite)
|
||||
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);
|
||||
rotation = ArcTan2Neg(targetXPos - sprite->x, targetYPos - sprite->y);
|
||||
rotation += 0xF000;
|
||||
if (IsContest())
|
||||
rotation -= 0x6000;
|
||||
@@ -1539,14 +1539,14 @@ static void AnimAirWaveProjectile_Step1(struct Sprite *sprite)
|
||||
sprite->data[1] += sprite->data[5];
|
||||
sprite->data[2] += sprite->data[6];
|
||||
if (1 & task->data[7])
|
||||
sprite->pos2.x = ((u16)sprite->data[1] >> 8) * -1;
|
||||
sprite->x2 = ((u16)sprite->data[1] >> 8) * -1;
|
||||
else
|
||||
sprite->pos2.x = (u16)sprite->data[1] >> 8;
|
||||
sprite->x2 = (u16)sprite->data[1] >> 8;
|
||||
|
||||
if (1 & task->data[8])
|
||||
sprite->pos2.y = ((u16)sprite->data[2] / 256u) * -1;
|
||||
sprite->y2 = ((u16)sprite->data[2] / 256u) * -1;
|
||||
else
|
||||
sprite->pos2.y = (u16)sprite->data[2] / 256u;
|
||||
sprite->y2 = (u16)sprite->data[2] / 256u;
|
||||
|
||||
if (sprite->data[0]-- <= 0)
|
||||
{
|
||||
@@ -1565,33 +1565,33 @@ static void AnimAirWaveProjectile(struct Sprite *sprite)
|
||||
sprite->data[1] += (-2 & task->data[7]);
|
||||
sprite->data[2] += (-2 & task->data[8]);
|
||||
if (1 & task->data[7])
|
||||
sprite->pos2.x = ((u16)sprite->data[1] >> 8) * -1;
|
||||
sprite->x2 = ((u16)sprite->data[1] >> 8) * -1;
|
||||
else
|
||||
sprite->pos2.x = (u16)sprite->data[1] >> 8;
|
||||
sprite->x2 = (u16)sprite->data[1] >> 8;
|
||||
|
||||
if (1 & task->data[8])
|
||||
sprite->pos2.y = ((u16)sprite->data[2] / 256u) * -1;
|
||||
sprite->y2 = ((u16)sprite->data[2] / 256u) * -1;
|
||||
else
|
||||
sprite->pos2.y = (u16)sprite->data[2] / 256u;
|
||||
sprite->y2 = (u16)sprite->data[2] / 256u;
|
||||
|
||||
if (sprite->data[0]-- <= 0)
|
||||
{
|
||||
sprite->data[0] = 8;
|
||||
task->data[5] = 4;
|
||||
a = MathUtil_Inv16(Q_8_8(16));
|
||||
sprite->pos1.x += sprite->pos2.x;
|
||||
sprite->pos1.y += sprite->pos2.y;
|
||||
sprite->pos2.y = 0;
|
||||
sprite->pos2.x = 0;
|
||||
if (task->data[11] >= sprite->pos1.x)
|
||||
b = (task->data[11] - sprite->pos1.x) << 8;
|
||||
sprite->x += sprite->x2;
|
||||
sprite->y += sprite->y2;
|
||||
sprite->y2 = 0;
|
||||
sprite->x2 = 0;
|
||||
if (task->data[11] >= sprite->x)
|
||||
b = (task->data[11] - sprite->x) << 8;
|
||||
else
|
||||
b = (sprite->pos1.x - task->data[11]) << 8;
|
||||
b = (sprite->x - task->data[11]) << 8;
|
||||
|
||||
if (task->data[12] >= sprite->pos1.y)
|
||||
c = (task->data[12] - sprite->pos1.y) << 8;
|
||||
if (task->data[12] >= sprite->y)
|
||||
c = (task->data[12] - sprite->y) << 8;
|
||||
else
|
||||
c = (sprite->pos1.y - task->data[12]) << 8;
|
||||
c = (sprite->y - task->data[12]) << 8;
|
||||
|
||||
sprite->data[2] = 0;
|
||||
sprite->data[1] = 0;
|
||||
@@ -1778,7 +1778,7 @@ static void AnimCoinThrow(struct Sprite *sprite)
|
||||
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
|
||||
|
||||
r6 += gBattleAnimArgs[2];
|
||||
var = ArcTan2Neg(r6 - sprite->pos1.x, r7 - sprite->pos1.y);
|
||||
var = ArcTan2Neg(r6 - sprite->x, r7 - sprite->y);
|
||||
var += 0xC000;
|
||||
TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, var);
|
||||
sprite->data[0] = gBattleAnimArgs[4];
|
||||
@@ -1791,18 +1791,18 @@ static void AnimCoinThrow(struct Sprite *sprite)
|
||||
static void AnimFallingCoin(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[2] = -16;
|
||||
sprite->pos1.y += 8;
|
||||
sprite->y += 8;
|
||||
sprite->callback = AnimFallingCoin_Step;
|
||||
}
|
||||
|
||||
static void AnimFallingCoin_Step(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] += 0x80;
|
||||
sprite->pos2.x = sprite->data[0] >> 8;
|
||||
sprite->x2 = sprite->data[0] >> 8;
|
||||
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
|
||||
sprite->pos2.x = -sprite->pos2.x;
|
||||
sprite->x2 = -sprite->x2;
|
||||
|
||||
sprite->pos2.y = Sin(sprite->data[1], sprite->data[2]);
|
||||
sprite->y2 = Sin(sprite->data[1], sprite->data[2]);
|
||||
sprite->data[1] += 5;
|
||||
if (sprite->data[1] > 126)
|
||||
{
|
||||
@@ -1830,10 +1830,10 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite)
|
||||
u16 rand;
|
||||
s16* ptr;
|
||||
PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(63));
|
||||
sprite->pos1.x += sprite->pos2.x;
|
||||
sprite->pos1.y += sprite->pos2.y;
|
||||
sprite->pos2.y = 0;
|
||||
sprite->pos2.x = 0;
|
||||
sprite->x += sprite->x2;
|
||||
sprite->y += sprite->y2;
|
||||
sprite->y2 = 0;
|
||||
sprite->x2 = 0;
|
||||
ptr = &sprite->data[7];
|
||||
for (i = 0; i < 8; i++)
|
||||
ptr[i - 7] = 0;
|
||||
@@ -1849,11 +1849,11 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite)
|
||||
static void AnimBulletSeed_Step2(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[0] += sprite->data[7];
|
||||
sprite->pos2.x = sprite->data[0] >> 8;
|
||||
sprite->x2 = sprite->data[0] >> 8;
|
||||
if (sprite->data[7] & 1)
|
||||
sprite->pos2.x = -sprite->pos2.x;
|
||||
sprite->x2 = -sprite->x2;
|
||||
|
||||
sprite->pos2.y = Sin(sprite->data[1], sprite->data[6]);
|
||||
sprite->y2 = Sin(sprite->data[1], sprite->data[6]);
|
||||
sprite->data[1] += 8;
|
||||
if (sprite->data[1] > 126)
|
||||
{
|
||||
@@ -1876,7 +1876,7 @@ static void AnimRazorWindTornado(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, FALSE);
|
||||
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
|
||||
sprite->pos1.y += 16;
|
||||
sprite->y += 16;
|
||||
|
||||
sprite->data[0] = gBattleAnimArgs[4];
|
||||
sprite->data[1] = gBattleAnimArgs[2];
|
||||
@@ -1905,8 +1905,8 @@ static void AnimViceGripPincer(struct Sprite *sprite)
|
||||
StartSpriteAnim(sprite, 1);
|
||||
}
|
||||
|
||||
sprite->pos1.x += startXOffset;
|
||||
sprite->pos1.y += startYOffset;
|
||||
sprite->x += startXOffset;
|
||||
sprite->y += startYOffset;
|
||||
sprite->data[0] = 6;
|
||||
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + endXOffset;
|
||||
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + endYOffset;
|
||||
@@ -1937,12 +1937,12 @@ static void AnimGuillotinePincer(struct Sprite *sprite)
|
||||
StartSpriteAnim(sprite, gBattleAnimArgs[0]);
|
||||
}
|
||||
|
||||
sprite->pos1.x += startXOffset;
|
||||
sprite->pos1.y += startYOffset;
|
||||
sprite->x += startXOffset;
|
||||
sprite->y += startYOffset;
|
||||
sprite->data[0] = 6;
|
||||
sprite->data[1] = sprite->pos1.x;
|
||||
sprite->data[1] = sprite->x;
|
||||
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + endXOffset;
|
||||
sprite->data[3] = sprite->pos1.y;
|
||||
sprite->data[3] = sprite->y;
|
||||
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + endYOffset;
|
||||
InitAnimLinearTranslation(sprite);
|
||||
sprite->data[5] = gBattleAnimArgs[0];
|
||||
@@ -1956,10 +1956,10 @@ static void AnimGuillotinePincer_Step1(struct Sprite *sprite)
|
||||
{
|
||||
SeekSpriteAnim(sprite, 0);
|
||||
sprite->animPaused = 1;
|
||||
sprite->pos1.x += sprite->pos2.x;
|
||||
sprite->pos1.y += sprite->pos2.y;
|
||||
sprite->pos2.x = 2;
|
||||
sprite->pos2.y = -2;
|
||||
sprite->x += sprite->x2;
|
||||
sprite->y += sprite->y2;
|
||||
sprite->x2 = 2;
|
||||
sprite->y2 = -2;
|
||||
sprite->data[0] = sprite->data[6];
|
||||
sprite->data[1] ^= 1;
|
||||
sprite->data[2] ^= 1;
|
||||
@@ -1973,15 +1973,15 @@ static void AnimGuillotinePincer_Step2(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[3])
|
||||
{
|
||||
sprite->pos2.x = -sprite->pos2.x;
|
||||
sprite->pos2.y = -sprite->pos2.y;
|
||||
sprite->x2 = -sprite->x2;
|
||||
sprite->y2 = -sprite->y2;
|
||||
}
|
||||
|
||||
sprite->data[3] ^= 1;
|
||||
if (++sprite->data[4] == 51)
|
||||
{
|
||||
sprite->pos2.y = 0;
|
||||
sprite->pos2.x = 0;
|
||||
sprite->y2 = 0;
|
||||
sprite->x2 = 0;
|
||||
sprite->data[4] = 0;
|
||||
sprite->data[3] = 0;
|
||||
sprite->animPaused = 0;
|
||||
@@ -2099,7 +2099,7 @@ static void AnimTask_Minimize_Step(u8 taskId)
|
||||
break;
|
||||
case 5:
|
||||
ResetSpriteRotScale(task->data[0]);
|
||||
gSprites[task->data[15]].pos2.y = 0;
|
||||
gSprites[task->data[15]].y2 = 0;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
break;
|
||||
}
|
||||
@@ -2176,7 +2176,7 @@ static void AnimTask_Splash_Step(u8 taskId)
|
||||
case 0:
|
||||
RunAffineAnimFromTaskData(task);
|
||||
task->data[4] += 3;
|
||||
gSprites[task->data[0]].pos2.y += task->data[4];
|
||||
gSprites[task->data[0]].y2 += task->data[4];
|
||||
if (++task->data[3] > 7)
|
||||
{
|
||||
task->data[3] = 0;
|
||||
@@ -2185,7 +2185,7 @@ static void AnimTask_Splash_Step(u8 taskId)
|
||||
break;
|
||||
case 1:
|
||||
RunAffineAnimFromTaskData(task);
|
||||
gSprites[task->data[0]].pos2.y += task->data[4];
|
||||
gSprites[task->data[0]].y2 += task->data[4];
|
||||
if (++task->data[3] > 7)
|
||||
{
|
||||
task->data[3] = 0;
|
||||
@@ -2195,7 +2195,7 @@ static void AnimTask_Splash_Step(u8 taskId)
|
||||
case 2:
|
||||
if (task->data[4] != 0)
|
||||
{
|
||||
gSprites[task->data[0]].pos2.y -= 2;
|
||||
gSprites[task->data[0]].y2 -= 2;
|
||||
task->data[4] -= 2;
|
||||
}
|
||||
else
|
||||
@@ -2206,7 +2206,7 @@ static void AnimTask_Splash_Step(u8 taskId)
|
||||
{
|
||||
if (--task->data[2] == 0)
|
||||
{
|
||||
gSprites[task->data[0]].pos2.y = 0;
|
||||
gSprites[task->data[0]].y2 = 0;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
else
|
||||
@@ -2245,17 +2245,17 @@ static void AnimBreathPuff(struct Sprite *sprite)
|
||||
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
|
||||
{
|
||||
StartSpriteAnim(sprite, 0);
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + 32;
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + 32;
|
||||
sprite->data[1] = 64;
|
||||
}
|
||||
else
|
||||
{
|
||||
StartSpriteAnim(sprite, 1);
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) - 32;
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) - 32;
|
||||
sprite->data[1] = -64;
|
||||
}
|
||||
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
|
||||
sprite->data[0] = 52;
|
||||
sprite->data[2] = 0;
|
||||
sprite->data[3] = 0;
|
||||
@@ -2279,10 +2279,10 @@ static void AnimAngerMark(struct Sprite *sprite)
|
||||
if (GetBattlerSide(battler) == B_SIDE_OPPONENT)
|
||||
gBattleAnimArgs[1] *= -1;
|
||||
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1];
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2];
|
||||
if (sprite->pos1.y < 8)
|
||||
sprite->pos1.y = 8;
|
||||
sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1];
|
||||
sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2];
|
||||
if (sprite->y < 8)
|
||||
sprite->y = 8;
|
||||
|
||||
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
|
||||
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
|
||||
@@ -2315,8 +2315,8 @@ void AnimTask_ThrashMoveMonVertical(u8 taskId)
|
||||
task->data[2] = 4;
|
||||
task->data[3] = 7;
|
||||
task->data[4] = 3;
|
||||
task->data[5] = gSprites[task->data[0]].pos1.x;
|
||||
task->data[6] = gSprites[task->data[0]].pos1.y;
|
||||
task->data[5] = gSprites[task->data[0]].x;
|
||||
task->data[6] = gSprites[task->data[0]].y;
|
||||
task->data[7] = 0;
|
||||
task->data[8] = 0;
|
||||
task->data[9] = 2;
|
||||
@@ -2334,14 +2334,14 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId)
|
||||
task->data[7] = 0;
|
||||
task->data[8]++;
|
||||
if (task->data[8] & 1)
|
||||
gSprites[task->data[0]].pos1.y += task->data[9];
|
||||
gSprites[task->data[0]].y += task->data[9];
|
||||
else
|
||||
gSprites[task->data[0]].pos1.y -= task->data[9];
|
||||
gSprites[task->data[0]].y -= task->data[9];
|
||||
}
|
||||
switch (task->data[1])
|
||||
{
|
||||
case 0:
|
||||
gSprites[task->data[0]].pos1.x += task->data[2];
|
||||
gSprites[task->data[0]].x += task->data[2];
|
||||
if (--task->data[3] == 0)
|
||||
{
|
||||
task->data[3] = 14;
|
||||
@@ -2349,7 +2349,7 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId)
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
gSprites[task->data[0]].pos1.x -= task->data[2];
|
||||
gSprites[task->data[0]].x -= task->data[2];
|
||||
if (--task->data[3] == 0)
|
||||
{
|
||||
task->data[3] = 7;
|
||||
@@ -2357,7 +2357,7 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
gSprites[task->data[0]].pos1.x += task->data[2];
|
||||
gSprites[task->data[0]].x += task->data[2];
|
||||
if (--task->data[3] == 0)
|
||||
{
|
||||
if (--task->data[4] != 0)
|
||||
@@ -2368,7 +2368,7 @@ static void AnimTask_ThrashMoveMonVertical_Step(u8 taskId)
|
||||
else
|
||||
{
|
||||
if ((task->data[8] & 1) != 0)
|
||||
gSprites[task->data[0]].pos1.y -= task->data[9];
|
||||
gSprites[task->data[0]].y -= task->data[9];
|
||||
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
@@ -2467,8 +2467,8 @@ static void AnimTask_SketchDrawMon_Step(u8 taskId)
|
||||
|
||||
static void AnimPencil(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) - 16;
|
||||
sprite->pos1.y = GetBattlerYCoordWithElevation(gBattleAnimTarget) + 16;
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) - 16;
|
||||
sprite->y = GetBattlerYCoordWithElevation(gBattleAnimTarget) + 16;
|
||||
sprite->data[0] = 0;
|
||||
sprite->data[1] = 0;
|
||||
sprite->data[2] = 0;
|
||||
@@ -2499,7 +2499,7 @@ static void AnimPencil_Step(struct Sprite *sprite)
|
||||
if (++sprite->data[1] > 3 && sprite->data[2] < sprite->data[5])
|
||||
{
|
||||
sprite->data[1] = 0;
|
||||
sprite->pos1.y -= 1;
|
||||
sprite->y -= 1;
|
||||
sprite->data[2]++;
|
||||
if (sprite->data[2] % 10 == 0)
|
||||
PlaySE12WithPanning(SE_M_SKETCH, sprite->data[6]);
|
||||
@@ -2515,7 +2515,7 @@ static void AnimPencil_Step(struct Sprite *sprite)
|
||||
sprite->data[4] = -0x40 - sprite->data[4];
|
||||
sprite->data[3] *= -1;
|
||||
}
|
||||
sprite->pos2.x = sprite->data[4];
|
||||
sprite->x2 = sprite->data[4];
|
||||
if (sprite->data[5] == sprite->data[2])
|
||||
{
|
||||
sprite->data[1] = 0;
|
||||
@@ -2624,7 +2624,7 @@ static void AnimHyperVoiceRing(struct Sprite *sprite)
|
||||
r9 = GetBattlerSpriteCoord(battler1, r10) - gBattleAnimArgs[0];
|
||||
if (!IsContest() && IsBattlerSpriteVisible(BATTLE_PARTNER(battler1)))
|
||||
{
|
||||
if (gSprites[gBattlerSpriteIds[battler1]].pos1.x < gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].pos1.x)
|
||||
if (gSprites[gBattlerSpriteIds[battler1]].x < gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].x)
|
||||
sprite->subpriority = gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].subpriority + 1;
|
||||
else
|
||||
sprite->subpriority = gSprites[gBattlerSpriteIds[battler1]].subpriority - 1;
|
||||
@@ -2653,8 +2653,8 @@ static void AnimHyperVoiceRing(struct Sprite *sprite)
|
||||
sp0 -= gBattleAnimArgs[3];
|
||||
|
||||
sp1 += gBattleAnimArgs[4];
|
||||
sprite->pos1.x = sprite->data[1] = r9;
|
||||
sprite->pos1.y = sprite->data[3] = r6;
|
||||
sprite->x = sprite->data[1] = r9;
|
||||
sprite->y = sprite->data[3] = r6;
|
||||
sprite->data[2] = sp0;
|
||||
sprite->data[4] = sp1;
|
||||
sprite->data[0] = gBattleAnimArgs[0];
|
||||
@@ -2690,17 +2690,17 @@ static void AnimSoftBoiledEgg(struct Sprite *sprite)
|
||||
static void AnimSoftBoiledEgg_Step1(struct Sprite *sprite)
|
||||
{
|
||||
s16 add;
|
||||
sprite->pos2.y -= (sprite->data[0] >> 8);
|
||||
sprite->pos2.x = sprite->data[1] >> 8;
|
||||
sprite->y2 -= (sprite->data[0] >> 8);
|
||||
sprite->x2 = sprite->data[1] >> 8;
|
||||
sprite->data[0] -= 32;
|
||||
add = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? -160 : 160;
|
||||
sprite->data[1] += add;
|
||||
if (sprite->pos2.y > 0)
|
||||
if (sprite->y2 > 0)
|
||||
{
|
||||
sprite->pos1.y += sprite->pos2.y;
|
||||
sprite->pos1.x += sprite->pos2.x;
|
||||
sprite->pos2.y = 0;
|
||||
sprite->pos2.x = 0;
|
||||
sprite->y += sprite->y2;
|
||||
sprite->x += sprite->x2;
|
||||
sprite->y2 = 0;
|
||||
sprite->x2 = 0;
|
||||
sprite->data[0] = 0;
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
sprite->callback = AnimSoftBoiledEgg_Step2;
|
||||
@@ -2737,7 +2737,7 @@ static void AnimSoftBoiledEgg_Step3(struct Sprite *sprite)
|
||||
|
||||
static void AnimSoftBoiledEgg_Step3_Callback1(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos2.y -= 2;
|
||||
sprite->y2 -= 2;
|
||||
if (++sprite->data[0] == 9)
|
||||
{
|
||||
sprite->data[0] = 16;
|
||||
@@ -2793,7 +2793,7 @@ static void AnimTask_AttackerStretchAndDisappear_Step(u8 taskId)
|
||||
struct Task* task = &gTasks[taskId];
|
||||
if (!RunAffineAnimFromTaskData(task))
|
||||
{
|
||||
gSprites[task->data[0]].pos2.y = 0;
|
||||
gSprites[task->data[0]].y2 = 0;
|
||||
gSprites[task->data[0]].invisible = TRUE;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
@@ -2829,7 +2829,7 @@ static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId)
|
||||
switch (task->data[0])
|
||||
{
|
||||
case 0:
|
||||
gSprites[task->data[15]].pos2.x += task->data[14];
|
||||
gSprites[task->data[15]].x2 += task->data[14];
|
||||
task->data[1] = 0;
|
||||
task->data[2] = 0;
|
||||
task->data[3] = 0;
|
||||
@@ -2841,14 +2841,14 @@ static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId)
|
||||
task->data[1] = 0;
|
||||
task->data[2]++;
|
||||
if (task->data[2] & 1)
|
||||
gSprites[task->data[15]].pos2.x += 6;
|
||||
gSprites[task->data[15]].x2 += 6;
|
||||
else
|
||||
gSprites[task->data[15]].pos2.x -= 6;
|
||||
gSprites[task->data[15]].x2 -= 6;
|
||||
|
||||
if (++task->data[3] > 4)
|
||||
{
|
||||
if (task->data[2] & 1)
|
||||
gSprites[task->data[15]].pos2.x -= 6;
|
||||
gSprites[task->data[15]].x2 -= 6;
|
||||
|
||||
task->data[0]++;
|
||||
}
|
||||
@@ -2861,8 +2861,8 @@ static void AnimTask_ExtremeSpeedImpact_Step(u8 taskId)
|
||||
task->data[0]++;
|
||||
break;
|
||||
case 3:
|
||||
gSprites[task->data[15]].pos2.x += task->data[13];
|
||||
if (gSprites[task->data[15]].pos2.x == 0)
|
||||
gSprites[task->data[15]].x2 += task->data[13];
|
||||
if (gSprites[task->data[15]].x2 == 0)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
break;
|
||||
}
|
||||
@@ -2975,8 +2975,8 @@ static void AnimTask_SpeedDust_Step(u8 taskId)
|
||||
{
|
||||
gSprites[spriteId].data[0] = taskId;
|
||||
gSprites[spriteId].data[1] = 13;
|
||||
gSprites[spriteId].pos2.x = gSpeedDustPosTable[task->data[2]][0];
|
||||
gSprites[spriteId].pos2.y = gSpeedDustPosTable[task->data[2]][1];
|
||||
gSprites[spriteId].x2 = gSpeedDustPosTable[task->data[2]][0];
|
||||
gSprites[spriteId].y2 = gSpeedDustPosTable[task->data[2]][1];
|
||||
task->data[13]++;
|
||||
if (++task->data[2] > 3)
|
||||
{
|
||||
@@ -3059,8 +3059,8 @@ static void AnimMagentaHeart(struct Sprite *sprite)
|
||||
if (++sprite->data[0] == 1)
|
||||
InitSpritePosToAnimAttacker(sprite, FALSE);
|
||||
|
||||
sprite->pos2.x = Sin(sprite->data[1], 8);
|
||||
sprite->pos2.y = sprite->data[2] >> 8;
|
||||
sprite->x2 = Sin(sprite->data[1], 8);
|
||||
sprite->y2 = sprite->data[2] >> 8;
|
||||
sprite->data[1] = (sprite->data[1] + 7) & 0xFF;
|
||||
sprite->data[2] -= 0x80;
|
||||
if (sprite->data[0] == 60)
|
||||
@@ -3126,15 +3126,15 @@ void AnimTask_StretchTargetUp(u8 taskId)
|
||||
if (++gTasks[taskId].data[0] == 1)
|
||||
{
|
||||
PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_TARGET), sAffineAnims_StretchBattlerUp);
|
||||
gSprites[spriteId].pos2.x = 4;
|
||||
gSprites[spriteId].x2 = 4;
|
||||
}
|
||||
else
|
||||
{
|
||||
gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x;
|
||||
gSprites[spriteId].x2 = -gSprites[spriteId].x2;
|
||||
if (!RunAffineAnimFromTaskData(&gTasks[taskId]))
|
||||
{
|
||||
gSprites[spriteId].pos2.x = 0;
|
||||
gSprites[spriteId].pos2.y = 0;
|
||||
gSprites[spriteId].x2 = 0;
|
||||
gSprites[spriteId].y2 = 0;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
}
|
||||
@@ -3146,15 +3146,15 @@ void AnimTask_StretchAttackerUp(u8 taskId)
|
||||
if (++gTasks[taskId].data[0] == 1)
|
||||
{
|
||||
PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_ATTACKER), sAffineAnims_StretchBattlerUp);
|
||||
gSprites[spriteId].pos2.x = 4;
|
||||
gSprites[spriteId].x2 = 4;
|
||||
}
|
||||
else
|
||||
{
|
||||
gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x;
|
||||
gSprites[spriteId].x2 = -gSprites[spriteId].x2;
|
||||
if (!RunAffineAnimFromTaskData(&gTasks[taskId]))
|
||||
{
|
||||
gSprites[spriteId].pos2.x = 0;
|
||||
gSprites[spriteId].pos2.y = 0;
|
||||
gSprites[spriteId].x2 = 0;
|
||||
gSprites[spriteId].y2 = 0;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
}
|
||||
@@ -3164,9 +3164,9 @@ static void AnimRedHeartProjectile(struct Sprite *sprite)
|
||||
{
|
||||
InitSpritePosToAnimAttacker(sprite, TRUE);
|
||||
sprite->data[0] = 95;
|
||||
sprite->data[1] = sprite->pos1.x;
|
||||
sprite->data[1] = sprite->x;
|
||||
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
|
||||
sprite->data[3] = sprite->pos1.y;
|
||||
sprite->data[3] = sprite->y;
|
||||
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
|
||||
InitAnimLinearTranslation(sprite);
|
||||
sprite->callback = AnimRedHeartProjectile_Step;
|
||||
@@ -3176,7 +3176,7 @@ static void AnimRedHeartProjectile_Step(struct Sprite *sprite)
|
||||
{
|
||||
if (!AnimTranslateLinear(sprite))
|
||||
{
|
||||
sprite->pos2.y += Sin(sprite->data[5], 14);
|
||||
sprite->y2 += Sin(sprite->data[5], 14);
|
||||
sprite->data[5] = (sprite->data[5] + 4) & 0xFF;
|
||||
}
|
||||
else
|
||||
@@ -3196,8 +3196,8 @@ void AnimParticleBurst(struct Sprite *sprite)
|
||||
else
|
||||
{
|
||||
sprite->data[4] += sprite->data[1];
|
||||
sprite->pos2.x = sprite->data[4] >> 8;
|
||||
sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]);
|
||||
sprite->x2 = sprite->data[4] >> 8;
|
||||
sprite->y2 = Sin(sprite->data[3], sprite->data[2]);
|
||||
sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
|
||||
if (sprite->data[3] > 100)
|
||||
sprite->invisible = sprite->data[3] % 2;
|
||||
@@ -3209,8 +3209,8 @@ void AnimParticleBurst(struct Sprite *sprite)
|
||||
|
||||
static void AnimRedHeartRising(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = gBattleAnimArgs[0];
|
||||
sprite->pos1.y = DISPLAY_HEIGHT;
|
||||
sprite->x = gBattleAnimArgs[0];
|
||||
sprite->y = DISPLAY_HEIGHT;
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
sprite->data[1] = gBattleAnimArgs[1];
|
||||
sprite->callback = WaitAnimForDuration;
|
||||
@@ -3221,10 +3221,10 @@ static void AnimRedHeartRising_Step(struct Sprite *sprite)
|
||||
{
|
||||
s16 y;
|
||||
sprite->data[2] += sprite->data[1];
|
||||
sprite->pos2.y = -((u16)sprite->data[2] >> 8);
|
||||
sprite->pos2.x = Sin(sprite->data[3], 4);
|
||||
sprite->y2 = -((u16)sprite->data[2] >> 8);
|
||||
sprite->x2 = Sin(sprite->data[3], 4);
|
||||
sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
|
||||
y = sprite->pos1.y + sprite->pos2.y;
|
||||
y = sprite->y + sprite->y2;
|
||||
if (y <= 72)
|
||||
{
|
||||
sprite->invisible = sprite->data[3] % 2;
|
||||
@@ -3402,8 +3402,8 @@ static void AnimTask_ScaryFace_Step(u8 taskId)
|
||||
// arg 1: initial wave offset
|
||||
static void AnimOrbitFast(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->affineAnimPaused = 1;
|
||||
sprite->data[0] = gBattleAnimArgs[0];
|
||||
sprite->data[1] = gBattleAnimArgs[1];
|
||||
@@ -3419,8 +3419,8 @@ static void AnimOrbitFast_Step(struct Sprite *sprite)
|
||||
else
|
||||
sprite->subpriority = sprite->data[7] - 1;
|
||||
|
||||
sprite->pos2.x = Sin(sprite->data[1], sprite->data[2] >> 8);
|
||||
sprite->pos2.y = Cos(sprite->data[1], sprite->data[3] >> 8);
|
||||
sprite->x2 = Sin(sprite->data[1], sprite->data[2] >> 8);
|
||||
sprite->y2 = Cos(sprite->data[1], sprite->data[3] >> 8);
|
||||
sprite->data[1] = (sprite->data[1] + 9) & 0xFF;
|
||||
switch (sprite->data[5])
|
||||
{
|
||||
@@ -3453,8 +3453,8 @@ static void AnimOrbitFast_Step(struct Sprite *sprite)
|
||||
// arg 0: initial wave offset
|
||||
static void AnimOrbitScatter(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->data[0] = Sin(gBattleAnimArgs[0], 10);
|
||||
sprite->data[1] = Cos(gBattleAnimArgs[0], 7);
|
||||
sprite->callback = AnimOrbitScatter_Step;
|
||||
@@ -3462,25 +3462,25 @@ static void AnimOrbitScatter(struct Sprite *sprite)
|
||||
|
||||
static void AnimOrbitScatter_Step(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos2.x += sprite->data[0];
|
||||
sprite->pos2.y += sprite->data[1];
|
||||
if (sprite->pos1.x + sprite->pos2.x + 16 > ((u32)DISPLAY_WIDTH + 32)
|
||||
|| sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT || sprite->pos1.y + sprite->pos2.y < -16)
|
||||
sprite->x2 += sprite->data[0];
|
||||
sprite->y2 += sprite->data[1];
|
||||
if (sprite->x + sprite->x2 + 16 > ((u32)DISPLAY_WIDTH + 32)
|
||||
|| sprite->y + sprite->y2 > DISPLAY_HEIGHT || sprite->y + sprite->y2 < -16)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void AnimSpitUpOrb_Step(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos2.x += sprite->data[0];
|
||||
sprite->pos2.y += sprite->data[1];
|
||||
sprite->x2 += sprite->data[0];
|
||||
sprite->y2 += sprite->data[1];
|
||||
if (sprite->data[3]++ >= sprite->data[2])
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
static void AnimSpitUpOrb(struct Sprite *sprite)
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->data[0] = Sin(gBattleAnimArgs[0], 10);
|
||||
sprite->data[1] = Cos(gBattleAnimArgs[0], 7);
|
||||
sprite->data[2] = gBattleAnimArgs[1];
|
||||
@@ -3504,20 +3504,20 @@ static void AnimAngel(struct Sprite *sprite)
|
||||
s16 var0;
|
||||
if (!sprite->data[0])
|
||||
{
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
sprite->x += gBattleAnimArgs[0];
|
||||
sprite->y += gBattleAnimArgs[1];
|
||||
}
|
||||
|
||||
sprite->data[0]++;
|
||||
var0 = (sprite->data[0] * 10) & 0xFF;
|
||||
sprite->pos2.x = Sin(var0, 80) >> 8;
|
||||
sprite->x2 = Sin(var0, 80) >> 8;
|
||||
if (sprite->data[0] < 80)
|
||||
sprite->pos2.y = (sprite->data[0] / 2) + (Cos(var0, 80) >> 8);
|
||||
sprite->y2 = (sprite->data[0] / 2) + (Cos(var0, 80) >> 8);
|
||||
|
||||
if (sprite->data[0] > 90)
|
||||
{
|
||||
sprite->data[2]++;
|
||||
sprite->pos2.x -= sprite->data[2] / 2;
|
||||
sprite->x2 -= sprite->data[2] / 2;
|
||||
}
|
||||
|
||||
if (sprite->data[0] > 100)
|
||||
@@ -3527,8 +3527,8 @@ static void AnimAngel(struct Sprite *sprite)
|
||||
static void AnimPinkHeart_Step(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[5]++;
|
||||
sprite->pos2.x = Sin(sprite->data[3], 5);
|
||||
sprite->pos2.y = sprite->data[5] / 2;
|
||||
sprite->x2 = Sin(sprite->data[3], 5);
|
||||
sprite->y2 = sprite->data[5] / 2;
|
||||
sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
|
||||
if (sprite->data[5] > 20)
|
||||
sprite->invisible = sprite->data[5] % 2;
|
||||
@@ -3548,16 +3548,16 @@ static void AnimPinkHeart(struct Sprite *sprite)
|
||||
else
|
||||
{
|
||||
sprite->data[4] += sprite->data[1];
|
||||
sprite->pos2.x = sprite->data[4] >> 8;
|
||||
sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]);
|
||||
sprite->x2 = sprite->data[4] >> 8;
|
||||
sprite->y2 = Sin(sprite->data[3], sprite->data[2]);
|
||||
sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
|
||||
if (sprite->data[3] > 70)
|
||||
{
|
||||
sprite->callback = AnimPinkHeart_Step;
|
||||
sprite->pos1.x += sprite->pos2.x;
|
||||
sprite->pos1.y += sprite->pos2.y;
|
||||
sprite->pos2.x = 0;
|
||||
sprite->pos2.y = 0;
|
||||
sprite->x += sprite->x2;
|
||||
sprite->y += sprite->y2;
|
||||
sprite->x2 = 0;
|
||||
sprite->y2 = 0;
|
||||
sprite->data[3] = Random2() % 180;
|
||||
}
|
||||
}
|
||||
@@ -3567,8 +3567,8 @@ static void AnimDevil(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[3] == 0)
|
||||
{
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
sprite->x += gBattleAnimArgs[0];
|
||||
sprite->y += gBattleAnimArgs[1];
|
||||
StartSpriteAnim(sprite, 0);
|
||||
sprite->subpriority = GetBattlerSpriteSubpriority(gBattleAnimTarget) - 1;
|
||||
sprite->data[2] = 1;
|
||||
@@ -3577,8 +3577,8 @@ static void AnimDevil(struct Sprite *sprite)
|
||||
sprite->data[1] = (sprite->data[0] * 4) % 256;
|
||||
if (sprite->data[1] < 0)
|
||||
sprite->data[1] = 0;
|
||||
sprite->pos2.x = Cos(sprite->data[1], 30 - sprite->data[0] / 4);
|
||||
sprite->pos2.y = Sin(sprite->data[1], 10 - sprite->data[0] / 8);
|
||||
sprite->x2 = Cos(sprite->data[1], 30 - sprite->data[0] / 4);
|
||||
sprite->y2 = Sin(sprite->data[1], 10 - sprite->data[0] / 8);
|
||||
if (sprite->data[1] > 128 && sprite->data[2] > 0)
|
||||
sprite->data[2] = -1;
|
||||
if (sprite->data[1] == 0 && sprite->data[2] < 0)
|
||||
@@ -3596,8 +3596,8 @@ static void AnimFurySwipes(struct Sprite *sprite)
|
||||
{
|
||||
if (sprite->data[0] == 0)
|
||||
{
|
||||
sprite->pos1.x += gBattleAnimArgs[0];
|
||||
sprite->pos1.y += gBattleAnimArgs[1];
|
||||
sprite->x += gBattleAnimArgs[0];
|
||||
sprite->y += gBattleAnimArgs[1];
|
||||
StartSpriteAnim(sprite, gBattleAnimArgs[2]);
|
||||
sprite->data[0]++;
|
||||
}
|
||||
@@ -3617,19 +3617,19 @@ static void AnimMovementWaves(struct Sprite *sprite)
|
||||
{
|
||||
if (!gBattleAnimArgs[0])
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
|
||||
}
|
||||
|
||||
if (!gBattleAnimArgs[1])
|
||||
sprite->pos1.x += 32;
|
||||
sprite->x += 32;
|
||||
else
|
||||
sprite->pos1.x -= 32;
|
||||
sprite->x -= 32;
|
||||
|
||||
sprite->data[0] = gBattleAnimArgs[2];
|
||||
sprite->data[1] = gBattleAnimArgs[1];
|
||||
@@ -3671,11 +3671,11 @@ static void AnimJaggedMusicNote(struct Sprite *sprite)
|
||||
if (GetBattlerSide(battler) == B_SIDE_OPPONENT)
|
||||
gBattleAnimArgs[1] *= -1;
|
||||
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(battler, 2) + gBattleAnimArgs[1];
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[2];
|
||||
sprite->x = GetBattlerSpriteCoord(battler, 2) + gBattleAnimArgs[1];
|
||||
sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[2];
|
||||
sprite->data[0] = 0;
|
||||
sprite->data[1] = (u16)sprite->pos1.x << 3;
|
||||
sprite->data[2] = (u16)sprite->pos1.y << 3;
|
||||
sprite->data[1] = (u16)sprite->x << 3;
|
||||
sprite->data[2] = (u16)sprite->y << 3;
|
||||
|
||||
var1 = gBattleAnimArgs[1] << 3;
|
||||
if (var1 < 0)
|
||||
@@ -3695,8 +3695,8 @@ static void AnimJaggedMusicNote_Step(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[1] += sprite->data[3];
|
||||
sprite->data[2] += sprite->data[4];
|
||||
sprite->pos1.x = sprite->data[1] >> 3;
|
||||
sprite->pos1.y = sprite->data[2] >> 3;
|
||||
sprite->x = sprite->data[1] >> 3;
|
||||
sprite->y = sprite->data[2] >> 3;
|
||||
if (++sprite->data[0] > 16)
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
@@ -3723,8 +3723,8 @@ static void AnimPerishSongMusicNote(struct Sprite *sprite)
|
||||
|
||||
if (!sprite->data[0])
|
||||
{
|
||||
sprite->pos1.x = 120;
|
||||
sprite->pos1.y = (gBattleAnimArgs[0] + (((u16)gBattleAnimArgs[0]) >> 31)) / 2 - 15;
|
||||
sprite->x = 120;
|
||||
sprite->y = (gBattleAnimArgs[0] + (((u16)gBattleAnimArgs[0]) >> 31)) / 2 - 15;
|
||||
|
||||
StartSpriteAnim(sprite, gBattleAnimArgs[1]);
|
||||
|
||||
@@ -3740,9 +3740,9 @@ static void AnimPerishSongMusicNote(struct Sprite *sprite)
|
||||
sprite->data[6] = (sprite->data[6] + 10) & 0xFF;
|
||||
|
||||
index &= var2;
|
||||
sprite->pos2.x = Cos(index, 100);
|
||||
sprite->x2 = Cos(index, 100);
|
||||
|
||||
sprite->pos2.y = sprite->data[1] + Sin(index, 10) + Cos(sprite->data[6], 4);
|
||||
sprite->y2 = sprite->data[1] + Sin(index, 10) + Cos(sprite->data[6], 4);
|
||||
|
||||
if (sprite->data[0] > sprite->data[5])
|
||||
{
|
||||
@@ -3770,7 +3770,7 @@ static void AnimPerishSongMusicNote_Step1(struct Sprite *sprite)
|
||||
static void AnimPerishSongMusicNote_Step2(struct Sprite *sprite)
|
||||
{
|
||||
sprite->data[3] += sprite->data[2];
|
||||
sprite->pos2.y = sprite->data[3];
|
||||
sprite->y2 = sprite->data[3];
|
||||
|
||||
sprite->data[2]++;
|
||||
|
||||
@@ -3797,20 +3797,20 @@ static void AnimGuardRing(struct Sprite *sprite)
|
||||
{
|
||||
if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker)))
|
||||
{
|
||||
SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->pos1.x, &sprite->pos1.y);
|
||||
sprite->pos1.y += 40;
|
||||
SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y);
|
||||
sprite->y += 40;
|
||||
|
||||
StartSpriteAffineAnim(sprite, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
|
||||
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 40;
|
||||
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
|
||||
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 40;
|
||||
}
|
||||
|
||||
sprite->data[0] = 13;
|
||||
sprite->data[2] = sprite->pos1.x;
|
||||
sprite->data[4] = sprite->pos1.y - 72;
|
||||
sprite->data[2] = sprite->x;
|
||||
sprite->data[4] = sprite->y - 72;
|
||||
|
||||
sprite->callback = StartAnimLinearTranslation;
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
|
||||
Reference in New Issue
Block a user