Merge pull request #1479 from PikalaxALT/flatten_sprite_pos

Flatten pos fields in struct Sprite
This commit is contained in:
GriffinR 2021-07-27 18:02:00 -04:00 committed by GitHub
commit 459b20d762
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
111 changed files with 3764 additions and 3764 deletions

View File

@ -164,8 +164,8 @@ static const struct Sprite sDummySprite =
.template = &gDummySpriteTemplate,
.subspriteTables = NULL,
.callback = SpriteCallbackDummy,
.pos1 = { 304, 160 },
.pos2 = { 0, 0 },
.x = 304, .y = 160,
.x2 = 0, .y2 = 0,
.centerToCornerVecX = 0,
.centerToCornerVecY = 0,
.animNum = 0,
@ -375,13 +375,13 @@ void UpdateOamCoords(void)
{
if (sprite->coordOffsetEnabled)
{
sprite->oam.x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
sprite->oam.y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
sprite->oam.x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
sprite->oam.y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
}
else
{
sprite->oam.x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX;
sprite->oam.y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY;
sprite->oam.x = sprite->x + sprite->x2 + sprite->centerToCornerVecX;
sprite->oam.y = sprite->y + sprite->y2 + sprite->centerToCornerVecY;
}
}
}
@ -583,8 +583,8 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y,
sprite->affineAnims = template->affineAnims;
sprite->template = template;
sprite->callback = template->callback;
sprite->pos1.x = x;
sprite->pos1.y = y;
sprite->x = x;
sprite->y = y;
CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode);
@ -1248,14 +1248,14 @@ void obj_update_pos2(struct Sprite *sprite, s32 a1, s32 a2)
var0 = sOamDimensions32[sprite->oam.shape][sprite->oam.size].width;
var1 = var0 << 8;
var2 = (var0 << 16) / gOamMatrices[matrixNum].a;
sprite->pos2.x = sub_8007E28(var1, var2, a1);
sprite->x2 = sub_8007E28(var1, var2, a1);
}
if (a2 != 0x800)
{
var0 = sOamDimensions32[sprite->oam.shape][sprite->oam.size].height;
var1 = var0 << 8;
var2 = (var0 << 16) / gOamMatrices[matrixNum].d;
sprite->pos2.y = sub_8007E28(var1, var2, a2);
sprite->y2 = sub_8007E28(var1, var2, a2);
}
}

View File

@ -197,8 +197,8 @@ struct Sprite
/*0x18*/ const struct SubspriteTable *subspriteTables;
/*0x1C*/ SpriteCallback callback;
/*0x20*/ struct Coords16 pos1;
/*0x24*/ struct Coords16 pos2;
/*0x20*/ s16 x, y;
/*0x24*/ s16 x2, y2;
/*0x28*/ s8 centerToCornerVecX;
/*0x29*/ s8 centerToCornerVecY;

View File

@ -2185,8 +2185,8 @@ static void sub_80A40F4(u8 taskId)
newTaskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10);
gTasks[newTaskId].data[t2_BATTLER_SPRITE_ID] = battlerSpriteId;
gTasks[newTaskId].data[1] = gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x;
gTasks[newTaskId].data[2] = gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y;
gTasks[newTaskId].data[1] = gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2;
gTasks[newTaskId].data[2] = gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2;
if (!selfData[t1_MON_IN_BG2])
{
@ -2310,11 +2310,11 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
battlerSpriteId = gBattlerSpriteIds[battlerId];
gBattle_BG1_X = -(gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x) + 0x20;
gBattle_BG1_X = -(gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2) + 0x20;
if (IsContest() && IsSpeciesNotUnown(gContestResources->moveAnim->species))
gBattle_BG1_X--;
gBattle_BG1_Y = -(gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y) + 0x20;
gBattle_BG1_Y = -(gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2) + 0x20;
if (setSpriteInvisible)
gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
@ -2347,8 +2347,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
battlerSpriteId = gBattlerSpriteIds[battlerId];
gBattle_BG2_X = -(gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x) + 0x20;
gBattle_BG2_Y = -(gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y) + 0x20;
gBattle_BG2_X = -(gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2) + 0x20;
gBattle_BG2_Y = -(gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2) + 0x20;
if (setSpriteInvisible)
gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
@ -2436,8 +2436,8 @@ static void task_pA_ma0A_obj_to_bg_pal(u8 taskId)
spriteId = gTasks[taskId].data[0];
palIndex = gTasks[taskId].data[6];
GetBattleAnimBg1Data(&animBg);
x = gTasks[taskId].data[1] - (gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x);
y = gTasks[taskId].data[2] - (gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y);
x = gTasks[taskId].data[1] - (gSprites[spriteId].x + gSprites[spriteId].x2);
y = gTasks[taskId].data[2] - (gSprites[spriteId].y + gSprites[spriteId].y2);
if (gTasks[taskId].data[5] == 0)
{

View File

@ -212,8 +212,8 @@ static void AnimMegahornHorn(struct Sprite *sprite)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
}
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0];
sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2];
@ -236,8 +236,8 @@ static void AnimLeechLifeNeedle(struct Sprite *sprite)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
}
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0];
sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
@ -261,8 +261,8 @@ static void AnimTranslateWebThread(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
if (!gBattleAnimArgs[4])
{
@ -287,22 +287,22 @@ static void AnimTranslateWebThread_Step(struct Sprite *sprite)
return;
}
sprite->pos2.x += Sin(sprite->data[6], sprite->data[5]);
sprite->x2 += Sin(sprite->data[6], sprite->data[5]);
sprite->data[6] = (sprite->data[6] + 13) & 0xFF;
}
// Second stage of String Shot
static void AnimStringWrap(struct Sprite *sprite)
{
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker))
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(gBattleAnimTarget))
sprite->pos1.y += 8;
sprite->y += 8;
sprite->callback = AnimStringWrap_Step;
}
@ -396,7 +396,7 @@ static void AnimTranslateStinger(struct Sprite *sprite)
lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2];
lVarY = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
rot = ArcTan2Neg(lVarX - sprite->pos1.x, lVarY - sprite->pos1.y);
rot = ArcTan2Neg(lVarX - sprite->x, lVarY - sprite->y);
rot += 0xC000;
TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rot);
@ -444,10 +444,10 @@ static void AnimMissileArc_Step(struct Sprite *sprite)
{
s16 tempData[8];
u16 *data = sprite->data;
u16 x1 = sprite->pos1.x;
s16 x2 = sprite->pos2.x;
u16 y1 = sprite->pos1.y;
s16 y2 = sprite->pos2.y;
u16 x1 = sprite->x;
s16 x2 = sprite->x2;
u16 y1 = sprite->y;
s16 y2 = sprite->y2;
int i;
for (i = 0; i < 8; i++)
@ -458,8 +458,8 @@ static void AnimMissileArc_Step(struct Sprite *sprite)
if (!TranslateAnimHorizontalArc(sprite))
{
u16 rotation = ArcTan2Neg(sprite->pos1.x + sprite->pos2.x - x2,
sprite->pos1.y + sprite->pos2.y - y2);
u16 rotation = ArcTan2Neg(sprite->x + sprite->x2 - x2,
sprite->y + sprite->y2 - y2);
rotation += 0xC000;
TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rotation);
@ -473,13 +473,13 @@ static void AnimTailGlowOrb(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 18;
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 18;
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 18;
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 18;
}
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);

View File

@ -287,18 +287,18 @@ static void AnimUnusedBagSteal_Step(struct Sprite *sprite)
{
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
sprite->pos2.x = sprite->data[3] >> 8;
sprite->pos2.y = sprite->data[4] >> 8;
sprite->x2 = sprite->data[3] >> 8;
sprite->y2 = sprite->data[4] >> 8;
if (sprite->data[7] == 0)
{
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
sprite->pos2.x = sprite->data[3] >> 8;
sprite->pos2.y = sprite->data[4] >> 8;
sprite->x2 = sprite->data[3] >> 8;
sprite->y2 = sprite->data[4] >> 8;
sprite->data[0]--;
}
sprite->pos2.y += Sin(sprite->data[5], sprite->data[6]);
sprite->y2 += Sin(sprite->data[5], sprite->data[6]);
sprite->data[5] = (sprite->data[5] + 3) & 0xFF;
if (sprite->data[5] > 0x7F)
{
@ -314,8 +314,8 @@ static void AnimUnusedBagSteal_Step(struct Sprite *sprite)
// Move sprite inward for Bite/Crunch and Clamp
static void AnimBite(struct Sprite *sprite)
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
StartSpriteAffineAnim(sprite, gBattleAnimArgs[2]);
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = gBattleAnimArgs[4];
@ -327,8 +327,8 @@ static void AnimBite_Step1(struct Sprite *sprite)
{
sprite->data[4] += sprite->data[0];
sprite->data[5] += sprite->data[1];
sprite->pos2.x = sprite->data[4] >> 8;
sprite->pos2.y = sprite->data[5] >> 8;
sprite->x2 = sprite->data[4] >> 8;
sprite->y2 = sprite->data[5] >> 8;
if (++sprite->data[3] == sprite->data[2])
sprite->callback = AnimBite_Step2;
}
@ -337,8 +337,8 @@ static void AnimBite_Step2(struct Sprite *sprite)
{
sprite->data[4] -= sprite->data[0];
sprite->data[5] -= sprite->data[1];
sprite->pos2.x = sprite->data[4] >> 8;
sprite->pos2.y = sprite->data[5] >> 8;
sprite->x2 = sprite->data[4] >> 8;
sprite->y2 = sprite->data[5] >> 8;
if (--sprite->data[3] == 0)
DestroySpriteAndMatrix(sprite);
}
@ -360,30 +360,30 @@ static void AnimTearDrop(struct Sprite *sprite)
switch (gBattleAnimArgs[1])
{
case 0:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 8;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8;
sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 8;
sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8;
break;
case 1:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 14;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16;
sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 14;
sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16;
break;
case 2:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 8;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8;
sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 8;
sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8;
StartSpriteAffineAnim(sprite, 1);
xOffset = -20;
break;
case 3:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 14;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16;
sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 14;
sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16;
StartSpriteAffineAnim(sprite, 1);
xOffset = -20;
break;
}
sprite->data[0] = 32;
sprite->data[2] = sprite->pos1.x + xOffset;
sprite->data[4] = sprite->pos1.y + 12;
sprite->data[2] = sprite->x + xOffset;
sprite->data[4] = sprite->y + 12;
sprite->data[5] = -12;
InitAnimArcTranslation(sprite);
@ -798,8 +798,8 @@ void sub_8114470(u8 taskId)
// Animates a deep slash from a claw. Used by Metal Claw, Dragon Claw, and Crush Claw
static void AnimClawSlash(struct Sprite *sprite)
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
StartSpriteAnim(sprite, gBattleAnimArgs[2]);
sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@ -865,8 +865,8 @@ void AnimTask_MetallicShine(u8 taskId)
AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset);
LoadCompressedPalette(gMetalShinePalette, animBg.paletteId * 16, 32);
gBattle_BG1_X = -gSprites[spriteId].pos1.x + 96;
gBattle_BG1_Y = -gSprites[spriteId].pos1.y + 32;
gBattle_BG1_X = -gSprites[spriteId].x + 96;
gBattle_BG1_Y = -gSprites[spriteId].y + 32;
paletteNum = 16 + gSprites[spriteId].oam.paletteNum;
if (gBattleAnimArgs[1] == 0)

View File

@ -189,20 +189,20 @@ const struct SpriteTemplate gOverheatFlameSpriteTemplate =
static void AnimOutrageFlame(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);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->x -= gBattleAnimArgs[0];
gBattleAnimArgs[3] = -gBattleAnimArgs[3];
gBattleAnimArgs[4] = -gBattleAnimArgs[4];
}
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[3] = gBattleAnimArgs[4];
@ -219,15 +219,15 @@ static void StartDragonFireTranslation(struct Sprite *sprite)
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos1.x -= gBattleAnimArgs[1];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x -= gBattleAnimArgs[1];
sprite->y += gBattleAnimArgs[1];
sprite->data[2] -= gBattleAnimArgs[2];
sprite->data[4] += gBattleAnimArgs[3];
}
else
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[2] += gBattleAnimArgs[2];
sprite->data[4] += gBattleAnimArgs[3];
StartSpriteAnim(sprite, 1);
@ -242,17 +242,17 @@ static void AnimDragonRageFirePlume(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == 0)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
}
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[1]);
sprite->pos1.y += gBattleAnimArgs[2];
sprite->y += gBattleAnimArgs[2];
sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
}
@ -270,8 +270,8 @@ static void AnimDragonDanceOrb(struct Sprite *sprite)
{
u16 r5;
u16 r0;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->data[4] = 0;
sprite->data[5] = 1;
sprite->data[6] = gBattleAnimArgs[0];
@ -281,8 +281,8 @@ static void AnimDragonDanceOrb(struct Sprite *sprite)
sprite->data[7] = r5 / 2;
else
sprite->data[7] = r0 / 2;
sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]);
sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]);
sprite->x2 = Cos(sprite->data[6], sprite->data[7]);
sprite->y2 = Sin(sprite->data[6], sprite->data[7]);
sprite->callback = AnimDragonDanceOrb_Step;
}
@ -292,8 +292,8 @@ static void AnimDragonDanceOrb_Step(struct Sprite *sprite)
{
case 0:
sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF;
sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]);
sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]);
sprite->x2 = Cos(sprite->data[6], sprite->data[7]);
sprite->y2 = Sin(sprite->data[6], sprite->data[7]);
if (++sprite->data[4] > 5)
{
sprite->data[4] = 0;
@ -310,8 +310,8 @@ static void AnimDragonDanceOrb_Step(struct Sprite *sprite)
sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF;
if (sprite->data[7] <= 0x95 && (sprite->data[7] += 8) > 0x95)
sprite->data[7] = 0x96;
sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]);
sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]);
sprite->x2 = Cos(sprite->data[6], sprite->data[7]);
sprite->y2 = Sin(sprite->data[6], sprite->data[7]);
if (++sprite->data[4] > 5)
{
sprite->data[4] = 0;
@ -417,12 +417,12 @@ static void AnimOverheatFlame(struct Sprite *sprite)
{
int i;
int yAmplitude = (gBattleAnimArgs[2] * 3) / 5;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[4];
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[4];
sprite->data[1] = Cos(gBattleAnimArgs[1], gBattleAnimArgs[2]);
sprite->data[2] = Sin(gBattleAnimArgs[1], yAmplitude);
sprite->pos1.x += sprite->data[1] * gBattleAnimArgs[0];
sprite->pos1.y += sprite->data[2] * gBattleAnimArgs[0];
sprite->x += sprite->data[1] * gBattleAnimArgs[0];
sprite->y += sprite->data[2] * gBattleAnimArgs[0];
sprite->data[3] = gBattleAnimArgs[3];
sprite->callback = AnimOverheatFlame_Step;
for (i = 0; i < 7; i++)
@ -433,8 +433,8 @@ static void AnimOverheatFlame_Step(struct Sprite *sprite)
{
sprite->data[4] += sprite->data[1];
sprite->data[5] += sprite->data[2];
sprite->pos2.x = sprite->data[4] / 10;
sprite->pos2.y = sprite->data[5] / 10;
sprite->x2 = sprite->data[4] / 10;
sprite->y2 = sprite->data[5] / 10;
if (++sprite->data[0] > sprite->data[3])
DestroyAnimSprite(sprite);
}

File diff suppressed because it is too large Load Diff

View File

@ -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);

File diff suppressed because it is too large Load Diff

View File

@ -459,11 +459,11 @@ const struct SpriteTemplate gShockWaveProgressingBoltSpriteTemplate =
static void AnimLightning(struct Sprite *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];
sprite->callback = AnimLightning_Step;
}
@ -476,9 +476,9 @@ static void AnimLightning_Step(struct Sprite *sprite)
static void AnimUnusedSpinningFist(struct Sprite *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->callback = AnimUnusedSpinningFist_Step;
}
@ -491,18 +491,18 @@ static void AnimUnusedSpinningFist_Step(struct Sprite *sprite)
static void AnimUnusedCirclingShock(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->pos1.y -= gBattleAnimArgs[1];
sprite->x -= gBattleAnimArgs[0];
sprite->y -= gBattleAnimArgs[1];
}
else
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
}
sprite->data[0] = 0;
sprite->data[1] = gBattleAnimArgs[2];
@ -543,17 +543,17 @@ static void AnimSparkElectricity(struct Sprite *sprite)
if (gBattleAnimArgs[5] == 0)
{
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y);
sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X);
sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y);
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET);
}
sprite->pos2.x = (gSineTable[gBattleAnimArgs[0]] * gBattleAnimArgs[1]) >> 8;
sprite->pos2.y = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8;
sprite->x2 = (gSineTable[gBattleAnimArgs[0]] * gBattleAnimArgs[1]) >> 8;
sprite->y2 = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8;
if (gBattleAnimArgs[6] & 1)
sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1;
@ -573,9 +573,9 @@ static void AnimZapCannonSpark(struct Sprite *sprite)
{
InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = sprite->pos1.x;
sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->data[3] = sprite->pos1.y;
sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
InitAnimLinearTranslation(sprite);
sprite->data[5] = gBattleAnimArgs[2];
@ -590,8 +590,8 @@ static void AnimZapCannonSpark_Step(struct Sprite *sprite)
{
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.x += Sin(sprite->data[7], sprite->data[5]);
sprite->pos2.y += Cos(sprite->data[7], sprite->data[5]);
sprite->x2 += Sin(sprite->data[7], sprite->data[5]);
sprite->y2 += Cos(sprite->data[7], sprite->data[5]);
sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF;
if(!(sprite->data[7] % 3))
sprite->invisible ^= 1;
@ -616,8 +616,8 @@ static void AnimThunderboltOrb(struct Sprite *sprite)
if (IsContest() || GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2];
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1];
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2];
sprite->data[3] = gBattleAnimArgs[0];
sprite->data[4] = gBattleAnimArgs[3];
sprite->data[5] = gBattleAnimArgs[3];
@ -637,8 +637,8 @@ static void AnimSparkElectricityFlashing(struct Sprite *sprite)
if (IsContest() || GetBattlerSide(battler) == B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[0];
sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1];
sprite->data[4] = gBattleAnimArgs[7] & 0x7FFF;
sprite->data[5] = gBattleAnimArgs[2];
@ -652,8 +652,8 @@ static void AnimSparkElectricityFlashing(struct Sprite *sprite)
static void AnimSparkElectricityFlashing_Step(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[7], sprite->data[5]);
sprite->pos2.y = Cos(sprite->data[7], sprite->data[5]);
sprite->x2 = Sin(sprite->data[7], sprite->data[5]);
sprite->y2 = Cos(sprite->data[7], sprite->data[5]);
sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF;
if (sprite->data[7] % sprite->data[4] == 0)
@ -778,9 +778,9 @@ static void AnimThunderWave(struct Sprite *sprite)
{
u8 spriteId;
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
spriteId = CreateSprite(&gThunderWaveSpriteTemplate, sprite->pos1.x + 32, sprite->pos1.y, sprite->subpriority);
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
spriteId = CreateSprite(&gThunderWaveSpriteTemplate, sprite->x + 32, sprite->y, sprite->subpriority);
gSprites[spriteId].oam.tileNum += 8;
gAnimVisualTaskCount++;
gSprites[spriteId].callback = AnimThunderWave_Step;
@ -840,13 +840,13 @@ static void AnimTask_ElectricChargingParticles_Step(u8 taskId)
if (spriteId != MAX_SPRITES)
{
struct Sprite *sprite = &gSprites[spriteId];
sprite->pos1.x += sElectricChargingParticleCoordOffsets[task->data[9]][0];
sprite->pos1.y += sElectricChargingParticleCoordOffsets[task->data[9]][1];
sprite->x += sElectricChargingParticleCoordOffsets[task->data[9]][0];
sprite->y += sElectricChargingParticleCoordOffsets[task->data[9]][1];
sprite->data[0] = 40 - task->data[8] * 5;
sprite->data[1] = sprite->pos1.x;
sprite->data[1] = sprite->x;
sprite->data[2] = task->data[14];
sprite->data[3] = sprite->pos1.y;
sprite->data[3] = sprite->y;
sprite->data[4] = task->data[15];
sprite->data[5] = taskId;
@ -892,13 +892,13 @@ static void AnimGrowingChargeOrb(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
}
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
@ -910,17 +910,17 @@ static void AnimElectricPuff(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
}
sprite->pos2.x = gBattleAnimArgs[1];
sprite->pos2.y = gBattleAnimArgs[2];
sprite->x2 = gBattleAnimArgs[1];
sprite->y2 = gBattleAnimArgs[2];
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
sprite->callback = RunStoredCallbackWhenAnimEnds;
}
@ -929,8 +929,8 @@ static void AnimElectricPuff(struct Sprite *sprite)
static void AnimVoltTackleOrbSlide(struct Sprite *sprite)
{
StartSpriteAffineAnim(sprite, 1);
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->data[6] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
sprite->data[7] = 16;
@ -949,9 +949,9 @@ static void AnimVoltTackleOrbSlide_Step(struct Sprite *sprite)
sprite->data[0]++;
break;
case 1:
sprite->pos1.x += sprite->data[7];
gSprites[sprite->data[6]].pos2.x += sprite->data[7];
if ((u16)(sprite->pos1.x + 80) > 400)
sprite->x += sprite->data[7];
gSprites[sprite->data[6]].x2 += sprite->data[7];
if ((u16)(sprite->x + 80) > 400)
DestroySpriteAndMatrix(sprite);
}
}
@ -976,7 +976,7 @@ void AnimTask_VoltTackleAttackerReappear(u8 taskId)
task->data[13] = -2;
}
gSprites[task->data[15]].pos2.x = task->data[14];
gSprites[task->data[15]].x2 = task->data[14];
task->data[0]++;
break;
case 1:
@ -988,7 +988,7 @@ void AnimTask_VoltTackleAttackerReappear(u8 taskId)
if (task->data[14])
{
task->data[14] += task->data[13];
gSprites[task->data[15]].pos2.x = task->data[14];
gSprites[task->data[15]].x2 = task->data[14];
}
else
task->data[0]++;
@ -1131,8 +1131,8 @@ static void AnimGrowingShockWaveOrb(struct Sprite *sprite)
switch (sprite->data[0])
{
case 0:
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
StartSpriteAffineAnim(sprite, 2);
sprite->data[0]++;
break;

View File

@ -412,7 +412,7 @@ const struct SpriteTemplate gFocusPunchFistSpriteTemplate =
static void AnimUnusedHumanoidFoot(struct Sprite *sprite)
{
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = 15;
sprite->callback = WaitAnimForDuration;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@ -478,8 +478,8 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite)
gBattleAnimArgs[2] = Random2() % 5;
StartSpriteAnim(sprite, gBattleAnimArgs[2]);
sprite->pos1.x = GetBattlerSpriteCoord(battler, 2);
sprite->pos1.y = GetBattlerSpriteCoord(battler, 3);
sprite->x = GetBattlerSpriteCoord(battler, 2);
sprite->y = GetBattlerSpriteCoord(battler, 3);
xMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_WIDTH) / 2;
yMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4;
@ -495,11 +495,11 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite)
if ((gBattlerPositions[battler] & BIT_SIDE) == B_SIDE_PLAYER)
y += 0xFFF0;
sprite->pos1.x += x;
sprite->pos1.y += y;
sprite->x += x;
sprite->y += y;
sprite->data[0] = gBattleAnimArgs[1];
sprite->data[7] = CreateSprite(&gBasicHitSplatSpriteTemplate, sprite->pos1.x, sprite->pos1.y, sprite->subpriority + 1);
sprite->data[7] = CreateSprite(&gBasicHitSplatSpriteTemplate, sprite->x, sprite->y, sprite->subpriority + 1);
if (sprite->data[7] != 64)
{
StartSpriteAffineAnim(&gSprites[sprite->data[7]], 0);
@ -534,15 +534,15 @@ static void AnimCrossChopHand(struct Sprite *sprite)
if (gBattleAnimArgs[2] == 0)
{
sprite->data[2] = sprite->pos1.x - 20;
sprite->data[2] = sprite->x - 20;
}
else
{
sprite->data[2] = sprite->pos1.x + 20;
sprite->data[2] = sprite->x + 20;
sprite->hFlip = 1;
}
sprite->data[4] = sprite->pos1.y - 20;
sprite->data[4] = sprite->y - 20;
sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, AnimCrossChopHand_Step);
}
@ -551,13 +551,13 @@ static void AnimCrossChopHand_Step(struct Sprite *sprite)
{
if (++sprite->data[5] == 11)
{
sprite->data[2] = sprite->pos1.x - sprite->pos2.x;
sprite->data[4] = sprite->pos1.y - sprite->pos2.y;
sprite->data[2] = sprite->x - sprite->x2;
sprite->data[4] = sprite->y - sprite->y2;
sprite->data[0] = 8;
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;
sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@ -576,10 +576,10 @@ static void AnimSlidingKick(struct Sprite *sprite)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2];
sprite->data[3] = sprite->pos1.y;
sprite->data[4] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[3] = sprite->y;
sprite->data[4] = sprite->y;
InitAnimLinearTranslation(sprite);
@ -594,7 +594,7 @@ static void AnimSlidingKick_Step(struct Sprite *sprite)
{
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.y += Sin(sprite->data[7] >> 8, sprite->data[5]);
sprite->y2 += Sin(sprite->data[7] >> 8, sprite->data[5]);
sprite->data[7] += sprite->data[6];
}
else
@ -674,8 +674,8 @@ static void AnimDizzyPunchDuck(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)
@ -691,17 +691,17 @@ static void AnimBrickBreakWall(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
}
sprite->pos1.x += gBattleAnimArgs[1];
sprite->pos1.y += gBattleAnimArgs[2];
sprite->x += gBattleAnimArgs[1];
sprite->y += gBattleAnimArgs[2];
sprite->data[0] = 0;
sprite->data[1] = gBattleAnimArgs[3];
@ -729,9 +729,9 @@ static void AnimBrickBreakWall_Step(struct Sprite *sprite)
sprite->data[1] = 0;
sprite->data[3]++;
if (sprite->data[3] & 1)
sprite->pos2.x = 2;
sprite->x2 = 2;
else
sprite->pos2.x = -2;
sprite->x2 = -2;
}
if (--sprite->data[2] == 0)
@ -745,13 +745,13 @@ static void AnimBrickBreakWallShard(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3];
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2];
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3];
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[2];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[3];
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[2];
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[3];
}
sprite->oam.tileNum += gBattleAnimArgs[1] * 16;
@ -785,8 +785,8 @@ static void AnimBrickBreakWallShard(struct Sprite *sprite)
static void AnimBrickBreakWallShard_Step(struct Sprite *sprite)
{
sprite->pos1.x += sprite->data[6];
sprite->pos1.y += sprite->data[7];
sprite->x += sprite->data[6];
sprite->y += sprite->data[7];
if (++sprite->data[0] > 40)
DestroyAnimSprite(sprite);
@ -796,8 +796,8 @@ static void AnimSuperpowerOrb(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
sprite->data[7] = gBattleAnimTarget;
}
@ -820,9 +820,9 @@ static void AnimSuperpowerOrb_Step(struct Sprite *sprite)
SetGpuReg(REG_OFFSET_BLDCNT, 0);
sprite->data[0] = 16;
sprite->data[1] = sprite->pos1.x;
sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(sprite->data[7], 2);
sprite->data[3] = sprite->pos1.y;
sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(sprite->data[7], 3);
InitAnimLinearTranslation(sprite);
@ -834,11 +834,11 @@ static void AnimSuperpowerOrb_Step(struct Sprite *sprite)
// Floating rock that flies off to hit the target. Used by Superpower
static void AnimSuperpowerRock(struct Sprite *sprite)
{
sprite->pos1.x = gBattleAnimArgs[0];
sprite->pos1.y = 120;
sprite->x = gBattleAnimArgs[0];
sprite->y = 120;
sprite->data[0] = gBattleAnimArgs[3];
StorePointerInVars(&sprite->data[4], &sprite->data[5], (void *)(sprite->pos1.y << 8));
StorePointerInVars(&sprite->data[4], &sprite->data[5], (void *)(sprite->y << 8));
sprite->data[6] = gBattleAnimArgs[1];
sprite->oam.tileNum += gBattleAnimArgs[2] * 4;
@ -857,8 +857,8 @@ static void AnimSuperpowerRock_Step1(struct Sprite *sprite)
StorePointerInVars(&sprite->data[4], &sprite->data[5], var0);
var0 = (void *)(((intptr_t)var0) >> 8);
sprite->pos1.y = (intptr_t)var0;
if (sprite->pos1.y < -8)
sprite->y = (intptr_t)var0;
if (sprite->y < -8)
DestroyAnimSprite(sprite);
else
sprite->data[0]--;
@ -872,8 +872,8 @@ static void AnimSuperpowerRock_Step1(struct Sprite *sprite)
sprite->data[0] = pos2 - pos0;
sprite->data[1] = pos3 - pos1;
sprite->data[2] = sprite->pos1.x << 4;
sprite->data[3] = sprite->pos1.y << 4;
sprite->data[2] = sprite->x << 4;
sprite->data[3] = sprite->y << 4;
sprite->callback = AnimSuperpowerRock_Step2;
}
@ -885,11 +885,11 @@ static void AnimSuperpowerRock_Step2(struct Sprite *sprite)
sprite->data[2] += sprite->data[0];
sprite->data[3] += sprite->data[1];
sprite->pos1.x = sprite->data[2] >> 4;
sprite->pos1.y = sprite->data[3] >> 4;
sprite->x = sprite->data[2] >> 4;
sprite->y = sprite->data[3] >> 4;
edgeX = sprite->pos1.x + 8;
if (edgeX > 256 || sprite->pos1.y < -8 || sprite->pos1.y > 120)
edgeX = sprite->x + 8;
if (edgeX > 256 || sprite->y < -8 || sprite->y > 120)
DestroyAnimSprite(sprite);
}
@ -899,8 +899,8 @@ static void AnimSuperpowerFireball(struct Sprite *sprite)
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
battler = gBattleAnimTarget;
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
}
@ -916,9 +916,9 @@ static void AnimSuperpowerFireball(struct Sprite *sprite)
sprite->oam.matrixNum |= (ST_OAM_HFLIP | ST_OAM_VFLIP);
sprite->data[0] = 16;
sprite->data[1] = sprite->pos1.x;
sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(battler, 2);
sprite->data[3] = sprite->pos1.y;
sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(battler, 3);
InitAnimLinearTranslation(sprite);
@ -938,8 +938,8 @@ static void AnimArmThrustHit(struct Sprite *sprite)
{
u8 turn;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[0];
sprite->data[3] = gBattleAnimArgs[1];
@ -956,8 +956,8 @@ static void AnimArmThrustHit(struct Sprite *sprite)
}
StartSpriteAnim(sprite, sprite->data[1]);
sprite->pos2.x = sprite->data[2];
sprite->pos2.y = sprite->data[3];
sprite->x2 = sprite->data[2];
sprite->y2 = sprite->data[3];
sprite->callback = AnimArmThrustHit_Step;
}
@ -987,7 +987,7 @@ static void AnimFocusPunchFist(struct Sprite *sprite)
if (sprite->affineAnimEnded)
{
sprite->data[1] = (sprite->data[1] + 40) & 0xFF;
sprite->pos2.x = Sin(sprite->data[1], 2);
sprite->x2 = Sin(sprite->data[1], 2);
if (++sprite->data[0] > 40)
DestroyAnimSprite(sprite);
}

View File

@ -481,7 +481,7 @@ static void AnimFireSpread(struct Sprite *sprite)
{
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = gBattleAnimArgs[2];
sprite->data[2] = gBattleAnimArgs[3];
@ -496,14 +496,14 @@ static void AnimFirePlume(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker))
{
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x -= gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[2] = -gBattleAnimArgs[4];
}
else
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[2] = gBattleAnimArgs[4];
}
@ -518,14 +518,14 @@ static void AnimLargeFlame(struct Sprite *sprite)
{
if (GetBattlerSide(gBattleAnimAttacker))
{
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x -= gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[2] = gBattleAnimArgs[4];
}
else
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[2] = -gBattleAnimArgs[4];
}
@ -540,8 +540,8 @@ static void AnimLargeFlame_Step(struct Sprite *sprite)
{
if (++sprite->data[0] < sprite->data[4])
{
sprite->pos2.x += sprite->data[2];
sprite->pos2.y += sprite->data[3];
sprite->x2 += sprite->data[2];
sprite->y2 += sprite->data[3];
}
if (sprite->data[0] == sprite->data[1])
@ -554,15 +554,15 @@ static void AnimUnusedSmallEmber(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker))
{
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->x -= gBattleAnimArgs[0];
}
else
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->x += gBattleAnimArgs[0];
sprite->subpriority = 8;
}
sprite->pos1.y += gBattleAnimArgs[1];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[4];
@ -580,8 +580,8 @@ static void AnimUnusedSmallEmber_Step(struct Sprite *sprite)
if(sprite->data[5] > 10000)
sprite->subpriority = 1;
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8));
sprite->pos2.y = Cos(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8));
sprite->x2 = Sin(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8));
sprite->y2 = Cos(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8));
sprite->data[0] += sprite->data[2];
sprite->data[5] += sprite->data[4];
@ -602,8 +602,8 @@ static void AnimUnusedSmallEmber_Step(struct Sprite *sprite)
// Sunlight from Sunny Day / sunny weather
static void AnimSunlight(struct Sprite *sprite)
{
sprite->pos1.x = 0;
sprite->pos1.y = 0;
sprite->x = 0;
sprite->y = 0;
sprite->data[0] = 60;
sprite->data[2] = 140;
sprite->data[4] = 80;
@ -664,9 +664,9 @@ static void AnimFireRing_Step1(struct Sprite *sprite)
if (++sprite->data[0] == 0x12)
{
sprite->data[0] = 0x19;
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);
@ -681,18 +681,18 @@ static void AnimFireRing_Step2(struct Sprite *sprite)
{
sprite->data[0] = 0;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->pos2.y = 0;
sprite->pos2.x = 0;
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->y2 = 0;
sprite->x2 = 0;
sprite->callback = AnimFireRing_Step3;
sprite->callback(sprite);
}
else
{
sprite->pos2.x += Sin(sprite->data[7], 28);
sprite->pos2.y += Cos(sprite->data[7], 28);
sprite->x2 += Sin(sprite->data[7], 28);
sprite->y2 += Cos(sprite->data[7], 28);
sprite->data[7] = (sprite->data[7] + 20) & 0xFF;
}
@ -708,8 +708,8 @@ static void AnimFireRing_Step3(struct Sprite *sprite)
static void UpdateFireRingCircleOffset(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[7], 28);
sprite->pos2.y = Cos(sprite->data[7], 28);
sprite->x2 = Sin(sprite->data[7], 28);
sprite->y2 = Cos(sprite->data[7], 28);
sprite->data[7] = (sprite->data[7] + 20) & 0xFF;
}
@ -722,8 +722,8 @@ static void UpdateFireRingCircleOffset(struct Sprite *sprite)
// AnimFireCross(struct Sprite *sprite)
static void AnimFireCross(struct Sprite *sprite)
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3];
@ -760,8 +760,8 @@ static void AnimFireSpiralOutward_Step1(struct Sprite *sprite)
static void AnimFireSpiralOutward_Step2(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[1], sprite->data[2] >> 8);
sprite->pos2.y = Cos(sprite->data[1], sprite->data[2] >> 8);
sprite->x2 = Sin(sprite->data[1], sprite->data[2] >> 8);
sprite->y2 = Cos(sprite->data[1], sprite->data[2] >> 8);
sprite->data[1] = (sprite->data[1] + 10) & 0xFF;
sprite->data[2] += 0xD0;
@ -781,7 +781,7 @@ void AnimTask_EruptionLaunchRocks(u8 taskId)
task->data[1] = 0;
task->data[2] = 0;
task->data[3] = 0;
task->data[4] = gSprites[task->data[15]].pos1.y;
task->data[4] = gSprites[task->data[15]].y;
task->data[5] = GetBattlerSide(gBattleAnimAttacker);
task->data[6] = 0;
@ -805,9 +805,9 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId)
task->data[1] = 0;
if (++task->data[2] & 0x1)
gSprites[task->data[15]].pos2.x = 3;
gSprites[task->data[15]].x2 = 3;
else
gSprites[task->data[15]].pos2.x = -3;
gSprites[task->data[15]].x2 = -3;
}
if (task->data[5] != B_SIDE_PLAYER)
@ -815,14 +815,14 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId)
if (++task->data[3] > 4)
{
task->data[3] = 0;
gSprites[task->data[15]].pos1.y++;
gSprites[task->data[15]].y++;
}
}
if(!UpdateEruptAnimTask(task))
{
SetBattlerSpriteYOffsetFromYScale(task->data[15]);
gSprites[task->data[15]].pos2.x = 0;
gSprites[task->data[15]].x2 = 0;
task->data[1] = 0;
task->data[2] = 0;
@ -855,9 +855,9 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId)
task->data[1] = 0;
if (++task->data[2] & 1)
gSprites[task->data[15]].pos2.y += 3;
gSprites[task->data[15]].y2 += 3;
else
gSprites[task->data[15]].pos2.y -= 3;
gSprites[task->data[15]].y2 -= 3;
}
if (++task->data[3] > 0x18)
@ -868,7 +868,7 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId)
PrepareEruptAnimTaskData(task, task->data[15], 0x180, 0xC0, 0x100, 0x100, 8);
if (task->data[2] & 1)
gSprites[task->data[15]].pos2.y -= 3;
gSprites[task->data[15]].y2 -= 3;
task->data[1] = 0;
task->data[2] = 0;
@ -878,11 +878,11 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId)
break;
case 5:
if (task->data[5] != B_SIDE_PLAYER)
gSprites[task->data[15]].pos1.y--;
gSprites[task->data[15]].y--;
if (!UpdateEruptAnimTask(task))
{
gSprites[task->data[15]].pos1.y = task->data[4];
gSprites[task->data[15]].y = task->data[4];
ResetSpriteRotScale(task->data[15]);
task->data[2] = 0;
task->data[0]++;
@ -903,7 +903,7 @@ static void CreateEruptionLaunchRocks(u8 spriteId, u8 taskId, u8 a3)
s8 sign;
u16 y = GetEruptionLaunchRockInitialYPos(spriteId);
u16 x = gSprites[spriteId].pos1.x;
u16 x = gSprites[spriteId].x;
if(!GetBattlerSide(gBattleAnimAttacker))
{
@ -949,7 +949,7 @@ static void AnimEruptionLaunchRock(struct Sprite *sprite)
static u16 GetEruptionLaunchRockInitialYPos(u8 spriteId)
{
s16 y = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y + gSprites[spriteId].centerToCornerVecY;
s16 y = gSprites[spriteId].y + gSprites[spriteId].y2 + gSprites[spriteId].centerToCornerVecY;
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
y += 74;
@ -963,8 +963,8 @@ static void InitEruptionLaunchRockCoordData(struct Sprite *sprite, s16 x, s16 y)
{
sprite->data[0] = 0;
sprite->data[1] = 0;
sprite->data[2] = (u16)sprite->pos1.x * 8;
sprite->data[3] = (u16)sprite->pos1.y * 8;
sprite->data[2] = (u16)sprite->x * 8;
sprite->data[3] = (u16)sprite->y * 8;
sprite->data[4] = x * 8;
sprite->data[5] = y * 8;
}
@ -981,18 +981,18 @@ static void UpdateEruptionLaunchRockPos(struct Sprite *sprite)
}
sprite->data[2] += sprite->data[4];
sprite->pos1.x = sprite->data[2] >> 3;
sprite->x = sprite->data[2] >> 3;
sprite->data[3] += sprite->data[5];
sprite->pos1.y = sprite->data[3] >> 3;
sprite->y = sprite->data[3] >> 3;
if (sprite->pos1.x < -8 || sprite->pos1.x > 0xf8 || sprite->pos1.y < -8 || sprite->pos1.y > 120)
if (sprite->x < -8 || sprite->x > 0xf8 || sprite->y < -8 || sprite->y > 120)
sprite->invisible = TRUE;
}
static void AnimEruptionFallingRock(struct Sprite *sprite)
{
sprite->pos1.x = gBattleAnimArgs[0];
sprite->pos1.y = gBattleAnimArgs[1];
sprite->x = gBattleAnimArgs[0];
sprite->y = gBattleAnimArgs[1];
sprite->data[0] = 0;
sprite->data[1] = 0;
@ -1018,10 +1018,10 @@ static void AnimEruptionFallingRock_Step(struct Sprite *sprite)
sprite->data[0]++;
// fall through
case 1:
sprite->pos1.y += 8;
if (sprite->pos1.y >= sprite->data[7])
sprite->y += 8;
if (sprite->y >= sprite->data[7])
{
sprite->pos1.y = sprite->data[7];
sprite->y = sprite->data[7];
sprite->data[0]++;
}
break;
@ -1031,11 +1031,11 @@ static void AnimEruptionFallingRock_Step(struct Sprite *sprite)
sprite->data[1] = 0;
if ((++sprite->data[2] & 1) != 0)
{
sprite->pos2.y = -3;
sprite->y2 = -3;
}
else
{
sprite->pos2.y = 3;
sprite->y2 = 3;
}
}
@ -1072,14 +1072,14 @@ static void AnimWillOWispOrb(struct Sprite *sprite)
sprite->data[1] += 192;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos2.y = -(sprite->data[1] >> 8);
sprite->y2 = -(sprite->data[1] >> 8);
}
else
{
sprite->pos2.y = sprite->data[1] >> 8;
sprite->y2 = sprite->data[1] >> 8;
}
sprite->pos2.x = Sin(sprite->data[2], sprite->data[4]);
sprite->x2 = Sin(sprite->data[2], sprite->data[4]);
sprite->data[2] = (sprite->data[2] + 4) & 0xFF;
if (++sprite->data[3] == 1)
@ -1089,20 +1089,20 @@ static void AnimWillOWispOrb(struct Sprite *sprite)
}
break;
case 2:
sprite->pos2.x = Sin(sprite->data[2], sprite->data[4]);
sprite->x2 = Sin(sprite->data[2], sprite->data[4]);
sprite->data[2] = (sprite->data[2] + 4) & 0xFF;
if (++sprite->data[3] == 31)
{
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;
sprite->data[0] = 256;
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);
InitAnimLinearTranslationWithSpeed(sprite);
@ -1119,7 +1119,7 @@ static void AnimWillOWispOrb_Step(struct Sprite *sprite)
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.x += Sin(sprite->data[5], 16);
sprite->x2 += Sin(sprite->data[5], 16);
initialData5 = sprite->data[5];
sprite->data[5] = (sprite->data[5] + 4) & 0xFF;
newData5 = sprite->data[5];
@ -1146,8 +1146,8 @@ static void AnimWillOWispFire(struct Sprite *sprite)
sprite->data[3] += 0xC0 * 2;
sprite->data[4] += 0xA0;
sprite->pos2.x = Sin(sprite->data[1], sprite->data[3] >> 8);
sprite->pos2.y = Cos(sprite->data[1], sprite->data[4] >> 8);
sprite->x2 = Sin(sprite->data[1], sprite->data[3] >> 8);
sprite->y2 = Cos(sprite->data[1], sprite->data[4] >> 8);
sprite->data[1] = (sprite->data[1] + 7) & 0xFF;
@ -1205,7 +1205,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId)
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++)
{
gSprites[task->data[task->data[3] + 14]].pos2.x = task->data[10] + task->data[11];
gSprites[task->data[task->data[3] + 14]].x2 = task->data[10] + task->data[11];
}
if (++task->data[9] == 16)
@ -1228,7 +1228,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId)
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++)
{
gSprites[task->data[task->data[3] + 14]].pos2.x = task->data[10] + task->data[11];
gSprites[task->data[task->data[3] + 14]].x2 = task->data[10] + task->data[11];
}
if (++task->data[9] == 96)
@ -1253,7 +1253,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId)
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++)
{
gSprites[task->data[task->data[3] + 14]].pos2.x = task->data[10] + task->data[11];
gSprites[task->data[task->data[3] + 14]].x2 = task->data[10] + task->data[11];
}
if (++task->data[9] == 16)
@ -1264,7 +1264,7 @@ static void AnimTask_MoveHeatWaveTargets_Step(u8 taskId)
case 3:
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++)
{
gSprites[task->data[task->data[3] + 14]].pos2.x = 0;
gSprites[task->data[task->data[3] + 14]].x2 = 0;
}
DestroyAnimVisualTask(taskId);
@ -1312,14 +1312,14 @@ void AnimTask_ShakeTargetInPattern(u8 taskId)
dir = sShakeDirsPattern1[gTasks[taskId].tShakeNum % 10];
if (gTasks[taskId].tVertical == TRUE)
gSprites[spriteId].pos2.y = gBattleAnimArgs[1] * dir < 0 ? -(gBattleAnimArgs[1] * dir) : gBattleAnimArgs[1] * dir;
gSprites[spriteId].y2 = gBattleAnimArgs[1] * dir < 0 ? -(gBattleAnimArgs[1] * dir) : gBattleAnimArgs[1] * dir;
else
gSprites[spriteId].pos2.x = gBattleAnimArgs[1] * dir;
gSprites[spriteId].x2 = gBattleAnimArgs[1] * dir;
if (gTasks[taskId].tShakeNum == gTasks[taskId].tMaxShakes)
{
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].pos2.y = 0;
gSprites[spriteId].x2 = 0;
gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId);
}
}

View File

@ -353,7 +353,7 @@ const struct SpriteTemplate gSkyAttackBirdSpriteTemplate =
static void AnimEllipticalGust(struct Sprite *sprite)
{
InitSpritePosToAnimTarget(sprite, FALSE);
sprite->pos1.y += 20;
sprite->y += 20;
sprite->data[1] = 191;
sprite->callback = AnimEllipticalGust_Step;
sprite->callback(sprite);
@ -361,8 +361,8 @@ static void AnimEllipticalGust(struct Sprite *sprite)
static void AnimEllipticalGust_Step(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[1], 32);
sprite->pos2.y = Cos(sprite->data[1], 8);
sprite->x2 = Sin(sprite->data[1], 32);
sprite->y2 = Cos(sprite->data[1], 8);
sprite->data[1] += 5;
sprite->data[1] &= 0xFF;
if (++sprite->data[0] == 71)
@ -412,9 +412,9 @@ static void AnimGustToTarget(struct Sprite *sprite)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x;
sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2];
sprite->data[3] = sprite->pos1.y;
sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3];
InitAnimLinearTranslation(sprite);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
@ -443,10 +443,10 @@ static void AnimAirWaveCrescent(struct Sprite *sprite)
gBattleAnimArgs[3] = -gBattleAnimArgs[3];
}
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[4];
if (gBattleAnimArgs[6] == 0)
@ -485,10 +485,10 @@ static void AnimFlyBallUp_Step(struct Sprite *sprite)
else
{
sprite->data[2] += sprite->data[1];
sprite->pos2.y -= (sprite->data[2] >> 8);
sprite->y2 -= (sprite->data[2] >> 8);
}
if (sprite->pos1.y + sprite->pos2.y < -32)
if (sprite->y + sprite->y2 < -32)
DestroyAnimSprite(sprite);
}
@ -496,20 +496,20 @@ static void AnimFlyBallAttack(struct Sprite *sprite)
{
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos1.x = DISPLAY_WIDTH + 32;
sprite->pos1.y = -32;
sprite->x = DISPLAY_WIDTH + 32;
sprite->y = -32;
StartSpriteAffineAnim(sprite, 1);
}
else
{
sprite->pos1.x = -32;
sprite->pos1.y = -32;
sprite->x = -32;
sprite->y = -32;
}
sprite->data[0] = gBattleAnimArgs[0];
sprite->data[1] = sprite->pos1.x;
sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->data[3] = sprite->pos1.y;
sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
InitAnimLinearTranslation(sprite);
@ -522,14 +522,14 @@ static void AnimFlyBallAttack_Step(struct Sprite *sprite)
AnimTranslateLinear(sprite);
if (((u16)sprite->data[3] >> 8) > 200)
{
sprite->pos1.x += sprite->pos2.x;
sprite->pos2.x = 0;
sprite->x += sprite->x2;
sprite->x2 = 0;
sprite->data[3] &= 0xFF;
}
if (sprite->pos1.x + sprite->pos2.x < -32
|| sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 32
|| sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT)
if (sprite->x + sprite->x2 < -32
|| sprite->x + sprite->x2 > DISPLAY_WIDTH + 32
|| sprite->y + sprite->y2 > DISPLAY_HEIGHT)
{
gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE;
DestroyAnimSprite(sprite);
@ -584,11 +584,11 @@ static void AnimFallingFeather(struct Sprite *sprite)
if (GetBattlerSide(battler) == B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_ATTR_HEIGHT) + gBattleAnimArgs[0];
sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_ATTR_HEIGHT) + gBattleAnimArgs[0];
spriteCoord = GetBattlerSpriteCoord(battler, BATTLER_COORD_ATTR_WIDTH);
sprite->pos1.y = spriteCoord + gBattleAnimArgs[1];
sprite->y = spriteCoord + gBattleAnimArgs[1];
data->unk8 = sprite->pos1.y << 8;
data->unk8 = sprite->y << 8;
data->unkE_1 = spriteCoord + gBattleAnimArgs[6];
data->unk0_0c = 1;
data->unk2 = gBattleAnimArgs[2] & 0xFF;
@ -631,10 +631,10 @@ static void AnimFallingFeather(struct Sprite *sprite)
}
data->unk0_1 = data->unk2 >> 6;
sprite->pos2.x = (gSineTable[data->unk2] * data->unkC[0]) >> 8;
sprite->x2 = (gSineTable[data->unk2] * data->unkC[0]) >> 8;
matrixNum = sprite->oam.matrixNum;
sinIndex = (-sprite->pos2.x >> 1) + data->unkA;
sinIndex = (-sprite->x2 >> 1) + data->unkA;
spriteCoord = gSineTable[sinIndex];
gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64];
@ -867,10 +867,10 @@ static void AnimFallingFeather_Step(struct Sprite *sprite)
break;
}
sprite->pos2.x = ((s32)data->unkC[data->unk0_0b] * gSineTable[data->unk2]) >> 8;
sprite->x2 = ((s32)data->unkC[data->unk0_0b] * gSineTable[data->unk2]) >> 8;
matrixNum = sprite->oam.matrixNum;
sinIndex = (-sprite->pos2.x >> 1) + data->unkA;
sinIndex = (-sprite->x2 >> 1) + data->unkA;
sinVal = gSineTable[sinIndex];
gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64];
@ -878,13 +878,13 @@ static void AnimFallingFeather_Step(struct Sprite *sprite)
gOamMatrices[matrixNum].c = -sinVal;
data->unk8 += data->unk6;
sprite->pos1.y = data->unk8 >> 8;
sprite->y = data->unk8 >> 8;
if (data->unk4 & 0x8000)
data->unk2 = (data->unk2 - (data->unk4 & 0x7FFF)) & 0xFF;
else
data->unk2 = (data->unk2 + (data->unk4 & 0x7FFF)) & 0xFF;
if (sprite->pos1.y + sprite->pos2.y >= data->unkE_1)
if (sprite->y + sprite->y2 >= data->unkE_1)
{
sprite->data[0] = 0;
sprite->callback = DestroyAnimSpriteAfterTimer;
@ -895,8 +895,8 @@ static void AnimFallingFeather_Step(struct Sprite *sprite)
static void AnimUnusedBubbleThrow(struct Sprite *sprite)
{
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget);
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->callback = TranslateAnimSpriteToTargetMonLocation;
}
@ -913,16 +913,16 @@ static void AnimWhirlwindLine(struct Sprite * sprite)
if ((gBattleAnimArgs[2] == ANIM_ATTACKER && !GetBattlerSide(gBattleAnimAttacker))
|| (gBattleAnimArgs[2] == ANIM_TARGET && !GetBattlerSide(gBattleAnimTarget)))
{
sprite->pos1.x += 8;
sprite->x += 8;
}
SeekSpriteAnim(sprite, gBattleAnimArgs[4]);
sprite->pos1.x -= 32;
sprite->x -= 32;
sprite->data[1] = 0x0ccc;
offset = gBattleAnimArgs[4];
mult = 12;
sprite->pos2.x += mult * offset;
sprite->x2 += mult * offset;
sprite->data[0] = offset;
sprite->data[7] = gBattleAnimArgs[3];
sprite->callback = AnimWhirlwindLine_Step;
@ -930,12 +930,12 @@ static void AnimWhirlwindLine(struct Sprite * sprite)
static void AnimWhirlwindLine_Step(struct Sprite *sprite)
{
sprite->pos2.x += sprite->data[1] >> 8;
sprite->x2 += sprite->data[1] >> 8;
if (++sprite->data[0] == 6)
{
sprite->data[0] = 0;
sprite->pos2.x = 0;
sprite->x2 = 0;
StartSpriteAnim(sprite, 0);
}
@ -987,18 +987,18 @@ static void AnimBounceBallLand(struct Sprite *sprite)
switch (sprite->data[0])
{
case 0:
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->pos2.y = -sprite->pos1.y - 32;
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->y2 = -sprite->y - 32;
sprite->data[0]++;
break;
case 1:
sprite->pos2.y += 10;
if (sprite->pos2.y >= 0)
sprite->y2 += 10;
if (sprite->y2 >= 0)
++sprite->data[0];
break;
case 2:
sprite->pos2.y -= 10;
if (sprite->pos1.y + sprite->pos2.y < -32)
sprite->y2 -= 10;
if (sprite->y + sprite->y2 < -32)
{
gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE;
DestroyAnimSprite(sprite);
@ -1022,10 +1022,10 @@ void AnimDiveBall_Step1(struct Sprite *sprite)
{
sprite->data[0]--;
}
else if (sprite->pos1.y + sprite->pos2.y > -32)
else if (sprite->y + sprite->y2 > -32)
{
sprite->data[2] += sprite->data[1];
sprite->pos2.y -= (sprite->data[2] >> 8);
sprite->y2 -= (sprite->data[2] >> 8);
}
else
{
@ -1037,12 +1037,12 @@ void AnimDiveBall_Step1(struct Sprite *sprite)
static void AnimDiveBall_Step2(struct Sprite *sprite)
{
sprite->pos2.y += sprite->data[2] >> 8;
sprite->y2 += sprite->data[2] >> 8;
if (sprite->pos1.y + sprite->pos2.y > -32)
if (sprite->y + sprite->y2 > -32)
sprite->invisible = FALSE;
if (sprite->pos2.y > 0)
if (sprite->y2 > 0)
DestroyAnimSprite(sprite);
}
@ -1056,13 +1056,13 @@ static void AnimDiveWaterSplash(struct Sprite *sprite)
case 0:
if (!gBattleAnimArgs[0])
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
}
sprite->data[1] = 0x200;
@ -1089,7 +1089,7 @@ static void AnimDiveWaterSplash(struct Sprite *sprite)
t2 = 128;
t2 = (64 - t2) / 2;
sprite->pos2.y = t2;
sprite->y2 = t2;
if (sprite->data[2] == 24)
{
@ -1123,13 +1123,13 @@ static void AnimSprayWaterDroplet(struct Sprite *sprite)
if (gBattleAnimArgs[1] == 0)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32;
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32;
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 32;
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 32;
}
sprite->callback = AnimSprayWaterDroplet_Step;
@ -1139,13 +1139,13 @@ static void AnimSprayWaterDroplet_Step(struct Sprite *sprite)
{
if (sprite->data[2] == 0)
{
sprite->pos2.x += sprite->data[0] >> 8;
sprite->pos2.y -= sprite->data[1] >> 8;
sprite->x2 += sprite->data[0] >> 8;
sprite->y2 -= sprite->data[1] >> 8;
}
else
{
sprite->pos2.x -= sprite->data[0] >> 8;
sprite->pos2.y -= sprite->data[1] >> 8;
sprite->x2 -= sprite->data[0] >> 8;
sprite->y2 -= sprite->data[1] >> 8;
}
sprite->data[0] = sprite->data[0];
@ -1187,19 +1187,19 @@ static void AnimUnusedFlashingLight_Step(struct Sprite *sprite)
static void AnimSkyAttackBird(struct Sprite *sprite)
{
u16 rotation;
s16 posx = sprite->pos1.x;
s16 posy = sprite->pos1.y;
s16 posx = sprite->x;
s16 posy = sprite->y;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->data[4] = sprite->pos1.x << 4;
sprite->data[5] = sprite->pos1.y << 4;
sprite->data[4] = sprite->x << 4;
sprite->data[5] = sprite->y << 4;
sprite->data[6] = ((posx - sprite->pos1.x) << 4) / 12;
sprite->data[7] = ((posy - sprite->pos1.y) << 4) / 12;
sprite->data[6] = ((posx - sprite->x) << 4) / 12;
sprite->data[7] = ((posy - sprite->y) << 4) / 12;
rotation = ArcTan2Neg(posx - sprite->pos1.x, posy - sprite->pos1.y);
rotation = ArcTan2Neg(posx - sprite->x, posy - sprite->y);
rotation -= 16384;
TrySetSpriteRotScale(sprite, 1, 0x100, 0x100, rotation);
@ -1212,11 +1212,11 @@ void AnimSkyAttackBird_Step(struct Sprite *sprite)
sprite->data[4] += sprite->data[6];
sprite->data[5] += sprite->data[7];
sprite->pos1.x = sprite->data[4] >> 4;
sprite->pos1.y = sprite->data[5] >> 4;
sprite->x = sprite->data[4] >> 4;
sprite->y = sprite->data[5] >> 4;
if (sprite->pos1.x > 285 || sprite->pos1.x < -45
|| sprite->pos1.y > 157 || sprite->pos1.y < -45)
if (sprite->x > 285 || sprite->x < -45
|| sprite->y > 157 || sprite->y < -45)
DestroySpriteAndMatrix(sprite);
}

View File

@ -221,9 +221,9 @@ static void AnimConfuseRayBallBounce(struct Sprite *sprite)
{
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[2];
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);
InitAnimLinearTranslationWithSpeed(sprite);
sprite->callback = AnimConfuseRayBallBounce_Step1;
@ -243,8 +243,8 @@ static void AnimConfuseRayBallBounce_Step1(struct Sprite *sprite)
return;
}
sprite->pos2.x += Sin(sprite->data[5], 10);
sprite->pos2.y += Cos(sprite->data[5], 15);
sprite->x2 += Sin(sprite->data[5], 10);
sprite->y2 += Cos(sprite->data[5], 15);
r2 = sprite->data[5];
sprite->data[5] = (sprite->data[5] + 5) & 0xFF;
r0 = sprite->data[5];
@ -261,8 +261,8 @@ static void AnimConfuseRayBallBounce_Step2(struct Sprite *sprite)
s16 r0;
sprite->data[0] = 1;
AnimTranslateLinear(sprite);
sprite->pos2.x += Sin(sprite->data[5], 10);
sprite->pos2.y += Cos(sprite->data[5], 15);
sprite->x2 += Sin(sprite->data[5], 10);
sprite->y2 += Cos(sprite->data[5], 15);
r2 = sprite->data[5];
sprite->data[5] = (sprite->data[5] + 5) & 0xFF;
@ -318,8 +318,8 @@ static void AnimConfuseRayBallSpiral(struct Sprite *sprite)
static void AnimConfuseRayBallSpiral_Step(struct Sprite *sprite)
{
u16 temp1;
sprite->pos2.x = Sin(sprite->data[0], 32);
sprite->pos2.y = Cos(sprite->data[0], 8);
sprite->x2 = Sin(sprite->data[0], 32);
sprite->y2 = Cos(sprite->data[0], 8);
temp1 = sprite->data[0] - 65;
if (temp1 <= 130)
sprite->oam.priority = 2;
@ -327,7 +327,7 @@ static void AnimConfuseRayBallSpiral_Step(struct Sprite *sprite)
sprite->oam.priority = 1;
sprite->data[0] = (sprite->data[0] + 19) & 0xFF;
sprite->data[2] += 80;
sprite->pos2.y += sprite->data[2] >> 8;
sprite->y2 += sprite->data[2] >> 8;
sprite->data[7] += 1;
if (sprite->data[7] == 61)
DestroyAnimSprite(sprite);
@ -397,19 +397,19 @@ static void AnimTask_NightShadeClone_Step2(u8 taskId)
// arg 2: duration step 3 (center -> target)
static void AnimShadowBall(struct Sprite *sprite)
{
s16 oldPosX = sprite->pos1.x;
s16 oldPosY = sprite->pos1.y;
s16 oldPosX = sprite->x;
s16 oldPosY = sprite->y;
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] = 0;
sprite->data[1] = gBattleAnimArgs[0];
sprite->data[2] = gBattleAnimArgs[1];
sprite->data[3] = gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.x << 4;
sprite->data[5] = sprite->pos1.y << 4;
sprite->data[6] = ((oldPosX - sprite->pos1.x) << 4) / (gBattleAnimArgs[0] << 1);
sprite->data[7] = ((oldPosY - sprite->pos1.y) << 4) / (gBattleAnimArgs[0] << 1);
sprite->data[4] = sprite->x << 4;
sprite->data[5] = sprite->y << 4;
sprite->data[6] = ((oldPosX - sprite->x) << 4) / (gBattleAnimArgs[0] << 1);
sprite->data[7] = ((oldPosY - sprite->y) << 4) / (gBattleAnimArgs[0] << 1);
sprite->callback = AnimShadowBall_Step;
}
@ -420,8 +420,8 @@ static void AnimShadowBall_Step(struct Sprite *sprite)
case 0:
sprite->data[4] += sprite->data[6];
sprite->data[5] += sprite->data[7];
sprite->pos1.x = sprite->data[4] >> 4;
sprite->pos1.y = sprite->data[5] >> 4;
sprite->x = sprite->data[4] >> 4;
sprite->y = sprite->data[5] >> 4;
sprite->data[1] -= 1;
if (sprite->data[1] > 0)
break;
@ -433,22 +433,22 @@ static void AnimShadowBall_Step(struct Sprite *sprite)
break;
sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->data[4] = sprite->pos1.x << 4;
sprite->data[5] = sprite->pos1.y << 4;
sprite->data[6] = ((sprite->data[1] - sprite->pos1.x) << 4) / sprite->data[3];
sprite->data[7] = ((sprite->data[2] - sprite->pos1.y) << 4) / sprite->data[3];
sprite->data[4] = sprite->x << 4;
sprite->data[5] = sprite->y << 4;
sprite->data[6] = ((sprite->data[1] - sprite->x) << 4) / sprite->data[3];
sprite->data[7] = ((sprite->data[2] - sprite->y) << 4) / sprite->data[3];
sprite->data[0] += 1;
break;
case 2:
sprite->data[4] += sprite->data[6];
sprite->data[5] += sprite->data[7];
sprite->pos1.x = sprite->data[4] >> 4;
sprite->pos1.y = sprite->data[5] >> 4;
sprite->x = sprite->data[4] >> 4;
sprite->y = sprite->data[5] >> 4;
sprite->data[3] -= 1;
if (sprite->data[3] > 0)
break;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->data[0] += 1;
break;
case 3:
@ -648,7 +648,7 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId)
task->data[15]++;
break;
case 2:
startLine = gSprites[task->data[13]].pos1.y + gSprites[task->data[13]].pos2.y - 32;
startLine = gSprites[task->data[13]].y + gSprites[task->data[13]].y2 - 32;
if (startLine < 0)
startLine = 0;
@ -770,8 +770,8 @@ static void AnimDestinyBondWhiteShadow(struct Sprite *sprite)
sprite->data[6] = battler2Y;
sprite->data[7] = sprite->data[4] / 2;
sprite->oam.priority = 2;
sprite->pos1.x = battler1X;
sprite->pos1.y = battler1Y;
sprite->x = battler1X;
sprite->y = battler1Y;
sprite->callback = AnimDestinyBondWhiteShadow_Step;
sprite->invisible = TRUE;
}
@ -782,8 +782,8 @@ static void AnimDestinyBondWhiteShadow_Step(struct Sprite *sprite)
{
sprite->data[0] += sprite->data[2];
sprite->data[1] += sprite->data[3];
sprite->pos1.x = sprite->data[0] >> 4;
sprite->pos1.y = sprite->data[1] >> 4;
sprite->x = sprite->data[0] >> 4;
sprite->y = sprite->data[1] >> 4;
if (--sprite->data[4] == 0)
sprite->data[0] = 0;
}
@ -1047,7 +1047,7 @@ static void AnimCurseNail(struct Sprite *sprite)
xDelta2 = 2;
}
sprite->pos1.x += xDelta;
sprite->x += xDelta;
sprite->data[1] = xDelta2;
sprite->data[0] = 60;
sprite->callback = AnimCurseNail_Step1;
@ -1063,12 +1063,12 @@ static void AnimCurseNail_Step1(struct Sprite *sprite)
}
else
{
sprite->pos2.x += sprite->data[1];
var0 = sprite->pos2.x + 7;
sprite->x2 += sprite->data[1];
var0 = sprite->x2 + 7;
if (var0 > 14)
{
sprite->pos1.x += sprite->pos2.x;
sprite->pos2.x = 0;
sprite->x += sprite->x2;
sprite->x2 = 0;
sprite->oam.tileNum += 8;
if (++sprite->data[2] == 3)
{
@ -1125,13 +1125,13 @@ static void AnimGhostStatusSprite(struct Sprite *sprite)
u16 coeffB;
u16 coeffA;
sprite->pos2.x = Sin(sprite->data[0], 12);
sprite->x2 = Sin(sprite->data[0], 12);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos2.x = -sprite->pos2.x;
sprite->x2 = -sprite->x2;
sprite->data[0] = (sprite->data[0] + 6) & 0xFF;
sprite->data[1] += 0x100;
sprite->pos2.y = -(sprite->data[1] >> 8);
sprite->y2 = -(sprite->data[1] >> 8);
sprite->data[7]++;
if (sprite->data[7] == 1)
@ -1284,7 +1284,7 @@ static void AnimGrudgeFlame(struct Sprite *sprite)
sprite->data[2] -= 2;
sprite->data[2] &= 0xFF;
sprite->pos2.x = Sin(sprite->data[2], sprite->data[3]);
sprite->x2 = Sin(sprite->data[2], sprite->data[3]);
index = sprite->data[2] - 65;
if (index < 127)
@ -1294,7 +1294,7 @@ static void AnimGrudgeFlame(struct Sprite *sprite)
sprite->data[5]++;
sprite->data[6] = (sprite->data[5] * 8) & 0xFF;
sprite->pos2.y = Sin(sprite->data[6], 7);
sprite->y2 = Sin(sprite->data[6], 7);
if (gTasks[sprite->data[0]].data[8])
{
gTasks[sprite->data[0]].data[7]--;
@ -1312,7 +1312,7 @@ static void AnimMonMoveCircular(struct Sprite *sprite)
sprite->data[3] = gBattleAnimArgs[1];
sprite->callback = AnimMonMoveCircular_Step;
gSprites[sprite->data[5]].pos1.y += 8;
gSprites[sprite->data[5]].y += 8;
}
static void AnimMonMoveCircular_Step(struct Sprite *sprite)
@ -1320,17 +1320,17 @@ static void AnimMonMoveCircular_Step(struct Sprite *sprite)
if (sprite->data[3])
{
sprite->data[3]--;
gSprites[sprite->data[5]].pos2.x = Sin(sprite->data[0], sprite->data[1]);
gSprites[sprite->data[5]].pos2.y = Cos(sprite->data[0], sprite->data[1]);
gSprites[sprite->data[5]].x2 = Sin(sprite->data[0], sprite->data[1]);
gSprites[sprite->data[5]].y2 = Cos(sprite->data[0], sprite->data[1]);
sprite->data[0] += sprite->data[2];
if (sprite->data[0] > 255)
sprite->data[0] -= 256;
}
else
{
gSprites[sprite->data[5]].pos2.x = 0;
gSprites[sprite->data[5]].pos2.y = 0;
gSprites[sprite->data[5]].pos1.y -= 8;
gSprites[sprite->data[5]].x2 = 0;
gSprites[sprite->data[5]].y2 = 0;
gSprites[sprite->data[5]].y -= 8;
sprite->callback = DestroySpriteAndMatrix;
}
}

View File

@ -141,8 +141,8 @@ const struct SpriteTemplate gDirtMoundSpriteTemplate =
// a boomerang. After hitting the target mon, it comes back to the user.
static void AnimBonemerangProjectile(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] = 20;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
@ -155,10 +155,10 @@ static void AnimBonemerangProjectile_Step(struct Sprite *sprite)
{
if (TranslateAnimHorizontalArc(sprite))
{
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;
sprite->data[0] = 20;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
@ -234,16 +234,16 @@ static void AnimMudSportDirt(struct Sprite *sprite)
sprite->oam.tileNum++;
if (gBattleAnimArgs[0] == 0)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2];
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1];
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[1] > 0 ? 1 : -1;
sprite->callback = AnimMudSportDirtRising;
}
else
{
sprite->pos1.x = gBattleAnimArgs[1];
sprite->pos1.y = gBattleAnimArgs[2];
sprite->pos2.y = -gBattleAnimArgs[2];
sprite->x = gBattleAnimArgs[1];
sprite->y = gBattleAnimArgs[2];
sprite->y2 = -gBattleAnimArgs[2];
sprite->callback = AnimMudSportDirtFalling;
}
}
@ -253,11 +253,11 @@ static void AnimMudSportDirtRising(struct Sprite *sprite)
if (++sprite->data[1] > 1)
{
sprite->data[1] = 0;
sprite->pos1.x += sprite->data[0];
sprite->x += sprite->data[0];
}
sprite->pos1.y -= 4;
if (sprite->pos1.y < -4)
sprite->y -= 4;
if (sprite->y < -4)
DestroyAnimSprite(sprite);
}
@ -266,10 +266,10 @@ static void AnimMudSportDirtFalling(struct Sprite *sprite)
switch (sprite->data[0])
{
case 0:
sprite->pos2.y += 4;
if (sprite->pos2.y >= 0)
sprite->y2 += 4;
if (sprite->y2 >= 0)
{
sprite->pos2.y = 0;
sprite->y2 = 0;
sprite->data[0]++;
}
break;
@ -353,7 +353,7 @@ static void AnimTask_DigBounceMovement(u8 taskId)
else
gBattle_BG2_Y = task->data[13] - task->data[5];
gSprites[task->data[10]].pos2.x = DISPLAY_WIDTH + 32 - gSprites[task->data[10]].pos1.x;
gSprites[task->data[10]].x2 = DISPLAY_WIDTH + 32 - gSprites[task->data[10]].x;
task->data[0]++;
}
break;
@ -372,8 +372,8 @@ static void AnimTask_DigEndBounceMovementSetInvisible(u8 taskId)
{
u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
gSprites[spriteId].invisible = TRUE;
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].pos2.y = 0;
gSprites[spriteId].x2 = 0;
gSprites[spriteId].y2 = 0;
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
gBattle_BG1_Y = 0;
@ -404,8 +404,8 @@ static void AnimTask_DigSetVisibleUnderground(u8 taskId)
case 0:
task->data[10] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
gSprites[task->data[10]].invisible = FALSE;
gSprites[task->data[10]].pos2.x = 0;
gSprites[task->data[10]].pos2.y = DISPLAY_HEIGHT - gSprites[task->data[10]].pos1.y;
gSprites[task->data[10]].x2 = 0;
gSprites[task->data[10]].y2 = DISPLAY_HEIGHT - gSprites[task->data[10]].y;
task->data[0]++;
break;
case 1:
@ -438,12 +438,12 @@ static void AnimTask_DigRiseUpFromHole(u8 taskId)
task->data[0]++;
break;
case 2:
gSprites[task->data[10]].pos2.y = 96;
gSprites[task->data[10]].y2 = 96;
task->data[0]++;
break;
case 3:
gSprites[task->data[10]].pos2.y -= 8;
if (gSprites[task->data[10]].pos2.y == 0)
gSprites[task->data[10]].y2 -= 8;
if (gSprites[task->data[10]].y2 == 0)
{
gScanlineEffect.state = 3;
task->data[0]++;
@ -518,11 +518,11 @@ void AnimDirtPlumeParticle(struct Sprite *sprite)
gBattleAnimArgs[2] *= -1;
}
sprite->pos1.x = GetBattlerSpriteCoord(battler, 2) + xOffset;
sprite->pos1.y = GetBattlerYCoordWithElevation(battler) + 30;
sprite->x = GetBattlerSpriteCoord(battler, 2) + xOffset;
sprite->y = GetBattlerYCoordWithElevation(battler) + 30;
sprite->data[0] = gBattleAnimArgs[5];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[3];
sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[4] = sprite->y + gBattleAnimArgs[3];
sprite->data[5] = gBattleAnimArgs[4];
InitAnimArcTranslation(sprite);
sprite->callback = AnimDirtPlumeParticle_Step;
@ -549,8 +549,8 @@ static void AnimDigDirtMound(struct Sprite *sprite)
else
battler = gBattleAnimTarget;
sprite->pos1.x = GetBattlerSpriteCoord(battler, 0) - 16 + (gBattleAnimArgs[1] * 32);
sprite->pos1.y = GetBattlerYCoordWithElevation(battler) + 32;
sprite->x = GetBattlerSpriteCoord(battler, 0) - 16 + (gBattleAnimArgs[1] * 32);
sprite->y = GetBattlerYCoordWithElevation(battler) + 32;
sprite->oam.tileNum += gBattleAnimArgs[1] * 8;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
sprite->data[0] = gBattleAnimArgs[2];
@ -698,7 +698,7 @@ static void AnimTask_ShakeBattlers(u8 taskId)
break;
case 2:
for (i = 0; i < task->tNumBattlers; i++)
gSprites[task->tbattlerSpriteIds(i)].pos2.x = 0;
gSprites[task->tbattlerSpriteIds(i)].x2 = 0;
DestroyAnimVisualTask(taskId);
break;
@ -717,7 +717,7 @@ static void SetBattlersXOffsetForShake(struct Task *task)
for (i = 0; i < task->tNumBattlers; i++)
{
gSprites[task->tbattlerSpriteIds(i)].pos2.x = xOffset;
gSprites[task->tbattlerSpriteIds(i)].x2 = xOffset;
}
}

View File

@ -550,8 +550,8 @@ static void AnimUnusedIceCrystalThrow(struct Sprite *sprite)
attackerX += sprite->data[1], attackerY += sprite->data[2])
;
sprite->pos1.x = attackerX;
sprite->pos1.y = attackerY;
sprite->x = attackerX;
sprite->y = attackerY;
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = attackerX;
sprite->data[2] = targetX;
@ -569,10 +569,10 @@ static void AnimUnusedIceCrystalThrow_Step(struct Sprite *sprite)
{
sprite->data[5] += sprite->data[1];
sprite->data[6] += sprite->data[2];
sprite->pos2.x = sprite->data[5];
sprite->pos2.y = sprite->data[6];
sprite->pos2.x += Sin(sprite->data[7], sprite->data[3]);
sprite->pos2.y += Sin(sprite->data[7], sprite->data[3]);
sprite->x2 = sprite->data[5];
sprite->y2 = sprite->data[6];
sprite->x2 += Sin(sprite->data[7], sprite->data[3]);
sprite->y2 += Sin(sprite->data[7], sprite->data[3]);
sprite->data[7] = (sprite->data[7] + sprite->data[4]) & 0xFF;
sprite->data[0]--;
}
@ -631,12 +631,12 @@ static void AnimIceEffectParticle(struct Sprite *sprite)
}
else
{
SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
}
StoreSpriteCallbackInData6(sprite, AnimFlickerIceEffectParticle);
@ -666,8 +666,8 @@ static void AnimSwirlingSnowball(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
if (!gBattleAnimArgs[5])
{
@ -696,16 +696,16 @@ static void AnimSwirlingSnowball(struct Sprite *sprite)
sprite->data[0] = 1;
AnimFastTranslateLinear(sprite);
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32
|| sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT
|| sprite->pos1.y + sprite->pos2.y < -16)
if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32
|| sprite->y + sprite->y2 > DISPLAY_HEIGHT
|| sprite->y + sprite->y2 < -16)
break;
}
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;
for (i = 0; i < 8; i++)
sprite->data[i] = tempDataHolder[i];
@ -718,10 +718,10 @@ static void AnimSwirlingSnowball_Step1(struct Sprite *sprite)
{
s16 tempVar;
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;
sprite->data[0] = 128;
tempVar = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? 20 : -20;
@ -740,17 +740,17 @@ static void AnimSwirlingSnowball_Step2(struct Sprite *sprite)
if (sprite->data[5] <= 31)
{
sprite->pos2.x = Sin(sprite->data[0], tempVar) - sprite->data[3];
sprite->pos2.y = Cos(sprite->data[0], 15) - sprite->data[4];
sprite->x2 = Sin(sprite->data[0], tempVar) - sprite->data[3];
sprite->y2 = Cos(sprite->data[0], 15) - sprite->data[4];
sprite->data[0] = (sprite->data[0] + 16) & 0xFF;
sprite->data[5] += 1;
}
else
{
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;
sprite->data[4] = 0;
sprite->data[3] = 0;
sprite->callback = AnimSwirlingSnowball_End;
@ -762,9 +762,9 @@ static void AnimSwirlingSnowball_End(struct Sprite *sprite)
sprite->data[0] = 1;
AnimFastTranslateLinear(sprite);
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32
|| sprite->pos1.y + sprite->pos2.y > 256
|| sprite->pos1.y + sprite->pos2.y < -16)
if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32
|| sprite->y + sprite->y2 > 256
|| sprite->y + sprite->y2 < -16)
DestroyAnimSprite(sprite);
}
@ -786,8 +786,8 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
if (!gBattleAnimArgs[7])
{
@ -816,16 +816,16 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite)
{
sprite->data[0] = 1;
AnimFastTranslateLinear(sprite);
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32
|| sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT
|| sprite->pos1.y + sprite->pos2.y < -16)
if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32
|| sprite->y + sprite->y2 > DISPLAY_HEIGHT
|| sprite->y + sprite->y2 < -16)
break;
}
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;
for (i = 0; i < 8; i++)
sprite->data[i] = tempDataHolder[i];
@ -842,13 +842,13 @@ static void AnimWiggleParticleTowardsTarget(struct Sprite *sprite)
if (sprite->data[0] == 0)
sprite->data[0] = 1;
sprite->pos2.y += Sin(sprite->data[7], sprite->data[5]);
sprite->y2 += Sin(sprite->data[7], sprite->data[5]);
sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF;
if (sprite->data[0] == 1)
{
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > DISPLAY_WIDTH + 32
|| sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT
|| sprite->pos1.y + sprite->pos2.y < -16)
if ((u32)(sprite->x + sprite->x2 + 16) > DISPLAY_WIDTH + 32
|| sprite->y + sprite->y2 > DISPLAY_HEIGHT
|| sprite->y + sprite->y2 < -16)
DestroyAnimSprite(sprite);
}
}
@ -867,13 +867,13 @@ static void AnimWaveFromCenterOfTarget(struct Sprite *sprite)
}
else
{
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
}
sprite->data[0]++;
@ -905,13 +905,13 @@ static void InitSwirlingFogAnim(struct Sprite *sprite)
}
else
{
SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y);
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];
}
battler = gBattleAnimAttacker;
@ -924,13 +924,13 @@ static void InitSwirlingFogAnim(struct Sprite *sprite)
}
else
{
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimTarget) != 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];
}
battler = gBattleAnimTarget;
@ -944,13 +944,13 @@ static void InitSwirlingFogAnim(struct Sprite *sprite)
sprite->data[6] = tempVar;
if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)
sprite->pos1.y += 8;
sprite->y += 8;
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[2];
sprite->data[1] = sprite->x;
sprite->data[2] = sprite->x;
sprite->data[3] = sprite->y;
sprite->data[4] = sprite->y + gBattleAnimArgs[2];
InitAnimLinearTranslation(sprite);
@ -964,8 +964,8 @@ static void AnimSwirlingFogAnim(struct Sprite *sprite)
{
if (!AnimTranslateLinear(sprite))
{
sprite->pos2.x += Sin(sprite->data[5], sprite->data[6]);
sprite->pos2.y += Cos(sprite->data[5], -6);
sprite->x2 += Sin(sprite->data[5], sprite->data[6]);
sprite->y2 += Cos(sprite->data[5], -6);
if ((u16)(sprite->data[5] - 64) <= 0x7F)
sprite->oam.priority = GetBattlerSpriteBGPriority(sprite->data[7]);
@ -1080,8 +1080,8 @@ static void AnimTask_HazeScrollingFog_Step(u8 taskId)
// arg 5: ??? unknown (seems to vibrate target mon somehow)
static void AnimThrowMistBall(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = TranslateAnimSpriteToTargetMonLocation;
}
@ -1200,21 +1200,21 @@ static void InitPoisonGasCloudAnim(struct Sprite *sprite)
sprite->data[6] = 1;
}
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
if (gBattleAnimArgs[7])
{
sprite->data[1] = sprite->pos1.x + gBattleAnimArgs[1];
sprite->data[1] = sprite->x + gBattleAnimArgs[1];
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[3];
sprite->data[3] = sprite->pos1.y + gBattleAnimArgs[2];
sprite->data[3] = sprite->y + gBattleAnimArgs[2];
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[4];
sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8;
}
else
{
sprite->data[1] = sprite->pos1.x + gBattleAnimArgs[1];
sprite->data[1] = sprite->x + gBattleAnimArgs[1];
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[3];
sprite->data[3] = sprite->pos1.y + gBattleAnimArgs[2];
sprite->data[3] = sprite->y + gBattleAnimArgs[2];
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[4];
sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8;
}
@ -1238,7 +1238,7 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
case 0:
AnimTranslateLinear(sprite);
value = gSineTable[sprite->data[5]];
sprite->pos2.x += value >> 4;
sprite->x2 += value >> 4;
if (sprite->data[6])
sprite->data[5] = (sprite->data[5] - 8) & 0xFF;
else
@ -1247,12 +1247,12 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
if (sprite->data[0] <= 0)
{
sprite->data[0] = 80;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X);
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = sprite->pos1.x;
sprite->pos1.y += sprite->pos2.y;
sprite->data[3] = sprite->pos1.y;
sprite->data[4] = sprite->pos1.y + 29;
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X);
sprite->data[1] = sprite->x;
sprite->data[2] = sprite->x;
sprite->y += sprite->y2;
sprite->data[3] = sprite->y;
sprite->data[4] = sprite->y + 29;
sprite->data[7]++;
if (IsContest())
sprite->data[5] = 80;
@ -1261,9 +1261,9 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
else
sprite->data[5] = 80;
sprite->pos2.y = 0;
sprite->y2 = 0;
value = gSineTable[sprite->data[5]];
sprite->pos2.x = value >> 3;
sprite->x2 = value >> 3;
sprite->data[5] = (sprite->data[5] + 2) & 0xFF;
InitAnimLinearTranslation(sprite);
}
@ -1271,8 +1271,8 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
case 1:
AnimTranslateLinear(sprite);
value = gSineTable[sprite->data[5]];
sprite->pos2.x += value >> 3;
sprite->pos2.y += (gSineTable[sprite->data[5] + 0x40] * -3) >> 8;
sprite->x2 += value >> 3;
sprite->y2 += (gSineTable[sprite->data[5] + 0x40] * -3) >> 8;
if (!IsContest())
{
u16 var0 = sprite->data[5] - 0x40;
@ -1297,9 +1297,9 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
if (sprite->data[0] <= 0)
{
sprite->data[0] = 0x300;
sprite->data[1] = sprite->pos1.x += sprite->pos2.x;
sprite->data[3] = sprite->pos1.y += sprite->pos2.y;
sprite->data[4] = sprite->pos1.y + 4;
sprite->data[1] = sprite->x += sprite->x2;
sprite->data[3] = sprite->y += sprite->y2;
sprite->data[4] = sprite->y + 4;
if (IsContest())
sprite->data[2] = -0x10;
else if (GET_BATTLER_SIDE2(gBattleAnimTarget) != B_SIDE_PLAYER)
@ -1308,7 +1308,7 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
sprite->data[2] = -0x10;
sprite->data[7]++;
sprite->pos2.x = sprite->pos2.y = 0;
sprite->x2 = sprite->y2 = 0;
InitAnimLinearTranslationWithSpeed(sprite);
}
break;
@ -1442,10 +1442,10 @@ static void AnimHailBegin(struct Sprite *sprite)
{
u8 spriteId;
sprite->pos1.x += 4;
sprite->pos1.y += 8;
sprite->x += 4;
sprite->y += 8;
if (sprite->pos1.x < sprite->data[3] && sprite->pos1.y < sprite->data[4])
if (sprite->x < sprite->data[3] && sprite->y < sprite->data[4])
return;
if (sprite->data[0] == 1 && sprite->data[5] == 0)
@ -1550,11 +1550,11 @@ static void AnimIceBallParticle(struct Sprite *sprite)
sprite->data[4] += sprite->data[2];
if (sprite->data[1] & 1)
sprite->pos2.x = -(sprite->data[3] >> 8);
sprite->x2 = -(sprite->data[3] >> 8);
else
sprite->pos2.x = sprite->data[3] >> 8;
sprite->x2 = sprite->data[3] >> 8;
sprite->pos2.y = sprite->data[4] >> 8;
sprite->y2 = sprite->data[4] >> 8;
if (++sprite->data[0] == 21)
DestroyAnimSprite(sprite);

View File

@ -99,8 +99,8 @@ void AnimTask_ShakeMon(u8 taskId)
DestroyAnimVisualTask(taskId);
return;
}
gSprites[spriteId].pos2.x = gBattleAnimArgs[1];
gSprites[spriteId].pos2.y = gBattleAnimArgs[2];
gSprites[spriteId].x2 = gBattleAnimArgs[1];
gSprites[spriteId].y2 = gBattleAnimArgs[2];
gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = gBattleAnimArgs[3];
gTasks[taskId].data[2] = gBattleAnimArgs[4];
@ -115,27 +115,27 @@ static void AnimTask_ShakeMon_Step(u8 taskId)
{
if (gTasks[taskId].data[3] == 0)
{
if (gSprites[gTasks[taskId].data[0]].pos2.x == 0)
if (gSprites[gTasks[taskId].data[0]].x2 == 0)
{
gSprites[gTasks[taskId].data[0]].pos2.x = gTasks[taskId].data[4];
gSprites[gTasks[taskId].data[0]].x2 = gTasks[taskId].data[4];
}
else
{
gSprites[gTasks[taskId].data[0]].pos2.x = 0;
gSprites[gTasks[taskId].data[0]].x2 = 0;
}
if (gSprites[gTasks[taskId].data[0]].pos2.y == 0)
if (gSprites[gTasks[taskId].data[0]].y2 == 0)
{
gSprites[gTasks[taskId].data[0]].pos2.y = gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].y2 = gTasks[taskId].data[5];
}
else
{
gSprites[gTasks[taskId].data[0]].pos2.y = 0;
gSprites[gTasks[taskId].data[0]].y2 = 0;
}
gTasks[taskId].data[3] = gTasks[taskId].data[2];
if (--gTasks[taskId].data[1] == 0)
{
gSprites[gTasks[taskId].data[0]].pos2.x = 0;
gSprites[gTasks[taskId].data[0]].pos2.y = 0;
gSprites[gTasks[taskId].data[0]].x2 = 0;
gSprites[gTasks[taskId].data[0]].y2 = 0;
DestroyAnimVisualTask(taskId);
return;
}
@ -203,8 +203,8 @@ void AnimTask_ShakeMon2(u8 taskId)
return;
}
gSprites[spriteId].pos2.x = gBattleAnimArgs[1];
gSprites[spriteId].pos2.y = gBattleAnimArgs[2];
gSprites[spriteId].x2 = gBattleAnimArgs[1];
gSprites[spriteId].y2 = gBattleAnimArgs[2];
gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = gBattleAnimArgs[3];
gTasks[taskId].data[2] = gBattleAnimArgs[4];
@ -219,21 +219,21 @@ static void AnimTask_ShakeMon2_Step(u8 taskId)
{
if (gTasks[taskId].data[3] == 0)
{
if (gSprites[gTasks[taskId].data[0]].pos2.x == gTasks[taskId].data[4])
gSprites[gTasks[taskId].data[0]].pos2.x = -gTasks[taskId].data[4];
if (gSprites[gTasks[taskId].data[0]].x2 == gTasks[taskId].data[4])
gSprites[gTasks[taskId].data[0]].x2 = -gTasks[taskId].data[4];
else
gSprites[gTasks[taskId].data[0]].pos2.x = gTasks[taskId].data[4];
gSprites[gTasks[taskId].data[0]].x2 = gTasks[taskId].data[4];
if (gSprites[gTasks[taskId].data[0]].pos2.y == gTasks[taskId].data[5])
gSprites[gTasks[taskId].data[0]].pos2.y = -gTasks[taskId].data[5];
if (gSprites[gTasks[taskId].data[0]].y2 == gTasks[taskId].data[5])
gSprites[gTasks[taskId].data[0]].y2 = -gTasks[taskId].data[5];
else
gSprites[gTasks[taskId].data[0]].pos2.y = gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].y2 = gTasks[taskId].data[5];
gTasks[taskId].data[3] = gTasks[taskId].data[2];
if (--gTasks[taskId].data[1] == 0)
{
gSprites[gTasks[taskId].data[0]].pos2.x = 0;
gSprites[gTasks[taskId].data[0]].pos2.y = 0;
gSprites[gTasks[taskId].data[0]].x2 = 0;
gSprites[gTasks[taskId].data[0]].y2 = 0;
DestroyAnimVisualTask(taskId);
return;
}
@ -261,8 +261,8 @@ void AnimTask_ShakeMonInPlace(u8 taskId)
return;
}
gSprites[spriteId].pos2.x += gBattleAnimArgs[1];
gSprites[spriteId].pos2.y += gBattleAnimArgs[2];
gSprites[spriteId].x2 += gBattleAnimArgs[1];
gSprites[spriteId].y2 += gBattleAnimArgs[2];
gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = 0;
gTasks[taskId].data[2] = gBattleAnimArgs[3];
@ -280,26 +280,26 @@ static void AnimTask_ShakeMonInPlace_Step(u8 taskId)
{
if (gTasks[taskId].data[1] & 1)
{
gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6];
gSprites[gTasks[taskId].data[0]].x2 += gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].y2 += gTasks[taskId].data[6];
}
else
{
gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6];
gSprites[gTasks[taskId].data[0]].x2 -= gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].y2 -= gTasks[taskId].data[6];
}
gTasks[taskId].data[3] = gTasks[taskId].data[4];
if (++gTasks[taskId].data[1] >= gTasks[taskId].data[2])
{
if (gTasks[taskId].data[1] & 1)
{
gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5] / 2;
gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6] / 2;
gSprites[gTasks[taskId].data[0]].x2 += gTasks[taskId].data[5] / 2;
gSprites[gTasks[taskId].data[0]].y2 += gTasks[taskId].data[6] / 2;
}
else
{
gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5] / 2;
gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6] / 2;
gSprites[gTasks[taskId].data[0]].x2 -= gTasks[taskId].data[5] / 2;
gSprites[gTasks[taskId].data[0]].y2 -= gTasks[taskId].data[6] / 2;
}
DestroyAnimVisualTask(taskId);
return;
@ -320,7 +320,7 @@ static void AnimTask_ShakeMonInPlace_Step(u8 taskId)
void AnimTask_ShakeAndSinkMon(u8 taskId)
{
u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
gSprites[spriteId].pos2.x = gBattleAnimArgs[1];
gSprites[spriteId].x2 = gBattleAnimArgs[1];
gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = gBattleAnimArgs[1];
gTasks[taskId].data[2] = gBattleAnimArgs[2];
@ -339,15 +339,15 @@ static void AnimTask_ShakeAndSinkMon_Step(u8 taskId)
if (gTasks[taskId].data[2] == gTasks[taskId].data[8]++)
{
gTasks[taskId].data[8] = 0;
if (gSprites[spriteId].pos2.x == x)
if (gSprites[spriteId].x2 == x)
x = -x;
gSprites[spriteId].pos2.x += x;
gSprites[spriteId].x2 += x;
}
gTasks[taskId].data[1] = x;
gTasks[taskId].data[9] += gTasks[taskId].data[3];
gSprites[spriteId].pos2.y = gTasks[taskId].data[9] >> 8;
gSprites[spriteId].y2 = gTasks[taskId].data[9] >> 8;
if (--gTasks[taskId].data[4] == 0)
{
DestroyAnimVisualTask(taskId);
@ -390,9 +390,9 @@ void AnimTask_TranslateMonElliptical(u8 taskId)
static void AnimTask_TranslateMonElliptical_Step(u8 taskId)
{
u8 spriteId = gTasks[taskId].data[0];
gSprites[spriteId].pos2.x = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]);
gSprites[spriteId].pos2.y = -Cos(gTasks[taskId].data[5], gTasks[taskId].data[2]);
gSprites[spriteId].pos2.y += gTasks[taskId].data[2];
gSprites[spriteId].x2 = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]);
gSprites[spriteId].y2 = -Cos(gTasks[taskId].data[5], gTasks[taskId].data[2]);
gSprites[spriteId].y2 += gTasks[taskId].data[2];
gTasks[taskId].data[5] += gTasks[taskId].data[4];
gTasks[taskId].data[5] &= 0xff;
@ -401,8 +401,8 @@ static void AnimTask_TranslateMonElliptical_Step(u8 taskId)
if (gTasks[taskId].data[3] == 0)
{
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].pos2.y = 0;
gSprites[spriteId].x2 = 0;
gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId);
return;
}
@ -493,15 +493,15 @@ static void SlideMonToOriginalPos(struct Sprite *sprite)
monSpriteId = gBattlerSpriteIds[gBattleAnimTarget];
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gSprites[monSpriteId].pos1.x + gSprites[monSpriteId].pos2.x;
sprite->data[2] = gSprites[monSpriteId].pos1.x;
sprite->data[3] = gSprites[monSpriteId].pos1.y + gSprites[monSpriteId].pos2.y;
sprite->data[4] = gSprites[monSpriteId].pos1.y;
sprite->data[1] = gSprites[monSpriteId].x + gSprites[monSpriteId].x2;
sprite->data[2] = gSprites[monSpriteId].x;
sprite->data[3] = gSprites[monSpriteId].y + gSprites[monSpriteId].y2;
sprite->data[4] = gSprites[monSpriteId].y;
InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = 0;
sprite->data[4] = 0;
sprite->data[5] = gSprites[monSpriteId].pos2.x;
sprite->data[6] = gSprites[monSpriteId].pos2.y;
sprite->data[5] = gSprites[monSpriteId].x2;
sprite->data[6] = gSprites[monSpriteId].y2;
sprite->invisible = TRUE;
if (gBattleAnimArgs[1] == 1)
@ -526,10 +526,10 @@ static void SlideMonToOriginalPos_Step(struct Sprite *sprite)
if (sprite->data[0] == 0)
{
if (lo < 2)
monSprite->pos2.x = 0;
monSprite->x2 = 0;
if (lo == 2 || lo == 0)
monSprite->pos2.y = 0;
monSprite->y2 = 0;
DestroyAnimSprite(sprite);
}
@ -538,8 +538,8 @@ static void SlideMonToOriginalPos_Step(struct Sprite *sprite)
sprite->data[0]--;
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
monSprite->pos2.x = (s8)(sprite->data[3] >> 8) + sprite->data[5];
monSprite->pos2.y = (s8)(sprite->data[4] >> 8) + sprite->data[6];
monSprite->x2 = (s8)(sprite->data[3] >> 8) + sprite->data[5];
monSprite->y2 = (s8)(sprite->data[4] >> 8) + sprite->data[6];
}
}
@ -571,10 +571,10 @@ static void SlideMonToOffset(struct Sprite *sprite)
}
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = gSprites[monSpriteId].pos1.x;
sprite->data[2] = gSprites[monSpriteId].pos1.x + gBattleAnimArgs[1];
sprite->data[3] = gSprites[monSpriteId].pos1.y;
sprite->data[4] = gSprites[monSpriteId].pos1.y + gBattleAnimArgs[2];
sprite->data[1] = gSprites[monSpriteId].x;
sprite->data[2] = gSprites[monSpriteId].x + gBattleAnimArgs[1];
sprite->data[3] = gSprites[monSpriteId].y;
sprite->data[4] = gSprites[monSpriteId].y + gBattleAnimArgs[2];
InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = 0;
sprite->data[4] = 0;
@ -605,13 +605,13 @@ static void SlideMonToOffsetAndBack(struct Sprite *sprite)
}
}
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x;
sprite->data[1] = gSprites[spriteId].x + gSprites[spriteId].x2;
sprite->data[2] = sprite->data[1] + gBattleAnimArgs[1];
sprite->data[3] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y;
sprite->data[3] = gSprites[spriteId].y + gSprites[spriteId].y2;
sprite->data[4] = sprite->data[3] + gBattleAnimArgs[2];
InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = gSprites[spriteId].pos2.x << 8;
sprite->data[4] = gSprites[spriteId].pos2.y << 8;
sprite->data[3] = gSprites[spriteId].x2 << 8;
sprite->data[4] = gSprites[spriteId].y2 << 8;
sprite->data[5] = spriteId;
sprite->data[6] = gBattleAnimArgs[5];
if (!gBattleAnimArgs[5])
@ -628,8 +628,8 @@ static void SlideMonToOffsetAndBack(struct Sprite *sprite)
static void SlideMonToOffsetAndBack_End(struct Sprite *sprite)
{
gSprites[sprite->data[5]].pos2.x = 0;
gSprites[sprite->data[5]].pos2.y = 0;
gSprites[sprite->data[5]].x2 = 0;
gSprites[sprite->data[5]].y2 = 0;
DestroyAnimSprite(sprite);
}
@ -667,8 +667,8 @@ static void AnimTask_WindUpLunge_Step1(u8 taskId)
u8 spriteId;
spriteId = gTasks[taskId].data[0];
gTasks[taskId].data[11] += gTasks[taskId].data[1];
gSprites[spriteId].pos2.x = gTasks[taskId].data[11] >> 8;
gSprites[spriteId].pos2.y = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]);
gSprites[spriteId].x2 = gTasks[taskId].data[11] >> 8;
gSprites[spriteId].y2 = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]);
gTasks[taskId].data[10] += gTasks[taskId].data[7];
if (--gTasks[taskId].data[3] == 0)
{
@ -687,7 +687,7 @@ static void AnimTask_WindUpLunge_Step2(u8 taskId)
{
spriteId = gTasks[taskId].data[0];
gTasks[taskId].data[12] += gTasks[taskId].data[5];
gSprites[spriteId].pos2.x = (gTasks[taskId].data[12] >> 8) + (gTasks[taskId].data[11] >> 8);
gSprites[spriteId].x2 = (gTasks[taskId].data[12] >> 8) + (gTasks[taskId].data[11] >> 8);
if (--gTasks[taskId].data[6] == 0)
{
DestroyAnimVisualTask(taskId);
@ -741,8 +741,8 @@ void AnimTask_SlideOffScreen(u8 taskId)
static void AnimTask_SlideOffScreen_Step(u8 taskId)
{
u8 spriteId = gTasks[taskId].data[0];
gSprites[spriteId].pos2.x += gTasks[taskId].data[1];
if (gSprites[spriteId].pos2.x + gSprites[spriteId].pos1.x + 0x20 > 0x130u)
gSprites[spriteId].x2 += gTasks[taskId].data[1];
if (gSprites[spriteId].x2 + gSprites[spriteId].x + 0x20 > 0x130u)
{
DestroyAnimVisualTask(taskId);
return;
@ -794,17 +794,17 @@ static void AnimTask_SwayMonStep(u8 taskId)
if (gTasks[taskId].data[0] == 0)
{
gSprites[spriteId].pos2.x = sineValue;
gSprites[spriteId].x2 = sineValue;
}
else
{
if (GetBattlerSide(gTasks[taskId].data[5]) == B_SIDE_PLAYER)
{
gSprites[spriteId].pos2.y = (sineValue >= 0) ? sineValue : -sineValue;
gSprites[spriteId].y2 = (sineValue >= 0) ? sineValue : -sineValue;
}
else
{
gSprites[spriteId].pos2.y = (sineValue >= 0) ? -sineValue : sineValue;
gSprites[spriteId].y2 = (sineValue >= 0) ? -sineValue : sineValue;
}
}
@ -815,8 +815,8 @@ static void AnimTask_SwayMonStep(u8 taskId)
gTasks[taskId].data[12] ^= 1;
if (--gTasks[taskId].data[3] == 0)
{
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].pos2.y = 0;
gSprites[spriteId].x2 = 0;
gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId);
return;
}
@ -1011,8 +1011,8 @@ void AnimTask_ShakeTargetBasedOnMovePowerOrDmg(u8 taskId)
gTasks[taskId].data[10] = gBattleAnimArgs[3];
gTasks[taskId].data[11] = gBattleAnimArgs[4];
gTasks[taskId].data[7] = GetAnimBattlerSpriteId(ANIM_TARGET);
gTasks[taskId].data[8] = gSprites[gTasks[taskId].data[7]].pos2.x;
gTasks[taskId].data[9] = gSprites[gTasks[taskId].data[7]].pos2.y;
gTasks[taskId].data[8] = gSprites[gTasks[taskId].data[7]].x2;
gTasks[taskId].data[9] = gSprites[gTasks[taskId].data[7]].y2;
gTasks[taskId].data[0] = 0;
gTasks[taskId].data[1] = gBattleAnimArgs[1];
gTasks[taskId].data[2] = gBattleAnimArgs[2];
@ -1030,28 +1030,28 @@ static void AnimTask_ShakeTargetBasedOnMovePowerOrDmg_Step(u8 taskId)
{
if (task->data[12])
{
gSprites[task->data[7]].pos2.x = task->data[8] + task->data[13];
gSprites[task->data[7]].x2 = task->data[8] + task->data[13];
}
else
{
gSprites[task->data[7]].pos2.x = task->data[8] - task->data[14];
gSprites[task->data[7]].x2 = task->data[8] - task->data[14];
}
}
if (task->data[11])
{
if (task->data[12])
{
gSprites[task->data[7]].pos2.y = task->data[15];
gSprites[task->data[7]].y2 = task->data[15];
}
else
{
gSprites[task->data[7]].pos2.y = 0;
gSprites[task->data[7]].y2 = 0;
}
}
if (!--task->data[2])
{
gSprites[task->data[7]].pos2.x = 0;
gSprites[task->data[7]].pos2.y = 0;
gSprites[task->data[7]].x2 = 0;
gSprites[task->data[7]].y2 = 0;
DestroyAnimVisualTask(taskId);
return;
}

View File

@ -432,8 +432,8 @@ void TranslateSpriteInCircleOverDuration(struct Sprite *sprite)
{
if (sprite->data[3])
{
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[1]);
sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->y2 = Cos(sprite->data[0], sprite->data[1]);
sprite->data[0] += sprite->data[2];
if (sprite->data[0] >= 0x100)
sprite->data[0] -= 0x100;
@ -451,8 +451,8 @@ void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite)
{
if (sprite->data[3])
{
sprite->pos2.x = Sin(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]);
sprite->x2 = Sin(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]);
sprite->y2 = Cos(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]);
sprite->data[0] += sprite->data[2];
sprite->data[5] += sprite->data[4];
if (sprite->data[0] >= 0x100)
@ -471,8 +471,8 @@ void sub_80A63C8(struct Sprite *sprite)
{
if (sprite->data[3])
{
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[4], sprite->data[1]);
sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->y2 = Cos(sprite->data[4], sprite->data[1]);
sprite->data[0] += sprite->data[2];
sprite->data[4] += sprite->data[5];
if (sprite->data[0] >= 0x100)
@ -495,8 +495,8 @@ void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite)
{
if (sprite->data[3])
{
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[4]);
sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->y2 = Cos(sprite->data[0], sprite->data[4]);
sprite->data[0] += sprite->data[2];
if (sprite->data[0] >= 0x100)
sprite->data[0] -= 0x100;
@ -547,8 +547,8 @@ void TranslateSpriteLinear(struct Sprite *sprite)
if (sprite->data[0] > 0)
{
sprite->data[0]--;
sprite->pos2.x += sprite->data[1];
sprite->pos2.y += sprite->data[2];
sprite->x2 += sprite->data[1];
sprite->y2 += sprite->data[2];
}
else
{
@ -563,8 +563,8 @@ void TranslateSpriteLinearFixedPoint(struct Sprite *sprite)
sprite->data[0]--;
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
sprite->pos2.x = sprite->data[3] >> 8;
sprite->pos2.y = sprite->data[4] >> 8;
sprite->x2 = sprite->data[3] >> 8;
sprite->y2 = sprite->data[4] >> 8;
}
else
{
@ -579,8 +579,8 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite)
sprite->data[0]--;
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
sprite->pos2.x = sprite->data[3] >> 8;
sprite->pos2.y = sprite->data[4] >> 8;
sprite->x2 = sprite->data[3] >> 8;
sprite->y2 = sprite->data[4] >> 8;
}
else
{
@ -592,8 +592,8 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite)
void sub_80A65EC(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x + sprite->pos2.x;
sprite->data[3] = sprite->pos1.y + sprite->pos2.y;
sprite->data[1] = sprite->x + sprite->x2;
sprite->data[3] = sprite->y + sprite->y2;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = sub_80A64D0;
@ -604,8 +604,8 @@ void TranslateMonSpriteLinear(struct Sprite *sprite)
if (sprite->data[0] > 0)
{
sprite->data[0]--;
gSprites[sprite->data[3]].pos2.x += sprite->data[1];
gSprites[sprite->data[3]].pos2.y += sprite->data[2];
gSprites[sprite->data[3]].x2 += sprite->data[1];
gSprites[sprite->data[3]].y2 += sprite->data[2];
}
else
{
@ -620,8 +620,8 @@ void TranslateMonSpriteLinearFixedPoint(struct Sprite *sprite)
sprite->data[0]--;
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
gSprites[sprite->data[5]].pos2.x = sprite->data[3] >> 8;
gSprites[sprite->data[5]].pos2.y = sprite->data[4] >> 8;
gSprites[sprite->data[5]].x2 = sprite->data[3] >> 8;
gSprites[sprite->data[5]].y2 = sprite->data[4] >> 8;
}
else
{
@ -634,9 +634,9 @@ void TranslateSpriteLinearAndFlicker(struct Sprite *sprite)
if (sprite->data[0] > 0)
{
sprite->data[0]--;
sprite->pos2.x = sprite->data[2] >> 8;
sprite->x2 = sprite->data[2] >> 8;
sprite->data[2] += sprite->data[1];
sprite->pos2.y = sprite->data[4] >> 8;
sprite->y2 = sprite->data[4] >> 8;
sprite->data[4] += sprite->data[3];
if (sprite->data[0] % sprite->data[5] == 0)
{
@ -658,8 +658,8 @@ void DestroySpriteAndMatrix(struct Sprite *sprite)
void sub_80A6760(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x + sprite->pos2.x;
sprite->data[3] = sprite->pos1.y + sprite->pos2.y;
sprite->data[1] = sprite->x + sprite->x2;
sprite->data[3] = sprite->y + sprite->y2;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = sub_80A64D0;
@ -699,8 +699,8 @@ void DestroyAnimVisualTaskAndDisableBlend(u8 taskId)
void SetSpriteCoordsToAnimAttackerCoords(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
}
// Sets the initial x offset of the anim sprite depending on the horizontal orientation
@ -712,25 +712,25 @@ void SetAnimSpriteInitialXOffset(struct Sprite *sprite, s16 xOffset)
if (attackerX > targetX)
{
sprite->pos1.x -= xOffset;
sprite->x -= xOffset;
}
else if (attackerX < targetX)
{
sprite->pos1.x += xOffset;
sprite->x += xOffset;
}
else
{
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= xOffset;
sprite->x -= xOffset;
else
sprite->pos1.x += xOffset;
sprite->x += xOffset;
}
}
void InitAnimArcTranslation(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
InitAnimLinearTranslation(sprite);
sprite->data[6] = 0x8000 / sprite->data[0];
sprite->data[7] = 0;
@ -741,7 +741,7 @@ bool8 TranslateAnimHorizontalArc(struct Sprite *sprite)
if (AnimTranslateLinear(sprite))
return TRUE;
sprite->data[7] += sprite->data[6];
sprite->pos2.y += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
sprite->y2 += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
return FALSE;
}
@ -750,16 +750,16 @@ bool8 TranslateAnimVerticalArc(struct Sprite *sprite)
if (AnimTranslateLinear(sprite))
return TRUE;
sprite->data[7] += sprite->data[6];
sprite->pos2.x += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
sprite->x2 += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
return FALSE;
}
void SetSpritePrimaryCoordsFromSecondaryCoords(struct Sprite *sprite)
{
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;
}
void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets)
@ -768,27 +768,27 @@ void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets
// 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);
sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X);
sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y);
}
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->y += gBattleAnimArgs[1];
}
void InitSpritePosToAnimAttacker(struct Sprite *sprite, bool8 respectMonPicOffsets)
{
if (!respectMonPicOffsets)
{
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y);
sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X);
sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y);
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
}
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1];
sprite->y += gBattleAnimArgs[1];
}
u8 GetBattlerSide(u8 battlerId)
@ -986,8 +986,8 @@ void UpdateAnimBg3ScreenSize(bool8 largeScreenSize)
void TradeMenuBouncePartySprites(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
InitSpriteDataForLinearTranslation(sprite);
sprite->callback = TranslateSpriteLinearFixedPointIconFrame;
sprite->callback(sprite);
@ -1033,8 +1033,8 @@ void InitAnimLinearTranslation(struct Sprite *sprite)
void StartAnimLinearTranslation(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
InitAnimLinearTranslation(sprite);
sprite->callback = AnimTranslateLinear_WaitEnd;
sprite->callback(sprite);
@ -1042,8 +1042,8 @@ void StartAnimLinearTranslation(struct Sprite *sprite)
void sub_80A6F14(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
InitAnimLinearTranslation(sprite);
sprite->callback = sub_80A6FB4;
sprite->callback(sprite);
@ -1064,14 +1064,14 @@ bool8 AnimTranslateLinear(struct Sprite *sprite)
y += v2;
if (v1 & 1)
sprite->pos2.x = -(x >> 8);
sprite->x2 = -(x >> 8);
else
sprite->pos2.x = x >> 8;
sprite->x2 = x >> 8;
if (v2 & 1)
sprite->pos2.y = -(y >> 8);
sprite->y2 = -(y >> 8);
else
sprite->pos2.y = y >> 8;
sprite->y2 = y >> 8;
sprite->data[3] = x;
sprite->data[4] = y;
@ -1101,8 +1101,8 @@ void InitAnimLinearTranslationWithSpeed(struct Sprite *sprite)
void InitAnimLinearTranslationWithSpeedAndPos(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
InitAnimLinearTranslationWithSpeed(sprite);
sprite->callback = AnimTranslateLinear_WaitEnd;
sprite->callback(sprite);
@ -1138,8 +1138,8 @@ static void InitAnimFastLinearTranslation(struct Sprite *sprite)
void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
InitAnimFastLinearTranslation(sprite);
sprite->callback = AnimFastTranslateLinearWaitEnd;
sprite->callback(sprite);
@ -1160,14 +1160,14 @@ bool8 AnimFastTranslateLinear(struct Sprite *sprite)
y += v2;
if (v1 & 1)
sprite->pos2.x = -(x >> 4);
sprite->x2 = -(x >> 4);
else
sprite->pos2.x = x >> 4;
sprite->x2 = x >> 4;
if (v2 & 1)
sprite->pos2.y = -(y >> 4);
sprite->y2 = -(y >> 4);
else
sprite->pos2.y = y >> 4;
sprite->y2 = y >> 4;
sprite->data[3] = x;
sprite->data[4] = y;
@ -1190,8 +1190,8 @@ void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite)
void InitAnimFastLinearTranslationWithSpeedAndPos(struct Sprite *sprite)
{
sprite->data[1] = sprite->pos1.x;
sprite->data[3] = sprite->pos1.y;
sprite->data[1] = sprite->x;
sprite->data[3] = sprite->y;
InitAnimFastLinearTranslationWithSpeed(sprite);
sprite->callback = AnimFastTranslateLinearWaitEnd;
sprite->callback(sprite);
@ -1264,7 +1264,7 @@ void SetBattlerSpriteYOffsetFromRotation(u8 spriteId)
if (c < 0)
c = -c;
gSprites[spriteId].pos2.y = c >> 3;
gSprites[spriteId].y2 = c >> 3;
}
void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 xScale, s16 yScale, u16 rotation)
@ -1801,7 +1801,7 @@ bool8 RunAffineAnimFromTaskData(struct Task *task)
task->data[7]++;
break;
case AFFINEANIMCMDTYPE_END:
gSprites[task->data[15]].pos2.y = 0;
gSprites[task->data[15]].y2 = 0;
ResetSpriteRotScale(task->data[15]);
return FALSE;
}
@ -1819,7 +1819,7 @@ void SetBattlerSpriteYOffsetFromYScale(u8 spriteId)
if (var2 > 128)
var2 = 128;
gSprites[spriteId].pos2.y = (var - var2) / 2;
gSprites[spriteId].y2 = (var - var2) / 2;
}
// Sets the sprite's y offset equal to the y displacement caused by another sprite
@ -1832,7 +1832,7 @@ void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId)
if (var2 > 128)
var2 = 128;
gSprites[spriteId].pos2.y = (var - var2) / 2;
gSprites[spriteId].y2 = (var - var2) / 2;
}
static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId)
@ -1927,7 +1927,7 @@ u8 UpdateEruptAnimTask(struct Task *task)
if (task->data[8])
SetBattlerSpriteYOffsetFromYScale(task->data[15]);
else
gSprites[task->data[15]].pos2.y = 0;
gSprites[task->data[15]].y2 = 0;
return task->data[8];
}
@ -2278,15 +2278,15 @@ void AnimTranslateLinearAndFlicker_Flipped(struct Sprite *sprite)
SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker))
{
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->x -= gBattleAnimArgs[0];
gBattleAnimArgs[3] = -gBattleAnimArgs[3];
sprite->hFlip = TRUE;
}
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[3] = gBattleAnimArgs[4];
@ -2300,14 +2300,14 @@ void AnimTranslateLinearAndFlicker(struct Sprite *sprite)
{
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->x -= gBattleAnimArgs[0];
gBattleAnimArgs[3] *= -1;
}
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[3] = gBattleAnimArgs[4];
@ -2322,10 +2322,10 @@ void AnimSpinningSparkle(struct Sprite *sprite)
{
SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker))
sprite->pos1.x -= gBattleAnimArgs[0];
sprite->x -= gBattleAnimArgs[0];
else
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
}
@ -2343,7 +2343,7 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId)
task->data[1] = ((GetBattlerSide(gBattleAnimAttacker)) != B_SIDE_PLAYER) ? -8 : 8;
task->data[2] = 0;
task->data[3] = 0;
gSprites[task->data[0]].pos2.x -= task->data[0];
gSprites[task->data[0]].x2 -= task->data[0];
task->data[4] = AllocSpritePalette(ANIM_TAG_BENT_SPOON);
task->data[5] = 0;
@ -2366,7 +2366,7 @@ static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId)
{
case 0:
sub_80A8D78(task, taskId);
gSprites[task->data[0]].pos2.x += task->data[1];
gSprites[task->data[0]].x2 += task->data[1];
if (++task->data[3] == 5)
{
task->data[3]--;
@ -2375,10 +2375,10 @@ static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId)
break;
case 1:
sub_80A8D78(task, taskId);
gSprites[task->data[0]].pos2.x -= task->data[1];
gSprites[task->data[0]].x2 -= task->data[1];
if (--task->data[3] == 0)
{
gSprites[task->data[0]].pos2.x = 0;
gSprites[task->data[0]].x2 = 0;
task->data[2]++;
}
break;
@ -2402,7 +2402,7 @@ static void sub_80A8D78(struct Task *task, u8 taskId)
gSprites[spriteId].data[0] = 8;
gSprites[spriteId].data[1] = taskId;
gSprites[spriteId].data[2] = spriteId;
gSprites[spriteId].pos2.x = gSprites[task->data[0]].pos2.x;
gSprites[spriteId].x2 = gSprites[task->data[0]].x2;
gSprites[spriteId].callback = sub_80A8DFC;
task->data[5]++;
}
@ -2419,8 +2419,8 @@ static void sub_80A8DFC(struct Sprite *sprite)
void AnimWeatherBallUp(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
if (!GetBattlerSide(gBattleAnimAttacker))
sprite->data[0] = 5;
else
@ -2433,11 +2433,11 @@ static void AnimWeatherBallUp_Step(struct Sprite *sprite)
{
sprite->data[2] += sprite->data[0];
sprite->data[3] += sprite->data[1];
sprite->pos2.x = sprite->data[2] / 10;
sprite->pos2.y = sprite->data[3] / 10;
sprite->x2 = sprite->data[2] / 10;
sprite->y2 = sprite->data[3] / 10;
if (sprite->data[1] < -20)
sprite->data[1]++;
if (sprite->pos1.y + sprite->pos2.y < -32)
if (sprite->y + sprite->y2 < -32)
DestroyAnimSprite(sprite);
}
@ -2445,19 +2445,19 @@ void AnimWeatherBallDown(struct Sprite *sprite)
{
int x;
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[4];
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[5];
sprite->data[2] = sprite->x + gBattleAnimArgs[4];
sprite->data[4] = sprite->y + gBattleAnimArgs[5];
if (!GetBattlerSide(gBattleAnimTarget))
{
x = (u16)gBattleAnimArgs[4] + 30;
sprite->pos1.x += x;
sprite->pos1.y = gBattleAnimArgs[5] - 20;
sprite->x += x;
sprite->y = gBattleAnimArgs[5] - 20;
}
else
{
x = (u16)gBattleAnimArgs[4] - 30;
sprite->pos1.x += x;
sprite->pos1.y = gBattleAnimArgs[5] - 80;
sprite->x += x;
sprite->y = gBattleAnimArgs[5] - 80;
}
sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);

View File

@ -261,8 +261,8 @@ const struct SpriteTemplate gPersistHitSplatSpriteTemplate =
// arg 4: duration
static void AnimConfusionDuck(struct Sprite *sprite)
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[2];
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
@ -283,8 +283,8 @@ static void AnimConfusionDuck(struct Sprite *sprite)
static void AnimConfusionDuck_Step(struct Sprite *sprite)
{
sprite->pos2.x = Cos(sprite->data[0], 30);
sprite->pos2.y = Sin(sprite->data[0], 10);
sprite->x2 = Cos(sprite->data[0], 30);
sprite->y2 = Sin(sprite->data[0], 10);
if ((u16)sprite->data[0] < 128)
sprite->oam.priority = 1;
@ -400,8 +400,8 @@ static void AnimComplexPaletteBlend_Step2(struct Sprite *sprite)
static void AnimCirclingSparkle(struct Sprite *sprite)
{
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = 0;
sprite->data[1] = 10;
sprite->data[2] = 8;
@ -971,8 +971,8 @@ static void AnimHitSplatRandom(struct Sprite *sprite)
else
InitSpritePosToAnimTarget(sprite, FALSE);
sprite->pos2.x += (Random2() % 48) - 24;
sprite->pos2.y += (Random2() % 24) - 12;
sprite->x2 += (Random2() % 48) - 24;
sprite->y2 += (Random2() % 24) - 12;
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
@ -981,10 +981,10 @@ static void AnimHitSplatRandom(struct Sprite *sprite)
static void AnimHitSplatOnMonEdge(struct Sprite *sprite)
{
sprite->data[0] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
sprite->pos1.x = gSprites[sprite->data[0]].pos1.x + gSprites[sprite->data[0]].pos2.x;
sprite->pos1.y = gSprites[sprite->data[0]].pos1.y + gSprites[sprite->data[0]].pos2.y;
sprite->pos2.x = gBattleAnimArgs[1];
sprite->pos2.y = gBattleAnimArgs[2];
sprite->x = gSprites[sprite->data[0]].x + gSprites[sprite->data[0]].x2;
sprite->y = gSprites[sprite->data[0]].y + gSprites[sprite->data[0]].y2;
sprite->x2 = gBattleAnimArgs[1];
sprite->y2 = gBattleAnimArgs[2];
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds;

View File

@ -239,10 +239,10 @@ static void AnimAcidPoisonBubble_Step(struct Sprite *sprite)
static void AnimSludgeBombHitParticle(struct Sprite *sprite)
{
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[0];
sprite->data[3] = sprite->pos1.y;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[1];
sprite->data[1] = sprite->x;
sprite->data[2] = sprite->x + gBattleAnimArgs[0];
sprite->data[3] = sprite->y;
sprite->data[4] = sprite->y + gBattleAnimArgs[1];
InitSpriteDataForLinearTranslation(sprite);
@ -265,17 +265,17 @@ static void AnimSludgeBombHitParticle_Step(struct Sprite *sprite)
static void AnimAcidPoisonDroplet(struct Sprite *sprite)
{
SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.y + sprite->data[0];
sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[4] = sprite->y + sprite->data[0];
sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@ -295,13 +295,13 @@ static void AnimBubbleEffect(struct Sprite *sprite)
}
else
{
SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
}
sprite->callback = AnimBubbleEffect_Step;
@ -310,9 +310,9 @@ static void AnimBubbleEffect(struct Sprite *sprite)
static void AnimBubbleEffect_Step(struct Sprite *sprite)
{
sprite->data[0] = (sprite->data[0] + 0xB) & 0xFF;
sprite->pos2.x = Sin(sprite->data[0], 4);
sprite->x2 = Sin(sprite->data[0], 4);
sprite->data[1] += 0x30;
sprite->pos2.y = -(sprite->data[1] >> 8);
sprite->y2 = -(sprite->data[1] >> 8);
if (sprite->affineAnimEnded)
DestroyAnimSprite(sprite);

View File

@ -450,13 +450,13 @@ static void AnimDefensiveWall(struct Sprite *sprite)
{
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{
sprite->pos1.x = 72;
sprite->pos1.y = 80;
sprite->x = 72;
sprite->y = 80;
}
else
{
sprite->pos1.x = 176;
sprite->pos1.y = 40;
sprite->x = 176;
sprite->y = 40;
}
}
else
@ -464,15 +464,15 @@ static void AnimDefensiveWall(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0];
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1];
}
sprite->data[0] = 256 + IndexOfSpritePaletteTag(gBattleAnimArgs[2]) * 16;
if (isContest)
{
sprite->pos1.y += 9;
sprite->y += 9;
sprite->callback = AnimDefensiveWall_Step2;
sprite->callback(sprite);
}
@ -592,13 +592,13 @@ static void AnimWallSparkle(struct Sprite *sprite)
{
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{
sprite->pos1.x = 72 - gBattleAnimArgs[0];
sprite->pos1.y = gBattleAnimArgs[1] + 80;
sprite->x = 72 - gBattleAnimArgs[0];
sprite->y = gBattleAnimArgs[1] + 80;
}
else
{
sprite->pos1.x = gBattleAnimArgs[0] + 176;
sprite->pos1.y = gBattleAnimArgs[1] + 40;
sprite->x = gBattleAnimArgs[0] + 176;
sprite->y = gBattleAnimArgs[1] + 40;
}
}
else
@ -620,20 +620,20 @@ static void AnimWallSparkle(struct Sprite *sprite)
static void AnimBentSpoon(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
StartSpriteAnim(sprite, 1);
sprite->pos1.x -= 40;
sprite->pos1.y += 10;
sprite->x -= 40;
sprite->y += 10;
sprite->data[1] = -1;
}
else
{
sprite->pos1.x += 40;
sprite->pos1.y -= 10;
sprite->x += 40;
sprite->y -= 10;
sprite->data[1] = 1;
}
@ -650,11 +650,11 @@ static void AnimQuestionMark(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT)
x = -x;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + x;
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + y;
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + x;
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + y;
if (sprite->pos1.y < 16)
sprite->pos1.y = 16;
if (sprite->y < 16)
sprite->y = 16;
StoreSpriteCallbackInData6(sprite, AnimQuestionMark_Step1);
sprite->callback = RunStoredCallbackWhenAnimEnds;
@ -731,13 +731,13 @@ static void AnimTask_Teleport_Step(u8 taskId)
case 1:
if (task->data[3] != 0)
{
gSprites[task->data[0]].pos2.y -= 8;
gSprites[task->data[0]].y2 -= 8;
task->data[3]--;
}
else
{
gSprites[task->data[0]].invisible = TRUE;
gSprites[task->data[0]].pos1.x = DISPLAY_WIDTH + 32;
gSprites[task->data[0]].x = DISPLAY_WIDTH + 32;
ResetSpriteRotScale(task->data[0]);
DestroyAnimVisualTask(taskId);
}
@ -785,20 +785,20 @@ static void AnimTask_ImprisonOrbs_Step(u8 taskId)
switch (task->data[2])
{
case 0:
gSprites[spriteId].pos2.x = task->data[12];
gSprites[spriteId].pos2.y = -task->data[12];
gSprites[spriteId].x2 = task->data[12];
gSprites[spriteId].y2 = -task->data[12];
break;
case 1:
gSprites[spriteId].pos2.x = -task->data[12];
gSprites[spriteId].pos2.y = task->data[12];
gSprites[spriteId].x2 = -task->data[12];
gSprites[spriteId].y2 = task->data[12];
break;
case 2:
gSprites[spriteId].pos2.x = task->data[12];
gSprites[spriteId].pos2.y = task->data[12];
gSprites[spriteId].x2 = task->data[12];
gSprites[spriteId].y2 = task->data[12];
break;
case 3:
gSprites[spriteId].pos2.x = -task->data[12];
gSprites[spriteId].pos2.y = -task->data[12];
gSprites[spriteId].x2 = -task->data[12];
gSprites[spriteId].y2 = -task->data[12];
break;
}
}
@ -851,8 +851,8 @@ static void AnimRedX(struct Sprite *sprite)
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
}
sprite->data[0] = gBattleAnimArgs[1];
@ -1123,11 +1123,11 @@ static void AnimPsychoBoost(struct Sprite *sprite)
switch (sprite->data[0])
{
case 0:
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y);
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y);
if (IsContest())
sprite->pos1.y += 12;
sprite->y += 12;
sprite->data[1] = 8;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND);
@ -1156,7 +1156,7 @@ static void AnimPsychoBoost(struct Sprite *sprite)
}
sprite->data[3] += 0x380;
sprite->pos2.y -= sprite->data[3] >> 8;
sprite->y2 -= sprite->data[3] >> 8;
sprite->data[3] &= 0xFF;
break;
case 3:

View File

@ -297,10 +297,10 @@ const struct SpriteTemplate gWeatherBallRockDownSpriteTemplate =
static void AnimFallingRock(struct Sprite *sprite)
{
if (gBattleAnimArgs[3] != 0)
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y);
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y);
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += 14;
sprite->x += gBattleAnimArgs[0];
sprite->y += 14;
StartSpriteAnim(sprite, gBattleAnimArgs[1]);
AnimateSprite(sprite);
@ -319,7 +319,7 @@ static void AnimFallingRock(struct Sprite *sprite)
static void AnimFallingRock_Step(struct Sprite *sprite)
{
sprite->pos1.x += sprite->data[5];
sprite->x += sprite->data[5];
sprite->data[0] = 192;
sprite->data[1] = sprite->data[5];
@ -339,17 +339,17 @@ static void AnimRockFragment(struct Sprite *sprite)
AnimateSprite(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];
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x;
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2];
sprite->data[3] = sprite->pos1.y;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[3];
sprite->data[1] = sprite->x;
sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[3] = sprite->y;
sprite->data[4] = sprite->y + gBattleAnimArgs[3];
InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = 0;
@ -378,8 +378,8 @@ static void AnimParticleInVortex(struct Sprite *sprite)
static void AnimParticleInVortex_Step(struct Sprite *sprite)
{
sprite->data[4] += sprite->data[1];
sprite->pos2.y = -(sprite->data[4] >> 8);
sprite->pos2.x = Sin(sprite->data[5], sprite->data[3]);
sprite->y2 = -(sprite->data[4] >> 8);
sprite->x2 = Sin(sprite->data[5], sprite->data[3]);
sprite->data[5] = (sprite->data[5] + sprite->data[2]) & 0xFF;
if (--sprite->data[0] == -1)
@ -496,17 +496,17 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite)
{
if (gBattleAnimArgs[3] != 0 && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos1.x = DISPLAY_WIDTH + 64;
sprite->x = DISPLAY_WIDTH + 64;
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
sprite->data[5] = 1;
sprite->oam.matrixNum = ST_OAM_HFLIP;
}
else
{
sprite->pos1.x = -64;
sprite->x = -64;
}
sprite->pos1.y = gBattleAnimArgs[0];
sprite->y = gBattleAnimArgs[0];
SetSubspriteTables(sprite, sFlyingSandSubspriteTable);
sprite->data[1] = gBattleAnimArgs[1];
sprite->data[2] = gBattleAnimArgs[2];
@ -516,19 +516,19 @@ static void AnimFlyingSandCrescent(struct Sprite *sprite)
{
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
sprite->pos2.x += (sprite->data[3] >> 8);
sprite->pos2.y += (sprite->data[4] >> 8);
sprite->x2 += (sprite->data[3] >> 8);
sprite->y2 += (sprite->data[4] >> 8);
sprite->data[3] &= 0xFF;
sprite->data[4] &= 0xFF;
if (sprite->data[5] == 0)
{
if (sprite->pos1.x + sprite->pos2.x > DISPLAY_WIDTH + 32)
if (sprite->x + sprite->x2 > DISPLAY_WIDTH + 32)
{
sprite->callback = DestroyAnimSprite;
}
}
else if (sprite->pos1.x + sprite->pos2.x < -32)
else if (sprite->x + sprite->x2 < -32)
{
sprite->callback = DestroyAnimSprite;
}
@ -547,8 +547,8 @@ static void AnimRaiseSprite(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, 0);
sprite->data[0] = gBattleAnimArgs[3];
sprite->data[2] = sprite->pos1.x;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[2];
sprite->data[2] = sprite->x;
sprite->data[4] = sprite->y + gBattleAnimArgs[2];
sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@ -618,8 +618,8 @@ static void AnimTask_Rollout_Step(u8 taskId)
case 0:
task->data[6] -= task->data[4];
task->data[7] -= task->data[5];
gSprites[task->data[15]].pos2.x = task->data[6] >> 3;
gSprites[task->data[15]].pos2.y = task->data[7] >> 3;
gSprites[task->data[15]].x2 = task->data[6] >> 3;
gSprites[task->data[15]].y2 = task->data[7] >> 3;
if (++task->data[9] == 10)
{
@ -646,8 +646,8 @@ static void AnimTask_Rollout_Step(u8 taskId)
task->data[0]++;
}
gSprites[task->data[15]].pos2.x = task->data[6] >> 3;
gSprites[task->data[15]].pos2.y = task->data[7] >> 3;
gSprites[task->data[15]].x2 = task->data[6] >> 3;
gSprites[task->data[15]].y2 = task->data[7] >> 3;
break;
case 3:
task->data[2] += task->data[4];
@ -748,7 +748,7 @@ static void AnimRockTomb(struct Sprite *sprite)
{
StartSpriteAnim(sprite, gBattleAnimArgs[4]);
sprite->pos2.x = gBattleAnimArgs[0];
sprite->x2 = gBattleAnimArgs[0];
sprite->data[2] = gBattleAnimArgs[1];
sprite->data[3] -= gBattleAnimArgs[2];
sprite->data[0] = 3;
@ -762,7 +762,7 @@ static void AnimRockTomb_Step(struct Sprite *sprite)
sprite->invisible = FALSE;
if (sprite->data[3] != 0)
{
sprite->pos2.y = sprite->data[2] + sprite->data[3];
sprite->y2 = sprite->data[2] + sprite->data[3];
sprite->data[3] += sprite->data[0];
sprite->data[0]++;
if (sprite->data[3] > 0)
@ -787,10 +787,10 @@ static void AnimRockBlastRock(struct Sprite *sprite)
static void AnimRockScatter(struct Sprite *sprite)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->pos1.x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->x += gBattleAnimArgs[0];
sprite->y += gBattleAnimArgs[1];
sprite->data[1] = gBattleAnimArgs[0];
sprite->data[2] = gBattleAnimArgs[1];
@ -806,8 +806,8 @@ static void AnimRockScatter_Step(struct Sprite *sprite)
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
sprite->pos2.x += sprite->data[3] / 40;
sprite->pos2.y -= Sin(sprite->data[0], sprite->data[5]);
sprite->x2 += sprite->data[3] / 40;
sprite->y2 -= Sin(sprite->data[0], sprite->data[5]);
if (sprite->data[0] > 140)
DestroyAnimSprite(sprite);

View File

@ -286,7 +286,7 @@ static u8 Task_FlashingCircleImpacts(u8 battlerId, bool8 red)
gTasks[taskId].data[1] = RGB_RED;
for (i = 0; i < 10; i++)
{
spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y + 32, 0);
spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].x, gSprites[battlerSpriteId].y + 32, 0);
gSprites[spriteId].data[0] = i * 51;
gSprites[spriteId].data[1] = -256;
gSprites[spriteId].invisible = TRUE;
@ -299,7 +299,7 @@ static u8 Task_FlashingCircleImpacts(u8 battlerId, bool8 red)
gTasks[taskId].data[1] = RGB_BLUE;
for (i = 0; i < 10; i++)
{
spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y - 32, 0);
spriteId = CreateSprite(&sFlashingCircleImpactSpriteTemplate, gSprites[battlerSpriteId].x, gSprites[battlerSpriteId].y - 32, 0);
gSprites[spriteId].data[0] = i * 51;
gSprites[spriteId].data[1] = 256;
gSprites[spriteId].invisible = TRUE;
@ -360,15 +360,15 @@ static void AnimFlashingCircleImpact(struct Sprite *sprite)
static void AnimFlashingCircleImpact_Step(struct Sprite *sprite)
{
sprite->pos2.x = Cos(sprite->data[0], 32);
sprite->pos2.y = Sin(sprite->data[0], 8);
sprite->x2 = Cos(sprite->data[0], 32);
sprite->y2 = Sin(sprite->data[0], 8);
if (sprite->data[0] < 128)
sprite->subpriority = 29;
else
sprite->subpriority = 31;
sprite->data[0] = (sprite->data[0] + 8) & 0xFF;
sprite->data[5] += sprite->data[1];
sprite->pos2.y += sprite->data[5] >> 8;
sprite->y2 += sprite->data[5] >> 8;
sprite->data[2]++;
if (sprite->data[2] == 52)
{

View File

@ -473,8 +473,8 @@ void AnimTask_UnusedLevelUpHealthBox(u8 taskId)
AnimLoadCompressedBgGfx(animBgData.bgId, UnusedLevelupAnimationGfx, animBgData.tilesOffset);
LoadCompressedPalette(gCureBubblesPal, animBgData.paletteId << 4, 32);
gBattle_BG1_X = -gSprites[spriteId3].pos1.x + 32;
gBattle_BG1_Y = -gSprites[spriteId3].pos1.y - 32;
gBattle_BG1_X = -gSprites[spriteId3].x + 32;
gBattle_BG1_Y = -gSprites[spriteId3].y - 32;
gTasks[taskId].data[1] = 640;
gTasks[taskId].data[0] = spriteId3;
gTasks[taskId].data[2] = spriteId4;
@ -857,9 +857,9 @@ static void SpriteCB_Ball_Throw(struct Sprite *sprite)
u16 targetX = sprite->sTargetXArg;
u16 targetY = sprite->sTargetYArg;
sprite->sOffsetX = sprite->pos1.x;
sprite->sOffsetX = sprite->x;
sprite->sTargetX = targetX;
sprite->sOffsetY = sprite->pos1.y;
sprite->sOffsetY = sprite->y;
sprite->sTargetY = targetY;
sprite->sAmplitude = -40;
InitAnimArcTranslation(sprite);
@ -891,10 +891,10 @@ static void SpriteCB_Ball_Arc(struct Sprite *sprite)
else
{
StartSpriteAnim(sprite, 1);
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;
for (i = 0; i < 8; i++)
sprite->data[i] = 0;
@ -906,7 +906,7 @@ static void SpriteCB_Ball_Arc(struct Sprite *sprite)
switch (ballId)
{
case 0 ... POKEBALL_COUNT - 1:
AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 28, ballId);
AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId);
LaunchBallFadeMonTask(FALSE, gBattleAnimTarget, 14, ballId);
break;
}
@ -948,7 +948,7 @@ static void SpriteCB_Ball_MonShrink_Step(struct Sprite *sprite)
PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL);
gTasks[taskId].data[10] = 256;
gMonShrinkDuration = 28;
gMonShrinkDistance = (gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y) - (sprite->pos1.y + sprite->pos2.y);
gMonShrinkDistance = (gSprites[spriteId].y + gSprites[spriteId].y2) - (sprite->y + sprite->y2);
gMonShrinkDelta = (u32)(gMonShrinkDistance * 256) / gMonShrinkDuration;
gTasks[taskId].data[2] = gMonShrinkDelta;
gTasks[taskId].tState++; // MON_SHRINK_STEP
@ -957,7 +957,7 @@ static void SpriteCB_Ball_MonShrink_Step(struct Sprite *sprite)
gTasks[taskId].data[10] += 32;
SetSpriteRotScale(spriteId, gTasks[taskId].data[10], gTasks[taskId].data[10], 0);
gTasks[taskId].data[3] += gTasks[taskId].data[2];
gSprites[spriteId].pos2.y = -gTasks[taskId].data[3] >> 8;
gSprites[spriteId].y2 = -gTasks[taskId].data[3] >> 8;
if (gTasks[taskId].data[10] >= 1152)
gTasks[taskId].tState++; // MON_SHRINK_INVISIBLE
break;
@ -997,8 +997,8 @@ static void SpriteCB_Ball_Bounce(struct Sprite *sprite)
sprite->sAmplitude = 40;
sprite->sPhase = 0;
phase = 0;
sprite->pos1.y += Cos(phase, 40);
sprite->pos2.y = -Cos(phase, sprite->sAmplitude);
sprite->y += Cos(phase, 40);
sprite->y2 = -Cos(phase, sprite->sAmplitude);
sprite->callback = SpriteCB_Ball_Bounce_Step;
}
}
@ -1032,7 +1032,7 @@ static void SpriteCB_Ball_Bounce_Step(struct Sprite *sprite)
switch (DIRECTION(sprite->sState))
{
case BALL_FALLING:
sprite->pos2.y = -Cos(sprite->sPhase, sprite->sAmplitude);
sprite->y2 = -Cos(sprite->sPhase, sprite->sAmplitude);
sprite->sPhase += PHASE_DELTA(sprite->sState) + 4;
// Once the ball touches the ground
if (sprite->sPhase >= 64)
@ -1062,7 +1062,7 @@ static void SpriteCB_Ball_Bounce_Step(struct Sprite *sprite)
}
break;
case BALL_RISING:
sprite->pos2.y = -Cos(sprite->sPhase, sprite->sAmplitude);
sprite->y2 = -Cos(sprite->sPhase, sprite->sAmplitude);
sprite->sPhase -= PHASE_DELTA(sprite->sState) + 4;
// Once ball reaches max height
if (sprite->sPhase <= 0)
@ -1077,8 +1077,8 @@ static void SpriteCB_Ball_Bounce_Step(struct Sprite *sprite)
if (lastBounce)
{
sprite->sState = 0;
sprite->pos1.y += Cos(64, 40);
sprite->pos2.y = 0;
sprite->y += Cos(64, 40);
sprite->y2 = 0;
if (gBattleSpritesDataPtr->animationData->ballThrowCaseId == BALL_NO_SHAKES)
{
sprite->sTimer = 0;
@ -1143,7 +1143,7 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite)
// Rolling effect: every frame in the rotation, the sprite shifts 176/256 of a pixel.
if (gBattleSpritesDataPtr->animationData->ballSubpx > 255)
{
sprite->pos2.x += sprite->sDirection;
sprite->x2 += sprite->sDirection;
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
}
else
@ -1177,7 +1177,7 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite)
case BALL_ROLL_2:
if (gBattleSpritesDataPtr->animationData->ballSubpx > 255)
{
sprite->pos2.x += sprite->sDirection;
sprite->x2 += sprite->sDirection;
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
}
else
@ -1212,7 +1212,7 @@ static void SpriteCB_Ball_Wobble_Step(struct Sprite *sprite)
case BALL_ROLL_3:
if (gBattleSpritesDataPtr->animationData->ballSubpx > 0xFF)
{
sprite->pos2.x += sprite->sDirection;
sprite->x2 += sprite->sDirection;
gBattleSpritesDataPtr->animationData->ballSubpx &= 0xFF;
}
else
@ -1420,12 +1420,12 @@ static void MakeCaptureStars(struct Sprite *sprite)
LoadBallParticleGfx(BALL_MASTER);
for (i = 0; i < ARRAY_COUNT(sCaptureStars); i++)
{
u8 spriteId = CreateSprite(&sBallParticleSpriteTemplates[BALL_MASTER], sprite->pos1.x, sprite->pos1.y, subpriority);
u8 spriteId = CreateSprite(&sBallParticleSpriteTemplates[BALL_MASTER], sprite->x, sprite->y, subpriority);
if (spriteId != MAX_SPRITES)
{
gSprites[spriteId].sDuration = 24;
gSprites[spriteId].sTargetX = sprite->pos1.x + sCaptureStars[i].xOffset;
gSprites[spriteId].sTargetY = sprite->pos1.y + sCaptureStars[i].yOffset;
gSprites[spriteId].sTargetX = sprite->x + sCaptureStars[i].xOffset;
gSprites[spriteId].sTargetY = sprite->y + sCaptureStars[i].yOffset;
gSprites[spriteId].sAmplitude = sCaptureStars[i].amplitude;
InitAnimArcTranslation(&gSprites[spriteId]);
gSprites[spriteId].callback = SpriteCB_CaptureStar_Flicker;
@ -1465,7 +1465,7 @@ static void SpriteCB_Ball_Release_Step(struct Sprite *sprite)
switch (ballId)
{
case 0 ... POKEBALL_COUNT - 1:
AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 28, ballId);
AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 28, ballId);
LaunchBallFadeMonTask(TRUE, gBattleAnimTarget, 14, ballId);
break;
}
@ -1492,12 +1492,12 @@ static void SpriteCB_Ball_Release_Wait(struct Sprite *sprite)
else
{
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].sOffsetY -= 288;
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].pos2.y = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].sOffsetY >> 8;
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].y2 = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].sOffsetY >> 8;
}
if (sprite->animEnded && released)
{
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].pos2.y = 0;
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].y2 = 0;
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible = gBattleSpritesDataPtr->animationData->wildMonInvisible;
sprite->sFrame = 0;
sprite->callback = DestroySpriteAfterOneFrame;
@ -1513,10 +1513,10 @@ static void SpriteCB_Ball_Block(struct Sprite *sprite)
{
s32 i;
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;
for (i = 0; i < 6; i++)
sprite->data[i] = 0;
@ -1533,13 +1533,13 @@ static void SpriteCB_Ball_Block_Step(struct Sprite *sprite)
{
s16 dy = sprite->sDy + 0x800;
s16 dx = sprite->sDx + 0x680;
sprite->pos2.x -= dx >> 8;
sprite->pos2.y += dy >> 8;
sprite->x2 -= dx >> 8;
sprite->y2 += dy >> 8;
sprite->sDy = (sprite->sDy + 0x800) & 0xFF;
sprite->sDx = (sprite->sDx + 0x680) & 0xFF;
if (sprite->pos1.y + sprite->pos2.y > DISPLAY_HEIGHT
|| sprite->pos1.x + sprite->pos2.x < -8)
if (sprite->y + sprite->y2 > DISPLAY_HEIGHT
|| sprite->x + sprite->x2 < -8)
{
sprite->sFrame = 0;
sprite->callback = DestroySpriteAfterOneFrame;
@ -1638,8 +1638,8 @@ static void PokeBallOpenParticleAnimation_Step1(struct Sprite *sprite)
static void PokeBallOpenParticleAnimation_Step2(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[1]);
sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->y2 = Cos(sprite->data[0], sprite->data[1]);
sprite->data[1] += 2;
if (sprite->data[1] == 50)
DestroyBallOpenAnimationParticle(sprite);
@ -1831,8 +1831,8 @@ static void GreatBallOpenParticleAnimation(u8 taskId)
static void FanOutBallOpenParticles_Step1(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[2]);
sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->y2 = Cos(sprite->data[0], sprite->data[2]);
sprite->data[0] = (sprite->data[0] + sprite->data[4]) & 0xFF;
sprite->data[1] += sprite->data[5];
sprite->data[2] += sprite->data[6];
@ -1873,8 +1873,8 @@ static void RepeatBallOpenParticleAnimation(u8 taskId)
static void RepeatBallOpenParticleAnimation_Step1(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], Sin(sprite->data[0], sprite->data[2]));
sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->y2 = Cos(sprite->data[0], Sin(sprite->data[0], sprite->data[2]));
sprite->data[0] = (sprite->data[0] + 6) & 0xFF;
sprite->data[1]++;
sprite->data[2]++;
@ -1961,8 +1961,8 @@ static void PremierBallOpenParticleAnimation(u8 taskId)
static void PremierBallOpenParticleAnimation_Step1(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], Sin(sprite->data[0] & 0x3F, sprite->data[2]));
sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->y2 = Cos(sprite->data[0], Sin(sprite->data[0] & 0x3F, sprite->data[2]));
sprite->data[0] = (sprite->data[0] + 10) & 0xFF;
sprite->data[1]++;
sprite->data[2]++;
@ -2111,12 +2111,12 @@ void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId)
gTasks[taskId].data[11] = gBattleAnimArgs[0];
gTasks[taskId].data[0] += 0x500;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gSprites[spriteId].pos2.x += gTasks[taskId].data[0] >> 8;
gSprites[spriteId].x2 += gTasks[taskId].data[0] >> 8;
else
gSprites[spriteId].pos2.x -= gTasks[taskId].data[0] >> 8;
gSprites[spriteId].x2 -= gTasks[taskId].data[0] >> 8;
gTasks[taskId].data[0] &= 0xFF;
x = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x + 32;
x = gSprites[spriteId].x + gSprites[spriteId].x2 + 32;
if (x > 304)
gTasks[taskId].data[10]++;
break;
@ -2127,24 +2127,24 @@ void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId)
case 2:
gTasks[taskId].data[0] += 0x500;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gSprites[spriteId].pos2.x -= gTasks[taskId].data[0] >> 8;
gSprites[spriteId].x2 -= gTasks[taskId].data[0] >> 8;
else
gSprites[spriteId].pos2.x += gTasks[taskId].data[0] >> 8;
gSprites[spriteId].x2 += gTasks[taskId].data[0] >> 8;
gTasks[taskId].data[0] &= 0xFF;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
if (gSprites[spriteId].pos2.x <= 0)
if (gSprites[spriteId].x2 <= 0)
{
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].x2 = 0;
done = TRUE;
}
}
else
{
if (gSprites[spriteId].pos2.x >= 0)
if (gSprites[spriteId].x2 >= 0)
{
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].x2 = 0;
done = TRUE;
}
}
@ -2302,8 +2302,8 @@ static void Task_ShinyStars(u8 taskId)
else
{
gSprites[spriteId].callback = SpriteCB_ShinyStars_Diagonal;
gSprites[spriteId].pos2.x = -32;
gSprites[spriteId].pos2.y = 32;
gSprites[spriteId].x2 = -32;
gSprites[spriteId].y2 = 32;
gSprites[spriteId].invisible = TRUE;
if (gTasks[taskId].tStarIdx == 0)
{
@ -2343,8 +2343,8 @@ static void Task_ShinyStars_Wait(u8 taskId)
static void SpriteCB_ShinyStars_Encircle(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->sPhase, 24);
sprite->pos2.y = Cos(sprite->sPhase, 24);
sprite->x2 = Sin(sprite->sPhase, 24);
sprite->y2 = Cos(sprite->sPhase, 24);
sprite->sPhase += 12;
if (sprite->sPhase > 255)
{
@ -2362,9 +2362,9 @@ static void SpriteCB_ShinyStars_Diagonal(struct Sprite *sprite)
else
{
sprite->invisible = FALSE;
sprite->pos2.x += 5;
sprite->pos2.y -= 5;
if (sprite->pos2.x > 32)
sprite->x2 += 5;
sprite->y2 -= 5;
if (sprite->x2 > 32)
{
gTasks[sprite->sTaskId].tNumStars--;
FreeSpriteOamMatrix(sprite);

View File

@ -335,8 +335,8 @@ void AnimTask_DrawFallingWhiteLinesOnAttacker(u8 taskId)
AnimLoadCompressedBgGfx(animBgData.bgId, gBattleAnimMaskImage_Curse, animBgData.tilesOffset);
LoadPalette(sCurseLinesPalette, animBgData.paletteId * 16 + 1, 2);
gBattle_BG1_X = -gSprites[spriteId].pos1.x + 32;
gBattle_BG1_Y = -gSprites[spriteId].pos1.y + 32;
gBattle_BG1_X = -gSprites[spriteId].x + 32;
gBattle_BG1_Y = -gSprites[spriteId].y + 32;
gTasks[taskId].data[0] = newSpriteId;
gTasks[taskId].data[6] = var0;
gTasks[taskId].func = AnimTask_DrawFallingWhiteLinesOnAttacker_Step;

View File

@ -504,8 +504,8 @@ static void AnimRainDrop_Step(struct Sprite *sprite)
{
if (++sprite->data[0] <= 13)
{
sprite->pos2.x++;
sprite->pos2.y += 4;
sprite->x2++;
sprite->y2 += 4;
}
if (sprite->animEnded)
DestroySprite(sprite);
@ -518,28 +518,28 @@ static void AnimWaterBubbleProjectile(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) - gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) - gBattleAnimArgs[0];
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1];
sprite->animPaused = TRUE;
}
else
{
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0];
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1];
sprite->animPaused = TRUE;
}
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[6];
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);
spriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy);
sprite->data[5] = spriteId;
sprite->pos1.x -= Sin((u8)gBattleAnimArgs[4], gBattleAnimArgs[2]);
sprite->pos1.y -= Cos((u8)gBattleAnimArgs[4], gBattleAnimArgs[3]);
sprite->x -= Sin((u8)gBattleAnimArgs[4], gBattleAnimArgs[2]);
sprite->y -= Cos((u8)gBattleAnimArgs[4], gBattleAnimArgs[3]);
gSprites[spriteId].data[0] = gBattleAnimArgs[2];
gSprites[spriteId].data[1] = gBattleAnimArgs[3];
gSprites[spriteId].data[2] = gBattleAnimArgs[5];
@ -557,8 +557,8 @@ static void AnimWaterBubbleProjectile_Step1(struct Sprite *sprite)
sprite->data[0] = 1;
AnimTranslateLinear(sprite);
sprite->pos2.x += Sin(trigIndex >> 8, gSprites[otherSpriteId].data[0]);
sprite->pos2.y += Cos(trigIndex >> 8, gSprites[otherSpriteId].data[1]);
sprite->x2 += Sin(trigIndex >> 8, gSprites[otherSpriteId].data[0]);
sprite->y2 += Cos(trigIndex >> 8, gSprites[otherSpriteId].data[1]);
gSprites[otherSpriteId].data[3] = trigIndex + gSprites[otherSpriteId].data[2];
if (--timer != 0)
{
@ -595,9 +595,9 @@ static void AnimAuroraBeamRings(struct Sprite *sprite)
else
unkArg = gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x;
sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + unkArg;
sprite->data[3] = sprite->pos1.y;
sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
InitAnimLinearTranslation(sprite);
sprite->callback = AnimAuroraBeamRings_Step;
@ -650,9 +650,9 @@ static void AnimToTargetInSinWave(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = 30;
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->data[5] = 0xD200 / sprite->data[0];
@ -675,7 +675,7 @@ static void AnimToTargetInSinWave_Step(struct Sprite *sprite)
{
if (AnimTranslateLinear(sprite))
DestroyAnimSprite(sprite);
sprite->pos2.y += Sin(sprite->data[6] >> 8, sprite->data[7]);
sprite->y2 += Sin(sprite->data[6] >> 8, sprite->data[7]);
if ((sprite->data[6] + sprite->data[5]) >> 8 > 127)
{
sprite->data[6] = 0;
@ -706,26 +706,26 @@ static void AnimHydroCannonCharge(struct Sprite *sprite)
{
u8 priority;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
sprite->pos2.y = -10;
sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
sprite->y2 = -10;
priority = GetBattlerSpriteSubpriority(gBattleAnimAttacker);
if (!IsContest())
{
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{
sprite->pos2.x = 10;
sprite->x2 = 10;
sprite->subpriority = priority + 2;
}
else
{
sprite->pos2.x = -10;
sprite->x2 = -10;
sprite->subpriority = priority - 2;
}
}
else
{
sprite->pos2.x = -10;
sprite->x2 = -10;
sprite->subpriority = priority + 2;
}
sprite->callback = AnimHydroCannonCharge_Step;
@ -771,8 +771,8 @@ static void AnimWaterGunDroplet(struct Sprite *sprite)
{
InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[4];
sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[4] = sprite->y + gBattleAnimArgs[4];
sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
}
@ -790,9 +790,9 @@ static void AnimSmallBubblePair(struct Sprite *sprite)
static void AnimSmallBubblePair_Step(struct Sprite *sprite)
{
sprite->data[0] = (sprite->data[0] + 11) & 0xFF;
sprite->pos2.x = Sin(sprite->data[0], 4);
sprite->x2 = Sin(sprite->data[0], 4);
sprite->data[1] += 48;
sprite->pos2.y = -(sprite->data[1] >> 8);
sprite->y2 = -(sprite->data[1] >> 8);
if (--sprite->data[7] == -1)
DestroyAnimSprite(sprite);
}
@ -1027,10 +1027,10 @@ static void AnimSmallDriftingBubbles_Step(struct Sprite *sprite)
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
if (sprite->data[1] & 1)
sprite->pos2.x = -(sprite->data[3] >> 8);
sprite->x2 = -(sprite->data[3] >> 8);
else
sprite->pos2.x = sprite->data[3] >> 8;
sprite->pos2.y = sprite->data[4] >> 8;
sprite->x2 = sprite->data[3] >> 8;
sprite->y2 = sprite->data[4] >> 8;
if (++sprite->data[0] == 21)
DestroyAnimSprite(sprite);
}
@ -1040,7 +1040,7 @@ void AnimTask_WaterSpoutLaunch(u8 taskId)
struct Task *task = &gTasks[taskId];
task->data[15] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
task->data[5] = gSprites[task->data[15]].pos1.y;
task->data[5] = gSprites[task->data[15]].y;
task->data[1] = GetWaterSpoutPowerForAnim();
PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL);
task->func = AnimTask_WaterSpoutLaunch_Step;
@ -1061,18 +1061,18 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
task->data[3] = 0;
if (++task->data[4] & 1)
{
gSprites[task->data[15]].pos2.x = 3;
gSprites[task->data[15]].pos1.y++;
gSprites[task->data[15]].x2 = 3;
gSprites[task->data[15]].y++;
}
else
{
gSprites[task->data[15]].pos2.x = -3;
gSprites[task->data[15]].x2 = -3;
}
}
if (UpdateEruptAnimTask(task) == 0)
{
SetBattlerSpriteYOffsetFromYScale(task->data[15]);
gSprites[task->data[15]].pos2.x = 0;
gSprites[task->data[15]].x2 = 0;
task->data[3] = 0;
task->data[4] = 0;
task->data[0]++;
@ -1102,9 +1102,9 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
{
task->data[3] = 0;
if (++task->data[4] & 1)
gSprites[task->data[15]].pos2.y += 2;
gSprites[task->data[15]].y2 += 2;
else
gSprites[task->data[15]].pos2.y -= 2;
gSprites[task->data[15]].y2 -= 2;
if (task->data[4] == 10)
{
PrepareEruptAnimTaskData(task, task->data[15], 0x180, 0xE0, 0x100, 0x100, 8);
@ -1115,11 +1115,11 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
}
break;
case 6:
gSprites[task->data[15]].pos1.y--;
gSprites[task->data[15]].y--;
if (UpdateEruptAnimTask(task) == 0)
{
ResetSpriteRotScale(task->data[15]);
gSprites[task->data[15]].pos1.y = task->data[5];
gSprites[task->data[15]].y = task->data[5];
task->data[4] = 0;
task->data[0]++;
}
@ -1209,9 +1209,9 @@ static void AnimSmallWaterOrb(struct Sprite *sprite)
case 1:
sprite->data[2] += sprite->data[4];
sprite->data[3] += sprite->data[5];
sprite->pos1.x = sprite->data[2] >> 4;
sprite->pos1.y = sprite->data[3] >> 4;
if (sprite->pos1.x < -8 || sprite->pos1.x > 248 || sprite->pos1.y < -8 || sprite->pos1.y > 120)
sprite->x = sprite->data[2] >> 4;
sprite->y = sprite->data[3] >> 4;
if (sprite->x < -8 || sprite->x > 248 || sprite->y < -8 || sprite->y > 120)
{
gTasks[sprite->data[6]].data[sprite->data[7]]--;
DestroySprite(sprite);
@ -1306,11 +1306,11 @@ static void AnimWaterSpoutRain(struct Sprite *sprite)
{
if (sprite->data[0] == 0)
{
sprite->pos1.y += 8;
if (sprite->pos1.y >= sprite->data[5])
sprite->y += 8;
if (sprite->y >= sprite->data[5])
{
gTasks[sprite->data[6]].data[10] = 1;
sprite->data[1] = CreateSprite(&gWaterHitSplatSpriteTemplate, sprite->pos1.x, sprite->pos1.y, 1);
sprite->data[1] = CreateSprite(&gWaterHitSplatSpriteTemplate, sprite->x, sprite->y, 1);
if (sprite->data[1] != MAX_SPRITES)
{
StartSpriteAffineAnim(&gSprites[sprite->data[1]], 3);
@ -1449,11 +1449,11 @@ static void AnimWaterSportDroplet(struct Sprite *sprite)
{
if (TranslateAnimHorizontalArc(sprite))
{
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
sprite->x += sprite->x2;
sprite->y += sprite->y2;
sprite->data[0] = 6;
sprite->data[2] = (Random2() & 0x1F) - 16 + sprite->pos1.x;
sprite->data[4] = (Random2() & 0x1F) - 16 + sprite->pos1.y;
sprite->data[2] = (Random2() & 0x1F) - 16 + sprite->x;
sprite->data[4] = (Random2() & 0x1F) - 16 + sprite->y;
sprite->data[5] = ~(Random2() & 7);
InitAnimArcTranslation(sprite);
sprite->callback = AnimWaterSportDroplet_Step;
@ -1480,8 +1480,8 @@ static void AnimWaterSportDroplet_Step(struct Sprite *sprite)
static void AnimWaterPulseBubble(struct Sprite *sprite)
{
sprite->pos1.x = gBattleAnimArgs[0];
sprite->pos1.y = gBattleAnimArgs[1];
sprite->x = gBattleAnimArgs[0];
sprite->y = gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[4];
@ -1492,9 +1492,9 @@ static void AnimWaterPulseBubble(struct Sprite *sprite)
static void AnimWaterPulseBubble_Step(struct Sprite *sprite)
{
sprite->data[4] -= sprite->data[0];
sprite->pos2.y = sprite->data[4] / 10;
sprite->y2 = sprite->data[4] / 10;
sprite->data[5] = (sprite->data[5] + sprite->data[1]) & 0xFF;
sprite->pos2.x = Sin(sprite->data[5], sprite->data[2]);
sprite->x2 = Sin(sprite->data[5], sprite->data[2]);
if (--sprite->data[3] == 0)
DestroyAnimSprite(sprite);
}
@ -1503,8 +1503,8 @@ static void AnimWaterPulseRingBubble(struct Sprite *sprite)
{
sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2];
sprite->pos2.x = sprite->data[3] >> 7;
sprite->pos2.y = sprite->data[4] >> 7;
sprite->x2 = sprite->data[3] >> 7;
sprite->y2 = sprite->data[4] >> 7;
if (--sprite->data[0] == 0)
{
FreeSpriteOamMatrix(sprite);
@ -1524,11 +1524,11 @@ void AnimWaterPulseRing(struct Sprite *sprite)
static void AnimWaterPulseRing_Step(struct Sprite *sprite)
{
int xDiff = sprite->data[1] - sprite->pos1.x;
int yDiff = sprite->data[2] - sprite->pos1.y;
int xDiff = sprite->data[1] - sprite->x;
int yDiff = sprite->data[2] - sprite->y;
sprite->pos2.x = (sprite->data[0] * xDiff) / sprite->data[3];
sprite->pos2.y = (sprite->data[0] * yDiff) / sprite->data[3];
sprite->x2 = (sprite->data[0] * xDiff) / sprite->data[3];
sprite->y2 = (sprite->data[0] * yDiff) / sprite->data[3];
if (++sprite->data[5] == sprite->data[4])
{
sprite->data[5] = 0;
@ -1551,8 +1551,8 @@ static void CreateWaterPulseRingBubbles(struct Sprite *sprite, int xDiff, int yD
u8 spriteId;
something = sprite->data[0] / 2;
combinedX = sprite->pos1.x + sprite->pos2.x;
combinedY = sprite->pos1.y + sprite->pos2.y;
combinedX = sprite->x + sprite->x2;
combinedY = sprite->y + sprite->y2;
if (yDiff < 0)
unusedVar *= -1; //Needed to match
randomSomethingY = yDiff + (Random2() % 10) - 5;

View File

@ -1112,8 +1112,8 @@ void InitLinkBattleVsScreen(u8 taskId)
gSprites[gBattleStruct->linkBattleVsSpriteId_S].oam.tileNum += 0x40;
gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[0] = 0;
gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[0] = 1;
gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_V].pos1.x;
gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_S].pos1.x;
gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_V].x;
gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_S].x;
gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[2] = 0;
gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[2] = 0;
}

View File

@ -365,7 +365,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
static void TryShinyAnimAfterMonAnim(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0)
&& gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
{
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim)
{
@ -1134,7 +1134,7 @@ static void LinkOpponentHandleLoadMonSprite(void)
GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]);
@ -1302,7 +1302,7 @@ static void LinkOpponentHandleDrawTrainerPic(void)
(8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId;
@ -1324,8 +1324,8 @@ static void LinkOpponentHandleTrainerSlide(void)
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, 0x1E);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 96;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.x += 32;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 96;
gSprites[gBattlerSpriteIds[gActiveBattler]].x += 32;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId;
@ -1342,7 +1342,7 @@ static void LinkOpponentHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@ -1703,7 +1703,7 @@ static void LinkOpponentHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite);

View File

@ -265,7 +265,7 @@ static void Intro_ShowHealthbox(void)
static void WaitForMonAnimAfterLoad(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
LinkPartnerBufferExecCompleted();
}
@ -288,7 +288,7 @@ static void CompleteOnHealthbarDone(void)
static void FreeMonSpriteAfterFaintAnim(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT)
{
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
@ -1021,7 +1021,7 @@ static void LinkPartnerHandleLoadMonSprite(void)
GetBattlerSpriteCoord(gActiveBattler, 2),
GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]);
@ -1144,7 +1144,7 @@ static void LinkPartnerHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
@ -1163,7 +1163,7 @@ static void LinkPartnerHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@ -1535,7 +1535,7 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;

View File

@ -379,7 +379,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
static void TryShinyAnimAfterMonAnim(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0
if (gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0
&& !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim
&& !gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].finishedShinyMonAnim)
TryShinyAnimation(gActiveBattler, &gEnemyParty[gBattlerPartyIndexes[gActiveBattler]]);
@ -1143,7 +1143,7 @@ static void OpponentHandleLoadMonSprite(void)
GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = species;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
@ -1310,7 +1310,7 @@ static void OpponentHandleDrawTrainerPic(void)
(8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId;
@ -1379,8 +1379,8 @@ static void OpponentHandleTrainerSlide(void)
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 176, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, 0x1E);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 96;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.x += 32;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 96;
gSprites[gBattlerSpriteIds[gActiveBattler]].x += 32;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId;
@ -1396,7 +1396,7 @@ static void OpponentHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@ -1869,7 +1869,7 @@ static void OpponentHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite);

View File

@ -229,7 +229,7 @@ static void PlayerBufferRunCommand(void)
static void CompleteOnBankSpritePosX_0(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
PlayerBufferExecCompleted();
}
@ -1316,7 +1316,7 @@ static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId)
static void FreeMonSpriteAfterFaintAnim(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT)
{
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
@ -2328,8 +2328,8 @@ static void PlayerHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y = 48;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].y2 = 48;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineMode = ST_OAM_AFFINE_OFF;
@ -2343,7 +2343,7 @@ static void PlayerHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
}
@ -2382,7 +2382,7 @@ static void PlayerHandleTrainerSlide(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, 80, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, 30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -96;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
@ -2396,7 +2396,7 @@ static void PlayerHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
@ -2953,7 +2953,7 @@ static void PlayerHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].sBattlerId = gActiveBattler;

View File

@ -277,7 +277,7 @@ static void Intro_ShowHealthbox(void)
static void WaitForMonAnimAfterLoad(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
PlayerPartnerBufferExecCompleted();
}
@ -472,7 +472,7 @@ static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId)
static void FreeMonSpriteAfterFaintAnim(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT)
{
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
@ -1205,7 +1205,7 @@ static void PlayerPartnerHandleLoadMonSprite(void)
GetBattlerSpriteCoord(gActiveBattler, 2),
GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]);
@ -1320,7 +1320,7 @@ static void PlayerPartnerHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
}
@ -1331,8 +1331,8 @@ static void PlayerPartnerHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y = 48;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].y2 = 48;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineMode = ST_OAM_AFFINE_OFF;
@ -1354,7 +1354,7 @@ static void PlayerPartnerHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@ -1784,7 +1784,7 @@ static void PlayerPartnerHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;

View File

@ -349,7 +349,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
static void TryShinyAnimAfterMonAnim(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0)
&& gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
{
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim)
{
@ -1117,7 +1117,7 @@ static void RecordedOpponentHandleLoadMonSprite(void)
GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]);
@ -1249,7 +1249,7 @@ static void RecordedOpponentHandleDrawTrainerPic(void)
(8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineParam = trainerPicId;
@ -1270,7 +1270,7 @@ static void RecordedOpponentHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@ -1643,7 +1643,7 @@ static void RecordedOpponentHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite);

View File

@ -342,7 +342,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
static void WaitForMonAnimAfterLoad(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
RecordedPlayerBufferExecCompleted();
}
@ -365,7 +365,7 @@ static void CompleteOnHealthbarDone(void)
static void FreeMonSpriteAfterFaintAnim(void)
{
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT)
if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT)
{
u16 species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[gActiveBattler]], MON_DATA_SPECIES);
@ -1098,7 +1098,7 @@ static void RecordedPlayerHandleLoadMonSprite(void)
GetBattlerSpriteCoord(gActiveBattler, 2),
GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]);
@ -1233,8 +1233,8 @@ static void RecordedPlayerHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y = 48;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].y2 = 48;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.affineMode = ST_OAM_AFFINE_OFF;
@ -1247,7 +1247,7 @@ static void RecordedPlayerHandleDrawTrainerPic(void)
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, yPos, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
}
@ -1267,7 +1267,7 @@ static void RecordedPlayerHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@ -1668,7 +1668,7 @@ static void RecordedPlayerHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;

View File

@ -361,7 +361,7 @@ static void SafariHandleDrawTrainerPic(void)
(8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].size) * 4 + 80,
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy;

View File

@ -1041,7 +1041,7 @@ static void WallyHandleDrawTrainerPic(void)
80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size),
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = DISPLAY_WIDTH;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy;
@ -1056,7 +1056,7 @@ static void WallyHandleTrainerSlide(void)
80 + 4 * (8 - gTrainerBackPicCoords[TRAINER_BACK_PIC_WALLY].size),
30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96;
gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -96;
gSprites[gBattlerSpriteIds[gActiveBattler]].sSpeedX = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBankSpriteCallbackDummy2;
@ -1435,7 +1435,7 @@ static void WallyHandleIntroTrainerBallThrow(void)
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[4] = gSprites[gBattlerSpriteIds[gActiveBattler]].y;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;

View File

@ -3102,17 +3102,17 @@ static void Task_ShowTourneyInfoCard(u8 taskId)
// That means that the sprite needs to move with the moving card in the opposite scrolling direction.
static void SpriteCb_TrainerIconCardScrollUp(struct Sprite *sprite)
{
sprite->pos1.y += 4;
sprite->y += 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.y >= -32)
if (sprite->y >= -32)
sprite->invisible = FALSE;
if (++sprite->data[1] == 40)
sprite->callback = SpriteCallbackDummy;
}
else
{
if (sprite->pos1.y >= 192)
if (sprite->y >= 192)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyTrainerPicSprite(sprite->data[3]);
@ -3122,17 +3122,17 @@ static void SpriteCb_TrainerIconCardScrollUp(struct Sprite *sprite)
static void SpriteCb_TrainerIconCardScrollDown(struct Sprite *sprite)
{
sprite->pos1.y -= 4;
sprite->y -= 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.y <= 192)
if (sprite->y <= 192)
sprite->invisible = FALSE;
if (++sprite->data[1] == 40)
sprite->callback = SpriteCallbackDummy;
}
else
{
if (sprite->pos1.y <= -32)
if (sprite->y <= -32)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyTrainerPicSprite(sprite->data[3]);
@ -3142,17 +3142,17 @@ static void SpriteCb_TrainerIconCardScrollDown(struct Sprite *sprite)
static void SpriteCb_TrainerIconCardScrollLeft(struct Sprite *sprite)
{
sprite->pos1.x += 4;
sprite->x += 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.x >= -32)
if (sprite->x >= -32)
sprite->invisible = FALSE;
if (++sprite->data[1] == 64)
sprite->callback = SpriteCallbackDummy;
}
else
{
if (sprite->pos1.x >= DISPLAY_WIDTH + 32)
if (sprite->x >= DISPLAY_WIDTH + 32)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyTrainerPicSprite(sprite->data[3]);
@ -3162,17 +3162,17 @@ static void SpriteCb_TrainerIconCardScrollLeft(struct Sprite *sprite)
static void SpriteCb_TrainerIconCardScrollRight(struct Sprite *sprite)
{
sprite->pos1.x -= 4;
sprite->x -= 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.x <= DISPLAY_WIDTH + 32)
if (sprite->x <= DISPLAY_WIDTH + 32)
sprite->invisible = FALSE;
if (++sprite->data[1] == 64)
sprite->callback = SpriteCallbackDummy;
}
else
{
if (sprite->pos1.x <= -32)
if (sprite->x <= -32)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyTrainerPicSprite(sprite->data[3]);
@ -3192,17 +3192,17 @@ static void SpriteCb_MonIconCardScrollUp(struct Sprite *sprite)
{
if (!sprite->sMonIconStill)
UpdateMonIconFrame(sprite);
sprite->pos1.y += 4;
sprite->y += 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.y >= -16)
if (sprite->y >= -16)
sprite->invisible = FALSE;
if (++sprite->data[1] == 40)
sprite->callback = SpriteCb_MonIcon;
}
else
{
if (sprite->pos1.y >= 176)
if (sprite->y >= 176)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyMonIconSprite(sprite);
@ -3214,17 +3214,17 @@ static void SpriteCb_MonIconCardScrollDown(struct Sprite *sprite)
{
if (!sprite->sMonIconStill)
UpdateMonIconFrame(sprite);
sprite->pos1.y -= 4;
sprite->y -= 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.y <= 176)
if (sprite->y <= 176)
sprite->invisible = FALSE;
if (++sprite->data[1] == 40)
sprite->callback = SpriteCb_MonIcon;
}
else
{
if (sprite->pos1.y <= -16)
if (sprite->y <= -16)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyMonIconSprite(sprite);
@ -3236,17 +3236,17 @@ static void SpriteCb_MonIconCardScrollLeft(struct Sprite *sprite)
{
if (!sprite->sMonIconStill)
UpdateMonIconFrame(sprite);
sprite->pos1.x += 4;
sprite->x += 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.x >= -16)
if (sprite->x >= -16)
sprite->invisible = FALSE;
if (++sprite->data[1] == 64)
sprite->callback = SpriteCb_MonIcon;
}
else
{
if (sprite->pos1.x >= DISPLAY_WIDTH + 16)
if (sprite->x >= DISPLAY_WIDTH + 16)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyMonIconSprite(sprite);
@ -3258,17 +3258,17 @@ static void SpriteCb_MonIconCardScrollRight(struct Sprite *sprite)
{
if (!sprite->sMonIconStill)
UpdateMonIconFrame(sprite);
sprite->pos1.x -= 4;
sprite->x -= 4;
if (sprite->data[0] != 0)
{
if (sprite->pos1.x <= DISPLAY_WIDTH + 16)
if (sprite->x <= DISPLAY_WIDTH + 16)
sprite->invisible = FALSE;
if (++sprite->data[1] == 64)
sprite->callback = SpriteCb_MonIcon;
}
else
{
if (sprite->pos1.x <= -16)
if (sprite->x <= -16)
{
sInfoCard->spriteIds[sprite->data[2]] = SPRITE_NONE;
FreeAndDestroyMonIconSprite(sprite);

View File

@ -1307,7 +1307,7 @@ static void Select_InitAllSprites(void)
Select_SetBallSpritePaletteNum(i);
}
cursorPos = sFactorySelectScreen->cursorPos;
x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].pos1.x;
x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].x;
sFactorySelectScreen->cursorSpriteId = CreateSprite(&sSpriteTemplate_Select_Arrow, x, 88, 0);
sFactorySelectScreen->menuCursor1SpriteId = CreateSprite(&sSpriteTemplate_Select_MenuHighlightLeft, 176, 112, 0);
sFactorySelectScreen->menuCursor2SpriteId = CreateSprite(&sSpriteTemplate_Select_MenuHighlightRight, 176, 144, 0);
@ -1352,7 +1352,7 @@ static void Select_UpdateBallCursorPosition(s8 direction)
}
cursorPos = sFactorySelectScreen->cursorPos;
gSprites[sFactorySelectScreen->cursorSpriteId].pos1.x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].pos1.x;
gSprites[sFactorySelectScreen->cursorSpriteId].x = gSprites[sFactorySelectScreen->mons[cursorPos].ballSpriteId].x;
}
static void Select_UpdateMenuCursorPosition(s8 direction)
@ -1372,8 +1372,8 @@ static void Select_UpdateMenuCursorPosition(s8 direction)
sFactorySelectScreen->menuCursorPos = ARRAY_COUNT(sSelect_MenuOptionFuncs) - 1;
}
gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
}
static void Select_UpdateYesNoCursorPosition(s8 direction)
@ -1393,8 +1393,8 @@ static void Select_UpdateYesNoCursorPosition(s8 direction)
sFactorySelectScreen->yesNoCursorPos = 1;
}
gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = (sFactorySelectScreen->yesNoCursorPos * 16) + 112;
}
static void Select_HandleMonSelectionChange(void)
@ -1823,10 +1823,10 @@ static void Select_ShowMenuOptions(void)
if (!sFactorySelectScreen->fromSummaryScreen)
sFactorySelectScreen->menuCursorPos = 0;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.x = 176;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.x = 208;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].x = 176;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].x = 208;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = (sFactorySelectScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].invisible = FALSE;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].invisible = FALSE;
@ -1838,10 +1838,10 @@ static void Select_ShowYesNoOptions(void)
{
sFactorySelectScreen->yesNoCursorPos = 0;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.x = 176;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].pos1.y = 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.x = 208;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].pos1.y = 112;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].x = 176;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].y = 112;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].x = 208;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].y = 112;
gSprites[sFactorySelectScreen->menuCursor1SpriteId].invisible = FALSE;
gSprites[sFactorySelectScreen->menuCursor2SpriteId].invisible = FALSE;
@ -2793,33 +2793,33 @@ static void Swap_Task_SlideCycleBalls(u8 taskId)
{
if (i != FRONTIER_PARTY_SIZE - 1)
{
u8 posX = lastX - gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x;
u8 posX = lastX - gSprites[sFactorySwapScreen->ballSpriteIds[i]].x;
if (posX == 16 || gTasks[taskId].tBallCycled(i + 1) == TRUE)
{
lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x += 10;
lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].x;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].x += 10;
}
else if (posX > 16)
{
gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x = gSprites[sFactorySwapScreen->ballSpriteIds[i + 1]].pos1.x - 48;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].x = gSprites[sFactorySwapScreen->ballSpriteIds[i + 1]].x - 48;
}
}
else
{
lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x += 10;
lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].x;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].x += 10;
}
if (gTasks[taskId].tBallCycled(i) == TRUE)
{
// New ball coming in from left, check if it has reached dest
if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x > (i * 48) + 72)
if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].x > (i * 48) + 72)
{
// Overshot dest, set x and finish
gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x = (i * 48) + 72;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].x = (i * 48) + 72;
finished = TRUE;
}
else if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x == (i * 48) + 72)
else if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].x == (i * 48) + 72)
{
finished = TRUE;
}
@ -2833,11 +2833,11 @@ static void Swap_Task_SlideCycleBalls(u8 taskId)
finished = FALSE;
}
if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x - 16 > DISPLAY_WIDTH)
if (gSprites[sFactorySwapScreen->ballSpriteIds[i]].x - 16 > DISPLAY_WIDTH)
{
// Ball is offscreen right, cycle its palette and move to left side of screen
lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].pos1.x = -16;
lastX = gSprites[sFactorySwapScreen->ballSpriteIds[i]].x;
gSprites[sFactorySwapScreen->ballSpriteIds[i]].x = -16;
if (sFactorySwapScreen->inEnemyScreen == TRUE)
gSprites[sFactorySwapScreen->ballSpriteIds[i]].oam.paletteNum = IndexOfSpritePaletteTag(PALTAG_BALL_SELECTED);
else
@ -2881,7 +2881,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId)
switch (gTasks[taskId].tState)
{
case SLIDE_BUTTON_PKMN:
currPosX = gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0][0]].pos1.x;
currPosX = gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0][0]].x;
if (!gTasks[taskId].tSlidingOn)
{
// Sliding "Pkmn for Swap" offscreen
@ -2915,7 +2915,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId)
for (i = 0; i < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0]); i++)
{
for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds); j++)
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][i]].pos1.x += deltaX;
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][i]].x += deltaX;
}
}
else
@ -2923,9 +2923,9 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId)
// Set final position
for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds); j++)
{
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][0]].pos1.x = posX;
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][1]].pos1.x = posX + 16;
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][2]].pos1.x = posX + 48;
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][0]].x = posX;
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][1]].x = posX + 16;
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[j][2]].x = posX + 48;
}
prevTaskId = gTasks[taskId].tTaskId;
gTasks[prevTaskId].tSlideFinishedPkmn = TRUE;
@ -2933,7 +2933,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId)
}
break;
case SLIDE_BUTTON_CANCEL:
currPosX = gSprites[sFactorySwapScreen->cancelButtonSpriteIds[0][0]].pos1.x;
currPosX = gSprites[sFactorySwapScreen->cancelButtonSpriteIds[0][0]].x;
if (!gTasks[taskId].tSlidingOn)
{
// Sliding "Cancel" offscreen
@ -2967,7 +2967,7 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId)
for (i = 0; i < ARRAY_COUNT(sFactorySwapScreen->cancelButtonSpriteIds); i++)
{
for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->cancelButtonSpriteIds[0]); j++)
gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][i]].pos1.x += deltaX;
gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][i]].x += deltaX;
}
}
else
@ -2975,8 +2975,8 @@ static void Swap_Task_SlideButtonOnOffScreen(u8 taskId)
// Set final position
for (j = 0; j < ARRAY_COUNT(sFactorySwapScreen->cancelButtonSpriteIds); j++)
{
gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][0]].pos1.x = posX;
gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][1]].pos1.x = posX + 16;
gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][0]].x = posX;
gSprites[sFactorySwapScreen->cancelButtonSpriteIds[j][1]].x = posX + 16;
}
prevTaskId = gTasks[taskId].tTaskId;
gTasks[prevTaskId].tSlideFinishedCancel = TRUE;
@ -3221,7 +3221,7 @@ static void Swap_Task_SwitchPartyScreen(u8 taskId)
for (i = 0; i < ARRAY_COUNT(sFactorySwapScreen->pkmnForSwapButtonSpriteIds[0]); i++)
gSprites[sFactorySwapScreen->pkmnForSwapButtonSpriteIds[1][i]].invisible = TRUE;
}
gSprites[sFactorySwapScreen->cursorSpriteId].pos1.x = gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].pos1.x;
gSprites[sFactorySwapScreen->cursorSpriteId].x = gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].x;
gTasks[sFactorySwapScreen->fadeSpeciesNameTaskId].func = Swap_Task_FadeSpeciesName;
sFactorySwapScreen->fadeSpeciesNameCoeffDelay = 0;
sFactorySwapScreen->fadeSpeciesNameCoeff = 6;
@ -3433,7 +3433,7 @@ static void Swap_InitAllSprites(void)
sFactorySwapScreen->ballSpriteIds[i] = CreateSprite(&spriteTemplate, (48 * i) + 72, 64, 1);
gSprites[sFactorySwapScreen->ballSpriteIds[i]].data[0] = 0;
}
sFactorySwapScreen->cursorSpriteId = CreateSprite(&sSpriteTemplate_Swap_Arrow, gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].pos1.x, 88, 0);
sFactorySwapScreen->cursorSpriteId = CreateSprite(&sSpriteTemplate_Swap_Arrow, gSprites[sFactorySwapScreen->ballSpriteIds[sFactorySwapScreen->cursorPos]].x, 88, 0);
sFactorySwapScreen->menuCursor1SpriteId = CreateSprite(&sSpriteTemplate_Swap_MenuHighlightLeft, 176, 112, 0);
sFactorySwapScreen->menuCursor2SpriteId = CreateSprite(&sSpriteTemplate_Swap_MenuHighlightRight, 176, 144, 0);
gSprites[sFactorySwapScreen->menuCursor1SpriteId].invisible = TRUE;
@ -3541,7 +3541,7 @@ static void Swap_HandleActionCursorChange(u8 cursorId)
// Cursor is on one of the pokemon
gSprites[sFactorySwapScreen->cursorSpriteId].invisible = FALSE;
Swap_HideActionButtonHighlights();
gSprites[sFactorySwapScreen->cursorSpriteId].pos1.x = gSprites[sFactorySwapScreen->ballSpriteIds[cursorId]].pos1.x;
gSprites[sFactorySwapScreen->cursorSpriteId].x = gSprites[sFactorySwapScreen->ballSpriteIds[cursorId]].x;
}
else
{
@ -3618,8 +3618,8 @@ static void Swap_UpdateYesNoCursorPosition(s8 direction)
sFactorySwapScreen->yesNoCursorPos = 1;
}
gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = (sFactorySwapScreen->yesNoCursorPos * 16) + 112;
}
static void Swap_UpdateMenuCursorPosition(s8 direction)
@ -3640,8 +3640,8 @@ static void Swap_UpdateMenuCursorPosition(s8 direction)
sFactorySwapScreen->menuCursorPos = ARRAY_COUNT(sSwap_MenuOptionFuncs) - 1;
}
gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
}
static void Swap_HighlightActionButton(u8 actionId)
@ -3693,10 +3693,10 @@ static void Swap_ShowMenuOptions(void)
else
sFactorySwapScreen->menuCursorPos = 0;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.x = 176;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.x = 208;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].x = 176;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].x = 208;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = (sFactorySwapScreen->menuCursorPos * 16) + 112;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].invisible = FALSE;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].invisible = FALSE;
@ -3708,10 +3708,10 @@ static void Swap_ShowYesNoOptions(void)
{
sFactorySwapScreen->yesNoCursorPos = 0;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.x = 176;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].pos1.y = 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.x = 208;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].pos1.y = 112;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].x = 176;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].y = 112;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].x = 208;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].y = 112;
gSprites[sFactorySwapScreen->menuCursor1SpriteId].invisible = FALSE;
gSprites[sFactorySwapScreen->menuCursor2SpriteId].invisible = FALSE;

View File

@ -376,10 +376,10 @@ void SpriteCB_TrainerSlideIn(struct Sprite *sprite)
{
if (!(gIntroSlideFlags & 1))
{
sprite->pos2.x += sprite->sSpeedX;
if (sprite->pos2.x == 0)
sprite->x2 += sprite->sSpeedX;
if (sprite->x2 == 0)
{
if (sprite->pos2.y != 0)
if (sprite->y2 != 0)
sprite->callback = SpriteCB_TrainerSlideVertical;
else
sprite->callback = SpriteCallbackDummy;
@ -390,8 +390,8 @@ void SpriteCB_TrainerSlideIn(struct Sprite *sprite)
// Slide up to 0 if necessary (used by multi battle intro)
static void SpriteCB_TrainerSlideVertical(struct Sprite *sprite)
{
sprite->pos2.y -= 2;
if (sprite->pos2.y == 0)
sprite->y2 -= 2;
if (sprite->y2 == 0)
sprite->callback = SpriteCallbackDummy;
}
@ -914,7 +914,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform
BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
}
gSprites[gBattlerSpriteIds[battlerAtk]].pos1.y = GetBattlerSpriteDefault_Y(battlerAtk);
gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
}
else
{
@ -989,7 +989,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform
gBattleMonForms[battlerAtk] = gBattleMonForms[battlerDef];
}
gSprites[gBattlerSpriteIds[battlerAtk]].pos1.y = GetBattlerSpriteDefault_Y(battlerAtk);
gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[battlerAtk]);
}
}
@ -1038,9 +1038,9 @@ void LoadBattleMonGfxAndAnimate(u8 battlerId, bool8 loadMonSprite, u8 spriteId)
StartSpriteAnim(&gSprites[spriteId], gBattleMonForms[battlerId]);
if (!loadMonSprite)
gSprites[spriteId].pos1.y = GetSubstituteSpriteDefault_Y(battlerId);
gSprites[spriteId].y = GetSubstituteSpriteDefault_Y(battlerId);
else
gSprites[spriteId].pos1.y = GetBattlerSpriteDefault_Y(battlerId);
gSprites[spriteId].y = GetBattlerSpriteDefault_Y(battlerId);
}
void TrySetBehindSubstituteSpriteBit(u8 battlerId, u16 move)
@ -1181,8 +1181,8 @@ void SpriteCB_EnemyShadow(struct Sprite *shadowSprite)
if (gBattleSpritesDataPtr->battlerData[battlerId].behindSubstitute)
invisible = TRUE;
shadowSprite->pos1.x = battlerSprite->pos1.x;
shadowSprite->pos2.x = battlerSprite->pos2.x;
shadowSprite->x = battlerSprite->x;
shadowSprite->x2 = battlerSprite->x2;
shadowSprite->invisible = invisible;
}

View File

@ -975,33 +975,33 @@ static void SpriteCB_HealthBar(struct Sprite *sprite)
switch (sprite->hBar_Data6)
{
case 0:
sprite->pos1.x = gSprites[healthboxSpriteId].pos1.x + 16;
sprite->pos1.y = gSprites[healthboxSpriteId].pos1.y;
sprite->x = gSprites[healthboxSpriteId].x + 16;
sprite->y = gSprites[healthboxSpriteId].y;
break;
case 1:
sprite->pos1.x = gSprites[healthboxSpriteId].pos1.x + 16;
sprite->pos1.y = gSprites[healthboxSpriteId].pos1.y;
sprite->x = gSprites[healthboxSpriteId].x + 16;
sprite->y = gSprites[healthboxSpriteId].y;
break;
case 2:
default:
sprite->pos1.x = gSprites[healthboxSpriteId].pos1.x + 8;
sprite->pos1.y = gSprites[healthboxSpriteId].pos1.y;
sprite->x = gSprites[healthboxSpriteId].x + 8;
sprite->y = gSprites[healthboxSpriteId].y;
break;
}
sprite->pos2.x = gSprites[healthboxSpriteId].pos2.x;
sprite->pos2.y = gSprites[healthboxSpriteId].pos2.y;
sprite->x2 = gSprites[healthboxSpriteId].x2;
sprite->y2 = gSprites[healthboxSpriteId].y2;
}
static void SpriteCB_HealthBoxOther(struct Sprite *sprite)
{
u8 healthboxMainSpriteId = sprite->hOther_HealthBoxSpriteId;
sprite->pos1.x = gSprites[healthboxMainSpriteId].pos1.x + 64;
sprite->pos1.y = gSprites[healthboxMainSpriteId].pos1.y;
sprite->x = gSprites[healthboxMainSpriteId].x + 64;
sprite->y = gSprites[healthboxMainSpriteId].y;
sprite->pos2.x = gSprites[healthboxMainSpriteId].pos2.x;
sprite->pos2.y = gSprites[healthboxMainSpriteId].pos2.y;
sprite->x2 = gSprites[healthboxMainSpriteId].x2;
sprite->y2 = gSprites[healthboxMainSpriteId].y2;
}
void SetBattleBarStruct(u8 battlerId, u8 healthboxSpriteId, s32 maxVal, s32 oldVal, s32 receivedValue)
@ -1029,8 +1029,8 @@ void SetHealthboxSpriteVisible(u8 healthboxSpriteId)
static void UpdateSpritePos(u8 spriteId, s16 x, s16 y)
{
gSprites[spriteId].pos1.x = x;
gSprites[spriteId].pos1.y = y;
gSprites[spriteId].x = x;
gSprites[spriteId].y = y;
}
void DestoryHealthboxSprite(u8 healthboxSpriteId)
@ -1485,17 +1485,17 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
summaryBarSpriteId = CreateSprite(&sStatusSummaryBarSpriteTemplates[isOpponent], bar_X, bar_Y, 10);
SetSubspriteTables(&gSprites[summaryBarSpriteId], sStatusSummaryBar_SubspriteTable);
gSprites[summaryBarSpriteId].pos2.x = bar_pos2_X;
gSprites[summaryBarSpriteId].x2 = bar_pos2_X;
gSprites[summaryBarSpriteId].data[0] = bar_data0;
if (isOpponent)
{
gSprites[summaryBarSpriteId].pos1.x -= 96;
gSprites[summaryBarSpriteId].x -= 96;
gSprites[summaryBarSpriteId].oam.matrixNum = ST_OAM_HFLIP;
}
else
{
gSprites[summaryBarSpriteId].pos1.x += 96;
gSprites[summaryBarSpriteId].x += 96;
}
for (i = 0; i < PARTY_SIZE; i++)
@ -1507,23 +1507,23 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
if (!isOpponent)
{
gSprites[ballIconSpritesIds[i]].pos2.x = 0;
gSprites[ballIconSpritesIds[i]].pos2.y = 0;
gSprites[ballIconSpritesIds[i]].x2 = 0;
gSprites[ballIconSpritesIds[i]].y2 = 0;
}
gSprites[ballIconSpritesIds[i]].data[0] = summaryBarSpriteId;
if (!isOpponent)
{
gSprites[ballIconSpritesIds[i]].pos1.x += 10 * i + 24;
gSprites[ballIconSpritesIds[i]].x += 10 * i + 24;
gSprites[ballIconSpritesIds[i]].data[1] = i * 7 + 10;
gSprites[ballIconSpritesIds[i]].pos2.x = 120;
gSprites[ballIconSpritesIds[i]].x2 = 120;
}
else
{
gSprites[ballIconSpritesIds[i]].pos1.x -= 10 * (5 - i) + 24;
gSprites[ballIconSpritesIds[i]].x -= 10 * (5 - i) + 24;
gSprites[ballIconSpritesIds[i]].data[1] = (6 - i) * 7 + 10;
gSprites[ballIconSpritesIds[i]].pos2.x = -120;
gSprites[ballIconSpritesIds[i]].x2 = -120;
}
gSprites[ballIconSpritesIds[i]].data[2] = isOpponent;
@ -1793,17 +1793,17 @@ static void sub_8073F98(u8 taskId)
static void SpriteCB_StatusSummaryBar(struct Sprite *sprite)
{
if (sprite->pos2.x != 0)
sprite->pos2.x += sprite->data[0];
if (sprite->x2 != 0)
sprite->x2 += sprite->data[0];
}
static void sub_8074090(struct Sprite *sprite)
{
sprite->data[1] += 32;
if (sprite->data[0] > 0)
sprite->pos2.x += sprite->data[1] >> 4;
sprite->x2 += sprite->data[1] >> 4;
else
sprite->pos2.x -= sprite->data[1] >> 4;
sprite->x2 -= sprite->data[1] >> 4;
sprite->data[1] &= 0xF;
}
@ -1826,18 +1826,18 @@ static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite)
if (var1 != 0)
{
sprite->pos2.x += var2 >> 4;
if (sprite->pos2.x > 0)
sprite->pos2.x = 0;
sprite->x2 += var2 >> 4;
if (sprite->x2 > 0)
sprite->x2 = 0;
}
else
{
sprite->pos2.x -= var2 >> 4;
if (sprite->pos2.x < 0)
sprite->pos2.x = 0;
sprite->x2 -= var2 >> 4;
if (sprite->x2 < 0)
sprite->x2 = 0;
}
if (sprite->pos2.x == 0)
if (sprite->x2 == 0)
{
pan = SOUND_PAN_TARGET;
if (var1 != 0)
@ -1867,11 +1867,11 @@ static void sub_8074158(struct Sprite *sprite)
var2 += 56;
sprite->data[3] = var2 & 0xFFF0;
if (var1 != 0)
sprite->pos2.x += var2 >> 4;
sprite->x2 += var2 >> 4;
else
sprite->pos2.x -= var2 >> 4;
if (sprite->pos2.x + sprite->pos1.x > 248
|| sprite->pos2.x + sprite->pos1.x < -8)
sprite->x2 -= var2 >> 4;
if (sprite->x2 + sprite->x > 248
|| sprite->x2 + sprite->x < -8)
{
sprite->invisible = TRUE;
sprite->callback = SpriteCallbackDummy;
@ -1882,8 +1882,8 @@ static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite *sprite)
{
u8 barSpriteId = sprite->data[0];
sprite->pos2.x = gSprites[barSpriteId].pos2.x;
sprite->pos2.y = gSprites[barSpriteId].pos2.y;
sprite->x2 = gSprites[barSpriteId].x2;
sprite->y2 = gSprites[barSpriteId].y2;
}
static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon)

View File

@ -2082,9 +2082,9 @@ void SpriteCB_VsLetterDummy(struct Sprite *sprite)
static void SpriteCB_VsLetter(struct Sprite *sprite)
{
if (sprite->data[0] != 0)
sprite->pos1.x = sprite->data[1] + ((sprite->data[2] & 0xFF00) >> 8);
sprite->x = sprite->data[1] + ((sprite->data[2] & 0xFF00) >> 8);
else
sprite->pos1.x = sprite->data[1] - ((sprite->data[2] & 0xFF00) >> 8);
sprite->x = sprite->data[1] - ((sprite->data[2] & 0xFF00) >> 8);
sprite->data[2] += 0x180;
@ -2618,8 +2618,8 @@ static void SpriteCb_MoveWildMonToRight(struct Sprite *sprite)
{
if ((gIntroSlideFlags & 1) == 0)
{
sprite->pos2.x += 2;
if (sprite->pos2.x == 0)
sprite->x2 += 2;
if (sprite->x2 == 0)
{
sprite->callback = SpriteCb_WildMonShowHealthbox;
}
@ -2730,7 +2730,7 @@ static void SpriteCB_AnimFaintOpponent(struct Sprite *sprite)
if (--sprite->data[4] == 0)
{
sprite->data[4] = 2;
sprite->pos2.y += 8; // Move the sprite down.
sprite->y2 += 8; // Move the sprite down.
if (--sprite->data[3] < 0)
{
FreeSpriteOamMatrix(sprite);
@ -2795,8 +2795,8 @@ static void SpriteCB_BattleSpriteSlideLeft(struct Sprite *sprite)
{
if (!(gIntroSlideFlags & 1))
{
sprite->pos2.x -= 2;
if (sprite->pos2.x == 0)
sprite->x2 -= 2;
if (sprite->x2 == 0)
{
sprite->callback = SpriteCallbackDummy_3;
sprite->data[1] = 0;
@ -2821,8 +2821,8 @@ void SpriteCB_FaintSlideAnim(struct Sprite *sprite)
{
if (!(gIntroSlideFlags & 1))
{
sprite->pos2.x += sprite->sSpeedX;
sprite->pos2.y += sprite->sSpeedY;
sprite->x2 += sprite->sSpeedX;
sprite->y2 += sprite->sSpeedY;
}
}
@ -2872,8 +2872,8 @@ void DoBounceEffect(u8 battler, u8 which, s8 delta, s8 amplitude)
gSprites[invisibleSpriteId].sAmplitude = amplitude;
gSprites[invisibleSpriteId].sBouncerSpriteId = bouncerSpriteId;
gSprites[invisibleSpriteId].sWhich = which;
gSprites[bouncerSpriteId].pos2.x = 0;
gSprites[bouncerSpriteId].pos2.y = 0;
gSprites[bouncerSpriteId].x2 = 0;
gSprites[bouncerSpriteId].y2 = 0;
}
void EndBounceEffect(u8 battler, u8 which)
@ -2899,8 +2899,8 @@ void EndBounceEffect(u8 battler, u8 which)
gBattleSpritesDataPtr->healthBoxesData[battler].battlerIsBouncing = 0;
}
gSprites[bouncerSpriteId].pos2.x = 0;
gSprites[bouncerSpriteId].pos2.y = 0;
gSprites[bouncerSpriteId].x2 = 0;
gSprites[bouncerSpriteId].y2 = 0;
}
static void SpriteCB_BounceEffect(struct Sprite *sprite)
@ -2913,7 +2913,7 @@ static void SpriteCB_BounceEffect(struct Sprite *sprite)
else
index = sprite->sSinIndex;
gSprites[bouncerSpriteId].pos2.y = Sin(index, sprite->sAmplitude) + sprite->sAmplitude;
gSprites[bouncerSpriteId].y2 = Sin(index, sprite->sAmplitude) + sprite->sAmplitude;
sprite->sSinIndex = (sprite->sSinIndex + sprite->sDelta) & 0xFF;
}

View File

@ -1582,8 +1582,8 @@ static void ShowItemIcon(u16 itemId, bool8 isAlt)
if (itemSpriteId != MAX_SPRITES)
{
*spriteId = itemSpriteId;
gSprites[itemSpriteId].pos2.x = 24;
gSprites[itemSpriteId].pos2.y = 88;
gSprites[itemSpriteId].x2 = 24;
gSprites[itemSpriteId].y2 = 88;
}
}
}

View File

@ -6118,9 +6118,9 @@ static void PutMonIconOnLvlUpBox(void)
static void SpriteCB_MonIconOnLvlUpBox(struct Sprite* sprite)
{
sprite->pos2.x = sprite->sSavedLvlUpBoxXPosition - gBattle_BG2_X;
sprite->x2 = sprite->sSavedLvlUpBoxXPosition - gBattle_BG2_X;
if (sprite->pos2.x != 0)
if (sprite->x2 != 0)
{
sprite->sDestroy = TRUE;
}

View File

@ -1692,10 +1692,10 @@ static void sub_814713C(struct Sprite *sprite)
}
else
{
if (sprite->pos1.x >= 0 && sprite->pos1.x <= DISPLAY_WIDTH)
if (sprite->x >= 0 && sprite->x <= DISPLAY_WIDTH)
{
s16 posX = sprite->pos1.x >> 3;
s16 posY = sprite->pos1.y >> 3;
s16 posX = sprite->x >> 3;
s16 posY = sprite->y >> 3;
if (posX != sprite->data[2])
{
@ -1712,8 +1712,8 @@ static void sub_814713C(struct Sprite *sprite)
SOME_VRAM_STORE(ptr, posY + 1, posX, 0xF001);
}
}
sprite->pos1.x += arr0[sprite->data[0]];
if (sprite->pos1.x < -15 || sprite->pos1.x > 255)
sprite->x += arr0[sprite->data[0]];
if (sprite->x < -15 || sprite->x > 255)
FieldEffectStop(sprite, FLDEFF_POKEBALL);
}
}
@ -2438,10 +2438,10 @@ static bool8 TrainerPicCb_SetSlideOffsets(struct Sprite *sprite)
// fast slide to around middle screen
static bool8 TrainerPicCb_Slide1(struct Sprite *sprite)
{
sprite->pos1.x += sprite->sOffsetX;
if (sprite->sSlideTableId && sprite->pos1.x < 133)
sprite->x += sprite->sOffsetX;
if (sprite->sSlideTableId && sprite->x < 133)
sprite->sState++;
else if (!sprite->sSlideTableId && sprite->pos1.x > 103)
else if (!sprite->sSlideTableId && sprite->x > 103)
sprite->sState++;
return FALSE;
}
@ -2450,7 +2450,7 @@ static bool8 TrainerPicCb_Slide1(struct Sprite *sprite)
static bool8 TrainerPicCb_Slide2(struct Sprite *sprite)
{
sprite->sOffsetX += sprite->sOffsetX2;
sprite->pos1.x += sprite->sOffsetX;
sprite->x += sprite->sOffsetX;
if (sprite->sOffsetX == 0)
{
sprite->sState++;
@ -2464,8 +2464,8 @@ static bool8 TrainerPicCb_Slide2(struct Sprite *sprite)
static bool8 TrainerPicCb_Slide3(struct Sprite *sprite)
{
sprite->sOffsetX += sprite->sOffsetX2;
sprite->pos1.x += sprite->sOffsetX;
if (sprite->pos1.x < -31 || sprite->pos1.x > 271)
sprite->x += sprite->sOffsetX;
if (sprite->x < -31 || sprite->x > 271)
sprite->sState++;
return FALSE;
}
@ -3283,8 +3283,8 @@ static bool8 Phase2_WhiteFade_Func2(struct Task *task)
for (i = 0, posY = 0; i < 8; i++, posY += 0x14)
{
sprite = &gSprites[CreateInvisibleSprite(sub_8149864)];
sprite->pos1.x = 0xF0;
sprite->pos1.y = posY;
sprite->x = 0xF0;
sprite->y = posY;
sprite->data[5] = arr1[i];
}
sprite->data[6]++;
@ -3373,21 +3373,21 @@ static void sub_8149864(struct Sprite *sprite)
else
{
u16 i;
u16* ptr1 = &gScanlineEffectRegBuffers[0][sprite->pos1.y];
u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->pos1.y + 160];
u16* ptr1 = &gScanlineEffectRegBuffers[0][sprite->y];
u16* ptr2 = &gScanlineEffectRegBuffers[0][sprite->y + 160];
for (i = 0; i < 20; i++)
{
ptr1[i] = sprite->data[0] >> 8;
ptr2[i] = (u8)(sprite->pos1.x);
ptr2[i] = (u8)(sprite->x);
}
if (sprite->pos1.x == 0 && sprite->data[0] == 0x1000)
if (sprite->x == 0 && sprite->data[0] == 0x1000)
sprite->data[1] = 1;
sprite->pos1.x -= 16;
sprite->x -= 16;
sprite->data[0] += 0x80;
if (sprite->pos1.x < 0)
sprite->pos1.x = 0;
if (sprite->x < 0)
sprite->x = 0;
if (sprite->data[0] > 0x1000)
sprite->data[0] = 0x1000;

View File

@ -243,7 +243,7 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite)
{
s16 *data = sprite->data;
if (sprite->pos1.x == data[0] && sprite->pos1.y == data[1])
if (sprite->x == data[0] && sprite->y == data[1])
{
sprite->callback = SpriteCallbackDummy;
}
@ -251,7 +251,7 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite)
{
if (data[4] == data[6])
{
sprite->pos1.x += data[2];
sprite->x += data[2];
data[4] = 0;
}
else
@ -261,7 +261,7 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite)
if (data[5] == data[7])
{
sprite->pos1.y += data[3];
sprite->y += data[3];
data[5] = 0;
}
else
@ -305,8 +305,8 @@ static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 arg2, s16 arg3, s16
static void SpriteCB_LogoCircleSpiral(struct Sprite *sprite)
{
sprite->pos2.x = (Sin2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096
sprite->pos2.y = (Cos2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096
sprite->x2 = (Sin2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096
sprite->y2 = (Cos2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096
sprite->data[2] = (sprite->data[2] + sprite->data[3]) % 360;

View File

@ -1162,8 +1162,8 @@ static void SpriteCB_Berry(struct Sprite* sprite)
else
PlaySE(SE_BALL_TRAY_EXIT);
}
sprite->pos1.x = sprite->sX;
sprite->pos1.y = sprite->sY;
sprite->x = sprite->sX;
sprite->y = sprite->sY;
}
static void SetBerrySpriteData(struct Sprite* sprite, s16 x, s16 y, s16 bounceSpeed, s16 xSpeed, s16 ySpeed)
@ -3163,8 +3163,8 @@ static void SpriteCB_Particle(struct Sprite* sprite)
{
sprite->data[2] += sprite->data[0];
sprite->data[3] += sprite->data[1];
sprite->pos2.x = sprite->data[2] / 8;
sprite->pos2.y = sprite->data[3] / 8;
sprite->x2 = sprite->data[2] / 8;
sprite->y2 = sprite->data[3] / 8;
if (sprite->animEnded)
DestroySprite(sprite);
@ -3197,7 +3197,7 @@ static void CreateParticleSprites(void)
static void SpriteCB_ScoreSymbol(struct Sprite* sprite)
{
sprite->data[0]++;
sprite->pos2.y = -(sprite->data[0] / 3);
sprite->y2 = -(sprite->data[0] / 3);
if (sprite->animEnded)
DestroySprite(sprite);
@ -3206,10 +3206,10 @@ static void SpriteCB_ScoreSymbol(struct Sprite* sprite)
static void SpriteCB_ScoreSymbolBest(struct Sprite* sprite)
{
sprite->data[0]++;
sprite->pos2.y = -(sprite->data[0] * 2);
sprite->y2 = -(sprite->data[0] * 2);
if (sprite->pos2.y < -12)
sprite->pos2.y = -12;
if (sprite->y2 < -12)
sprite->y2 = -12;
if (sprite->animEnded)
DestroySprite(sprite);
}
@ -3264,7 +3264,7 @@ static void SpriteCB_CountdownNumber(struct Sprite* sprite)
break;
}
sprite->pos2.y = sprite->sYPos;
sprite->y2 = sprite->sYPos;
}
#undef sState
@ -3300,7 +3300,7 @@ static void SpriteCB_Start(struct Sprite* sprite)
break;
}
sprite->pos2.y = sprite->data[1];
sprite->y2 = sprite->data[1];
}
static void TryUpdateProgressBar(u16 current, u16 limit)
@ -3445,8 +3445,8 @@ static bool8 UpdateBlenderLandScreenShake(void)
static void SpriteCB_PlayerArrow(struct Sprite* sprite)
{
sprite->pos2.x = -(sBerryBlender->bg_X);
sprite->pos2.y = -(sBerryBlender->bg_Y);
sprite->x2 = -(sBerryBlender->bg_X);
sprite->y2 = -(sBerryBlender->bg_Y);
}
static void TryUpdateBerryBlenderRecord(void)

View File

@ -1387,8 +1387,8 @@ static void CreateBerrySprites(struct BerryCrushGame *game, struct BerryCrushGam
gfx->berrySprites[i] = &gSprites[spriteId];
gfx->berrySprites[i]->oam.priority = 3;
gfx->berrySprites[i]->affineAnimPaused = TRUE;
gfx->berrySprites[i]->pos1.x = gfx->playerCoords[i]->berryXOffset + 120;
gfx->berrySprites[i]->pos1.y = -16;
gfx->berrySprites[i]->x = gfx->playerCoords[i]->berryXOffset + 120;
gfx->berrySprites[i]->y = -16;
data = gfx->berrySprites[i]->data;
speed = 512;
sYSpeed = speed;
@ -1404,7 +1404,7 @@ static void CreateBerrySprites(struct BerryCrushGame *game, struct BerryCrushGam
var2 = speed + 32;
var2 = var2 / 2;
var1 = MathUtil_Div16Shift(7, Q_8_8(63.5), var2);
sX = (u16)gfx->berrySprites[i]->pos1.x * 128;
sX = (u16)gfx->berrySprites[i]->x * 128;
sXSpeed = MathUtil_Div16Shift(7, distance, var1);
var1 = MathUtil_Mul16Shift(7, var1, 85);
sSinIdx = 0;
@ -1420,21 +1420,21 @@ static void SpriteCB_DropBerryIntoCrusher(struct Sprite *sprite)
s16 *data = sprite->data;
sYSpeed += sYAccel;
sprite->pos2.y += sYSpeed >> 8;
sprite->y2 += sYSpeed >> 8;
if (sBitfield & F_MOVE_HORIZ)
{
sprite->sX += sXSpeed;
sSinIdx += sSinSpeed;
sprite->pos2.x = Sin(sSinIdx >> 7, sAmplitude);
sprite->x2 = Sin(sSinIdx >> 7, sAmplitude);
if ((sBitfield & F_MOVE_HORIZ) && (sSinIdx >> 7) > 126)
{
sprite->pos2.x = 0;
sprite->x2 = 0;
sBitfield &= MASK_TARGET_Y;
}
}
sprite->pos1.x = sX >> 7;
if (sprite->pos1.y + sprite->pos2.y >= (sBitfield & MASK_TARGET_Y))
sprite->x = sX >> 7;
if (sprite->y + sprite->y2 >= (sBitfield & MASK_TARGET_Y))
{
sprite->callback = SpriteCallbackDummy;
FreeSpriteOamMatrix(sprite);
@ -1490,8 +1490,8 @@ static void UpdateInputEffects(struct BerryCrushGame *game, struct BerryCrushGam
gfx->impactSprites[i]->invisible = FALSE;
gfx->impactSprites[i]->animPaused = FALSE;
gfx->impactSprites[i]->pos2.x = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][0];
gfx->impactSprites[i]->pos2.y = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][1];
gfx->impactSprites[i]->x2 = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][0];
gfx->impactSprites[i]->y2 = sImpactCoords[(flags % (ARRAY_COUNT(sImpactCoords) + 1)) - 1][1];
}
#undef flags
@ -1513,10 +1513,10 @@ static void UpdateInputEffects(struct BerryCrushGame *game, struct BerryCrushGam
if (gfx->sparkleSprites[i]->invisible)
{
gfx->sparkleSprites[i]->callback = SpriteCB_Sparkle_Init;
gfx->sparkleSprites[i]->pos1.x = sSparkleCoords[i][0] + 120;
gfx->sparkleSprites[i]->pos1.y = sSparkleCoords[i][1] + 136 - (yModifier * 4);
gfx->sparkleSprites[i]->pos2.x = sSparkleCoords[i][0] + (sSparkleCoords[i][0] / (xModifier * 4));
gfx->sparkleSprites[i]->pos2.y = sSparkleCoords[i][1];
gfx->sparkleSprites[i]->x = sSparkleCoords[i][0] + 120;
gfx->sparkleSprites[i]->y = sSparkleCoords[i][1] + 136 - (yModifier * 4);
gfx->sparkleSprites[i]->x2 = sSparkleCoords[i][0] + (sSparkleCoords[i][0] / (xModifier * 4));
gfx->sparkleSprites[i]->y2 = sSparkleCoords[i][1];
if (linkState->bigSparkle)
StartSpriteAnim(gfx->sparkleSprites[i], 1);
else
@ -2071,8 +2071,8 @@ static void SpriteCB_Sparkle_End(struct Sprite *sprite)
u8 i;
for (i = 0; i < ARRAY_COUNT(sprite->data); i++)
sprite->data[i] = 0;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->x2 = 0;
sprite->y2 = 0;
sprite->invisible = TRUE;
sprite->animPaused = TRUE;
sprite->callback = SpriteCallbackDummy;
@ -2097,20 +2097,20 @@ static void SpriteCB_Sparkle(struct Sprite *sprite)
s16 *data = sprite->data;
sYSpeed += sYAccel;
sprite->pos2.y += sYSpeed >> 8;
sprite->y2 += sYSpeed >> 8;
if (sBitfield & F_MOVE_HORIZ)
{
sprite->sX += sXSpeed;
sSinIdx += sSinSpeed;
sprite->pos2.x = Sin(sSinIdx >> 7, sAmplitude);
sprite->x2 = Sin(sSinIdx >> 7, sAmplitude);
if (sBitfield & F_MOVE_HORIZ && sSinIdx >> 7 > 126)
{
sprite->pos2.x = 0;
sprite->x2 = 0;
sBitfield &= MASK_TARGET_Y;
}
}
sprite->pos1.x = sX >> 7;
if (sprite->pos1.y + sprite->pos2.y > (sBitfield & MASK_TARGET_Y))
sprite->x = sX >> 7;
if (sprite->y + sprite->y2 > (sBitfield & MASK_TARGET_Y))
sprite->callback = SpriteCB_Sparkle_End;
}
@ -2125,17 +2125,17 @@ static void SpriteCB_Sparkle_Init(struct Sprite *sprite)
sYSpeed = var;
sYAccel = 32;
sBitfield = 168; // Setting bits in MASK_TARGET_Y
xMult = sprite->pos2.x * 128;
xDiv = MathUtil_Div16Shift(7, (168 - sprite->pos1.y) << 7, (var + 32) >> 1);
sprite->sX = sprite->pos1.x << 7;
xMult = sprite->x2 * 128;
xDiv = MathUtil_Div16Shift(7, (168 - sprite->y) << 7, (var + 32) >> 1);
sprite->sX = sprite->x << 7;
sXSpeed = MathUtil_Div16Shift(7, xMult, xDiv);
var = MathUtil_Mul16Shift(7, xDiv, 85);
sSinIdx = zero;
sSinSpeed = MathUtil_Div16Shift(7, Q_8_8(63.5), var);
sAmplitude = sprite->pos2.x / 4;
sAmplitude = sprite->x2 / 4;
sBitfield |= F_MOVE_HORIZ;
sprite->pos2.y = zero;
sprite->pos2.x = zero;
sprite->y2 = zero;
sprite->x2 = zero;
sprite->callback = SpriteCB_Sparkle;
sprite->animPaused = FALSE;
sprite->invisible = FALSE;

View File

@ -674,9 +674,9 @@ static void Task_DisplayAnotherBerry(u8 taskId)
else
posY = data[0];
gSprites[sBerryTag->berrySpriteId].pos2.y = posY;
gSprites[sBerryTag->berrySpriteId].y2 = posY;
for (i = 0; i < FLAVOR_COUNT; i++)
gSprites[sBerryTag->flavorCircleIds[i]].pos2.y = posY;
gSprites[sBerryTag->flavorCircleIds[i]].y2 = posY;
ChangeBgY(1, 0x1000, data[1]);
ChangeBgY(2, 0x1000, data[1]);

View File

@ -596,13 +596,13 @@ static void SpriteCB_CableCar(struct Sprite *sprite)
{
if (!GOING_DOWN)
{
sprite->pos1.x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->pos1.y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
sprite->x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
}
else
{
sprite->pos1.x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->pos1.y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
sprite->x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
}
}
}
@ -617,20 +617,20 @@ static void SpriteCB_Player(struct Sprite *sprite)
// Move along with cable car
if (!GOING_DOWN)
{
sprite->pos1.x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->pos1.y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
sprite->x = sprite->sXPos - (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->y = sprite->sYPos - (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
}
else
{
sprite->pos1.x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->pos1.y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
sprite->x = sprite->sXPos + (u8)(0.14f * S16TOPOSFLOAT(sCableCar->timer));
sprite->y = sprite->sYPos + (u8)(0.067f * S16TOPOSFLOAT(sCableCar->timer));
}
// Bounce up and down
switch (sprite->sState)
{
case 0:
sprite->pos2.y = 17;
sprite->y2 = 17;
if (sprite->sTimer++ > 9)
{
sprite->sTimer = 0;
@ -638,7 +638,7 @@ static void SpriteCB_Player(struct Sprite *sprite)
}
break;
default:
sprite->pos2.y = 16;
sprite->y2 = 16;
if (sprite->sTimer++ > 9)
{
sprite->sTimer = 0;
@ -660,8 +660,8 @@ static void SpriteCB_HikerGoingUp(struct Sprite *sprite)
{
if (sprite->sTimer == 0)
{
sprite->pos1.x += 2 * sprite->centerToCornerVecX;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
sprite->x += 2 * sprite->centerToCornerVecX;
sprite->y += 16 + sprite->centerToCornerVecY;
}
if (++sprite->sTimer >= sprite->sDelay)
@ -669,22 +669,22 @@ static void SpriteCB_HikerGoingUp(struct Sprite *sprite)
switch (sprite->sSameDir)
{
case FALSE:
sprite->pos1.x++;
sprite->x++;
if ((sprite->sTimer % 4) == 0)
sprite->pos1.y++;
sprite->y++;
break;
case TRUE:
// Hiker moves slower if travelling with the Cable Car
if ((sprite->sTimer % 2) != 0)
{
sprite->pos1.x++;
if ((sprite->pos1.x % 4) == 0)
sprite->pos1.y++;
sprite->x++;
if ((sprite->x % 4) == 0)
sprite->y++;
}
break;
}
if (sprite->pos1.y > DISPLAY_HEIGHT)
if (sprite->y > DISPLAY_HEIGHT)
DestroySprite(sprite);
}
}
@ -692,29 +692,29 @@ static void SpriteCB_HikerGoingUp(struct Sprite *sprite)
static void SpriteCB_HikerGoingDown(struct Sprite *sprite)
{
if (sprite->sTimer == 0)
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
sprite->y += 16 + sprite->centerToCornerVecY;
if (++sprite->sTimer >= sprite->sDelay)
{
switch (sprite->sSameDir)
{
case FALSE:
sprite->pos1.x--;
sprite->x--;
if ((sprite->sTimer % 4) == 0)
sprite->pos1.y--;
sprite->y--;
break;
case TRUE:
// Hiker moves slower if travelling with the Cable Car
if ((sprite->sTimer % 2) != 0)
{
sprite->pos1.x--;
if ((sprite->pos1.x % 4) == 0)
sprite->pos1.y--;
sprite->x--;
if ((sprite->x % 4) == 0)
sprite->y--;
}
break;
}
if (sprite->pos1.y < 80)
if (sprite->y < 80)
DestroySprite(sprite);
}
}
@ -829,20 +829,20 @@ static void CreateCableCarSprites(void)
if (spriteId != MAX_SPRITES)
{
gSprites[spriteId].oam.priority = 2;
gSprites[spriteId].pos2.x = 8;
gSprites[spriteId].pos2.y = 16;
gSprites[spriteId].x2 = 8;
gSprites[spriteId].y2 = 16;
gSprites[spriteId].sXPos = 200;
gSprites[spriteId].sYPos = 73;
}
// Create car sprite
spriteId = CreateSprite(&sSpriteTemplate_CableCar[0], 176, 43, 0x67);
gSprites[spriteId].pos2.x = gSprites[spriteId].pos2.y = 32;
gSprites[spriteId].x2 = gSprites[spriteId].y2 = 32;
gSprites[spriteId].sXPos = 176;
gSprites[spriteId].sYPos = 43;
// Create door sprite
spriteId = CreateSprite(&sSpriteTemplate_CableCar[1], 200, 99, 0x65);
gSprites[spriteId].pos2.x = 8;
gSprites[spriteId].pos2.y = 4;
gSprites[spriteId].x2 = 8;
gSprites[spriteId].y2 = 4;
gSprites[spriteId].sXPos = 200;
gSprites[spriteId].sYPos = 99;
// Init weather
@ -857,20 +857,20 @@ static void CreateCableCarSprites(void)
if (spriteId != MAX_SPRITES)
{
gSprites[spriteId].oam.priority = 2;
gSprites[spriteId].pos2.x = 8;
gSprites[spriteId].pos2.y = 16;
gSprites[spriteId].x2 = 8;
gSprites[spriteId].y2 = 16;
gSprites[spriteId].sXPos = 128;
gSprites[spriteId].sYPos = 39;
}
// Create car sprite
spriteId = CreateSprite(&sSpriteTemplate_CableCar[0], 104, 9, 0x67);
gSprites[spriteId].pos2.x = gSprites[spriteId].pos2.y = 32;
gSprites[spriteId].x2 = gSprites[spriteId].y2 = 32;
gSprites[spriteId].sXPos = 104;
gSprites[spriteId].sYPos = 9;
// Create door sprite
spriteId = CreateSprite(&sSpriteTemplate_CableCar[1], 128, 65, 0x65);
gSprites[spriteId].pos2.x = 8;
gSprites[spriteId].pos2.y = 4;
gSprites[spriteId].x2 = 8;
gSprites[spriteId].y2 = 4;
gSprites[spriteId].sXPos = 128;
gSprites[spriteId].sYPos = 65;
// Init weather
@ -882,8 +882,8 @@ static void CreateCableCarSprites(void)
for (i = 0; i < 9; i++)
{
spriteId = CreateSprite(&sSpriteTemplate_Cable, 16 * i + 96, 8 * i - 8, 0x68);
gSprites[spriteId].pos2.x = 8;
gSprites[spriteId].pos2.y = 8;
gSprites[spriteId].x2 = 8;
gSprites[spriteId].y2 = 8;
}
// 1/64 chance for an NPC to appear hiking on the ground below the Cable Car
@ -894,8 +894,8 @@ static void CreateCableCarSprites(void)
if (spriteId != MAX_SPRITES)
{
gSprites[spriteId].oam.priority = 2;
gSprites[spriteId].pos2.x = -gSprites[spriteId].centerToCornerVecX;
gSprites[spriteId].pos2.y = -gSprites[spriteId].centerToCornerVecY;
gSprites[spriteId].x2 = -gSprites[spriteId].centerToCornerVecX;
gSprites[spriteId].y2 = -gSprites[spriteId].centerToCornerVecY;
// Randomly choose which direction the NPC is going
if (!GOING_DOWN)
@ -905,7 +905,7 @@ static void CreateCableCarSprites(void)
// Do walking west anim
StartSpriteAnim(&gSprites[spriteId], 6);
gSprites[spriteId].sSameDir = TRUE;
gSprites[spriteId].pos1.y += 2;
gSprites[spriteId].y += 2;
}
else
{
@ -921,7 +921,7 @@ static void CreateCableCarSprites(void)
// Do walking east anim
StartSpriteAnim(&gSprites[spriteId], 7);
gSprites[spriteId].sSameDir = TRUE;
gSprites[spriteId].pos1.y += 2;
gSprites[spriteId].y += 2;
}
else
{

View File

@ -1784,7 +1784,7 @@ static void Task_DoAppeals(u8 taskId)
gContestMons[eContest.currentContestant].otId,
gContestMons[eContest.currentContestant].personality,
eContest.currentContestant);
gSprites[spriteId].pos2.x = 120;
gSprites[spriteId].x2 = 120;
gSprites[spriteId].callback = SpriteCB_MonSlideIn;
gTasks[taskId].tMonSpriteId = spriteId;
gBattlerSpriteIds[gBattlerAttacker] = spriteId;
@ -2449,9 +2449,9 @@ static void Task_EndWaitForLink(u8 taskId)
static void SpriteCB_MonSlideIn(struct Sprite *sprite)
{
if (sprite->pos2.x != 0)
if (sprite->x2 != 0)
{
sprite->pos2.x -= 2;
sprite->x2 -= 2;
}
else
{
@ -2465,8 +2465,8 @@ static void SpriteCB_MonSlideIn(struct Sprite *sprite)
static void SpriteCB_MonSlideOut(struct Sprite *sprite)
{
sprite->pos2.x -= 6;
if (sprite->pos1.x + sprite->pos2.x < -32)
sprite->x2 -= 6;
if (sprite->x + sprite->x2 < -32)
{
sprite->callback = SpriteCallbackDummy;
sprite->invisible = TRUE;
@ -3864,7 +3864,7 @@ static void UpdateHeartSlider(u8 contestant)
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].sContestant = contestant;
gSprites[spriteId].sTargetX = slideTarget;
if (gSprites[spriteId].sTargetX > gSprites[spriteId].pos2.x)
if (gSprites[spriteId].sTargetX > gSprites[spriteId].x2)
gSprites[spriteId].sMoveX = 1;
else
gSprites[spriteId].sMoveX = -1;
@ -3896,14 +3896,14 @@ static bool8 SlidersDoneUpdating(void)
static void SpriteCB_UpdateHeartSlider(struct Sprite *sprite)
{
if (sprite->pos2.x == sprite->sTargetX)
if (sprite->x2 == sprite->sTargetX)
{
eContestGfxState[sprite->sContestant].sliderUpdating = FALSE;
sprite->callback = SpriteCallbackDummy;
}
else
{
sprite->pos2.x += sprite->sMoveX;
sprite->x2 += sprite->sMoveX;
}
}
@ -3917,7 +3917,7 @@ static void UpdateSliderHeartSpriteYPositions(void)
s32 i;
for (i = 0; i < CONTESTANT_COUNT; i++)
gSprites[eContestGfxState[i].sliderHeartSpriteId].pos1.y = sSliderHeartYPositions[gContestantTurnOrder[i]];
gSprites[eContestGfxState[i].sliderHeartSpriteId].y = sSliderHeartYPositions[gContestantTurnOrder[i]];
}
// Used to hide (or subsequently reshow) the bottom two slider hearts that get hidden by text windows by moving them offscreen
@ -3931,9 +3931,9 @@ static void SetBottomSliderHeartsInvisibility(bool8 invisible)
if (gContestantTurnOrder[i] > 1)
{
if (!invisible)
gSprites[eContestGfxState[i].sliderHeartSpriteId].pos1.x = 180;
gSprites[eContestGfxState[i].sliderHeartSpriteId].x = 180;
else
gSprites[eContestGfxState[i].sliderHeartSpriteId].pos1.x = 256;
gSprites[eContestGfxState[i].sliderHeartSpriteId].x = 256;
}
}
}
@ -4789,7 +4789,7 @@ static void Task_ApplauseOverflowAnimation(u8 taskId)
static void SlideApplauseMeterIn(void)
{
CreateTask(Task_SlideApplauseMeterIn, 10);
gSprites[eContest.applauseMeterSpriteId].pos2.x = -70;
gSprites[eContest.applauseMeterSpriteId].x2 = -70;
gSprites[eContest.applauseMeterSpriteId].invisible = FALSE;
eContest.applauseMeterIsMoving = TRUE;
}
@ -4799,11 +4799,11 @@ static void Task_SlideApplauseMeterIn(u8 taskId)
struct Sprite *sprite = &gSprites[eContest.applauseMeterSpriteId];
gTasks[taskId].data[10] += 1664;
sprite->pos2.x += gTasks[taskId].data[10] >> 8;
sprite->x2 += gTasks[taskId].data[10] >> 8;
gTasks[taskId].data[10] = gTasks[taskId].data[10] & 0xFF;
if (sprite->pos2.x > 0)
sprite->pos2.x = 0;
if (sprite->pos2.x == 0)
if (sprite->x2 > 0)
sprite->x2 = 0;
if (sprite->x2 == 0)
{
eContest.applauseMeterIsMoving = FALSE;
DestroyTask(taskId);
@ -4819,7 +4819,7 @@ static void SlideApplauseMeterOut(void)
else
{
CreateTask(Task_SlideApplauseMeterOut, 10);
gSprites[eContest.applauseMeterSpriteId].pos2.x = 0;
gSprites[eContest.applauseMeterSpriteId].x2 = 0;
eContest.applauseMeterIsMoving = TRUE;
}
}
@ -4829,11 +4829,11 @@ static void Task_SlideApplauseMeterOut(u8 taskId)
struct Sprite *sprite = &gSprites[eContest.applauseMeterSpriteId];
gTasks[taskId].data[10] += 1664;
sprite->pos2.x -= gTasks[taskId].data[10] >> 8;
sprite->x2 -= gTasks[taskId].data[10] >> 8;
gTasks[taskId].data[10] = gTasks[taskId].data[10] & 0xFF;
if (sprite->pos2.x < -70)
sprite->pos2.x = -70;
if (sprite->pos2.x == -70)
if (sprite->x2 < -70)
sprite->x2 = -70;
if (sprite->x2 == -70)
{
sprite->invisible = TRUE;
eContest.applauseMeterIsMoving = FALSE;
@ -4878,7 +4878,7 @@ static void Task_ShowAndUpdateApplauseMeter(u8 taskId)
// Unused.
static void HideApplauseMeterNoAnim(void)
{
gSprites[eContest.applauseMeterSpriteId].pos2.x = 0;
gSprites[eContest.applauseMeterSpriteId].x2 = 0;
gSprites[eContest.applauseMeterSpriteId].invisible = FALSE;
}
@ -5017,7 +5017,7 @@ static void ShowHideNextTurnGfx(bool8 show)
if (eContestantStatus[i].turnOrderMod != 0 && show)
{
CpuCopy32(GetTurnOrderNumberGfx(i), (void *)(OBJ_VRAM0 + (gSprites[eContestGfxState[i].nextTurnSpriteId].oam.tileNum + 6) * 32), 32);
gSprites[eContestGfxState[i].nextTurnSpriteId].pos1.y = sNextTurnSpriteYPositions[gContestantTurnOrder[i]];
gSprites[eContestGfxState[i].nextTurnSpriteId].y = sNextTurnSpriteYPositions[gContestantTurnOrder[i]];
gSprites[eContestGfxState[i].nextTurnSpriteId].invisible = FALSE;
}
else
@ -5379,10 +5379,10 @@ static void SetBattleTargetSpritePosition(void)
{
struct Sprite *sprite = &gSprites[gBattlerSpriteIds[B_POSITION_OPPONENT_RIGHT]];
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->pos1.x = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_Y);
sprite->x2 = 0;
sprite->y2 = 0;
sprite->x = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_X);
sprite->y = GetBattlerSpriteCoord(B_POSITION_OPPONENT_RIGHT, BATTLER_COORD_Y);
sprite->invisible = TRUE;
}

View File

@ -1269,10 +1269,10 @@ static void CreateResultsTextWindowSprites(void)
static void StartTextBoxSlideIn(s16 x, u16 y, u16 slideOutTimer, u16 slideIncrement)
{
struct Sprite *sprite = &gSprites[sContestResults->data->slidingTextBoxSpriteId];
sprite->pos1.x = TEXT_BOX_X;
sprite->pos1.y = y;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->x = TEXT_BOX_X;
sprite->y = y;
sprite->x2 = 0;
sprite->y2 = 0;
sprite->sTargetX = x + 32;
sprite->sSlideOutTimer = slideOutTimer;
sprite->sSlideIncrement = slideIncrement;
@ -1284,10 +1284,10 @@ static void StartTextBoxSlideIn(s16 x, u16 y, u16 slideOutTimer, u16 slideIncrem
static void StartTextBoxSlideOut(u16 slideIncrement)
{
struct Sprite *sprite = &gSprites[sContestResults->data->slidingTextBoxSpriteId];
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;
sprite->sSlideIncrement = slideIncrement;
sprite->sDistance = 0;
sprite->callback = SpriteCB_TextBoxSlideOut;
@ -1296,10 +1296,10 @@ static void StartTextBoxSlideOut(u16 slideIncrement)
static void EndTextBoxSlideOut(struct Sprite *sprite)
{
sprite->pos1.x = TEXT_BOX_X;
sprite->pos1.y = TEXT_BOX_Y;
sprite->pos2.y = 0;
sprite->pos2.x = 0;
sprite->x = TEXT_BOX_X;
sprite->y = TEXT_BOX_Y;
sprite->y2 = 0;
sprite->x2 = 0;
sprite->callback = SpriteCallbackDummy;
sContestResults->data->slidingTextBoxState = SLIDING_TEXT_OFFSCREEN;
}
@ -1309,21 +1309,21 @@ static void SpriteCB_TextBoxSlideIn(struct Sprite *sprite)
int i;
s16 delta = sprite->sDistance + sprite->sSlideIncrement;
sprite->pos1.x -= delta >> 8;
sprite->x -= delta >> 8;
sprite->sDistance += sprite->sSlideIncrement;
sprite->sDistance &= 0xFF;
// Prevent overshooting target
if (sprite->pos1.x < sprite->sTargetX)
sprite->pos1.x = sprite->sTargetX;
if (sprite->x < sprite->sTargetX)
sprite->x = sprite->sTargetX;
for (i = 0; i < 3; i++)
{
struct Sprite *sprite2 = &gSprites[sprite->data[i]];
sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64;
sprite2->x = sprite->x + sprite->x2 + (i + 1) * 64;
}
if (sprite->pos1.x == sprite->sTargetX)
if (sprite->x == sprite->sTargetX)
sprite->callback = SpriteCB_EndTextBoxSlideIn;
}
@ -1343,16 +1343,16 @@ static void SpriteCB_TextBoxSlideOut(struct Sprite *sprite)
s16 delta;
delta = sprite->sDistance + sprite->sSlideIncrement;
sprite->pos1.x -= delta >> 8;
sprite->x -= delta >> 8;
sprite->sDistance += sprite->sSlideIncrement;
sprite->sDistance &= 0xFF;
for (i = 0; i < 3; i++)
{
struct Sprite *sprite2 = &gSprites[sprite->data[i]];
sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64;
sprite2->x = sprite->x + sprite->x2 + (i + 1) * 64;
}
if (sprite->pos1.x + sprite->pos2.x < -224)
if (sprite->x + sprite->x2 < -224)
EndTextBoxSlideOut(sprite);
}
@ -1364,18 +1364,18 @@ static void ShowLinkResultsTextBox(const u8 *text)
x = DrawResultsTextWindow(text, sContestResults->data->linkTextBoxSpriteId);
sprite = &gSprites[sContestResults->data->linkTextBoxSpriteId];
sprite->pos1.x = x + 32;
sprite->pos1.y = 80;
sprite->x = x + 32;
sprite->y = 80;
sprite->invisible = FALSE;
for (i = 0; i < 3; i++)
{
gSprites[sprite->data[i]].pos1.x = sprite->pos1.x + sprite->pos2.x + (i + 1) * 64;
gSprites[sprite->data[i]].pos1.y = sprite->pos1.y;
gSprites[sprite->data[i]].x = sprite->x + sprite->x2 + (i + 1) * 64;
gSprites[sprite->data[i]].y = sprite->y;
gSprites[sprite->data[i]].invisible = FALSE;
}
gBattle_WIN0H = WIN_RANGE(0, DISPLAY_WIDTH);
gBattle_WIN0V = WIN_RANGE(sprite->pos1.y - 16, sprite->pos1.y + 16);
gBattle_WIN0V = WIN_RANGE(sprite->y - 16, sprite->y + 16);
SetGpuReg(REG_OFFSET_WININ, WININ_WIN1_BG_ALL | WININ_WIN1_OBJ | WININ_WIN1_CLR
| WININ_WIN0_BG1 | WININ_WIN0_BG2 | WININ_WIN0_BG3 | WININ_WIN0_OBJ | WININ_WIN0_CLR);
}
@ -1585,13 +1585,13 @@ static void SpriteCB_WinnerMonSlideIn(struct Sprite *sprite)
else
{
s16 delta = sprite->data[1] + 0x600;
sprite->pos1.x -= delta >> 8;
sprite->x -= delta >> 8;
sprite->data[1] += 0x600;
sprite->data[1] &= 0xFF;
if (sprite->pos1.x < DISPLAY_WIDTH / 2)
sprite->pos1.x = DISPLAY_WIDTH / 2;
if (sprite->x < DISPLAY_WIDTH / 2)
sprite->x = DISPLAY_WIDTH / 2;
if (sprite->pos1.x == DISPLAY_WIDTH / 2)
if (sprite->x == DISPLAY_WIDTH / 2)
{
sprite->callback = SpriteCallbackDummy;
sprite->data[1] = 0;
@ -1603,10 +1603,10 @@ static void SpriteCB_WinnerMonSlideIn(struct Sprite *sprite)
static void SpriteCB_WinnerMonSlideOut(struct Sprite *sprite)
{
s16 delta = sprite->data[1] + 0x600;
sprite->pos1.x -= delta >> 8;
sprite->x -= delta >> 8;
sprite->data[1] += + 0x600;
sprite->data[1] &= 0xFF;
if (sprite->pos1.x < -32)
if (sprite->x < -32)
{
sprite->callback = SpriteCallbackDummy;
sprite->invisible = TRUE;
@ -1639,17 +1639,17 @@ static void SpriteCB_Confetti(struct Sprite *sprite)
s16 delta;
sprite->data[3] += sprite->data[0];
sprite->pos2.x = Sin(sprite->data[3] >> 8, sprite->data[1]);
sprite->x2 = Sin(sprite->data[3] >> 8, sprite->data[1]);
delta = sprite->data[4] + sprite->data[2];
sprite->pos1.x += delta >> 8;
sprite->x += delta >> 8;
sprite->data[4] += sprite->data[2];
sprite->data[4] &= 0xff;
sprite->pos1.y++;
sprite->y++;
if (sContestResults->data->destroyConfetti)
sprite->invisible = TRUE;
if (sprite->pos1.x > DISPLAY_WIDTH + 8 || sprite->pos1.y > 116)
if (sprite->x > DISPLAY_WIDTH + 8 || sprite->y > 116)
{
DestroySprite(sprite);
sContestResults->data->confettiCount--;

View File

@ -1103,10 +1103,10 @@ static void SetBikeScene(u8 scene, u8 taskId)
case SCENE_OCEAN_MORNING:
gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tRivalSpriteId].x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tPlayerSpriteId].y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0;
gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0;
gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8);
@ -1114,10 +1114,10 @@ static void SetBikeScene(u8 scene, u8 taskId)
case SCENE_OCEAN_SUNSET:
gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].x = 120;
gSprites[gTasks[taskId].tRivalSpriteId].x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tPlayerSpriteId].y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0;
gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0;
gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(0, 0x2000, 0x20, 8);
@ -1125,10 +1125,10 @@ static void SetBikeScene(u8 scene, u8 taskId)
case SCENE_FOREST_RIVAL_ARRIVE:
gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].x = 120;
gSprites[gTasks[taskId].tRivalSpriteId].x = DISPLAY_WIDTH + 32;
gSprites[gTasks[taskId].tPlayerSpriteId].y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0;
gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0;
gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8);
@ -1136,10 +1136,10 @@ static void SetBikeScene(u8 scene, u8 taskId)
case SCENE_FOREST_CATCH_RIVAL:
gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 120;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = -32;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].x = 120;
gSprites[gTasks[taskId].tRivalSpriteId].x = -32;
gSprites[gTasks[taskId].tPlayerSpriteId].y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0;
gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0;
gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(1, 0x2000, 0x200, 8);
@ -1147,10 +1147,10 @@ static void SetBikeScene(u8 scene, u8 taskId)
case SCENE_CITY_NIGHT:
gSprites[gTasks[taskId].tPlayerSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tRivalSpriteId].invisible = FALSE;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.x = 88;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.x = 152;
gSprites[gTasks[taskId].tPlayerSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].pos1.y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].x = 88;
gSprites[gTasks[taskId].tRivalSpriteId].x = 152;
gSprites[gTasks[taskId].tPlayerSpriteId].y = 46;
gSprites[gTasks[taskId].tRivalSpriteId].y = 46;
gSprites[gTasks[taskId].tPlayerSpriteId].data[0] = 0;
gSprites[gTasks[taskId].tRivalSpriteId].data[0] = 0;
gTasks[taskId].tTaskId_BgScenery = CreateBicycleBgAnimationTask(2, 0x2000, 0x200, 8);
@ -1359,8 +1359,8 @@ static void SpriteCB_Player(struct Sprite *sprite)
break;
case 1:
StartSpriteAnimIfDifferent(sprite, 1);
if (sprite->pos1.x > -32)
sprite->pos1.x--;
if (sprite->x > -32)
sprite->x--;
break;
case 2:
StartSpriteAnimIfDifferent(sprite, 2);
@ -1370,13 +1370,13 @@ static void SpriteCB_Player(struct Sprite *sprite)
break;
case 4:
StartSpriteAnimIfDifferent(sprite, 0);
if (sprite->pos1.x > 120)
sprite->pos1.x--;
if (sprite->x > 120)
sprite->x--;
break;
case 5:
StartSpriteAnimIfDifferent(sprite, 0);
if (sprite->pos1.x > -32)
sprite->pos1.x--;
if (sprite->x > -32)
sprite->x--;
break;
}
}
@ -1392,28 +1392,28 @@ static void SpriteCB_Rival(struct Sprite *sprite)
switch (sprite->sState)
{
case 0:
sprite->pos2.y = 0;
sprite->y2 = 0;
StartSpriteAnimIfDifferent(sprite, 0);
break;
case 1:
if (sprite->pos1.x > 200)
if (sprite->x > 200)
StartSpriteAnimIfDifferent(sprite, 1);
else
StartSpriteAnimIfDifferent(sprite, 2);
if (sprite->pos1.x > -32)
sprite->pos1.x -= 2;
sprite->pos2.y = -gIntroCredits_MovingSceneryVOffset;
if (sprite->x > -32)
sprite->x -= 2;
sprite->y2 = -gIntroCredits_MovingSceneryVOffset;
break;
case 2:
sprite->data[7]++;
StartSpriteAnimIfDifferent(sprite, 0);
if ((sprite->data[7] & 3) == 0)
sprite->pos1.x++;
sprite->x++;
break;
case 3:
StartSpriteAnimIfDifferent(sprite, 0);
if (sprite->pos1.x > -32)
sprite->pos1.x--;
if (sprite->x > -32)
sprite->x--;
break;
}
}
@ -1455,15 +1455,15 @@ static void SpriteCB_CreditsMon(struct Sprite *sprite)
{
case POS_LEFT + 1:
if ((sprite->data[7] & 3) == 0)
sprite->pos1.y++;
sprite->pos1.x -= 2;
sprite->y++;
sprite->x -= 2;
break;
case POS_CENTER + 1:
break;
case POS_RIGHT + 1:
if ((sprite->data[7] & 3) == 0)
sprite->pos1.y++;
sprite->pos1.x += 2;
sprite->y++;
sprite->x += 2;
break;
}
break;
@ -1522,7 +1522,7 @@ static u8 CreateCreditsMonSprite(u16 nationalDexNum, s16 x, s16 y, u16 position)
gSprites[monSpriteId].callback = SpriteCB_CreditsMon;
gSprites[monSpriteId].sSpriteId = monSpriteId;
bgSpriteId = CreateSprite(&sSpriteTemplate_CreditsMonBg, gSprites[monSpriteId].pos1.x, gSprites[monSpriteId].pos1.y, 1);
bgSpriteId = CreateSprite(&sSpriteTemplate_CreditsMonBg, gSprites[monSpriteId].x, gSprites[monSpriteId].y, 1);
gSprites[bgSpriteId].sMonSpriteId = monSpriteId;
StartSpriteAnimIfDifferent(&gSprites[bgSpriteId], position);
@ -1544,8 +1544,8 @@ static void SpriteCB_CreditsMonBg(struct Sprite *sprite)
sprite->oam.objMode = gSprites[sprite->sMonSpriteId].oam.objMode;
sprite->oam.affineMode = gSprites[sprite->sMonSpriteId].oam.affineMode;
sprite->oam.matrixNum = gSprites[sprite->sMonSpriteId].oam.matrixNum;
sprite->pos1.x = gSprites[sprite->sMonSpriteId].pos1.x;
sprite->pos1.y = gSprites[sprite->sMonSpriteId].pos1.y;
sprite->x = gSprites[sprite->sMonSpriteId].x;
sprite->y = gSprites[sprite->sMonSpriteId].y;
}
static void DeterminePokemonToShow(void)

View File

@ -1382,8 +1382,8 @@ static void ConfigureCameraObjectForPlacingDecoration(struct PlaceDecorationGrap
gFieldCamera.spriteId = gpu_pal_decompress_alloc_tag_and_upload(data, decor);
gSprites[gFieldCamera.spriteId].oam.priority = 1;
gSprites[gFieldCamera.spriteId].callback = InitializePuttingAwayCursorSprite;
gSprites[gFieldCamera.spriteId].pos1.x = sDecorationMovementInfo[data->decoration->shape].cameraX;
gSprites[gFieldCamera.spriteId].pos1.y = sDecorationMovementInfo[data->decoration->shape].cameraY;
gSprites[gFieldCamera.spriteId].x = sDecorationMovementInfo[data->decoration->shape].cameraX;
gSprites[gFieldCamera.spriteId].y = sDecorationMovementInfo[data->decoration->shape].cameraY;
}
static void SetUpPlacingDecorationPlayerAvatar(u8 taskId, struct PlaceDecorationGraphicsDataBuffer *data)
@ -1650,7 +1650,7 @@ static void PlaceDecoration(u8 taskId)
ScriptContext1_SetupScript(SecretBase_EventScript_SetDecoration);
}
gSprites[sDecor_CameraSpriteObjectIdx1].pos1.y += 2;
gSprites[sDecor_CameraSpriteObjectIdx1].y += 2;
if (gMapHeader.regionMapSectionId == MAPSEC_SECRET_BASE)
TryPutSecretBaseVisitOnAir();
@ -2121,8 +2121,8 @@ u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u1
if (spriteId == MAX_SPRITES)
return MAX_SPRITES;
gSprites[spriteId].pos2.x = x + 4;
gSprites[spriteId].pos2.y = y + 4;
gSprites[spriteId].x2 = x + 4;
gSprites[spriteId].y2 = y + 4;
}
else if (gDecorIconTable[decor][0] == NULL)
{
@ -2130,11 +2130,11 @@ u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u1
if (spriteId == MAX_SPRITES)
return MAX_SPRITES;
gSprites[spriteId].pos2.x = x;
gSprites[spriteId].x2 = x;
if (decor == DECOR_SILVER_SHIELD || decor == DECOR_GOLD_SHIELD)
gSprites[spriteId].pos2.y = y - 4;
gSprites[spriteId].y2 = y - 4;
else
gSprites[spriteId].pos2.y = y;
gSprites[spriteId].y2 = y;
}
else
{
@ -2142,8 +2142,8 @@ u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u1
if (spriteId == MAX_SPRITES)
return MAX_SPRITES;
gSprites[spriteId].pos2.x = x + 4;
gSprites[spriteId].pos2.y = y + 4;
gSprites[spriteId].x2 = x + 4;
gSprites[spriteId].y2 = y + 4;
}
gSprites[spriteId].oam.priority = priority;
@ -2332,8 +2332,8 @@ static void ContinuePuttingAwayDecorations(u8 taskId)
gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0;
gSprites[sDecor_CameraSpriteObjectIdx1].invisible = FALSE;
gSprites[sDecor_CameraSpriteObjectIdx1].callback = InitializeCameraSprite1;
gSprites[sDecor_CameraSpriteObjectIdx2].pos1.x = 136;
gSprites[sDecor_CameraSpriteObjectIdx2].pos1.y = 72;
gSprites[sDecor_CameraSpriteObjectIdx2].x = 136;
gSprites[sDecor_CameraSpriteObjectIdx2].y = 72;
gTasks[taskId].tButton = 0;
gTasks[taskId].func = Task_SelectLocation;
}
@ -2449,8 +2449,8 @@ static void SetCameraSpritePosition(u8 x, u8 y)
{
gSprites[sDecor_CameraSpriteObjectIdx1].invisible = TRUE;
gSprites[sDecor_CameraSpriteObjectIdx1].callback = SpriteCallbackDummy;
gSprites[sDecor_CameraSpriteObjectIdx2].pos1.x = x * 16 + 136;
gSprites[sDecor_CameraSpriteObjectIdx2].pos1.y = y * 16 + 72;
gSprites[sDecor_CameraSpriteObjectIdx2].x = x * 16 + 136;
gSprites[sDecor_CameraSpriteObjectIdx2].y = y * 16 + 72;
}
static bool8 DecorationIsUnderCursor(u8 taskId, u8 idx, struct DecorRearrangementDataBuffer *data)

View File

@ -3913,11 +3913,11 @@ static u32 DoDodrioMissedAnim(struct Sprite *sprite)
break;
}
sprite->pos1.x += x;
sprite->x += x;
if (++sprite->sTimer >= 40)
{
sprite->sState = 0;
sprite->pos1.x = GetDodrioXPos(0, GetNumPlayers());
sprite->x = GetDodrioXPos(0, GetNumPlayers());
}
}
@ -3995,8 +3995,8 @@ static void InitStatusBarPos(void)
for (i = 0; i < NUM_STATUS_SQUARES; i++)
{
struct Sprite *sprite = &gSprites[sStatusBar->spriteIds[i]];
sprite->pos1.x = (i * 16) + 48;
sprite->pos1.y = -8 - (i * 8);
sprite->x = (i * 16) + 48;
sprite->y = -8 - (i * 8);
sStatusBar->entered[i] = FALSE;
}
}
@ -4057,11 +4057,11 @@ static bool32 DoStatusBarIntro(void)
{
struct Sprite *sprite = &gSprites[sStatusBar->spriteIds[i]];
sStatusBar->yChange[i] = 2;
if (sStatusBar->entered[i] && sprite->pos1.y == 8)
if (sStatusBar->entered[i] && sprite->y == 8)
continue;
animActive = TRUE;
if (sprite->pos1.y == 8)
if (sprite->y == 8)
{
if (sStatusBar->entered[i])
continue;
@ -4072,7 +4072,7 @@ static bool32 DoStatusBarIntro(void)
sStatusBar->yChange[i] = -16;
PlaySE(SE_CLICK);
}
sprite->pos1.y += sStatusBar->yChange[i];
sprite->y += sStatusBar->yChange[i];
}
if (animActive)
@ -4245,7 +4245,7 @@ static void SetBerryIconsInvisibility(bool8 invisible)
static void SetBerryYPos(u8 id, u8 y)
{
gSprites[*sBerrySpriteIds[id]].pos1.y = y * 8;
gSprites[*sBerrySpriteIds[id]].y = y * 8;
}
static void SetBerryAnim(u16 id, u8 animNum)
@ -4256,8 +4256,8 @@ static void SetBerryAnim(u16 id, u8 animNum)
// Unused
static void UnusedSetSpritePos(u8 spriteId)
{
gSprites[spriteId].pos1.x = 20 * spriteId + 50;
gSprites[spriteId].pos1.y = 50;
gSprites[spriteId].x = 20 * spriteId + 50;
gSprites[spriteId].y = 50;
}
// Gamefreak made a mistake there and goes out of bounds for the data array as it holds 8 elements
@ -4279,7 +4279,7 @@ static void SpriteCB_Cloud(struct Sprite *sprite)
{
if (++sCloudSpriteIds[i][1] > moveDelays[i])
{
sprite->pos1.x--;
sprite->x--;
sCloudSpriteIds[i][1] = 0;
}
}
@ -4332,8 +4332,8 @@ static void ResetCloudPos(void)
{
struct Sprite *sprite = &gSprites[*sCloudSpriteIds[i]];
sprite->sFrozen = TRUE;
sprite->pos1.x = sCloudStartCoords[i][0];
sprite->pos1.y = sCloudStartCoords[i][1];
sprite->x = sCloudStartCoords[i][0];
sprite->y = sCloudStartCoords[i][1];
}
}

View File

@ -4635,17 +4635,17 @@ static void SpriteCB_Cursor(struct Sprite *sprite)
if (++sprite->sDelayTimer > 2)
{
sprite->sDelayTimer = 0;
if (++sprite->pos2.x > 0)
sprite->pos2.x = -6;
if (++sprite->x2 > 0)
sprite->x2 = -6;
}
}
}
static void SetMainCursorPos(u8 x, u8 y)
{
sScreenControl->mainCursorSprite->pos1.x = x;
sScreenControl->mainCursorSprite->pos1.y = y;
sScreenControl->mainCursorSprite->pos2.x = 0;
sScreenControl->mainCursorSprite->x = x;
sScreenControl->mainCursorSprite->y = y;
sScreenControl->mainCursorSprite->x2 = 0;
sScreenControl->mainCursorSprite->sDelayTimer = 0;
}
@ -4653,7 +4653,7 @@ static void StopMainCursorAnim(void)
{
sScreenControl->mainCursorSprite->sDelayTimer = 0;
sScreenControl->mainCursorSprite->sAnimateCursor = FALSE;
sScreenControl->mainCursorSprite->pos2.x = 0;
sScreenControl->mainCursorSprite->x2 = 0;
}
static void StartMainCursorAnim(void)
@ -4665,11 +4665,11 @@ static void CreateRectangleCursorSprites(void)
{
u8 spriteId = CreateSprite(&sSpriteTemplate_RectangleCursor, 0, 0, 3);
sScreenControl->rectangleCursorSpriteRight = &gSprites[spriteId];
sScreenControl->rectangleCursorSpriteRight->pos2.x = 32;
sScreenControl->rectangleCursorSpriteRight->x2 = 32;
spriteId = CreateSprite(&sSpriteTemplate_RectangleCursor, 0, 0, 3);
sScreenControl->rectangleCursorSpriteLeft = &gSprites[spriteId];
sScreenControl->rectangleCursorSpriteLeft->pos2.x = -32;
sScreenControl->rectangleCursorSpriteLeft->x2 = -32;
sScreenControl->rectangleCursorSpriteRight->hFlip = TRUE;
UpdateRectangleCursorPos();
@ -4705,23 +4705,23 @@ static void SetRectangleCursorPos_GroupMode(s8 column, s8 row)
{
// In group name window
StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, RECTCURSOR_ANIM_ON_GROUP);
sScreenControl->rectangleCursorSpriteRight->pos1.x = column * 84 + 58;
sScreenControl->rectangleCursorSpriteRight->pos1.y = row * 16 + 96;
sScreenControl->rectangleCursorSpriteRight->x = column * 84 + 58;
sScreenControl->rectangleCursorSpriteRight->y = row * 16 + 96;
StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, RECTCURSOR_ANIM_ON_GROUP);
sScreenControl->rectangleCursorSpriteLeft->pos1.x = column * 84 + 58;
sScreenControl->rectangleCursorSpriteLeft->pos1.y = row * 16 + 96;
sScreenControl->rectangleCursorSpriteLeft->x = column * 84 + 58;
sScreenControl->rectangleCursorSpriteLeft->y = row * 16 + 96;
}
else
{
// In button window
StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, RECTCURSOR_ANIM_ON_BUTTON);
sScreenControl->rectangleCursorSpriteRight->pos1.x = 216;
sScreenControl->rectangleCursorSpriteRight->pos1.y = row * 16 + 112;
sScreenControl->rectangleCursorSpriteRight->x = 216;
sScreenControl->rectangleCursorSpriteRight->y = row * 16 + 112;
StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, RECTCURSOR_ANIM_ON_BUTTON);
sScreenControl->rectangleCursorSpriteLeft->pos1.x = 216;
sScreenControl->rectangleCursorSpriteLeft->pos1.y = row * 16 + 112;
sScreenControl->rectangleCursorSpriteLeft->x = 216;
sScreenControl->rectangleCursorSpriteLeft->y = row * 16 + 112;
}
}
@ -4748,23 +4748,23 @@ static void SetRectangleCursorPos_AlphabetMode(s8 column, s8 row)
}
StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, anim);
sScreenControl->rectangleCursorSpriteRight->pos1.x = x;
sScreenControl->rectangleCursorSpriteRight->pos1.y = y;
sScreenControl->rectangleCursorSpriteRight->x = x;
sScreenControl->rectangleCursorSpriteRight->y = y;
StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, anim);
sScreenControl->rectangleCursorSpriteLeft->pos1.x = x;
sScreenControl->rectangleCursorSpriteLeft->pos1.y = y;
sScreenControl->rectangleCursorSpriteLeft->x = x;
sScreenControl->rectangleCursorSpriteLeft->y = y;
}
else
{
// In button window
StartSpriteAnim(sScreenControl->rectangleCursorSpriteRight, RECTCURSOR_ANIM_ON_BUTTON);
sScreenControl->rectangleCursorSpriteRight->pos1.x = 216;
sScreenControl->rectangleCursorSpriteRight->pos1.y = row * 16 + 112;
sScreenControl->rectangleCursorSpriteRight->x = 216;
sScreenControl->rectangleCursorSpriteRight->y = row * 16 + 112;
StartSpriteAnim(sScreenControl->rectangleCursorSpriteLeft, RECTCURSOR_ANIM_ON_BUTTON);
sScreenControl->rectangleCursorSpriteLeft->pos1.x = 216;
sScreenControl->rectangleCursorSpriteLeft->pos1.y = row * 16 + 112;
sScreenControl->rectangleCursorSpriteLeft->x = 216;
sScreenControl->rectangleCursorSpriteLeft->y = row * 16 + 112;
}
}
@ -4784,8 +4784,8 @@ static void SpriteCB_WordSelectCursor(struct Sprite *sprite)
if (++sprite->sDelayTimer > 2)
{
sprite->sDelayTimer = 0;
if (++sprite->pos2.x > 0)
sprite->pos2.x = -6;
if (++sprite->x2 > 0)
sprite->x2 = -6;
}
}
@ -4804,9 +4804,9 @@ static void SetWordSelectCursorPos(u8 x, u8 y)
{
if (sScreenControl->wordSelectCursorSprite)
{
sScreenControl->wordSelectCursorSprite->pos1.x = x;
sScreenControl->wordSelectCursorSprite->pos1.y = y;
sScreenControl->wordSelectCursorSprite->pos2.x = 0;
sScreenControl->wordSelectCursorSprite->x = x;
sScreenControl->wordSelectCursorSprite->y = y;
sScreenControl->wordSelectCursorSprite->x2 = 0;
sScreenControl->wordSelectCursorSprite->sDelayTimer = 0;
}
}
@ -4824,7 +4824,7 @@ static void CreateSideWindowSprites(void)
{
u8 spriteId = CreateSprite(&sSpriteTemplate_ButtonWindow, 208, 128, 6);
sScreenControl->buttonWindowSprite = &gSprites[spriteId];
sScreenControl->buttonWindowSprite->pos2.x = -64;
sScreenControl->buttonWindowSprite->x2 = -64;
spriteId = CreateSprite(&sSpriteTemplate_ModeWindow, 208, 80, 5);
sScreenControl->modeWindowSprite = &gSprites[spriteId];
@ -4839,10 +4839,10 @@ static bool8 ShowSideWindow(void)
return FALSE;
case 0:
// Slide button window on
sScreenControl->buttonWindowSprite->pos2.x += 8;
if (sScreenControl->buttonWindowSprite->pos2.x >= 0)
sScreenControl->buttonWindowSprite->x2 += 8;
if (sScreenControl->buttonWindowSprite->x2 >= 0)
{
sScreenControl->buttonWindowSprite->pos2.x = 0;
sScreenControl->buttonWindowSprite->x2 = 0;
// Set mode window anim
if (!GetInAlphabetMode())
@ -4881,8 +4881,8 @@ static bool8 DestroySideWindowSprites(void)
sScreenControl->modeWindowState = 1;
break;
case 1:
sScreenControl->buttonWindowSprite->pos2.x -= 8;
if (sScreenControl->buttonWindowSprite->pos2.x <= -64)
sScreenControl->buttonWindowSprite->x2 -= 8;
if (sScreenControl->buttonWindowSprite->x2 <= -64)
{
DestroySprite(sScreenControl->modeWindowSprite);
DestroySprite(sScreenControl->buttonWindowSprite);
@ -4947,14 +4947,14 @@ static void SetScrollIndicatorXPos(bool32 inWordSelect)
if (!inWordSelect)
{
// Keyboard (only relevant for group mode, can't scroll in alphabet mode)
sScreenControl->scrollIndicatorUpSprite->pos1.x = 96;
sScreenControl->scrollIndicatorDownSprite->pos1.x = 96;
sScreenControl->scrollIndicatorUpSprite->x = 96;
sScreenControl->scrollIndicatorDownSprite->x = 96;
}
else
{
// Word select
sScreenControl->scrollIndicatorUpSprite->pos1.x = 120;
sScreenControl->scrollIndicatorDownSprite->pos1.x = 120;
sScreenControl->scrollIndicatorUpSprite->x = 120;
sScreenControl->scrollIndicatorDownSprite->x = 120;
}
}

View File

@ -716,7 +716,7 @@ static void SpriteCB_Egg_0(struct Sprite* sprite)
else
{
sprite->data[1] = (sprite->data[1] + 20) & 0xFF;
sprite->pos2.x = Sin(sprite->data[1], 1);
sprite->x2 = Sin(sprite->data[1], 1);
if (sprite->data[0] == 15)
{
PlaySE(SE_BALL);
@ -739,7 +739,7 @@ static void SpriteCB_Egg_1(struct Sprite* sprite)
else
{
sprite->data[1] = (sprite->data[1] + 20) & 0xFF;
sprite->pos2.x = Sin(sprite->data[1], 2);
sprite->x2 = Sin(sprite->data[1], 2);
if (sprite->data[0] == 15)
{
PlaySE(SE_BALL);
@ -760,13 +760,13 @@ static void SpriteCB_Egg_2(struct Sprite* sprite)
sprite->callback = SpriteCB_Egg_3;
sprite->data[0] = 0;
species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES);
gSprites[sEggHatchData->pokeSpriteID].pos2.x = 0;
gSprites[sEggHatchData->pokeSpriteID].pos2.y = 0;
gSprites[sEggHatchData->pokeSpriteID].x2 = 0;
gSprites[sEggHatchData->pokeSpriteID].y2 = 0;
}
else
{
sprite->data[1] = (sprite->data[1] + 20) & 0xFF;
sprite->pos2.x = Sin(sprite->data[1], 2);
sprite->x2 = Sin(sprite->data[1], 2);
if (sprite->data[0] == 15)
{
PlaySE(SE_BALL);
@ -819,7 +819,7 @@ static void SpriteCB_Egg_5(struct Sprite* sprite)
if (sprite->data[0] == 8)
BeginNormalPaletteFade(PALETTES_ALL, -1, 0x10, 0, RGB_WHITEALPHA);
if (sprite->data[0] <= 9)
gSprites[sEggHatchData->pokeSpriteID].pos1.y -= 1;
gSprites[sEggHatchData->pokeSpriteID].y -= 1;
if (sprite->data[0] > 40)
sprite->callback = SpriteCallbackDummy;
sprite->data[0]++;
@ -830,12 +830,12 @@ static void SpriteCB_EggShard(struct Sprite* sprite)
sprite->data[4] += sprite->data[1];
sprite->data[5] += sprite->data[2];
sprite->pos2.x = sprite->data[4] / 256;
sprite->pos2.y = sprite->data[5] / 256;
sprite->x2 = sprite->data[4] / 256;
sprite->y2 = sprite->data[5] / 256;
sprite->data[2] += sprite->data[3];
if (sprite->pos1.y + sprite->pos2.y > sprite->pos1.y + 20 && sprite->data[2] > 0)
if (sprite->y + sprite->y2 > sprite->y + 20 && sprite->data[2] > 0)
DestroySprite(sprite);
}

View File

@ -1415,11 +1415,11 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl
}
sprite = &gSprites[spriteId];
GetMapCoordsFromSpritePos(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->pos1.x, &sprite->pos1.y);
GetMapCoordsFromSpritePos(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->x, &sprite->y);
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
sprite->x += 8;
sprite->y += 16 + sprite->centerToCornerVecY;
sprite->oam.paletteNum = paletteSlot;
sprite->coordOffsetEnabled = TRUE;
sprite->sObjEventId = objectEventId;
@ -1569,7 +1569,7 @@ u8 CreateObjectSprite(u8 graphicsId, u8 objectEventId, s16 x, s16 y, u8 z, u8 di
sprite = &gSprites[spriteId];
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.y += sprite->centerToCornerVecY;
sprite->y += sprite->centerToCornerVecY;
sprite->oam.paletteNum = graphicsInfo->paletteSlot;
if (sprite->oam.paletteNum >= 16)
{
@ -1726,11 +1726,11 @@ static void SpawnObjectEventOnReturnToField(u8 objectEventId, s16 x, s16 y)
if (i != MAX_SPRITES)
{
sprite = &gSprites[i];
GetMapCoordsFromSpritePos(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
GetMapCoordsFromSpritePos(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->x, &sprite->y);
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
sprite->x += 8;
sprite->y += 16 + sprite->centerToCornerVecY;
sprite->images = graphicsInfo->images;
if (objectEvent->movementType == MOVEMENT_TYPE_PLAYER)
{
@ -1803,11 +1803,11 @@ void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId)
sprite->oam.paletteNum = paletteSlot;
objectEvent->inanimate = graphicsInfo->inanimate;
objectEvent->graphicsId = graphicsId;
SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->x, &sprite->y);
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
sprite->x += 8;
sprite->y += 16 + sprite->centerToCornerVecY;
if (objectEvent->trackedByCamera)
{
CameraObjectReset1();
@ -1969,8 +1969,8 @@ void SetObjectEventSpritePosByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup,
if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId))
{
sprite = &gSprites[gObjectEvents[objectEventId].spriteId];
sprite->pos2.x = x;
sprite->pos2.y = y;
sprite->x2 = x;
sprite->y2 = y;
}
}
@ -2105,11 +2105,11 @@ void MoveObjectEventToMapCoords(struct ObjectEvent *objectEvent, s16 x, s16 y)
sprite = &gSprites[objectEvent->spriteId];
graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
SetObjectEventCoords(objectEvent, x, y);
SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y);
SetSpritePosToMapCoords(objectEvent->currentCoords.x, objectEvent->currentCoords.y, &sprite->x, &sprite->y);
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY;
sprite->x += 8;
sprite->y += 16 + sprite->centerToCornerVecY;
ResetObjectEventFldEffData(objectEvent);
if (objectEvent->trackedByCamera)
CameraObjectReset1();
@ -2211,8 +2211,8 @@ static void SpriteCB_CameraObject(struct Sprite *sprite)
static void CameraObject_0(struct Sprite *sprite)
{
sprite->pos1.x = gSprites[sprite->sLinkedSpriteId].pos1.x;
sprite->pos1.y = gSprites[sprite->sLinkedSpriteId].pos1.y;
sprite->x = gSprites[sprite->sLinkedSpriteId].x;
sprite->y = gSprites[sprite->sLinkedSpriteId].y;
sprite->invisible = TRUE;
sprite->sState = 1;
CameraObject_1(sprite);
@ -2220,19 +2220,19 @@ static void CameraObject_0(struct Sprite *sprite)
static void CameraObject_1(struct Sprite *sprite)
{
s16 x = gSprites[sprite->sLinkedSpriteId].pos1.x;
s16 y = gSprites[sprite->sLinkedSpriteId].pos1.y;
s16 x = gSprites[sprite->sLinkedSpriteId].x;
s16 y = gSprites[sprite->sLinkedSpriteId].y;
sprite->data[2] = x - sprite->pos1.x;
sprite->data[3] = y - sprite->pos1.y;
sprite->pos1.x = x;
sprite->pos1.y = y;
sprite->data[2] = x - sprite->x;
sprite->data[3] = y - sprite->y;
sprite->x = x;
sprite->y = y;
}
static void CameraObject_2(struct Sprite *sprite)
{
sprite->pos1.x = gSprites[sprite->sLinkedSpriteId].pos1.x;
sprite->pos1.y = gSprites[sprite->sLinkedSpriteId].pos1.y;
sprite->x = gSprites[sprite->sLinkedSpriteId].x;
sprite->y = gSprites[sprite->sLinkedSpriteId].y;
sprite->data[2] = 0;
sprite->data[3] = 0;
}
@ -2311,8 +2311,8 @@ u8 CopySprite(struct Sprite *sprite, s16 x, s16 y, u8 subpriority)
if (!gSprites[i].inUse)
{
gSprites[i] = *sprite;
gSprites[i].pos1.x = x;
gSprites[i].pos1.y = y;
gSprites[i].x = x;
gSprites[i].y = y;
gSprites[i].subpriority = subpriority;
break;
}
@ -2329,8 +2329,8 @@ u8 CreateCopySpriteAt(struct Sprite *sprite, s16 x, s16 y, u8 subpriority)
if (!gSprites[i].inUse)
{
gSprites[i] = *sprite;
gSprites[i].pos1.x = x;
gSprites[i].pos1.y = y;
gSprites[i].x = x;
gSprites[i].y = y;
gSprites[i].subpriority = subpriority;
return i;
}
@ -7361,14 +7361,14 @@ bool8 MovementAction_Levitate_Step0(struct ObjectEvent *objectEvent, struct Spri
bool8 MovementAction_StopLevitate_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
DestroyLevitateMovementTask(objectEvent->warpArrowSpriteId);
sprite->pos2.y = 0;
sprite->y2 = 0;
sprite->sActionFuncId = 1;
return TRUE;
}
bool8 MovementAction_StopLevitateAtTop_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
if (sprite->pos2.y == 0)
if (sprite->y2 == 0)
{
DestroyLevitateMovementTask(objectEvent->warpArrowSpriteId);
sprite->sActionFuncId = 1;
@ -7423,13 +7423,13 @@ static void UpdateObjectEventOffscreen(struct ObjectEvent *objectEvent, struct S
graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
if (sprite->coordOffsetEnabled)
{
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
}
else
{
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY;
x = sprite->x + sprite->x2 + sprite->centerToCornerVecX;
y = sprite->y + sprite->y2 + sprite->centerToCornerVecY;
}
x2 = graphicsInfo->width;
x2 += x;
@ -7843,7 +7843,7 @@ void ObjectEventUpdateZCoord(struct ObjectEvent *objEvent)
void SetObjectSubpriorityByZCoord(u8 elevation, struct Sprite *sprite, u8 subpriority)
{
s32 tmp = sprite->centerToCornerVecY;
u32 tmpa = *(u16 *)&sprite->pos1.y;
u32 tmpa = *(u16 *)&sprite->y;
u32 tmpb = *(u16 *)&gSpriteCoordOffsetY;
s32 tmp2 = (tmpa - tmp) + tmpb;
u16 tmp3 = (16 - ((((u32)tmp2 + 8) & 0xFF) >> 4)) * 2;
@ -8250,32 +8250,32 @@ void UnfreezeObjectEvents(void)
static void Step1(struct Sprite *sprite, u8 dir)
{
sprite->pos1.x += sDirectionToVectors[dir].x;
sprite->pos1.y += sDirectionToVectors[dir].y;
sprite->x += sDirectionToVectors[dir].x;
sprite->y += sDirectionToVectors[dir].y;
}
static void Step2(struct Sprite *sprite, u8 dir)
{
sprite->pos1.x += 2 * (u16) sDirectionToVectors[dir].x;
sprite->pos1.y += 2 * (u16) sDirectionToVectors[dir].y;
sprite->x += 2 * (u16) sDirectionToVectors[dir].x;
sprite->y += 2 * (u16) sDirectionToVectors[dir].y;
}
static void Step3(struct Sprite *sprite, u8 dir)
{
sprite->pos1.x += 2 * (u16) sDirectionToVectors[dir].x + (u16) sDirectionToVectors[dir].x;
sprite->pos1.y += 2 * (u16) sDirectionToVectors[dir].y + (u16) sDirectionToVectors[dir].y;
sprite->x += 2 * (u16) sDirectionToVectors[dir].x + (u16) sDirectionToVectors[dir].x;
sprite->y += 2 * (u16) sDirectionToVectors[dir].y + (u16) sDirectionToVectors[dir].y;
}
static void Step4(struct Sprite *sprite, u8 dir)
{
sprite->pos1.x += 4 * (u16) sDirectionToVectors[dir].x;
sprite->pos1.y += 4 * (u16) sDirectionToVectors[dir].y;
sprite->x += 4 * (u16) sDirectionToVectors[dir].x;
sprite->y += 4 * (u16) sDirectionToVectors[dir].y;
}
static void Step8(struct Sprite *sprite, u8 dir)
{
sprite->pos1.x += 8 * (u16) sDirectionToVectors[dir].x;
sprite->pos1.y += 8 * (u16) sDirectionToVectors[dir].y;
sprite->x += 8 * (u16) sDirectionToVectors[dir].x;
sprite->y += 8 * (u16) sDirectionToVectors[dir].y;
}
#define sTimer data[5]
@ -8445,20 +8445,20 @@ static bool8 AnimateSpriteInFigure8(struct Sprite *sprite)
switch(sprite->data[7])
{
case 0:
sprite->pos2.x += GetFigure8XOffset(sprite->data[6]);
sprite->pos2.y += GetFigure8YOffset(sprite->data[6]);
sprite->x2 += GetFigure8XOffset(sprite->data[6]);
sprite->y2 += GetFigure8YOffset(sprite->data[6]);
break;
case 1:
sprite->pos2.x -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
sprite->x2 -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
break;
case 2:
sprite->pos2.x -= GetFigure8XOffset(sprite->data[6]);
sprite->pos2.y += GetFigure8YOffset(sprite->data[6]);
sprite->x2 -= GetFigure8XOffset(sprite->data[6]);
sprite->y2 += GetFigure8YOffset(sprite->data[6]);
break;
case 3:
sprite->pos2.x += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
sprite->x2 += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->data[6]);
break;
}
if (++sprite->data[6] == FIGURE_8_LENGTH)
@ -8468,8 +8468,8 @@ static bool8 AnimateSpriteInFigure8(struct Sprite *sprite)
}
if (sprite->data[7] == 4)
{
sprite->pos2.y = 0;
sprite->pos2.x = 0;
sprite->y2 = 0;
sprite->x2 = 0;
finished = TRUE;
}
return finished;
@ -8521,7 +8521,7 @@ static u8 DoJumpSpriteMovement(struct Sprite *sprite)
if (sprite->sSpeed)
Step1(sprite, sprite->sDirection);
sprite->pos2.y = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType);
sprite->y2 = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType);
sprite->sTimer++;
@ -8530,7 +8530,7 @@ static u8 DoJumpSpriteMovement(struct Sprite *sprite)
if (sprite->sTimer >= speedToTime[sprite->sSpeed])
{
sprite->pos2.y = 0;
sprite->y2 = 0;
result = JUMP_FINISHED;
}
@ -8546,7 +8546,7 @@ static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite)
if (sprite->sSpeed && !(sprite->sTimer & 1))
Step1(sprite, sprite->sDirection);
sprite->pos2.y = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType);
sprite->y2 = GetJumpY(sprite->sTimer >> speedToShift[sprite->sSpeed], sprite->sJumpType);
sprite->sTimer++;
@ -8555,7 +8555,7 @@ static u8 DoJumpSpecialSpriteMovement(struct Sprite *sprite)
if (sprite->sTimer >= speedToTime[sprite->sSpeed])
{
sprite->pos2.y = 0;
sprite->y2 = 0;
result = JUMP_FINISHED;
}
@ -8603,13 +8603,13 @@ void UpdateObjectEventSpriteInvisibility(struct Sprite *sprite, bool8 invisible)
if (sprite->coordOffsetEnabled)
{
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
}
else
{
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY;
x = sprite->x + sprite->x2 + sprite->centerToCornerVecX;
y = sprite->y + sprite->y2 + sprite->centerToCornerVecY;
}
x2 = x - (sprite->centerToCornerVecX >> 1);
@ -8735,13 +8735,13 @@ static void MoveUnionRoomObjectUp(struct Sprite *sprite)
switch(sprite->sAnimState)
{
case 0:
sprite->pos2.y = 0;
sprite->y2 = 0;
sprite->sAnimState++;
case 1:
sprite->pos2.y -= 8;
if (sprite->pos2.y == -DISPLAY_HEIGHT)
sprite->y2 -= 8;
if (sprite->y2 == -DISPLAY_HEIGHT)
{
sprite->pos2.y = 0;
sprite->y2 = 0;
sprite->sInvisible = TRUE;
sprite->sAnimNum = 0;
sprite->sAnimState = 0;
@ -8754,11 +8754,11 @@ static void MoveUnionRoomObjectDown(struct Sprite *sprite)
switch(sprite->sAnimState)
{
case 0:
sprite->pos2.y = -DISPLAY_HEIGHT;
sprite->y2 = -DISPLAY_HEIGHT;
sprite->sAnimState++;
case 1:
sprite->pos2.y += 8;
if(sprite->pos2.y == 0)
sprite->y2 += 8;
if(sprite->y2 == 0)
{
sprite->sAnimNum = 0;
sprite->sAnimState = 0;
@ -8815,8 +8815,8 @@ static void DoShadowFieldEffect(struct ObjectEvent *objectEvent)
static void DoRippleFieldEffect(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
const struct ObjectEventGraphicsInfo *graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
gFieldEffectArguments[0] = sprite->pos1.x;
gFieldEffectArguments[1] = sprite->pos1.y + (graphicsInfo->height >> 1) - 2;
gFieldEffectArguments[0] = sprite->x;
gFieldEffectArguments[1] = sprite->y + (graphicsInfo->height >> 1) - 2;
gFieldEffectArguments[2] = 151;
gFieldEffectArguments[3] = 3;
FieldEffectStart(FLDEFF_RIPPLE);
@ -8950,7 +8950,7 @@ static void ApplyLevitateMovement(u8 taskId)
sprite = &gSprites[objectEvent->spriteId];
if(!(task->data[2] & 3))
sprite->pos2.y += task->data[3];
sprite->y2 += task->data[3];
if(!(task->data[2] & 15))
task->data[3] = -task->data[3];
@ -8982,32 +8982,32 @@ void FreezeObjectEventsExceptTwo(u8 objectEventId1, u8 objectEventId2)
u8 MovementAction_FlyUp_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
sprite->pos2.y = 0;
sprite->y2 = 0;
sprite->sActionFuncId++;
return FALSE;
}
u8 MovementAction_FlyUp_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
sprite->pos2.y -= 8;
sprite->y2 -= 8;
if(sprite->pos2.y == -DISPLAY_HEIGHT)
if(sprite->y2 == -DISPLAY_HEIGHT)
sprite->sActionFuncId++;
return FALSE;
}
u8 MovementAction_FlyDown_Step0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
sprite->pos2.y = -DISPLAY_HEIGHT;
sprite->y2 = -DISPLAY_HEIGHT;
sprite->sActionFuncId++;
return FALSE;
}
u8 MovementAction_FlyDown_Step1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
sprite->pos2.y += 8;
sprite->y2 += 8;
if(!sprite->pos2.y)
if(!sprite->y2)
sprite->sActionFuncId++;
return FALSE;
}

View File

@ -115,18 +115,18 @@ static void SetEvoSparklesMatrices(void)
static void SpriteCB_Sparkle_SpiralUpward(struct Sprite* sprite)
{
if (sprite->pos1.y > 8)
if (sprite->y > 8)
{
u8 matrixNum;
sprite->pos1.y = 88 - (sprite->data[7] * sprite->data[7]) / 80;
sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4;
sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]);
sprite->y = 88 - (sprite->data[7] * sprite->data[7]) / 80;
sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4;
sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]);
sprite->data[6] += 4;
if (sprite->data[7] & 1)
sprite->data[5]--;
sprite->data[7]++;
if (sprite->pos2.y > 0)
if (sprite->y2 > 0)
sprite->subpriority = 1;
else
sprite->subpriority = 20;
@ -155,11 +155,11 @@ static void CreateSparkle_SpiralUpward(u8 arg0)
static void SpriteCB_Sparkle_ArcDown(struct Sprite* sprite)
{
if (sprite->pos1.y < 88)
if (sprite->y < 88)
{
sprite->pos1.y = 8 + (sprite->data[7] * sprite->data[7]) / 5;
sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4;
sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]);
sprite->y = 8 + (sprite->data[7] * sprite->data[7]) / 5;
sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4;
sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]);
sprite->data[5] = 8 + Sin((u8)(sprite->data[7] * 4), 40);
sprite->data[7]++;
}
@ -186,8 +186,8 @@ static void SpriteCB_Sparkle_CircleInward(struct Sprite* sprite)
{
if (sprite->data[5] > 8)
{
sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]);
sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]);
sprite->y2 = Sin((u8)(sprite->data[6]), sprite->data[5]);
sprite->x2 = Cos((u8)(sprite->data[6]), sprite->data[5]);
sprite->data[5] -= sprite->data[3];
sprite->data[6] += 4;
}
@ -214,13 +214,13 @@ static void CreateSparkle_CircleInward(u8 arg0, u8 arg1)
static void SpriteCB_Sparkle_Spray(struct Sprite* sprite)
{
if (!(sprite->data[7] & 3))
sprite->pos1.y++;
sprite->y++;
if (sprite->data[6] < 128)
{
u8 matrixNum;
sprite->pos2.y = -Sin((u8)(sprite->data[6]), sprite->data[5]);
sprite->pos1.x = 120 + (sprite->data[3] * sprite->data[7]) / 3;
sprite->y2 = -Sin((u8)(sprite->data[6]), sprite->data[5]);
sprite->x = 120 + (sprite->data[3] * sprite->data[7]) / 3;
sprite->data[6]++;
matrixNum = 31 - (sprite->data[6] * 12 / 128);
if (sprite->data[6] > 64)

View File

@ -1118,8 +1118,8 @@ static u8 CreateGlowingPokeballsEffect(s16 numMons, s16 x, s16 y, bool16 playHea
struct Sprite *sprite;
spriteId = CreateInvisibleSprite(SpriteCB_PokeballGlowEffect);
sprite = &gSprites[spriteId];
sprite->pos2.x = x;
sprite->pos2.y = y;
sprite->x2 = x;
sprite->y2 = y;
sprite->sPlayHealSe = playHealSe;
sprite->sNumMons = numMons;
sprite->sSpriteId = spriteId;
@ -1137,7 +1137,7 @@ static void PokeballGlowEffect_PlaceBalls(struct Sprite *sprite)
if (sprite->sTimer == 0 || (--sprite->sTimer) == 0)
{
sprite->sTimer = 25;
spriteId = CreateSpriteAtEnd(&sSpriteTemplate_PokeballGlow, sPokeballCoordOffsets[sprite->sCounter].x + sprite->pos2.x, sPokeballCoordOffsets[sprite->sCounter].y + sprite->pos2.y, 0);
spriteId = CreateSpriteAtEnd(&sSpriteTemplate_PokeballGlow, sPokeballCoordOffsets[sprite->sCounter].x + sprite->x2, sPokeballCoordOffsets[sprite->sCounter].y + sprite->y2, 0);
gSprites[spriteId].oam.priority = 2;
gSprites[spriteId].sEffectSpriteId = sprite->sSpriteId;
sprite->sCounter++;
@ -1461,7 +1461,7 @@ static bool8 FallWarpEffect_StartFall(struct Task *task)
s16 centerToCornerVecY;
sprite = &gSprites[gPlayerAvatar.spriteId];
centerToCornerVecY = -(sprite->centerToCornerVecY << 1);
sprite->pos2.y = -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY);
sprite->y2 = -(sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY);
task->tFallOffset = 1;
task->tTotalFall = 0;
gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE;
@ -1477,7 +1477,7 @@ static bool8 FallWarpEffect_Fall(struct Task *task)
objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.y += task->tFallOffset;
sprite->y2 += task->tFallOffset;
if (task->tFallOffset < 8)
{
task->tTotalFall += task->tFallOffset;
@ -1485,19 +1485,19 @@ static bool8 FallWarpEffect_Fall(struct Task *task)
if (task->tTotalFall & 0xf)
task->tFallOffset <<= 1;
}
if (task->tSetTrigger == FALSE && sprite->pos2.y >= -16)
if (task->tSetTrigger == FALSE && sprite->y2 >= -16)
{
task->tSetTrigger++;
objectEvent->fixedPriority = 0;
sprite->subspriteMode = task->tSubsprMode;
objectEvent->triggerGroundEffectsOnMove = 1;
}
if (sprite->pos2.y >= 0)
if (sprite->y2 >= 0)
{
PlaySE(SE_M_STRENGTH);
objectEvent->triggerGroundEffectsOnStop = 1;
objectEvent->landingJump = 1;
sprite->pos2.y = 0;
sprite->y2 = 0;
task->tState++;
}
return FALSE;
@ -1635,8 +1635,8 @@ static void RideUpEscalatorOut(struct Task *task)
{
struct Sprite *sprite;
sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x84, task->data[2]);
sprite->pos2.y = Sin(0x94, task->data[2]);
sprite->x2 = Cos(0x84, task->data[2]);
sprite->y2 = Sin(0x94, task->data[2]);
task->data[3]++;
if (task->data[3] & 1)
{
@ -1648,8 +1648,8 @@ static void RideDownEscalatorOut(struct Task *task)
{
struct Sprite *sprite;
sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x7c, task->data[2]);
sprite->pos2.y = Sin(0x76, task->data[2]);
sprite->x2 = Cos(0x7c, task->data[2]);
sprite->y2 = Sin(0x76, task->data[2]);
task->data[3]++;
if (task->data[3] & 1)
{
@ -1729,8 +1729,8 @@ static bool8 EscalatorWarpIn_Down_Init(struct Task *task)
{
struct Sprite *sprite;
sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x84, task->data[1]);
sprite->pos2.y = Sin(0x94, task->data[1]);
sprite->x2 = Cos(0x84, task->data[1]);
sprite->y2 = Sin(0x94, task->data[1]);
task->tState++;
return FALSE;
}
@ -1739,8 +1739,8 @@ static bool8 EscalatorWarpIn_Down_Ride(struct Task *task)
{
struct Sprite *sprite;
sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x84, task->data[1]);
sprite->pos2.y = Sin(0x94, task->data[1]);
sprite->x2 = Cos(0x84, task->data[1]);
sprite->y2 = Sin(0x94, task->data[1]);
task->data[2]++;
if (task->data[2] & 1)
{
@ -1748,8 +1748,8 @@ static bool8 EscalatorWarpIn_Down_Ride(struct Task *task)
}
if (task->data[1] == 0)
{
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->x2 = 0;
sprite->y2 = 0;
task->tState = 5;
}
return FALSE;
@ -1759,8 +1759,8 @@ static bool8 EscalatorWarpIn_Up_Init(struct Task *task)
{
struct Sprite *sprite;
sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x7c, task->data[1]);
sprite->pos2.y = Sin(0x76, task->data[1]);
sprite->x2 = Cos(0x7c, task->data[1]);
sprite->y2 = Sin(0x76, task->data[1]);
task->tState++;
return FALSE;
}
@ -1769,8 +1769,8 @@ static bool8 EscalatorWarpIn_Up_Ride(struct Task *task)
{
struct Sprite *sprite;
sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x7c, task->data[1]);
sprite->pos2.y = Sin(0x76, task->data[1]);
sprite->x2 = Cos(0x7c, task->data[1]);
sprite->y2 = Sin(0x76, task->data[1]);
task->data[2]++;
if (task->data[2] & 1)
{
@ -1778,8 +1778,8 @@ static bool8 EscalatorWarpIn_Up_Ride(struct Task *task)
}
if (task->data[1] == 0)
{
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->x2 = 0;
sprite->y2 = 0;
task->tState++;
}
return FALSE;
@ -1972,7 +1972,7 @@ static bool8 LavaridgeGymB1FWarpEffect_CameraShake(struct Task *task, struct Obj
static bool8 LavaridgeGymB1FWarpEffect_Launch(struct Task *task, struct ObjectEvent *objectEvent, struct Sprite *sprite)
{
sprite->pos2.y = 0;
sprite->y2 = 0;
task->data[3] = 1;
gFieldEffectArguments[0] = objectEvent->currentCoords.x;
gFieldEffectArguments[1] = objectEvent->currentCoords.y;
@ -2001,9 +2001,9 @@ static bool8 LavaridgeGymB1FWarpEffect_Rise(struct Task *task, struct ObjectEven
if (task->data[2] > 6)
{
centerToCornerVecY = -(sprite->centerToCornerVecY << 1);
if (sprite->pos2.y > -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY))
if (sprite->y2 > -(sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY))
{
sprite->pos2.y -= task->data[3];
sprite->y2 -= task->data[3];
if (task->data[3] <= 7)
{
task->data[3]++;
@ -2013,7 +2013,7 @@ static bool8 LavaridgeGymB1FWarpEffect_Rise(struct Task *task, struct ObjectEven
task->data[4] = 1;
}
}
if (task->data[5] == 0 && sprite->pos2.y < -0x10)
if (task->data[5] == 0 && sprite->y2 < -0x10)
{
task->data[5]++;
objectEvent->fixedPriority = 1;
@ -2396,7 +2396,7 @@ static void TeleportWarpOutFieldEffect_SpinExit(struct Task *task)
task->data[1] = 4;
ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]);
}
sprite->pos1.y -= task->data[3];
sprite->y -= task->data[3];
task->data[4] += task->data[3];
if ((--task->data[2]) <= 0 && (task->data[2] = 4, task->data[3] < 8))
{
@ -2466,7 +2466,7 @@ static void TeleportWarpInFieldEffect_Init(struct Task *task)
{
sprite = &gSprites[gPlayerAvatar.spriteId];
centerToCornerVecY = -(sprite->centerToCornerVecY << 1);
sprite->pos2.y = -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY);
sprite->y2 = -(sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY);
gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE;
task->data[0]++;
task->data[1] = 8;
@ -2482,7 +2482,7 @@ static void TeleportWarpInFieldEffect_SpinEnter(struct Task *task)
u8 spinDirections[5] = {DIR_SOUTH, DIR_WEST, DIR_EAST, DIR_NORTH, DIR_SOUTH};
struct ObjectEvent *objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
struct Sprite *sprite = &gSprites[gPlayerAvatar.spriteId];
if ((sprite->pos2.y += task->data[1]) >= -8)
if ((sprite->y2 += task->data[1]) >= -8)
{
if (task->data[13] == 0)
{
@ -2498,7 +2498,7 @@ static void TeleportWarpInFieldEffect_SpinEnter(struct Task *task)
sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY;
}
}
if (sprite->pos2.y >= -0x30 && task->data[1] > 1 && !(sprite->pos2.y & 1))
if (sprite->y2 >= -0x30 && task->data[1] > 1 && !(sprite->y2 & 1))
{
task->data[1]--;
}
@ -2507,9 +2507,9 @@ static void TeleportWarpInFieldEffect_SpinEnter(struct Task *task)
task->data[2] = 4;
ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]);
}
if (sprite->pos2.y >= 0)
if (sprite->y2 >= 0)
{
sprite->pos2.y = 0;
sprite->y2 = 0;
task->data[0]++;
task->data[1] = 1;
task->data[2] = 0;
@ -2929,9 +2929,9 @@ static u8 InitFieldMoveMonSprite(u32 species, u32 otId, u32 personality)
static void SpriteCB_FieldMoveMonSlideOnscreen(struct Sprite *sprite)
{
if ((sprite->pos1.x -= 20) <= DISPLAY_WIDTH / 2)
if ((sprite->x -= 20) <= DISPLAY_WIDTH / 2)
{
sprite->pos1.x = DISPLAY_WIDTH / 2;
sprite->x = DISPLAY_WIDTH / 2;
sprite->sOnscreenTimer = 30;
sprite->callback = SpriteCB_FieldMoveMonWaitAfterCry;
if (sprite->data[6])
@ -2953,10 +2953,10 @@ static void SpriteCB_FieldMoveMonWaitAfterCry(struct Sprite *sprite)
static void SpriteCB_FieldMoveMonSlideOffscreen(struct Sprite *sprite)
{
if (sprite->pos1.x < -64)
if (sprite->x < -64)
sprite->sSlidOffscreen = TRUE;
else
sprite->pos1.x -= 20;
sprite->x -= 20;
}
#undef tState
@ -3078,7 +3078,7 @@ u8 FldEff_RayquazaSpotlight(void)
sprite->data[1] = 0;
sprite->data[2] = 0;
sprite->data[3] = -1;
sprite->data[4] = sprite->pos1.y;
sprite->data[4] = sprite->y;
sprite->data[5] = 0;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD);
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(14, 14));
@ -3120,17 +3120,17 @@ static void SpriteCB_NPCFlyOut(struct Sprite *sprite)
{
struct Sprite *npcSprite;
sprite->pos2.x = Cos(sprite->data[2], 0x8c);
sprite->pos2.y = Sin(sprite->data[2], 0x48);
sprite->x2 = Cos(sprite->data[2], 0x8c);
sprite->y2 = Sin(sprite->data[2], 0x48);
sprite->data[2] = (sprite->data[2] + 4) & 0xff;
if (sprite->data[0])
{
npcSprite = &gSprites[sprite->data[1]];
npcSprite->coordOffsetEnabled = FALSE;
npcSprite->pos1.x = sprite->pos1.x + sprite->pos2.x;
npcSprite->pos1.y = sprite->pos1.y + sprite->pos2.y - 8;
npcSprite->pos2.x = 0;
npcSprite->pos2.y = 0;
npcSprite->x = sprite->x + sprite->x2;
npcSprite->y = sprite->y + sprite->y2 - 8;
npcSprite->x2 = 0;
npcSprite->y2 = 0;
}
if (sprite->data[2] >= 0x80)
@ -3306,10 +3306,10 @@ static void StartFlyBirdSwoopDown(u8 spriteId)
struct Sprite *sprite;
sprite = &gSprites[spriteId];
sprite->callback = SpriteCB_FlyBirdSwoopDown;
sprite->pos1.x = DISPLAY_WIDTH / 2;
sprite->pos1.y = 0;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->x = DISPLAY_WIDTH / 2;
sprite->y = 0;
sprite->x2 = 0;
sprite->y2 = 0;
memset(&sprite->data[0], 0, 8 * sizeof(u16) /* zero all data cells */);
sprite->sPlayerSpriteId = MAX_SPRITES;
}
@ -3346,15 +3346,15 @@ static void SpriteCB_FlyBirdLeaveBall(struct Sprite *sprite)
sprite->affineAnims = sAffineAnims_FlyBird;
InitSpriteAffineAnim(sprite);
StartSpriteAffineAnim(sprite, 0);
sprite->pos1.x = 0x76;
sprite->pos1.y = -0x30;
sprite->x = 0x76;
sprite->y = -0x30;
sprite->data[0]++;
sprite->data[1] = 0x40;
sprite->data[2] = 0x100;
}
sprite->data[1] += (sprite->data[2] >> 8);
sprite->pos2.x = Cos(sprite->data[1], 0x78);
sprite->pos2.y = Sin(sprite->data[1], 0x78);
sprite->x2 = Cos(sprite->data[1], 0x78);
sprite->y2 = Sin(sprite->data[1], 0x78);
if (sprite->data[2] < 0x800)
{
sprite->data[2] += 0x60;
@ -3371,17 +3371,17 @@ static void SpriteCB_FlyBirdLeaveBall(struct Sprite *sprite)
static void SpriteCB_FlyBirdSwoopDown(struct Sprite *sprite)
{
sprite->pos2.x = Cos(sprite->data[2], 0x8c);
sprite->pos2.y = Sin(sprite->data[2], 0x48);
sprite->x2 = Cos(sprite->data[2], 0x8c);
sprite->y2 = Sin(sprite->data[2], 0x48);
sprite->data[2] = (sprite->data[2] + 4) & 0xff;
if (sprite->sPlayerSpriteId != MAX_SPRITES)
{
struct Sprite *sprite1 = &gSprites[sprite->sPlayerSpriteId];
sprite1->coordOffsetEnabled = FALSE;
sprite1->pos1.x = sprite->pos1.x + sprite->pos2.x;
sprite1->pos1.y = sprite->pos1.y + sprite->pos2.y - 8;
sprite1->pos2.x = 0;
sprite1->pos2.y = 0;
sprite1->x = sprite->x + sprite->x2;
sprite1->y = sprite->y + sprite->y2 - 8;
sprite1->x2 = 0;
sprite1->y2 = 0;
}
if (sprite->data[2] >= 0x80)
{
@ -3399,8 +3399,8 @@ static void SpriteCB_FlyBirdReturnToBall(struct Sprite *sprite)
sprite->affineAnims = sAffineAnims_FlyBird;
InitSpriteAffineAnim(sprite);
StartSpriteAffineAnim(sprite, 1);
sprite->pos1.x = 0x5e;
sprite->pos1.y = -0x20;
sprite->x = 0x5e;
sprite->y = -0x20;
sprite->data[0]++;
sprite->data[1] = 0xf0;
sprite->data[2] = 0x800;
@ -3409,8 +3409,8 @@ static void SpriteCB_FlyBirdReturnToBall(struct Sprite *sprite)
sprite->data[1] += sprite->data[2] >> 8;
sprite->data[3] += sprite->data[2] >> 8;
sprite->data[1] &= 0xff;
sprite->pos2.x = Cos(sprite->data[1], 0x20);
sprite->pos2.y = Sin(sprite->data[1], 0x78);
sprite->x2 = Cos(sprite->data[1], 0x20);
sprite->y2 = Sin(sprite->data[1], 0x78);
if (sprite->data[2] > 0x100)
{
sprite->data[2] -= sprite->data[4];
@ -3495,10 +3495,10 @@ static void FlyInFieldEffect_FlyInWithBird(struct Task *task)
objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
sprite = &gSprites[objectEvent->spriteId];
SetFlyBirdPlayerSpriteId(task->tBirdSpriteId, MAX_SPRITES);
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;
task->tState++;
task->tTimer = 0;
}
@ -3527,7 +3527,7 @@ static void FlyInFieldEffect_JumpOffBird(struct Task *task)
8
};
struct Sprite *sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.y = sYPositions[task->tTimer];
sprite->y2 = sYPositions[task->tTimer];
if ((++task->tTimer) >= (int)ARRAY_COUNT(sYPositions))
task->tState++;
@ -3543,8 +3543,8 @@ static void FlyInFieldEffect_FieldMovePose(struct Task *task)
sprite = &gSprites[objectEvent->spriteId];
objectEvent->inanimate = FALSE;
MoveObjectEventToMapCoords(objectEvent, objectEvent->currentCoords.x, objectEvent->currentCoords.y);
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->x2 = 0;
sprite->y2 = 0;
sprite->coordOffsetEnabled = TRUE;
SetPlayerAvatarFieldMove();
ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
@ -3780,8 +3780,8 @@ static const struct SpriteTemplate sSpriteTemplate_DeoxysRockFragment = {
static void CreateDeoxysRockFragments(struct Sprite* sprite)
{
int i;
int xPos = (s16)gTotalCameraPixelOffsetX + sprite->pos1.x + sprite->pos2.x;
int yPos = (s16)gTotalCameraPixelOffsetY + sprite->pos1.y + sprite->pos2.y - 4;
int xPos = (s16)gTotalCameraPixelOffsetX + sprite->x + sprite->x2;
int yPos = (s16)gTotalCameraPixelOffsetY + sprite->y + sprite->y2 - 4;
for (i = 0; i < 4; i++)
{
@ -3801,23 +3801,23 @@ static void SpriteCB_DeoxysRockFragment(struct Sprite* sprite)
switch (sprite->data[0])
{
case 0:
sprite->pos1.x -= 16;
sprite->pos1.y -= 12;
sprite->x -= 16;
sprite->y -= 12;
break;
case 1:
sprite->pos1.x += 16;
sprite->pos1.y -= 12;
sprite->x += 16;
sprite->y -= 12;
break;
case 2:
sprite->pos1.x -= 16;
sprite->pos1.y += 12;
sprite->x -= 16;
sprite->y += 12;
break;
case 3:
sprite->pos1.x += 16;
sprite->pos1.y += 12;
sprite->x += 16;
sprite->y += 12;
break;
}
if ((u16)(sprite->pos1.x + 4) > DISPLAY_WIDTH + 8 || sprite->pos1.y < -4 || sprite->pos1.y > DISPLAY_HEIGHT + 4)
if ((u16)(sprite->x + 4) > DISPLAY_WIDTH + 8 || sprite->y < -4 || sprite->y > DISPLAY_HEIGHT + 4)
DestroySprite(sprite);
}
@ -3837,8 +3837,8 @@ bool8 FldEff_MoveDeoxysRock(struct Sprite* sprite)
ShiftObjectEventCoords(object, gFieldEffectArguments[3] + 7, gFieldEffectArguments[4] + 7);
taskId = CreateTask(Task_MoveDeoxysRock, 80);
gTasks[taskId].data[1] = object->spriteId;
gTasks[taskId].data[2] = gSprites[object->spriteId].pos1.x + xPos;
gTasks[taskId].data[3] = gSprites[object->spriteId].pos1.y + yPos;
gTasks[taskId].data[2] = gSprites[object->spriteId].x + xPos;
gTasks[taskId].data[3] = gSprites[object->spriteId].y + yPos;
gTasks[taskId].data[8] = gFieldEffectArguments[5];
gTasks[taskId].data[9] = objectEventIdBuffer;
}
@ -3852,8 +3852,8 @@ static void Task_MoveDeoxysRock(u8 taskId)
switch (data[0])
{
case 0:
data[4] = sprite->pos1.x << 4;
data[5] = sprite->pos1.y << 4;
data[4] = sprite->x << 4;
data[5] = sprite->y << 4;
data[6] = SAFE_DIV(data[2] * 16 - data[4], data[8]);
data[7] = SAFE_DIV(data[3] * 16 - data[5], data[8]);
data[0]++;
@ -3863,14 +3863,14 @@ static void Task_MoveDeoxysRock(u8 taskId)
data[8]--;
data[4] += data[6];
data[5] += data[7];
sprite->pos1.x = data[4] >> 4;
sprite->pos1.y = data[5] >> 4;
sprite->x = data[4] >> 4;
sprite->y = data[5] >> 4;
}
else
{
struct ObjectEvent *object = &gObjectEvents[data[9]];
sprite->pos1.x = data[2];
sprite->pos1.y = data[3];
sprite->x = data[2];
sprite->y = data[3];
ShiftStillObjectEventCoords(object);
object->triggerGroundEffectsOnStop = TRUE;
FieldEffectActiveListRemove(FLDEFF_MOVE_DEOXYS_ROCK);

View File

@ -44,7 +44,7 @@ void SetUpReflection(struct ObjectEvent *objectEvent, struct Sprite *sprite, boo
{
struct Sprite *reflectionSprite;
reflectionSprite = &gSprites[CreateCopySpriteAt(sprite, sprite->pos1.x, sprite->pos1.y, 0x98)];
reflectionSprite = &gSprites[CreateCopySpriteAt(sprite, sprite->x, sprite->y, 0x98)];
reflectionSprite->callback = UpdateObjectReflectionSprite;
reflectionSprite->oam.priority = 3;
reflectionSprite->oam.paletteNum = gReflectionEffectPaletteMap[reflectionSprite->oam.paletteNum];
@ -142,12 +142,12 @@ static void UpdateObjectReflectionSprite(struct Sprite *reflectionSprite)
reflectionSprite->subspriteTables = mainSprite->subspriteTables;
reflectionSprite->subspriteTableNum = mainSprite->subspriteTableNum;
reflectionSprite->invisible = mainSprite->invisible;
reflectionSprite->pos1.x = mainSprite->pos1.x;
reflectionSprite->pos1.y = mainSprite->pos1.y + GetReflectionVerticalOffset(objectEvent) + reflectionSprite->sReflectionVerticalOffset;
reflectionSprite->x = mainSprite->x;
reflectionSprite->y = mainSprite->y + GetReflectionVerticalOffset(objectEvent) + reflectionSprite->sReflectionVerticalOffset;
reflectionSprite->centerToCornerVecX = mainSprite->centerToCornerVecX;
reflectionSprite->centerToCornerVecY = mainSprite->centerToCornerVecY;
reflectionSprite->pos2.x = mainSprite->pos2.x;
reflectionSprite->pos2.y = -mainSprite->pos2.y;
reflectionSprite->x2 = mainSprite->x2;
reflectionSprite->y2 = -mainSprite->y2;
reflectionSprite->coordOffsetEnabled = mainSprite->coordOffsetEnabled;
if (objectEvent->hideReflection == TRUE)
@ -204,8 +204,8 @@ void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y)
{
SetSpritePosToMapCoords(x, y, &x2, &y2);
sprite = &gSprites[spriteId];
sprite->pos1.x = x2 + 8;
sprite->pos1.y = y2 + 8;
sprite->x = x2 + 8;
sprite->y = y2 + 8;
sprite->invisible = FALSE;
sprite->data[0] = x;
sprite->data[1] = y;
@ -262,8 +262,8 @@ void UpdateShadowFieldEffect(struct Sprite *sprite)
objectEvent = &gObjectEvents[objectEventId];
linkedSprite = &gSprites[objectEvent->spriteId];
sprite->oam.priority = linkedSprite->oam.priority;
sprite->pos1.x = linkedSprite->pos1.x;
sprite->pos1.y = linkedSprite->pos1.y + sprite->data[3];
sprite->x = linkedSprite->x;
sprite->y = linkedSprite->y + sprite->data[3];
if (!objectEvent->active || !objectEvent->hasShadow
|| MetatileBehavior_IsPokeGrass(objectEvent->currentMetatileBehavior)
|| MetatileBehavior_IsSurfableWaterOrUnderwater(objectEvent->currentMetatileBehavior)
@ -517,8 +517,8 @@ u32 FldEff_ShortGrass(void)
sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x;
sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y;
sprite->data[3] = gSprites[objectEvent->spriteId].x;
sprite->data[4] = gSprites[objectEvent->spriteId].y;
}
return 0;
}
@ -539,8 +539,8 @@ void UpdateShortGrassFieldEffect(struct Sprite *sprite)
{
graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId);
linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId];
y = linkedSprite->pos1.y;
x = linkedSprite->pos1.x;
y = linkedSprite->y;
x = linkedSprite->x;
if (x != sprite->data[3] || y != sprite->data[4])
{
sprite->data[3] = x;
@ -550,9 +550,9 @@ void UpdateShortGrassFieldEffect(struct Sprite *sprite)
StartSpriteAnim(sprite, 0);
}
}
sprite->pos1.x = x;
sprite->pos1.y = y;
sprite->pos2.y = (graphicsInfo->height >> 1) - 8;
sprite->x = x;
sprite->y = y;
sprite->y2 = (graphicsInfo->height >> 1) - 8;
sprite->subpriority = linkedSprite->subpriority - 1;
sprite->oam.priority = linkedSprite->oam.priority;
UpdateObjectEventSpriteInvisibility(sprite, linkedSprite->invisible);
@ -665,7 +665,7 @@ u32 FldEff_Splash(void)
sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2];
sprite->pos2.y = (graphicsInfo->height >> 1) - 4;
sprite->y2 = (graphicsInfo->height >> 1) - 4;
PlaySE(SE_PUDDLE);
}
return 0;
@ -681,8 +681,8 @@ void UpdateSplashFieldEffect(struct Sprite *sprite)
}
else
{
sprite->pos1.x = gSprites[gObjectEvents[objectEventId].spriteId].pos1.x;
sprite->pos1.y = gSprites[gObjectEvents[objectEventId].spriteId].pos1.y;
sprite->x = gSprites[gObjectEvents[objectEventId].spriteId].x;
sprite->y = gSprites[gObjectEvents[objectEventId].spriteId].y;
UpdateObjectEventSpriteInvisibility(sprite, FALSE);
}
}
@ -746,7 +746,7 @@ u32 FldEff_FeetInFlowingWater(void)
sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = -1;
sprite->data[4] = -1;
sprite->pos2.y = (graphicsInfo->height >> 1) - 4;
sprite->y2 = (graphicsInfo->height >> 1) - 4;
StartSpriteAnim(sprite, 1);
}
return 0;
@ -766,8 +766,8 @@ static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *sprite)
{
objectEvent = &gObjectEvents[objectEventId];
linkedSprite = &gSprites[objectEvent->spriteId];
sprite->pos1.x = linkedSprite->pos1.x;
sprite->pos1.y = linkedSprite->pos1.y;
sprite->x = linkedSprite->x;
sprite->y = linkedSprite->y;
sprite->subpriority = linkedSprite->subpriority;
UpdateObjectEventSpriteInvisibility(sprite, FALSE);
if (objectEvent->currentCoords.x != sprite->data[3] || objectEvent->currentCoords.y != sprite->data[4])
@ -816,8 +816,8 @@ u32 FldEff_HotSpringsWater(void)
sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x;
sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y;
sprite->data[3] = gSprites[objectEvent->spriteId].x;
sprite->data[4] = gSprites[objectEvent->spriteId].y;
}
return 0;
}
@ -836,8 +836,8 @@ void UpdateHotSpringsWaterFieldEffect(struct Sprite *sprite)
{
graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId);
linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId];
sprite->pos1.x = linkedSprite->pos1.x;
sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 8;
sprite->x = linkedSprite->x;
sprite->y = (graphicsInfo->height >> 1) + linkedSprite->y - 8;
sprite->subpriority = linkedSprite->subpriority - 1;
UpdateObjectEventSpriteInvisibility(sprite, FALSE);
}
@ -1092,7 +1092,7 @@ void SynchroniseSurfPosition(struct ObjectEvent *playerObj, struct Sprite *sprit
u8 i;
s16 x = playerObj->currentCoords.x;
s16 y = playerObj->currentCoords.y;
s32 spriteY = sprite->pos2.y;
s32 spriteY = sprite->y2;
if (spriteY == 0 && (x != sprite->data[6] || y != sprite->data[7]))
{
@ -1120,7 +1120,7 @@ static void UpdateBobbingEffect(struct ObjectEvent *playerObj, struct Sprite *pl
// Update bobbing position of surf blob
if (((u16)(++sprite->data[4]) & intervals[sprite->data[5]]) == 0)
{
sprite->pos2.y += sprite->data[3];
sprite->y2 += sprite->data[3];
}
if ((sprite->data[4] & 15) == 0)
{
@ -1130,11 +1130,11 @@ static void UpdateBobbingEffect(struct ObjectEvent *playerObj, struct Sprite *pl
{
// Update bobbing position of player
if (!GetSurfBlob_HasPlayerOffset(sprite))
playerSprite->pos2.y = sprite->pos2.y;
playerSprite->y2 = sprite->y2;
else
playerSprite->pos2.y = sprite->tPlayerOffset + sprite->pos2.y;
sprite->pos1.x = playerSprite->pos1.x;
sprite->pos1.y = playerSprite->pos1.y + 8;
playerSprite->y2 = sprite->tPlayerOffset + sprite->y2;
sprite->x = playerSprite->x;
sprite->y = playerSprite->y + 8;
}
}
}
@ -1167,7 +1167,7 @@ static void SpriteCB_UnderwaterSurfBlob(struct Sprite *sprite)
blobSprite = &gSprites[sprite->sSpriteId];
if (((sprite->sTimer++) & 3) == 0)
{
blobSprite->pos2.y += sprite->sBobY;
blobSprite->y2 += sprite->sBobY;
}
if ((sprite->sTimer & 15) == 0)
{
@ -1217,9 +1217,9 @@ u32 FldEff_SandPile(void)
sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x;
sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y;
sprite->pos2.y = (graphicsInfo->height >> 1) - 2;
sprite->data[3] = gSprites[objectEvent->spriteId].x;
sprite->data[4] = gSprites[objectEvent->spriteId].y;
sprite->y2 = (graphicsInfo->height >> 1) - 2;
SeekSpriteAnim(sprite, 2);
}
return 0;
@ -1237,8 +1237,8 @@ void UpdateSandPileFieldEffect(struct Sprite *sprite)
}
else
{
y = gSprites[gObjectEvents[objectEventId].spriteId].pos1.y;
x = gSprites[gObjectEvents[objectEventId].spriteId].pos1.x;
y = gSprites[gObjectEvents[objectEventId].spriteId].y;
x = gSprites[gObjectEvents[objectEventId].spriteId].x;
if (x != sprite->data[3] || y != sprite->data[4])
{
sprite->data[3] = x;
@ -1248,8 +1248,8 @@ void UpdateSandPileFieldEffect(struct Sprite *sprite)
StartSpriteAnim(sprite, 0);
}
}
sprite->pos1.x = x;
sprite->pos1.y = y;
sprite->x = x;
sprite->y = y;
sprite->subpriority = gSprites[gObjectEvents[objectEventId].spriteId].subpriority;
UpdateObjectEventSpriteInvisibility(sprite, FALSE);
}
@ -1275,7 +1275,7 @@ void UpdateBubblesFieldEffect(struct Sprite *sprite)
{
sprite->data[0] += 0x80;
sprite->data[0] &= 0x100;
sprite->pos1.y -= sprite->data[0] >> 8;
sprite->y -= sprite->data[0] >> 8;
UpdateObjectEventSpriteInvisibility(sprite, FALSE);
if (sprite->invisible || sprite->animEnded)
{
@ -1359,8 +1359,8 @@ void UpdateDisguiseFieldEffect(struct Sprite *sprite)
graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId);
linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId];
sprite->invisible = linkedSprite->invisible;
sprite->pos1.x = linkedSprite->pos1.x;
sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 16;
sprite->x = linkedSprite->x;
sprite->y = (graphicsInfo->height >> 1) + linkedSprite->y - 16;
sprite->subpriority = linkedSprite->subpriority - 1;
if (sprite->sState == 1)
@ -1468,25 +1468,25 @@ static bool8 AnimateRayquazaInFigure8(struct Sprite *sprite)
switch (sprite->sAnimState)
{
case 0:
sprite->pos2.x += GetFigure8XOffset(sprite->sAnimCounter);
sprite->pos2.y += GetFigure8YOffset(sprite->sAnimCounter);
sprite->x2 += GetFigure8XOffset(sprite->sAnimCounter);
sprite->y2 += GetFigure8YOffset(sprite->sAnimCounter);
break;
case 1:
sprite->pos2.x -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
sprite->x2 -= GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
break;
case 2:
sprite->pos2.x -= GetFigure8XOffset(sprite->sAnimCounter);
sprite->pos2.y += GetFigure8YOffset(sprite->sAnimCounter);
sprite->x2 -= GetFigure8XOffset(sprite->sAnimCounter);
sprite->y2 += GetFigure8YOffset(sprite->sAnimCounter);
break;
case 3:
sprite->pos2.x += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
sprite->pos2.y += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
sprite->x2 += GetFigure8XOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
sprite->y2 += GetFigure8YOffset((FIGURE_8_LENGTH - 1) - sprite->sAnimCounter);
break;
}
// Update spotlight to sweep left and right with Rayquaza
SetGpuReg(REG_OFFSET_BG0HOFS, -sprite->pos2.x);
SetGpuReg(REG_OFFSET_BG0HOFS, -sprite->x2);
if (++sprite->sAnimCounter == FIGURE_8_LENGTH)
{
@ -1495,8 +1495,8 @@ static bool8 AnimateRayquazaInFigure8(struct Sprite *sprite)
}
if (sprite->sAnimState == 4)
{
sprite->pos2.y = 0;
sprite->pos2.x = 0;
sprite->y2 = 0;
sprite->x2 = 0;
finished = TRUE;
}
@ -1528,7 +1528,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite)
}
break;
case 1:
sprite->pos1.y = (gSineTable[sprite->sTimer / 3] >> 2) + sprite->sStartY;
sprite->y = (gSineTable[sprite->sTimer / 3] >> 2) + sprite->sStartY;
if (sprite->sTimer == 189)
{
sprite->sState = 2;
@ -1549,7 +1549,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite)
}
break;
case 3:
if (sprite->pos2.y == 0)
if (sprite->y2 == 0)
{
sprite->sTimer = 0;
sprite->sState++;
@ -1557,10 +1557,10 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite)
if (sprite->sTimer == 5)
{
sprite->sTimer = 0;
if (sprite->pos2.y > 0)
sprite->pos2.y--;
if (sprite->y2 > 0)
sprite->y2--;
else
sprite->pos2.y++;
sprite->y2++;
}
break;
case 4:
@ -1614,7 +1614,7 @@ void UpdateRayquazaSpotlightEffect(struct Sprite *sprite)
if (sprite->sState == 1)
{
if ((sprite->data[1] & 7) == 0)
sprite->pos2.y += sprite->data[3];
sprite->y2 += sprite->data[3];
if ((sprite->data[1] & 15) == 0)
sprite->data[3] = -sprite->data[3];
sprite->data[1]++;
@ -1667,13 +1667,13 @@ static void UpdateGrassFieldEffectSubpriority(struct Sprite *sprite, u8 z, u8 of
{
graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
linkedSprite = &gSprites[objectEvent->spriteId];
xhi = sprite->pos1.x + sprite->centerToCornerVecX;
var = sprite->pos1.x - sprite->centerToCornerVecX;
if (xhi < linkedSprite->pos1.x && var > linkedSprite->pos1.x)
xhi = sprite->x + sprite->centerToCornerVecX;
var = sprite->x - sprite->centerToCornerVecX;
if (xhi < linkedSprite->x && var > linkedSprite->x)
{
lyhi = linkedSprite->pos1.y + linkedSprite->centerToCornerVecY;
var = linkedSprite->pos1.y;
ylo = sprite->pos1.y - sprite->centerToCornerVecY;
lyhi = linkedSprite->y + linkedSprite->centerToCornerVecY;
var = linkedSprite->y;
ylo = sprite->y - sprite->centerToCornerVecY;
yhi = ylo + linkedSprite->centerToCornerVecY;
if ((lyhi < yhi || lyhi < ylo) && var > yhi && sprite->subpriority <= linkedSprite->subpriority)
{

View File

@ -1933,8 +1933,8 @@ static bool8 Fishing_StartEncounter(struct Task *task)
ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection);
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, FALSE, 0);
gSprites[gPlayerAvatar.spriteId].pos2.x = 0;
gSprites[gPlayerAvatar.spriteId].pos2.y = 0;
gSprites[gPlayerAvatar.spriteId].x2 = 0;
gSprites[gPlayerAvatar.spriteId].y2 = 0;
ClearDialogWindowAndFrame(0, TRUE);
task->tFrameCounter++;
return FALSE;
@ -1990,8 +1990,8 @@ static bool8 Fishing_PutRodAway(struct Task *task)
ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection);
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, FALSE, 0);
gSprites[gPlayerAvatar.spriteId].pos2.x = 0;
gSprites[gPlayerAvatar.spriteId].pos2.y = 0;
gSprites[gPlayerAvatar.spriteId].x2 = 0;
gSprites[gPlayerAvatar.spriteId].y2 = 0;
task->tStep++;
}
return FALSE;
@ -2023,8 +2023,8 @@ static void AlignFishingAnimationFrames(void)
u8 animType;
AnimateSprite(playerSprite);
playerSprite->pos2.x = 0;
playerSprite->pos2.y = 0;
playerSprite->x2 = 0;
playerSprite->y2 = 0;
animCmdIndex = playerSprite->animCmdIndex;
if (playerSprite->anims[playerSprite->animNum][animCmdIndex].type == -1)
{
@ -2039,16 +2039,16 @@ static void AlignFishingAnimationFrames(void)
animType = playerSprite->anims[playerSprite->animNum][animCmdIndex].type;
if (animType == 1 || animType == 2 || animType == 3)
{
playerSprite->pos2.x = 8;
playerSprite->x2 = 8;
if (GetPlayerFacingDirection() == 3)
playerSprite->pos2.x = -8;
playerSprite->x2 = -8;
}
if (animType == 5)
playerSprite->pos2.y = -8;
playerSprite->y2 = -8;
if (animType == 10 || animType == 11)
playerSprite->pos2.y = 8;
playerSprite->y2 = 8;
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, TRUE, playerSprite->pos2.y);
SetSurfBlob_PlayerOffset(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, TRUE, playerSprite->y2);
}
void SetSpinStartFacingDir(u8 direction)
@ -2090,8 +2090,8 @@ static void Task_DoPlayerSpinExit(u8 taskId)
SetSpinStartFacingDir(object->facingDirection);
tSpinDelayTimer = 0;
tSpeed = 1;
tCurY = (u16)(sprite->pos1.y + sprite->pos2.y) << 4;
sprite->pos2.y = 0;
tCurY = (u16)(sprite->y + sprite->y2) << 4;
sprite->y2 = 0;
CameraObjectReset2();
object->fixedPriority = TRUE;
sprite->oam.priority = 0;
@ -2104,10 +2104,10 @@ static void Task_DoPlayerSpinExit(u8 taskId)
// Rise and accelerate
tCurY -= tSpeed;
tSpeed += 3;
sprite->pos1.y = tCurY >> 4;
sprite->y = tCurY >> 4;
// Check if offscreen
if (sprite->pos1.y + (s16)gTotalCameraPixelOffsetY < -32)
if (sprite->y + (s16)gTotalCameraPixelOffsetY < -32)
tState++;
break;
case 2:
@ -2156,11 +2156,11 @@ static void Task_DoPlayerSpinEntrance(u8 taskId)
ObjectEventForceSetHeldMovement(object, GetFaceDirectionMovementAction(sSpinDirections[tStartDir]));
tSpinDelayTimer = 0;
tSpeed = 116;
tDestY = sprite->pos1.y;
tDestY = sprite->y;
tPriority = sprite->oam.priority;
tSubpriority = sprite->subpriority;
tCurY = -((u16)sprite->pos2.y + 32) * 16;
sprite->pos2.y = 0;
tCurY = -((u16)sprite->y2 + 32) * 16;
sprite->y2 = 0;
CameraObjectReset2();
object->fixedPriority = TRUE;
sprite->oam.priority = 1;
@ -2175,12 +2175,12 @@ static void Task_DoPlayerSpinEntrance(u8 taskId)
tSpeed -= 3;
if (tSpeed < 4)
tSpeed = 4;
sprite->pos1.y = tCurY >> 4;
sprite->y = tCurY >> 4;
// Check if reached dest
if (sprite->pos1.y >= tDestY)
if (sprite->y >= tDestY)
{
sprite->pos1.y = tDestY;
sprite->y = tDestY;
tGroundTimer = 0;
tState++;
}

View File

@ -3117,8 +3117,8 @@ static void ShowFrontierExchangeCornerItemIcon(u16 item)
if (sScrollableMultichoice_ItemSpriteId != MAX_SPRITES)
{
gSprites[sScrollableMultichoice_ItemSpriteId].oam.priority = 0;
gSprites[sScrollableMultichoice_ItemSpriteId].pos1.x = 36;
gSprites[sScrollableMultichoice_ItemSpriteId].pos1.y = 92;
gSprites[sScrollableMultichoice_ItemSpriteId].x = 36;
gSprites[sScrollableMultichoice_ItemSpriteId].y = 92;
}
}

View File

@ -189,7 +189,7 @@ static void CreateCloudSprites(void)
{
gWeatherPtr->sprites.s1.cloudSprites[i] = &gSprites[spriteId];
sprite = gWeatherPtr->sprites.s1.cloudSprites[i];
SetSpritePosToMapCoords(sCloudSpriteMapCoords[i].x + 7, sCloudSpriteMapCoords[i].y + 7, &sprite->pos1.x, &sprite->pos1.y);
SetSpritePosToMapCoords(sCloudSpriteMapCoords[i].x + 7, sCloudSpriteMapCoords[i].y + 7, &sprite->x, &sprite->y);
sprite->coordOffsetEnabled = TRUE;
}
else
@ -223,7 +223,7 @@ static void UpdateCloudSprite(struct Sprite *sprite)
// Move 1 pixel left every 2 frames.
sprite->data[0] = (sprite->data[0] + 1) & 1;
if (sprite->data[0])
sprite->pos1.x--;
sprite->x--;
}
//------------------------------------------------------------------------------
@ -593,12 +593,12 @@ static void UpdateRainSprite(struct Sprite *sprite)
// Raindrop is in its "falling" motion.
sprite->tPosX += sRainSpriteMovement[gWeatherPtr->isDownpour][0];
sprite->tPosY += sRainSpriteMovement[gWeatherPtr->isDownpour][1];
sprite->pos1.x = sprite->tPosX >> 4;
sprite->pos1.y = sprite->tPosY >> 4;
sprite->x = sprite->tPosX >> 4;
sprite->y = sprite->tPosY >> 4;
if (sprite->tActive
&& (sprite->pos1.x >= -8 && sprite->pos1.x <= 248)
&& sprite->pos1.y >= -16 && sprite->pos1.y <= 176)
&& (sprite->x >= -8 && sprite->x <= 248)
&& sprite->y >= -16 && sprite->y <= 176)
sprite->invisible = FALSE;
else
sprite->invisible = TRUE;
@ -608,8 +608,8 @@ static void UpdateRainSprite(struct Sprite *sprite)
// Make raindrop splash on the ground
StartSpriteAnim(sprite, gWeatherPtr->isDownpour + 1);
sprite->tState = 1;
sprite->pos1.x -= gSpriteCoordOffsetX;
sprite->pos1.y -= gSpriteCoordOffsetY;
sprite->x -= gSpriteCoordOffsetX;
sprite->y -= gSpriteCoordOffsetY;
sprite->coordOffsetEnabled = TRUE;
}
}
@ -925,10 +925,10 @@ static void InitSnowflakeSpriteMovement(struct Sprite *sprite)
u16 rand;
u16 x = ((sprite->tSnowflakeId * 5) & 7) * 30 + (Random() % 30);
sprite->pos1.y = -3 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->pos1.x = x - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
sprite->tPosY = sprite->pos1.y * 128;
sprite->pos2.x = 0;
sprite->y = -3 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->x = x - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
sprite->tPosY = sprite->y * 128;
sprite->x2 = 0;
rand = Random();
sprite->tDeltaY = (rand & 3) * 5 + 64;
sprite->tDeltaY2 = sprite->tDeltaY;
@ -946,8 +946,8 @@ static void WaitSnowflakeSprite(struct Sprite *sprite)
{
sprite->invisible = FALSE;
sprite->callback = UpdateSnowflakeSprite;
sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->tPosY = sprite->pos1.y * 128;
sprite->y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->tPosY = sprite->y * 128;
gWeatherPtr->snowflakeTimer = 0;
}
}
@ -958,32 +958,32 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite)
s16 y;
sprite->tPosY += sprite->tDeltaY;
sprite->pos1.y = sprite->tPosY >> 7;
sprite->y = sprite->tPosY >> 7;
sprite->tWaveIndex += sprite->tWaveDelta;
sprite->tWaveIndex &= 0xFF;
sprite->pos2.x = gSineTable[sprite->tWaveIndex] / 64;
sprite->x2 = gSineTable[sprite->tWaveIndex] / 64;
x = (sprite->pos1.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX) & 0x1FF;
x = (sprite->x + sprite->centerToCornerVecX + gSpriteCoordOffsetX) & 0x1FF;
if (x & 0x100)
x |= -0x100;
if (x < -3)
sprite->pos1.x = 242 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
sprite->x = 242 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
else if (x > 242)
sprite->pos1.x = -3 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
sprite->x = -3 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
y = (sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY) & 0xFF;
y = (sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY) & 0xFF;
if (y > 163 && y < 171)
{
sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->tPosY = sprite->pos1.y * 128;
sprite->y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->tPosY = sprite->y * 128;
sprite->tFallCounter = 0;
sprite->tFallDuration = 220;
}
else if (y > 242 && y < 250)
{
sprite->pos1.y = 163;
sprite->tPosY = sprite->pos1.y * 128;
sprite->y = 163;
sprite->tPosY = sprite->y * 128;
sprite->tFallCounter = 0;
sprite->tFallDuration = 220;
sprite->invisible = TRUE;
@ -993,7 +993,7 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite)
if (++sprite->tFallCounter == sprite->tFallDuration)
{
InitSnowflakeSpriteMovement(sprite);
sprite->pos1.y = 250;
sprite->y = 250;
sprite->invisible = TRUE;
sprite->callback = WaitSnowflakeSprite;
}
@ -1441,12 +1441,12 @@ bool8 FogHorizontal_Finish(void)
static void FogHorizontalSpriteCallback(struct Sprite *sprite)
{
sprite->pos2.y = (u8)gSpriteCoordOffsetY;
sprite->pos1.x = gWeatherPtr->fogHScrollPosX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271)
sprite->y2 = (u8)gSpriteCoordOffsetY;
sprite->x = gWeatherPtr->fogHScrollPosX + 32 + sprite->tSpriteColumn * 64;
if (sprite->x > 271)
{
sprite->pos1.x = 480 + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF;
sprite->x = 480 + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64;
sprite->x &= 0x1FF;
}
}
@ -1471,8 +1471,8 @@ static void CreateFogHorizontalSprites(void)
{
sprite = &gSprites[spriteId];
sprite->tSpriteColumn = i % 5;
sprite->pos1.x = (i % 5) * 64 + 32;
sprite->pos1.y = (i / 5) * 64 + 32;
sprite->x = (i % 5) * 64 + 32;
sprite->y = (i / 5) * 64 + 32;
gWeatherPtr->sprites.s2.fogHSprites[i] = sprite;
}
else
@ -1700,12 +1700,12 @@ static void UpdateAshSprite(struct Sprite *sprite)
sprite->tOffsetY++;
}
sprite->pos1.y = gSpriteCoordOffsetY + sprite->tOffsetY;
sprite->pos1.x = gWeatherPtr->ashBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271)
sprite->y = gSpriteCoordOffsetY + sprite->tOffsetY;
sprite->x = gWeatherPtr->ashBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->x > 271)
{
sprite->pos1.x = gWeatherPtr->ashBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF;
sprite->x = gWeatherPtr->ashBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->x &= 0x1FF;
}
}
@ -1910,12 +1910,12 @@ static void DestroyFogDiagonalSprites(void)
static void UpdateFogDiagonalSprite(struct Sprite *sprite)
{
sprite->pos2.y = gWeatherPtr->fogDPosY;
sprite->pos1.x = gWeatherPtr->fogDBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271)
sprite->y2 = gWeatherPtr->fogDPosY;
sprite->x = gWeatherPtr->fogDBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->x > 271)
{
sprite->pos1.x = gWeatherPtr->fogDBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF;
sprite->x = gWeatherPtr->fogDBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->x &= 0x1FF;
}
}
@ -2186,12 +2186,12 @@ static void CreateSwirlSandstormSprites(void)
static void UpdateSandstormSprite(struct Sprite *sprite)
{
sprite->pos2.y = gWeatherPtr->sandstormPosY;
sprite->pos1.x = gWeatherPtr->sandstormBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271)
sprite->y2 = gWeatherPtr->sandstormPosY;
sprite->x = gWeatherPtr->sandstormBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->x > 271)
{
sprite->pos1.x = gWeatherPtr->sandstormBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF;
sprite->x = gWeatherPtr->sandstormBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->x &= 0x1FF;
}
}
@ -2205,16 +2205,16 @@ static void UpdateSandstormSwirlSprite(struct Sprite *sprite)
{
u32 x, y;
if (--sprite->pos1.y < -48)
if (--sprite->y < -48)
{
sprite->pos1.y = 208;
sprite->y = 208;
sprite->tRadius = 4;
}
x = sprite->tRadius * gSineTable[sprite->tWaveIndex];
y = sprite->tRadius * gSineTable[sprite->tWaveIndex + 0x40];
sprite->pos2.x = x >> 8;
sprite->pos2.y = y >> 8;
sprite->x2 = x >> 8;
sprite->y2 = y >> 8;
sprite->tWaveIndex = (sprite->tWaveIndex + 10) & 0xFF;
if (++sprite->tRadiusCounter > 8)
{
@ -2404,17 +2404,17 @@ static void UpdateBubbleSprite(struct Sprite *sprite)
sprite->tScrollXCounter = 0;
if (sprite->tScrollXDir == 0)
{
if (++sprite->pos2.x > 4)
if (++sprite->x2 > 4)
sprite->tScrollXDir = 1;
}
else
{
if (--sprite->pos2.x <= 0)
if (--sprite->x2 <= 0)
sprite->tScrollXDir = 0;
}
}
sprite->pos1.y -= 3;
sprite->y -= 3;
if (++sprite->tCounter >= 120)
DestroySprite(sprite);
}

View File

@ -555,8 +555,8 @@ static void CutGrassSpriteCallback1(struct Sprite *sprite)
static void CutGrassSpriteCallback2(struct Sprite *sprite)
{
sprite->pos2.x = Sin(sprite->data[2], sprite->data[0]);
sprite->pos2.y = Cos(sprite->data[2], sprite->data[0]);
sprite->x2 = Sin(sprite->data[2], sprite->data[0]);
sprite->y2 = Cos(sprite->data[2], sprite->data[0]);
sprite->data[2] = (sprite->data[2] + 8) & 0xFF;
sprite->data[0] += 1 + (sprite->data[3] >> 2); // right shift by 2 is dividing by 4

View File

@ -1297,10 +1297,10 @@ u8 CreateRecordMixingLights(void)
else
{
struct Sprite *sprite = &gSprites[spriteId];
GetMapCoordsFromSpritePos(16, 13, &sprite->pos1.x, &sprite->pos1.y);
GetMapCoordsFromSpritePos(16, 13, &sprite->x, &sprite->y);
sprite->coordOffsetEnabled = TRUE;
sprite->pos1.x += 16;
sprite->pos1.y += 2;
sprite->x += 16;
sprite->y += 2;
}
return spriteId;
}

View File

@ -928,8 +928,8 @@ static bool32 TryCallPassAreaFunction(u8 taskId, u8 cursorArea)
return FALSE;
}
sPassData->cursorX = sPassGfx->cursorSprite->pos1.x;
sPassData->cursorY = sPassGfx->cursorSprite->pos1.y;
sPassData->cursorX = sPassGfx->cursorSprite->x;
sPassData->cursorY = sPassGfx->cursorSprite->y;
return TRUE;
}
@ -937,33 +937,33 @@ static void Task_HandleFrontierPassInput(u8 taskId)
{
u8 var = FALSE; // Reused, first informs whether the cursor moves, then used as the new cursor area.
if (JOY_HELD(DPAD_UP) && sPassGfx->cursorSprite->pos1.y >= 9)
if (JOY_HELD(DPAD_UP) && sPassGfx->cursorSprite->y >= 9)
{
sPassGfx->cursorSprite->pos1.y -= 2;
if (sPassGfx->cursorSprite->pos1.y <= 7)
sPassGfx->cursorSprite->pos1.y = 2;
sPassGfx->cursorSprite->y -= 2;
if (sPassGfx->cursorSprite->y <= 7)
sPassGfx->cursorSprite->y = 2;
var = TRUE;
}
if (JOY_HELD(DPAD_DOWN) && sPassGfx->cursorSprite->pos1.y <= 135)
if (JOY_HELD(DPAD_DOWN) && sPassGfx->cursorSprite->y <= 135)
{
sPassGfx->cursorSprite->pos1.y += 2;
if (sPassGfx->cursorSprite->pos1.y >= 137)
sPassGfx->cursorSprite->pos1.y = 136;
sPassGfx->cursorSprite->y += 2;
if (sPassGfx->cursorSprite->y >= 137)
sPassGfx->cursorSprite->y = 136;
var = TRUE;
}
if (JOY_HELD(DPAD_LEFT) && sPassGfx->cursorSprite->pos1.x >= 6)
if (JOY_HELD(DPAD_LEFT) && sPassGfx->cursorSprite->x >= 6)
{
sPassGfx->cursorSprite->pos1.x -= 2;
if (sPassGfx->cursorSprite->pos1.x <= 4)
sPassGfx->cursorSprite->pos1.x = 5;
sPassGfx->cursorSprite->x -= 2;
if (sPassGfx->cursorSprite->x <= 4)
sPassGfx->cursorSprite->x = 5;
var = TRUE;
}
if (JOY_HELD(DPAD_RIGHT) && sPassGfx->cursorSprite->pos1.x <= 231)
if (JOY_HELD(DPAD_RIGHT) && sPassGfx->cursorSprite->x <= 231)
{
sPassGfx->cursorSprite->pos1.x += 2;
if (sPassGfx->cursorSprite->pos1.x >= 233)
sPassGfx->cursorSprite->pos1.x = 232;
sPassGfx->cursorSprite->x += 2;
if (sPassGfx->cursorSprite->x >= 233)
sPassGfx->cursorSprite->x = 232;
var = TRUE;
}
@ -998,7 +998,7 @@ static void Task_HandleFrontierPassInput(u8 taskId)
}
else
{
var = GetCursorAreaFromCoords(sPassGfx->cursorSprite->pos1.x - 5, sPassGfx->cursorSprite->pos1.y + 5);
var = GetCursorAreaFromCoords(sPassGfx->cursorSprite->x - 5, sPassGfx->cursorSprite->y + 5);
if (sPassData->cursorArea != var)
{
PrintAreaDescription(var);
@ -1475,7 +1475,7 @@ static void Task_HandleFrontierMap(u8 taskId)
}
else
{
sMapData->cursorSprite->pos1.y += 4;
sMapData->cursorSprite->y += 4;
data[1]++;
}
return;
@ -1488,7 +1488,7 @@ static void Task_HandleFrontierMap(u8 taskId)
}
else
{
sMapData->cursorSprite->pos1.y -= 4;
sMapData->cursorSprite->y -= 4;
data[1]++;
}
return;
@ -1670,11 +1670,11 @@ static void HandleFrontierMapCursorMove(u8 direction)
AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (oldCursorPos * 16) + 1, sTextColors[1], 0, sMapLandmarks[oldCursorPos].name);
AddTextPrinterParameterized3(MAP_WINDOW_NAME, 7, 4, (sMapData->cursorPos * 16) + 1, sTextColors[2], 0, sMapLandmarks[sMapData->cursorPos].name);
sMapData->cursorSprite->pos1.y = (sMapData->cursorPos * 16) + 8;
sMapData->cursorSprite->y = (sMapData->cursorPos * 16) + 8;
StartSpriteAnim(sMapData->mapIndicatorSprite, sMapLandmarks[sMapData->cursorPos].animNum);
sMapData->mapIndicatorSprite->pos1.x = sMapLandmarks[sMapData->cursorPos].x;
sMapData->mapIndicatorSprite->pos1.y = sMapLandmarks[sMapData->cursorPos].y;
sMapData->mapIndicatorSprite->x = sMapLandmarks[sMapData->cursorPos].x;
sMapData->mapIndicatorSprite->y = sMapLandmarks[sMapData->cursorPos].y;
FillWindowPixelBuffer(MAP_WINDOW_DESCRIPTION, PIXEL_FILL(0));
AddTextPrinterParameterized3(MAP_WINDOW_DESCRIPTION, 1, 4, 0, sTextColors[0], 0, sMapLandmarks[sMapData->cursorPos].description);

View File

@ -717,9 +717,9 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId)
{
gTasks[taskId].tFrameCount--;
}
else if (gSprites[gTasks[taskId].tPlayerSpriteID].pos1.x != 192)
else if (gSprites[gTasks[taskId].tPlayerSpriteID].x != 192)
{
gSprites[gTasks[taskId].tPlayerSpriteID].pos1.x++;
gSprites[gTasks[taskId].tPlayerSpriteID].x++;
}
else
{
@ -1345,18 +1345,18 @@ static bool8 LoadHofBgs(void)
static void SpriteCB_GetOnScreenAndAnimate(struct Sprite *sprite)
{
if (sprite->pos1.x != sprite->tDestinationX
|| sprite->pos1.y != sprite->tDestinationY)
if (sprite->x != sprite->tDestinationX
|| sprite->y != sprite->tDestinationY)
{
if (sprite->pos1.x < sprite->tDestinationX)
sprite->pos1.x += 15;
if (sprite->pos1.x > sprite->tDestinationX)
sprite->pos1.x -= 15;
if (sprite->x < sprite->tDestinationX)
sprite->x += 15;
if (sprite->x > sprite->tDestinationX)
sprite->x -= 15;
if (sprite->pos1.y < sprite->tDestinationY)
sprite->pos1.y += 10;
if (sprite->pos1.y > sprite->tDestinationY)
sprite->pos1.y -= 10;
if (sprite->y < sprite->tDestinationY)
sprite->y += 10;
if (sprite->y > sprite->tDestinationY)
sprite->y -= 10;
}
else
{
@ -1378,7 +1378,7 @@ static void SpriteCB_GetOnScreenAndAnimate(struct Sprite *sprite)
static void SpriteCB_HofConfetti(struct Sprite* sprite)
{
if (sprite->pos2.y > 120)
if (sprite->y2 > 120)
{
DestroySprite(sprite);
}
@ -1387,12 +1387,12 @@ static void SpriteCB_HofConfetti(struct Sprite* sprite)
u16 rand;
u8 sineIdx;
sprite->pos2.y++;
sprite->pos2.y += sprite->sExtraY;
sprite->y2++;
sprite->y2 += sprite->sExtraY;
sineIdx = sprite->sSineIdx;
rand = (Random() % 4) + 8;
sprite->pos2.x = rand * gSineTable[sineIdx] / 256;
sprite->x2 = rand * gSineTable[sineIdx] / 256;
sprite->sSineIdx += 4;
}

View File

@ -1490,8 +1490,8 @@ static void SpriteCB_Volbeat(struct Sprite *sprite)
sprite->sState++;
// fallthrough
case VOLBEAT_ENTER:
sprite->pos1.x -= 4;
if (sprite->pos1.x == 60)
sprite->x -= 4;
if (sprite->x == 60)
{
sprite->sState = VOLBEAT_WAIT_STATE;
sprite->sStateDelay = 20;
@ -1499,9 +1499,9 @@ static void SpriteCB_Volbeat(struct Sprite *sprite)
}
break;
case VOLBEAT_ZIP_BACKWARD:
sprite->pos1.x += 8;
sprite->pos1.y -= 2;
if (sprite->pos1.x == 124)
sprite->x += 8;
sprite->y -= 2;
if (sprite->x == 124)
{
sprite->sState = VOLBEAT_WAIT_STATE;
sprite->sStateDelay = 20;
@ -1509,8 +1509,8 @@ static void SpriteCB_Volbeat(struct Sprite *sprite)
}
break;
case VOLBEAT_ZIP_DOWN:
sprite->pos1.y += 4;
if (sprite->pos1.y == 80)
sprite->y += 4;
if (sprite->y == 80)
{
sprite->sState = VOLBEAT_WAIT_STATE;
sprite->sStateDelay = 10;
@ -1518,9 +1518,9 @@ static void SpriteCB_Volbeat(struct Sprite *sprite)
}
break;
case VOLBEAT_ZIP_FORWARD:
sprite->pos1.x -= 8;
sprite->pos1.y -= 2;
if (sprite->pos1.x == 60)
sprite->x -= 8;
sprite->y -= 2;
if (sprite->x == 60)
{
sprite->sState = VOLBEAT_WAIT_STATE;
sprite->sStateDelay = 10;
@ -1528,15 +1528,15 @@ static void SpriteCB_Volbeat(struct Sprite *sprite)
}
break;
case VOLBEAT_INIT_FIGURE_8:
sprite->pos1.x += 60;
sprite->x += 60;
sprite->sSinXIdx = 0xC0;
sprite->sSinYIdx = 0x80;
sprite->sFig8Loops = 3;
sprite->sState++;
// fallthrough
case VOLBEAT_FIGURE_8:
sprite->pos2.x = Sin((u8)sprite->sSinXIdx, 0x3C);
sprite->pos2.y = Sin((u8)sprite->sSinYIdx, 0x14);
sprite->x2 = Sin((u8)sprite->sSinXIdx, 0x3C);
sprite->y2 = Sin((u8)sprite->sSinYIdx, 0x14);
sprite->sSinXIdx += 2;
sprite->sSinYIdx += 4;
if ((sprite->sSinXIdx & 0xFF) == 64)
@ -1544,22 +1544,22 @@ static void SpriteCB_Volbeat(struct Sprite *sprite)
sprite->hFlip = FALSE;
if (--sprite->sFig8Loops == 0)
{
sprite->pos1.x += sprite->pos2.x;
sprite->pos2.x = 0;
sprite->x += sprite->x2;
sprite->x2 = 0;
sprite->sState++;
}
}
break;
case VOLBEAT_EXIT:
sprite->pos1.x -= 2;
sprite->pos2.y = Sin((u8)sprite->sSinYIdx, 0x14);
sprite->x -= 2;
sprite->y2 = Sin((u8)sprite->sSinYIdx, 0x14);
sprite->sSinYIdx += 4;
if (sprite->pos1.x < -16)
if (sprite->x < -16)
DestroySprite(sprite);
break;
case VOLBEAT_WAIT_STATE:
// Wait for state progression, fly idly until then
sprite->pos2.y = Cos((u8)sprite->sCosYIdx, 2);
sprite->y2 = Cos((u8)sprite->sCosYIdx, 2);
if (!--sprite->sStateDelay)
sprite->sState = sprite->sNextState;
break;
@ -1598,7 +1598,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite)
sprite->sMoveTimer += 64;
if (sprite->sMoveTimer & 0xFF00)
{
sprite->pos1.x--;
sprite->x--;
sprite->sMoveTimer &= 0xFF;
}
}
@ -1609,7 +1609,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite)
sprite->sMoveTimer += 32;
if (sprite->sMoveTimer & 0xFF00)
{
sprite->pos1.x++;
sprite->x++;
sprite->sMoveTimer &= 0xFF;
}
}
@ -1626,7 +1626,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite)
sprite->sMoveTimer += 64;
if (sprite->sMoveTimer & 0xFF00)
{
sprite->pos1.x--;
sprite->x--;
sprite->sMoveTimer &= 0xFF;
}
}
@ -1638,9 +1638,9 @@ static void SpriteCB_Torchic(struct Sprite *sprite)
break;
case 4:
if (sprite->animEnded)
sprite->pos1.x += 4;
sprite->x += 4;
if (sprite->pos1.x > 336)
if (sprite->x > 336)
{
StartSpriteAnim(sprite, TORCHIC_ANIM_RUN);
sprite->sState++;
@ -1648,7 +1648,7 @@ static void SpriteCB_Torchic(struct Sprite *sprite)
break;
case 5:
if (gIntroFrameCounter >= TIMER_TORCHIC_EXIT)
sprite->pos1.x -= 2;
sprite->x -= 2;
break;
}
}
@ -1668,18 +1668,18 @@ static void SpriteCB_Manectric(struct Sprite *sprite)
sprite->sState++;
break;
case 1:
sprite->pos1.x -= 2;
sprite->x -= 2;
if (gIntroFrameCounter != TIMER_MANECTRIC_RUN_CIRCULAR)
break;
// Initialize circular pattern running
sprite->pos1.y -= 12;
sprite->y -= 12;
sprite->sSinIdx = 0x80;
sprite->sCosIdx = 0;
sprite->sState++;
// fallthrough
case 2:
if (sprite->pos1.x + sprite->pos2.x <= -32)
if (sprite->x + sprite->x2 <= -32)
{
// Manectric is offscreen now, destroy it
DestroySprite(sprite);
@ -1689,16 +1689,16 @@ static void SpriteCB_Manectric(struct Sprite *sprite)
// Run in circular pattern
if ((sprite->sSinIdx & 0xFF) < 64)
{
sprite->pos2.x = Sin((u8)sprite->sSinIdx, 16);
sprite->x2 = Sin((u8)sprite->sSinIdx, 16);
}
else
{
if ((sprite->sSinIdx & 0xFF) == 64)
sprite->pos1.x -= 48;
sprite->pos2.x = Sin((u8)sprite->sSinIdx, 64);
sprite->x -= 48;
sprite->x2 = Sin((u8)sprite->sSinIdx, 64);
}
sprite->sSinIdx++;
sprite->pos2.y = Cos((u8)sprite->sCosIdx, 12);
sprite->y2 = Cos((u8)sprite->sCosIdx, 12);
sprite->sCosIdx++;
}
break;
@ -2001,14 +2001,14 @@ static void SpriteCB_GroudonRocks(struct Sprite *sprite)
// Introduce some wobble to the floating
sprite->sTimer++;
if (sprite->sTimer % 2 == 0)
sprite->pos2.y ^= 3;
sprite->y2 ^= 3;
switch(sprite->sState)
{
case 0:
// Rock floats up
sprite->sSpeed += sGroudonRockData[sprite->sRockId][2];
sprite->pos1.y -= (sprite->sSpeed & 0xFF00) >> 8;
sprite->y -= (sprite->sSpeed & 0xFF00) >> 8;
sprite->sSpeed &= 0xFF;
// Check if Groudon scene is ending
@ -2017,15 +2017,15 @@ static void SpriteCB_GroudonRocks(struct Sprite *sprite)
break;
case 1:
// Scene zooms in, move rock offscreen
if (sprite->pos1.x < DISPLAY_WIDTH / 2)
sprite->pos1.x -= 2;
if (sprite->x < DISPLAY_WIDTH / 2)
sprite->x -= 2;
else
sprite->pos1.x += 2;
sprite->x += 2;
if (sprite->pos1.y < DISPLAY_HEIGHT / 2)
sprite->pos1.y -= 2;
if (sprite->y < DISPLAY_HEIGHT / 2)
sprite->y -= 2;
else
sprite->pos1.y += 2;
sprite->y += 2;
break;
}
}
@ -2275,9 +2275,9 @@ static void SpriteCB_KyogreBubbles(struct Sprite *sprite)
{
// Animation has started, float bubbles up
sprite->sSinIdx = (sprite->sSinIdx + 11) & 0xFF;
sprite->pos2.x = Sin(sprite->sSinIdx, 4);
sprite->x2 = Sin(sprite->sSinIdx, 4);
sprite->sBaseY += 48;
sprite->pos2.y = -(sprite->sBaseY >> 8);
sprite->y2 = -(sprite->sBaseY >> 8);
if (sprite->animEnded)
DestroySprite(sprite);
}
@ -2295,17 +2295,17 @@ static void SpriteCB_KyogreBubbles(struct Sprite *sprite)
break;
case 1:
// Scene zooms in, move bubbles offscreen
if (sprite->pos1.x < DISPLAY_WIDTH / 2)
sprite->pos1.x -= 3;
if (sprite->x < DISPLAY_WIDTH / 2)
sprite->x -= 3;
else
sprite->pos1.x += 3;
sprite->x += 3;
if (sprite->pos1.y < DISPLAY_HEIGHT / 2)
sprite->pos1.y -= 3;
if (sprite->y < DISPLAY_HEIGHT / 2)
sprite->y -= 3;
else
sprite->pos1.y += 3;
sprite->y += 3;
if ((u16)(sprite->pos1.y - 20) > DISPLAY_HEIGHT - 20)
if ((u16)(sprite->y - 20) > DISPLAY_HEIGHT - 20)
DestroySprite(sprite);
break;
}
@ -2853,8 +2853,8 @@ static void SpriteCB_WaterDropHalf(struct Sprite *sprite)
if (gSprites[sprite->data[7]].data[7] != 0)
{
sprite->invisible = TRUE;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
sprite->x += sprite->x2;
sprite->y += sprite->y2;
StartSpriteAnim(sprite, DROP_ANIM_RIPPLE);
sprite->data[2] = 1024;
sprite->data[3] = 8 * (sprite->data[1] & 3);
@ -2865,10 +2865,10 @@ static void SpriteCB_WaterDropHalf(struct Sprite *sprite)
}
else
{
sprite->pos2.x = gSprites[sprite->data[7]].pos2.x;
sprite->pos2.y = gSprites[sprite->data[7]].pos2.y;
sprite->pos1.x = gSprites[sprite->data[7]].pos1.x;
sprite->pos1.y = gSprites[sprite->data[7]].pos1.y;
sprite->x2 = gSprites[sprite->data[7]].x2;
sprite->y2 = gSprites[sprite->data[7]].y2;
sprite->x = gSprites[sprite->data[7]].x;
sprite->y = gSprites[sprite->data[7]].y;
}
}
@ -2881,12 +2881,12 @@ static void SpriteCB_WaterDrop(struct Sprite *sprite)
static void SpriteCB_WaterDrop_Slide(struct Sprite *sprite)
{
if (sprite->pos1.x <= 116)
if (sprite->x <= 116)
{
sprite->pos1.y += sprite->pos2.y;
sprite->pos2.y = 0;
sprite->pos1.x += 4;
sprite->pos2.x = -4;
sprite->y += sprite->y2;
sprite->y2 = 0;
sprite->x += 4;
sprite->x2 = -4;
sprite->data[4] = 128;
sprite->callback = SpriteCB_WaterDrop_ReachLeafEnd;
}
@ -2909,10 +2909,10 @@ static void SpriteCB_WaterDrop_Slide(struct Sprite *sprite)
sin1 = gSineTable[(u8)data4];
sin2 = gSineTable[(u8)(data4 + 64)];
sprite->data[4] += 2;
sprite->pos2.y = sin1 / 32;
sprite->pos1.x--;
if (sprite->pos1.x & 1)
sprite->pos1.y++;
sprite->y2 = sin1 / 32;
sprite->x--;
if (sprite->x & 1)
sprite->y++;
temp = -sin2 / 16;
data2 = sprite->data[2];
data3 = sprite->data[3];
@ -2938,8 +2938,8 @@ static void SpriteCB_WaterDrop_ReachLeafEnd(struct Sprite *sprite)
u16 sinIdx;
sprite->data[4] -= 8;
sinIdx = sprite->data[4];
sprite->pos2.x = gSineTable[(u8)(sinIdx + 64)] / 64;
sprite->pos2.y = gSineTable[(u8)sinIdx] / 64;
sprite->x2 = gSineTable[(u8)(sinIdx + 64)] / 64;
sprite->y2 = gSineTable[(u8)sinIdx] / 64;
}
else
{
@ -2956,8 +2956,8 @@ static void SpriteCB_WaterDrop_DangleFromLeaf(struct Sprite *sprite)
sprite->data[4] += 8;
r2 = gSineTable[(u8)sprite->data[4]] / 16 + 64;
sprite->pos2.x = gSineTable[(u8)(r2 + 64)] / 64;
sprite->pos2.y = gSineTable[(u8)r2] / 64;
sprite->x2 = gSineTable[(u8)(r2 + 64)] / 64;
sprite->y2 = gSineTable[(u8)r2] / 64;
}
else
{
@ -2967,16 +2967,16 @@ static void SpriteCB_WaterDrop_DangleFromLeaf(struct Sprite *sprite)
static void SpriteCB_WaterDrop_Fall(struct Sprite *sprite)
{
if (sprite->pos1.y < sprite->data[5])
if (sprite->y < sprite->data[5])
{
sprite->pos1.y += 4;
sprite->y += 4;
}
else
{
sprite->data[7] = 1;
sprite->invisible = TRUE;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
sprite->x += sprite->x2;
sprite->y += sprite->y2;
StartSpriteAnim(sprite, DROP_ANIM_RIPPLE);
sprite->data[2] = 1024;
sprite->data[3] = 8 * (sprite->data[1] & 3);
@ -2991,16 +2991,16 @@ static void SpriteCB_WaterDrop_Fall(struct Sprite *sprite)
// Used by the 2nd and 3rd water drops to skip the leaf slide
static void SpriteCB_WaterDropShort(struct Sprite *sprite)
{
if (sprite->pos1.y < sprite->data[5])
if (sprite->y < sprite->data[5])
{
sprite->pos1.y += 4;
sprite->y += 4;
}
else
{
sprite->data[7] = 1;
sprite->invisible = TRUE;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
sprite->x += sprite->x2;
sprite->y += sprite->y2;
StartSpriteAnim(sprite, DROP_ANIM_RIPPLE);
sprite->data[2] = 1024;
sprite->data[3] = 8 * (sprite->data[1] & 3);
@ -3071,27 +3071,27 @@ static void SpriteCB_PlayerOnBicycle(struct Sprite *sprite)
case 0:
// Move forwards
StartSpriteAnimIfDifferent(sprite, 0);
sprite->pos1.x--;
sprite->x--;
break;
case 1:
// Drift backwards slowly
StartSpriteAnimIfDifferent(sprite, 0);
if (gIntroFrameCounter & 7)
return;
sprite->pos1.x++;
sprite->x++;
break;
case 2:
// Move backwards
if (sprite->pos1.x <= 120 || gIntroFrameCounter & 7)
sprite->pos1.x++;
if (sprite->x <= 120 || gIntroFrameCounter & 7)
sprite->x++;
break;
case 3:
// Bike in place
break;
case 4:
// Exit to the left
if (sprite->pos1.x > -32)
sprite->pos1.x -= 2;
if (sprite->x > -32)
sprite->x -= 2;
break;
}
@ -3099,10 +3099,10 @@ static void SpriteCB_PlayerOnBicycle(struct Sprite *sprite)
return;
// Adjust y position
if (sprite->pos2.y != 0)
if (sprite->y2 != 0)
{
// Return to neutral after wobble
sprite->pos2.y = 0;
sprite->y2 = 0;
}
else
{
@ -3110,14 +3110,14 @@ static void SpriteCB_PlayerOnBicycle(struct Sprite *sprite)
switch (Random() & 3)
{
case 0:
sprite->pos2.y = -1;
sprite->y2 = -1;
break;
case 1:
sprite->pos2.y = 1;
sprite->y2 = 1;
break;
case 2:
case 3:
sprite->pos2.y = 0;
sprite->y2 = 0;
break;
}
}
@ -3133,23 +3133,23 @@ static void SpriteCB_Flygon(struct Sprite *sprite)
case 0:
break;
case 1:
if (sprite->pos2.x + sprite->pos1.x < DISPLAY_WIDTH + 64)
sprite->pos2.x += 8;
if (sprite->x2 + sprite->x < DISPLAY_WIDTH + 64)
sprite->x2 += 8;
else
sprite->sState = 2;
break;
case 2:
if (sprite->pos2.x + sprite->pos1.x > 120)
sprite->pos2.x -= 1;
if (sprite->x2 + sprite->x > 120)
sprite->x2 -= 1;
else
sprite->sState = 3;
break;
case 3:
if (sprite->pos2.x > 0)
sprite->pos2.x -= 2;
if (sprite->x2 > 0)
sprite->x2 -= 2;
break;
}
sprite->pos2.y = Sin((u8)sprite->sSinIdx, 8) - sFlygonYOffset;
sprite->y2 = Sin((u8)sprite->sSinIdx, 8) - sFlygonYOffset;
sprite->sSinIdx += 4;
}
@ -3249,12 +3249,12 @@ static void SpriteCB_LogoLetter(struct Sprite *sprite)
case 5:
// Spread the letters out as they grow
sprite->sLetterX += sGameFreakLettersMoveSpeed[sprite->sLetterId];
sprite->pos2.x = (sprite->sLetterX & 0xFF00) >> 8;
sprite->x2 = (sprite->sLetterX & 0xFF00) >> 8;
if (sprite->sLetterId < 4)
{
// Is in first 4 letters, i.e. "Game"
s16 temp = sprite->pos2.x;
sprite->pos2.x = -temp;
s16 temp = sprite->x2;
sprite->x2 = -temp;
}
if (sprite->affineAnimEnded)
DestroySprite(sprite);
@ -3358,24 +3358,24 @@ static void SpriteCB_FlygonSilhouette(struct Sprite *sprite)
sprite->data[3] = 0;
break;
case 1:
sprite->pos2.x = -Sin((u8)sprite->data[3], 140);
sprite->pos2.y = -Sin((u8)sprite->data[3], 120);
sprite->x2 = -Sin((u8)sprite->data[3], 140);
sprite->y2 = -Sin((u8)sprite->data[3], 120);
sprite->data[1] += 7;
sprite->data[3] += 3;
if (sprite->pos1.x + sprite->pos2.x <= -16)
if (sprite->x + sprite->x2 <= -16)
{
sprite->oam.priority = 3;
sprite->sState++;
sprite->pos1.x = 20;
sprite->pos1.y = 40;
sprite->x = 20;
sprite->y = 40;
sprite->data[1] = 0x200;
sprite->data[2] = 0;
sprite->data[3] = 0x10;
}
break;
case 2:
sprite->pos2.x = Sin((u8)sprite->data[3], 34);
sprite->pos2.y = -Cos((u8)sprite->data[3], 60);
sprite->x2 = Sin((u8)sprite->data[3], 34);
sprite->y2 = -Cos((u8)sprite->data[3], 60);
sprite->data[1] += 2;
if (sprite->data[7] % 5 == 0)
sprite->data[3]++;

View File

@ -1048,15 +1048,15 @@ static void SpriteCB_MovingScenery(struct Sprite *sprite)
DestroySprite(sprite);
break;
case INTROCRED_SCENERY_NORMAL:
x = ((sprite->pos1.x << 16) | (u16)sprite->tXPos) + (u16)sprite->tXOffset;
sprite->pos1.x = x >> 16;
x = ((sprite->x << 16) | (u16)sprite->tXPos) + (u16)sprite->tXOffset;
sprite->x = x >> 16;
sprite->tXPos = x;
if (sprite->pos1.x > 255)
sprite->pos1.x = -32;
if (sprite->x > 255)
sprite->x = -32;
if (sprite->tHasVerticalMove)
sprite->pos2.y = -(gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset);
sprite->y2 = -(gIntroCredits_MovingSceneryVBase + gIntroCredits_MovingSceneryVOffset);
else
sprite->pos2.y = -gIntroCredits_MovingSceneryVBase;
sprite->y2 = -gIntroCredits_MovingSceneryVBase;
break;
}
}
@ -1110,10 +1110,10 @@ static void SpriteCB_Player(struct Sprite *sprite)
static void SpriteCB_Bicycle(struct Sprite* sprite)
{
sprite->invisible = gSprites[sprite->sPlayerSpriteId].invisible;
sprite->pos1.x = gSprites[sprite->sPlayerSpriteId].pos1.x;
sprite->pos1.y = gSprites[sprite->sPlayerSpriteId].pos1.y + 8;
sprite->pos2.x = gSprites[sprite->sPlayerSpriteId].pos2.x;
sprite->pos2.y = gSprites[sprite->sPlayerSpriteId].pos2.y;
sprite->x = gSprites[sprite->sPlayerSpriteId].x;
sprite->y = gSprites[sprite->sPlayerSpriteId].y + 8;
sprite->x2 = gSprites[sprite->sPlayerSpriteId].x2;
sprite->y2 = gSprites[sprite->sPlayerSpriteId].y2;
}
u8 CreateIntroBrendanSprite(s16 x, s16 y)
@ -1143,9 +1143,9 @@ static void SpriteCB_FlygonLeftHalf(struct Sprite *sprite)
static void SpriteCB_FlygonRightHalf(struct Sprite* sprite)
{
sprite->invisible = gSprites[sprite->sLeftSpriteId].invisible;
sprite->pos1.y = gSprites[sprite->sLeftSpriteId].pos1.y;
sprite->pos2.x = gSprites[sprite->sLeftSpriteId].pos2.x;
sprite->pos2.y = gSprites[sprite->sLeftSpriteId].pos2.y;
sprite->y = gSprites[sprite->sLeftSpriteId].y;
sprite->x2 = gSprites[sprite->sLeftSpriteId].x2;
sprite->y2 = gSprites[sprite->sLeftSpriteId].y2;
}
// In RS these were for Latios/Latias. In Emerald both are replaced with Flygon and now only 1 is used

View File

@ -432,7 +432,7 @@ void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets)
struct Sprite *sprite = &gSprites[gBagMenu->spriteId[0]];
if (isSwitchingPockets)
{
sprite->pos2.y = -5;
sprite->y2 = -5;
sprite->callback = SpriteCB_BagVisualSwitchingPockets;
sprite->data[0] = bagPocketId + 1;
StartSpriteAnim(sprite, 0);
@ -445,9 +445,9 @@ void SetBagVisualPocketId(u8 bagPocketId, bool8 isSwitchingPockets)
static void SpriteCB_BagVisualSwitchingPockets(struct Sprite *sprite)
{
if (sprite->pos2.y != 0)
if (sprite->y2 != 0)
{
sprite->pos2.y++;
sprite->y2++;
}
else
{
@ -526,8 +526,8 @@ void AddBagItemIconSprite(u16 itemId, u8 id)
if (iconSpriteId != MAX_SPRITES)
{
*spriteId = iconSpriteId;
gSprites[iconSpriteId].pos2.x = 24;
gSprites[iconSpriteId].pos2.y = 88;
gSprites[iconSpriteId].x2 = 24;
gSprites[iconSpriteId].y2 = 88;
}
}
}

View File

@ -880,8 +880,8 @@ void UpdateWirelessStatusIndicatorSprite(void)
sprite->sFrameDelay++;
}
gMain.oamBuffer[125] = sWirelessStatusIndicatorOamData;
gMain.oamBuffer[125].x = sprite->pos1.x + sprite->centerToCornerVecX;
gMain.oamBuffer[125].y = sprite->pos1.y + sprite->centerToCornerVecY;
gMain.oamBuffer[125].x = sprite->x + sprite->centerToCornerVecX;
gMain.oamBuffer[125].y = sprite->y + sprite->centerToCornerVecY;
gMain.oamBuffer[125].paletteNum = sprite->oam.paletteNum;
gMain.oamBuffer[125].tileNum = sprite->sTileStart + sprite->anims[sprite->sCurrAnimNum][sprite->sFrameIdx].frame.imageValue;
CpuCopy16(gMain.oamBuffer + 125, (struct OamData *)OAM + 125, sizeof(struct OamData));

View File

@ -1024,11 +1024,11 @@ static void SpriteCallback_ScrollIndicatorArrow(struct Sprite *sprite)
{
case 0:
multiplier = sprite->tMultiplier;
sprite->pos2.x = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256;
sprite->x2 = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256;
break;
case 1:
multiplier = sprite->tMultiplier;
sprite->pos2.y = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256;
sprite->y2 = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256;
break;
}
sprite->tSinePos += sprite->tFrequency;
@ -1364,8 +1364,8 @@ static void ListMenuUpdateRedOutlineCursorObject(u8 taskId, u16 x, u16 y)
{
struct RedOutlineCursor *data = (void*) gTasks[taskId].data;
gSprites[data->spriteId].pos1.x = x + 120;
gSprites[data->spriteId].pos1.y = y + 120;
gSprites[data->spriteId].x = x + 120;
gSprites[data->spriteId].y = y + 120;
}
static void ListMenuRemoveRedOutlineCursorObject(u8 taskId)
@ -1385,7 +1385,7 @@ static void ListMenuRemoveRedOutlineCursorObject(u8 taskId)
static void SpriteCallback_RedArrowCursor(struct Sprite *sprite)
{
sprite->pos2.x = gSineTable[(u8)(sprite->data[0])] / 64;
sprite->x2 = gSineTable[(u8)(sprite->data[0])] / 64;
sprite->data[0] += 8;
}
@ -1429,8 +1429,8 @@ static u8 ListMenuAddRedArrowCursorObject(struct CursorStruct *cursor)
spriteTemplate.paletteTag = cursor->palTag;
data->spriteId = CreateSprite(&spriteTemplate, cursor->left, cursor->top, 0);
gSprites[data->spriteId].pos2.x = 8;
gSprites[data->spriteId].pos2.y = 8;
gSprites[data->spriteId].x2 = 8;
gSprites[data->spriteId].y2 = 8;
if (cursor->palTag == SPRITE_INVALID_TAG)
{
@ -1444,8 +1444,8 @@ static void ListMenuUpdateRedArrowCursorObject(u8 taskId, u16 x, u16 y)
{
struct RedArrowCursor *data = (void*) gTasks[taskId].data;
gSprites[data->spriteId].pos1.x = x;
gSprites[data->spriteId].pos1.y = y;
gSprites[data->spriteId].x = x;
gSprites[data->spriteId].y = y;
}
static void ListMenuRemoveRedArrowCursorObject(u8 taskId)

View File

@ -1306,8 +1306,8 @@ static void Task_NewGameBirchSpeech_WaitToShowBirch(u8 taskId)
else
{
spriteId = gTasks[taskId].tBirchSpriteId;
gSprites[spriteId].pos1.x = 136;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].x = 136;
gSprites[spriteId].y = 60;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
NewGameBirchSpeech_StartFadeInTarget1OutTarget2(taskId, 10);
@ -1369,8 +1369,8 @@ static void Task_NewGameBirchSpeechSub_InitPokeBall(u8 taskId)
{
u8 spriteId = gTasks[sBirchSpeechMainTaskId].tLotadSpriteId;
gSprites[spriteId].pos1.x = 100;
gSprites[spriteId].pos1.y = 75;
gSprites[spriteId].x = 100;
gSprites[spriteId].y = 75;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].data[0] = 0;
@ -1459,8 +1459,8 @@ static void Task_NewGameBirchSpeech_StartPlayerFadeIn(u8 taskId)
{
u8 spriteId = gTasks[taskId].tBrendanSpriteId;
gSprites[spriteId].pos1.x = 180;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].x = 180;
gSprites[spriteId].y = 60;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
gTasks[taskId].tPlayerSpriteId = spriteId;
@ -1533,7 +1533,7 @@ static void Task_NewGameBirchSpeech_SlideOutOldGenderSprite(u8 taskId)
u8 spriteId = gTasks[taskId].tPlayerSpriteId;
if (gTasks[taskId].tIsDoneFadingSprites == 0)
{
gSprites[spriteId].pos1.x += 4;
gSprites[spriteId].x += 4;
}
else
{
@ -1542,8 +1542,8 @@ static void Task_NewGameBirchSpeech_SlideOutOldGenderSprite(u8 taskId)
spriteId = gTasks[taskId].tMaySpriteId;
else
spriteId = gTasks[taskId].tBrendanSpriteId;
gSprites[spriteId].pos1.x = DISPLAY_WIDTH;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].x = DISPLAY_WIDTH;
gSprites[spriteId].y = 60;
gSprites[spriteId].invisible = FALSE;
gTasks[taskId].tPlayerSpriteId = spriteId;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
@ -1556,13 +1556,13 @@ static void Task_NewGameBirchSpeech_SlideInNewGenderSprite(u8 taskId)
{
u8 spriteId = gTasks[taskId].tPlayerSpriteId;
if (gSprites[spriteId].pos1.x > 180)
if (gSprites[spriteId].x > 180)
{
gSprites[spriteId].pos1.x -= 4;
gSprites[spriteId].x -= 4;
}
else
{
gSprites[spriteId].pos1.x = 180;
gSprites[spriteId].x = 180;
if (gTasks[taskId].tIsDoneFadingSprites)
{
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_NORMAL;
@ -1663,13 +1663,13 @@ static void Task_NewGameBirchSpeech_ReshowBirchLotad(u8 taskId)
gSprites[gTasks[taskId].tBrendanSpriteId].invisible = TRUE;
gSprites[gTasks[taskId].tMaySpriteId].invisible = TRUE;
spriteId = gTasks[taskId].tBirchSpriteId;
gSprites[spriteId].pos1.x = 136;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].x = 136;
gSprites[spriteId].y = 60;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
spriteId = gTasks[taskId].tLotadSpriteId;
gSprites[spriteId].pos1.x = 100;
gSprites[spriteId].pos1.y = 75;
gSprites[spriteId].x = 100;
gSprites[spriteId].y = 75;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
NewGameBirchSpeech_StartFadeInTarget1OutTarget2(taskId, 2);
@ -1716,8 +1716,8 @@ static void Task_NewGameBirchSpeech_AreYouReady(u8 taskId)
spriteId = gTasks[taskId].tMaySpriteId;
else
spriteId = gTasks[taskId].tBrendanSpriteId;
gSprites[spriteId].pos1.x = 120;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].x = 120;
gSprites[spriteId].y = 60;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
gTasks[taskId].tPlayerSpriteId = spriteId;
@ -1833,8 +1833,8 @@ static void CB2_NewGameBirchSpeech_ReturnFromNamingScreen(void)
gTasks[taskId].tPlayerGender = MALE;
spriteId = gTasks[taskId].tBrendanSpriteId;
}
gSprites[spriteId].pos1.x = 180;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].x = 180;
gSprites[spriteId].y = 60;
gSprites[spriteId].invisible = FALSE;
gTasks[taskId].tPlayerSpriteId = spriteId;
SetGpuReg(REG_OFFSET_BG1HOFS, -60);
@ -1869,8 +1869,8 @@ static void SpriteCB_MovePlayerDownWhileShrinking(struct Sprite *sprite)
{
u32 y;
y = (sprite->pos1.y << 16) + sprite->data[0] + 0xC000;
sprite->pos1.y = y >> 16;
y = (sprite->y << 16) + sprite->data[0] + 0xC000;
sprite->y = y >> 16;
sprite->data[0] = y;
}

View File

@ -438,10 +438,10 @@ void UpdateSwapLineSpritesPos(u8 *spriteIds, u8 count, s16 x, u16 y)
for (i = 0; i < count; i++)
{
if (i == count - 1 && unknownBit)
gSprites[spriteIds[i]].pos2.x = x - 8;
gSprites[spriteIds[i]].x2 = x - 8;
else
gSprites[spriteIds[i]].pos2.x = x;
gSprites[spriteIds[i]].x2 = x;
gSprites[spriteIds[i]].pos1.y = 1 + y;
gSprites[spriteIds[i]].y = 1 + y;
}
}

View File

@ -1310,13 +1310,13 @@ static void SetConditionSparklePosition(struct Sprite *sprite)
if (mon != NULL)
{
sprite->pos1.x = mon->pos1.x + mon->pos2.x + sConditionSparkleCoords[sprite->sSparkleId][0];
sprite->pos1.y = mon->pos1.y + mon->pos2.y + sConditionSparkleCoords[sprite->sSparkleId][1];
sprite->x = mon->x + mon->x2 + sConditionSparkleCoords[sprite->sSparkleId][0];
sprite->y = mon->y + mon->y2 + sConditionSparkleCoords[sprite->sSparkleId][1];
}
else
{
sprite->pos1.x = sConditionSparkleCoords[sprite->sSparkleId][0] + 40;
sprite->pos1.y = sConditionSparkleCoords[sprite->sSparkleId][1] + 104;
sprite->x = sConditionSparkleCoords[sprite->sSparkleId][0] + 40;
sprite->y = sConditionSparkleCoords[sprite->sSparkleId][1] + 104;
}
}

View File

@ -242,10 +242,10 @@ static void Task_StaticCountdown_Init(u8 taskId)
StaticCountdown_CreateSprites(taskId, data);
StartSpriteAnim(&gSprites[tSpriteIds(1)], ANIM_START_MID);
gSprites[tSpriteIds(1)].pos2.x = -32;
gSprites[tSpriteIds(1)].x2 = -32;
StartSpriteAnim(&gSprites[tSpriteIds(2)], ANIM_START_RIGHT);
gSprites[tSpriteIds(2)].pos2.x = 32;
gSprites[tSpriteIds(2)].x2 = 32;
}
static void Task_StaticCountdown_Free(u8 taskId)
@ -477,7 +477,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId)
break;
case 4:
// Moving up from jump
sprite->pos1.y -= 4;
sprite->y -= 4;
if (++sprite->sTimer >= 8)
{
if (sprite->sAnimNum < 2)
@ -497,7 +497,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId)
break;
case 5:
// Falling after jump
sprite->pos1.y += 4;
sprite->y += 4;
if (++sprite->sTimer >= 8)
{
// Land from jump
@ -528,8 +528,8 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId)
// First argument is unused.
static void InitStartGraphic(u8 spriteId1, u8 spriteId2, u8 spriteId3)
{
gSprites[spriteId2].pos2.y = -40;
gSprites[spriteId3].pos2.y = -40;
gSprites[spriteId2].y2 = -40;
gSprites[spriteId3].y2 = -40;
gSprites[spriteId2].invisible = FALSE;
gSprites[spriteId3].invisible = FALSE;
gSprites[spriteId2].callback = SpriteCB_Start;
@ -555,16 +555,16 @@ static void SpriteCB_Start(struct Sprite *sprite)
{
case 0:
sYSpeed = 64;
sY = sprite->pos2.y << 4;
sY = sprite->y2 << 4;
sState++;
case 1:
sY += sYSpeed;
sYSpeed++;
sprite->pos2.y = sY >> 4;
if (sprite->pos2.y >= 0)
sprite->y2 = sY >> 4;
if (sprite->y2 >= 0)
{
PlaySE(SE_BALL_BOUNCE_2);
sprite->pos2.y = 0;
sprite->y2 = 0;
sState++;
}
break;
@ -577,7 +577,7 @@ static void SpriteCB_Start(struct Sprite *sprite)
sState++;
}
y = gSineTable[sTimer];
sprite->pos2.y = -(y >> 4);
sprite->y2 = -(y >> 4);
break;
case 3:
sTimer += 16;
@ -587,7 +587,7 @@ static void SpriteCB_Start(struct Sprite *sprite)
sTimer = 0;
sState++;
}
sprite->pos2.y = -(gSineTable[sTimer] >> 5);
sprite->y2 = -(gSineTable[sTimer] >> 5);
break;
case 4:
if (++sTimer > 40)

View File

@ -356,10 +356,10 @@ static void PlayerDescendMirageTower(u8 taskId)
TryGetObjectEventIdByLocalIdAndMap(LOCALID_ROUTE111_PLAYER_FALLING, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId);
fallingPlayer = &gObjectEvents[objectEventId];
gSprites[fallingPlayer->spriteId].pos2.y += 4;
gSprites[fallingPlayer->spriteId].y2 += 4;
player = &gObjectEvents[gPlayerAvatar.objectEventId];
if ((gSprites[fallingPlayer->spriteId].pos1.y + gSprites[fallingPlayer->spriteId].pos2.y) >=
(gSprites[player->spriteId].pos1.y + gSprites[player->spriteId].pos2.y))
if ((gSprites[fallingPlayer->spriteId].y + gSprites[fallingPlayer->spriteId].y2) >=
(gSprites[player->spriteId].y + gSprites[player->spriteId].y2))
{
DestroyTask(taskId);
EnableBothScriptContexts();
@ -467,8 +467,8 @@ static void CreateCeilingCrumbleSprites(void)
static void SpriteCB_CeilingCrumble(struct Sprite* sprite)
{
sprite->data[1] += 2;
sprite->pos2.y = sprite->data[1] / 2;
if(((sprite->pos1.y) + (sprite->pos2.y)) > sCeilingCrumblePositions[sprite->data[0]][2])
sprite->y2 = sprite->data[1] / 2;
if(((sprite->y) + (sprite->y2)) > sCeilingCrumblePositions[sprite->data[0]][2])
{
DestroySprite(sprite);
IncrementCeilingCrumbleFinishedCount();
@ -688,7 +688,7 @@ static void Task_FossilFallAndSink(u8 taskId)
fossilTemplate.images = sFallingFossil->frameImage;
sFallingFossil->spriteId = CreateSprite(&fossilTemplate, 128, -16, 1);
gSprites[sFallingFossil->spriteId].centerToCornerVecX = 0;
gSprites[sFallingFossil->spriteId].data[0] = gSprites[sFallingFossil->spriteId].pos1.x;
gSprites[sFallingFossil->spriteId].data[0] = gSprites[sFallingFossil->spriteId].x;
gSprites[sFallingFossil->spriteId].data[1] = 1;
}
case 5:
@ -731,7 +731,7 @@ static void SpriteCB_FallingFossil(struct Sprite *sprite)
// End animation
sprite->callback = SpriteCallbackDummy;
}
else if (sprite->pos1.y >= 96)
else if (sprite->y >= 96)
{
// Fossil has reached the ground, update disintegration animation
u8 i;
@ -743,7 +743,7 @@ static void SpriteCB_FallingFossil(struct Sprite *sprite)
else
{
// Fossil is still falling
sprite->pos1.y++;
sprite->y++;
}
}

View File

@ -493,7 +493,7 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 baseTileTag, u16 base
return;
}
}
sMenu->windowSprites[1]->pos1.y = y + 96;
sMenu->windowSprites[1]->y = y + 96;
// Create marking sprites
@ -526,8 +526,8 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 baseTileTag, u16 base
sMenu->textSprite->oam.shape = SPRITE_SHAPE(32x32);
sMenu->textSprite->oam.size = SPRITE_SIZE(32x32);
StartSpriteAnim(sMenu->textSprite, ANIM_TEXT);
sMenu->textSprite->pos1.x = x + 32;
sMenu->textSprite->pos1.y = y + 80;
sMenu->textSprite->x = x + 32;
sMenu->textSprite->y = y + 80;
CalcCenterToCornerVec(sMenu->textSprite, SPRITE_SHAPE(32x16), SPRITE_SIZE(32x16), ST_OAM_AFFINE_OFF);
}
else
@ -567,7 +567,7 @@ static void SpriteCB_Marking(struct Sprite *sprite)
static void SpriteCB_Cursor(struct Sprite *sprite)
{
sprite->pos1.y = (16 * sMenu->cursorPos) + sprite->sCursorYOffset;
sprite->y = (16 * sMenu->cursorPos) + sprite->sCursorYOffset;
}
#undef sCursorYOffset

View File

@ -1071,7 +1071,7 @@ static void SpriteCB_InputArrow(struct Sprite *sprite)
sprite->sDelay = 8;
sprite->sXPosId = (sprite->sXPosId + 1) & (ARRAY_COUNT(x) - 1);
}
sprite->pos2.x = x[sprite->sXPosId];
sprite->x2 = x[sprite->sXPosId];
}
#undef sDelay
@ -1089,13 +1089,13 @@ static void SpriteCB_Underscore(struct Sprite *sprite)
pos = GetTextEntryPosition();
if (pos != (u8)sprite->sId)
{
sprite->pos2.y = 0;
sprite->y2 = 0;
sprite->sYPosId = 0;
sprite->sDelay = 0;
}
else
{
sprite->pos2.y = y[sprite->sYPosId];
sprite->y2 = y[sprite->sYPosId];
sprite->sDelay++;
if (sprite->sDelay > 8)
{
@ -1134,11 +1134,11 @@ static void SetCursorPos(s16 x, s16 y)
struct Sprite *cursorSprite = &gSprites[sNamingScreen->cursorSpriteId];
if (x < sPageColumnCounts[CurrentPageToKeyboardId()])
cursorSprite->pos1.x = sPageColumnXPos[x + CurrentPageToKeyboardId() * KBCOL_COUNT] + 38;
cursorSprite->x = sPageColumnXPos[x + CurrentPageToKeyboardId() * KBCOL_COUNT] + 38;
else
cursorSprite->pos1.x = 0;
cursorSprite->x = 0;
cursorSprite->pos1.y = y * 16 + 88;
cursorSprite->y = y * 16 + 88;
cursorSprite->sPrevX = cursorSprite->sX;
cursorSprite->sPrevY = cursorSprite->sY;
cursorSprite->sX = x;
@ -1284,11 +1284,11 @@ static bool8 PageSwapSprite_SlideOff(struct Sprite *sprite)
struct Sprite *text = &gSprites[sprite->sTextSpriteId];
struct Sprite *button = &gSprites[sprite->sButtonSpriteId];
text->pos2.y++;
if (text->pos2.y > 7)
text->y2++;
if (text->y2 > 7)
{
sprite->sState++;
text->pos2.y = -4;
text->y2 = -4;
text->invisible = TRUE;
SetPageSwapButtonGfx(PageToNextGfxId(((u8)sprite->sPage + 1) % KBPAGE_COUNT), text, button);
}
@ -1300,10 +1300,10 @@ static bool8 PageSwapSprite_SlideOn(struct Sprite *sprite)
struct Sprite *text = &gSprites[sprite->sTextSpriteId];
text->invisible = FALSE;
text->pos2.y++;
if (text->pos2.y >= 0)
text->y2++;
if (text->y2 >= 0)
{
text->pos2.y = 0;
text->y2 = 0;
sprite->sState = 1; // go to PageSwapSprite_Idle
}
return FALSE;

View File

@ -3199,8 +3199,8 @@ static void SpriteCB_LinkPlayer(struct Sprite *sprite)
{
struct LinkPlayerObjectEvent *linkPlayerObjEvent = &gLinkPlayerObjectEvents[sprite->data[0]];
struct ObjectEvent *objEvent = &gObjectEvents[linkPlayerObjEvent->objEventId];
sprite->pos1.x = objEvent->initialCoords.x;
sprite->pos1.y = objEvent->initialCoords.y;
sprite->x = objEvent->initialCoords.x;
sprite->y = objEvent->initialCoords.y;
SetObjectSubpriorityByZCoord(objEvent->previousElevation, sprite, 1);
sprite->oam.priority = ZCoordToPriority(objEvent->previousElevation);

View File

@ -2831,10 +2831,10 @@ static void MoveAndBufferPartySlot(const void *rectSrc, s16 x, s16 y, s16 width,
static void MovePartyMenuBoxSprites(struct PartyMenuBox *menuBox, s16 offset)
{
gSprites[menuBox->pokeballSpriteId].pos2.x += offset * 8;
gSprites[menuBox->itemSpriteId].pos2.x += offset * 8;
gSprites[menuBox->monSpriteId].pos2.x += offset * 8;
gSprites[menuBox->statusSpriteId].pos2.x += offset * 8;
gSprites[menuBox->pokeballSpriteId].x2 += offset * 8;
gSprites[menuBox->itemSpriteId].x2 += offset * 8;
gSprites[menuBox->monSpriteId].x2 += offset * 8;
gSprites[menuBox->statusSpriteId].x2 += offset * 8;
}
static void SlidePartyMenuBoxSpritesOneStep(u8 taskId)
@ -2924,18 +2924,18 @@ static void SwitchMenuBoxSprites(u8 *spriteIdPtr1, u8 *spriteIdPtr2)
*spriteIdPtr1 = *spriteIdPtr2;
*spriteIdPtr2 = spriteIdBuffer;
xBuffer1 = gSprites[*spriteIdPtr1].pos1.x;
yBuffer1 = gSprites[*spriteIdPtr1].pos1.y;
xBuffer2 = gSprites[*spriteIdPtr1].pos2.x;
yBuffer2 = gSprites[*spriteIdPtr1].pos2.y;
gSprites[*spriteIdPtr1].pos1.x = gSprites[*spriteIdPtr2].pos1.x;
gSprites[*spriteIdPtr1].pos1.y = gSprites[*spriteIdPtr2].pos1.y;
gSprites[*spriteIdPtr1].pos2.x = gSprites[*spriteIdPtr2].pos2.x;
gSprites[*spriteIdPtr1].pos2.y = gSprites[*spriteIdPtr2].pos2.y;
gSprites[*spriteIdPtr2].pos1.x = xBuffer1;
gSprites[*spriteIdPtr2].pos1.y = yBuffer1;
gSprites[*spriteIdPtr2].pos2.x = xBuffer2;
gSprites[*spriteIdPtr2].pos2.y = yBuffer2;
xBuffer1 = gSprites[*spriteIdPtr1].x;
yBuffer1 = gSprites[*spriteIdPtr1].y;
xBuffer2 = gSprites[*spriteIdPtr1].x2;
yBuffer2 = gSprites[*spriteIdPtr1].y2;
gSprites[*spriteIdPtr1].x = gSprites[*spriteIdPtr2].x;
gSprites[*spriteIdPtr1].y = gSprites[*spriteIdPtr2].y;
gSprites[*spriteIdPtr1].x2 = gSprites[*spriteIdPtr2].x2;
gSprites[*spriteIdPtr1].y2 = gSprites[*spriteIdPtr2].y2;
gSprites[*spriteIdPtr2].x = xBuffer1;
gSprites[*spriteIdPtr2].y = yBuffer1;
gSprites[*spriteIdPtr2].x2 = xBuffer2;
gSprites[*spriteIdPtr2].y2 = yBuffer2;
}
static void SwitchPartyMon(void)
@ -3905,22 +3905,22 @@ static void AnimateSelectedPartyIcon(u8 spriteId, u8 animNum)
gSprites[spriteId].data[0] = 0;
if (animNum == 0)
{
if (gSprites[spriteId].pos1.x == 16)
if (gSprites[spriteId].x == 16)
{
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].pos2.y = -4;
gSprites[spriteId].x2 = 0;
gSprites[spriteId].y2 = -4;
}
else
{
gSprites[spriteId].pos2.x = -4;
gSprites[spriteId].pos2.y = 0;
gSprites[spriteId].x2 = -4;
gSprites[spriteId].y2 = 0;
}
gSprites[spriteId].callback = SpriteCB_UpdatePartyMonIcon;
}
else
{
gSprites[spriteId].pos2.x = 0;
gSprites[spriteId].pos2.y = 0;
gSprites[spriteId].x2 = 0;
gSprites[spriteId].y2 = 0;
gSprites[spriteId].callback = SpriteCB_BouncePartyMonIcon;
}
}
@ -3932,9 +3932,9 @@ static void SpriteCB_BouncePartyMonIcon(struct Sprite *sprite)
if (animCmd != 0)
{
if (animCmd & 1) // % 2 also matches
sprite->pos2.y = -3;
sprite->y2 = -3;
else
sprite->pos2.y = 1;
sprite->y2 = 1;
}
}
@ -4020,8 +4020,8 @@ static void CreateHeldItemSpriteForTrade(u8 spriteId, bool8 isMail)
u8 subpriority = gSprites[spriteId].subpriority;
u8 newSpriteId = CreateSprite(&sSpriteTemplate_HeldItem, 250, 170, subpriority - 1);
gSprites[newSpriteId].pos2.x = 4;
gSprites[newSpriteId].pos2.y = 10;
gSprites[newSpriteId].x2 = 4;
gSprites[newSpriteId].y2 = 10;
gSprites[newSpriteId].callback = SpriteCB_HeldItem;
gSprites[newSpriteId].data[7] = spriteId;
StartSpriteAnim(&gSprites[newSpriteId], isMail);
@ -4039,8 +4039,8 @@ static void SpriteCB_HeldItem(struct Sprite *sprite)
else
{
sprite->invisible = FALSE;
sprite->pos1.x = gSprites[otherSpriteId].pos1.x + gSprites[otherSpriteId].pos2.x;
sprite->pos1.y = gSprites[otherSpriteId].pos1.y + gSprites[otherSpriteId].pos2.y;
sprite->x = gSprites[otherSpriteId].x + gSprites[otherSpriteId].x2;
sprite->y = gSprites[otherSpriteId].y + gSprites[otherSpriteId].y2;
}
}
@ -4087,15 +4087,15 @@ static void SpriteCB_BounceConfirmCancelButton(u8 spriteId, u8 spriteId2, u8 ani
{
StartSpriteAnim(&gSprites[spriteId], 2);
StartSpriteAnim(&gSprites[spriteId2], 4);
gSprites[spriteId].pos2.y = 0;
gSprites[spriteId2].pos2.y = 0;
gSprites[spriteId].y2 = 0;
gSprites[spriteId2].y2 = 0;
}
else
{
StartSpriteAnim(&gSprites[spriteId], 3);
StartSpriteAnim(&gSprites[spriteId2], 5);
gSprites[spriteId].pos2.y = -4;
gSprites[spriteId2].pos2.y = 4;
gSprites[spriteId].y2 = -4;
gSprites[spriteId2].y2 = 4;
}
}
@ -6095,7 +6095,7 @@ static void Task_WaitAfterMultiPartnerPartySlideIn(u8 taskId)
static void MoveMultiPartyMenuBoxSprite(u8 spriteId, s16 x)
{
if (x >= 0)
gSprites[spriteId].pos2.x = x;
gSprites[spriteId].x2 = x;
}
static void SlideMultiPartyMenuBoxSpritesOneStep(u8 taskId)

View File

@ -1024,8 +1024,8 @@ static void sub_816C060(u16 itemId)
{
*spriteIdLoc = spriteId;
gSprites[spriteId].oam.priority = 0;
gSprites[spriteId].pos2.x = 24;
gSprites[spriteId].pos2.y = 80;
gSprites[spriteId].x2 = 24;
gSprites[spriteId].y2 = 80;
}
}
}

View File

@ -373,13 +373,13 @@ static void Task_DoPokeballSendOutAnim(u8 taskId)
{
case POKEBALL_PLAYER_SENDOUT:
gBattlerTarget = battlerId;
gSprites[ballSpriteId].pos1.x = 24;
gSprites[ballSpriteId].pos1.y = 68;
gSprites[ballSpriteId].x = 24;
gSprites[ballSpriteId].y = 68;
gSprites[ballSpriteId].callback = SpriteCB_PlayerMonSendOut_1;
break;
case POKEBALL_OPPONENT_SENDOUT:
gSprites[ballSpriteId].pos1.x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X);
gSprites[ballSpriteId].pos1.y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24;
gSprites[ballSpriteId].x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X);
gSprites[ballSpriteId].y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24;
gBattlerTarget = battlerId;
gSprites[ballSpriteId].data[0] = 0;
gSprites[ballSpriteId].callback = SpriteCB_OpponentMonSendOut;
@ -423,13 +423,13 @@ static void SpriteCB_BallThrow(struct Sprite *sprite)
StartSpriteAnim(sprite, 1);
sprite->affineAnimPaused = 1;
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[5] = 0;
ballId = ItemIdToBallId(GetBattlerPokeballItemId(opponentBattler));
AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId);
AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 0x1C, ballId);
sprite->data[0] = LaunchBallFadeMonTask(FALSE, opponentBattler, 14, ballId);
sprite->sBattler = opponentBattler;
sprite->data[7] = noOfShakes;
@ -476,7 +476,7 @@ static void SpriteCB_BallThrow_ShrinkMon(struct Sprite *sprite)
else
{
gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] += 0x60;
gSprites[gBattlerSpriteIds[sprite->sBattler]].pos2.y = -gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] >> 8;
gSprites[gBattlerSpriteIds[sprite->sBattler]].y2 = -gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] >> 8;
}
}
@ -490,8 +490,8 @@ static void SpriteCB_BallThrow_Close(struct Sprite *sprite)
sprite->data[3] = 0;
sprite->data[4] = 32;
sprite->data[5] = 0;
sprite->pos1.y += Cos(0, 32);
sprite->pos2.y = -Cos(0, sprite->data[4]);
sprite->y += Cos(0, 32);
sprite->y2 = -Cos(0, sprite->data[4]);
sprite->callback = SpriteCB_BallThrow_FallToGround;
}
}
@ -504,7 +504,7 @@ static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite)
switch (sprite->data[3] & 0xFF)
{
case 0:
sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]);
sprite->y2 = -Cos(sprite->data[5], sprite->data[4]);
sprite->data[5] += 4 + (sprite->data[3] >> 8);
if (sprite->data[5] >= 64)
{
@ -530,7 +530,7 @@ static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite)
}
break;
case 1:
sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]);
sprite->y2 = -Cos(sprite->data[5], sprite->data[4]);
sprite->data[5] -= 4 + (sprite->data[3] >> 8);
if (sprite->data[5] <= 0)
{
@ -542,8 +542,8 @@ static void SpriteCB_BallThrow_FallToGround(struct Sprite *sprite)
if (r5)
{
sprite->data[3] = 0;
sprite->pos1.y += Cos(64, 32);
sprite->pos2.y = 0;
sprite->y += Cos(64, 32);
sprite->y2 = 0;
if (sprite->data[7] == 0)
{
sprite->callback = SpriteCB_ReleaseMonFromBall;
@ -576,7 +576,7 @@ static void SpriteCB_BallThrow_Shake(struct Sprite *sprite)
{
case 0:
case 2:
sprite->pos2.x += sprite->data[4];
sprite->x2 += sprite->data[4];
sprite->data[5] += sprite->data[4];
sprite->affineAnimPaused = FALSE;
if (sprite->data[5] > 3 || sprite->data[5] < -3)
@ -740,7 +740,7 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite)
StartSpriteAnim(sprite, 1);
ballId = ItemIdToBallId(GetBattlerPokeballItemId(battlerId));
AnimateBallOpenParticles(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId);
AnimateBallOpenParticles(sprite->x, sprite->y - 5, 1, 0x1C, ballId);
sprite->data[0] = LaunchBallFadeMonTask(TRUE, sprite->sBattler, 14, ballId);
sprite->callback = HandleBallAnimEnd;
@ -844,13 +844,13 @@ static void HandleBallAnimEnd(struct Sprite *sprite)
else
{
gSprites[gBattlerSpriteIds[battlerId]].data[1] -= 288;
gSprites[gBattlerSpriteIds[battlerId]].pos2.y = gSprites[gBattlerSpriteIds[battlerId]].data[1] >> 8;
gSprites[gBattlerSpriteIds[battlerId]].y2 = gSprites[gBattlerSpriteIds[battlerId]].data[1] >> 8;
}
if (sprite->animEnded && affineAnimEnded)
{
s32 i, doneBattlers;
gSprites[gBattlerSpriteIds[battlerId]].pos2.y = 0;
gSprites[gBattlerSpriteIds[battlerId]].y2 = 0;
gDoingBattleAnim = FALSE;
gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = 0;
FreeSpriteOamMatrix(sprite);
@ -927,7 +927,7 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
r4 = sprite->data[0];
AnimTranslateLinear(sprite);
sprite->data[7] += sprite->sBattler / 3;
sprite->pos2.y += Sin(HIBYTE(sprite->data[7]), sprite->data[5]);
sprite->y2 += Sin(HIBYTE(sprite->data[7]), sprite->data[5]);
sprite->oam.affineParam += 0x100;
if ((sprite->oam.affineParam >> 8) % 3 != 0)
sprite->data[0] = r4;
@ -945,10 +945,10 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
{
if (TranslateAnimHorizontalArc(sprite))
{
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;
sprite->sBattler = sprite->oam.affineParam & 0xFF;
sprite->data[0] = 0;
@ -1008,11 +1008,11 @@ void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battlerId, u8 x, u8 y,
spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subpriortiy);
gSprites[spriteId].data[0] = monSpriteId;
gSprites[spriteId].data[5] = gSprites[monSpriteId].pos1.x;
gSprites[spriteId].data[6] = gSprites[monSpriteId].pos1.y;
gSprites[spriteId].data[5] = gSprites[monSpriteId].x;
gSprites[spriteId].data[6] = gSprites[monSpriteId].y;
gSprites[monSpriteId].pos1.x = x;
gSprites[monSpriteId].pos1.y = y;
gSprites[monSpriteId].x = x;
gSprites[monSpriteId].y = y;
gSprites[monSpriteId].data[7] = species;
gSprites[spriteId].data[1] = g;
@ -1040,7 +1040,7 @@ static void SpriteCB_PokeballReleaseMon(struct Sprite *sprite)
r5 = 0;
StartSpriteAnim(sprite, 1);
AnimateBallOpenParticlesForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r5);
AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r5);
sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, r4);
sprite->callback = SpriteCB_ReleasedMonFlyOut;
gSprites[r7].invisible = FALSE;
@ -1070,24 +1070,24 @@ static void SpriteCB_ReleasedMonFlyOut(struct Sprite *sprite)
StartSpriteAffineAnim(&gSprites[monSpriteId], BATTLER_AFFINE_NORMAL);
r12 = TRUE;
}
var1 = (sprite->data[5] - sprite->pos1.x) * sprite->data[7] / 128 + sprite->pos1.x;
var2 = (sprite->data[6] - sprite->pos1.y) * sprite->data[7] / 128 + sprite->pos1.y;
gSprites[monSpriteId].pos1.x = var1;
gSprites[monSpriteId].pos1.y = var2;
var1 = (sprite->data[5] - sprite->x) * sprite->data[7] / 128 + sprite->x;
var2 = (sprite->data[6] - sprite->y) * sprite->data[7] / 128 + sprite->y;
gSprites[monSpriteId].x = var1;
gSprites[monSpriteId].y = var2;
if (sprite->data[7] < 128)
{
s16 sine = -(gSineTable[(u8)sprite->data[7]] / 8);
sprite->data[7] += 4;
gSprites[monSpriteId].pos2.x = sine;
gSprites[monSpriteId].pos2.y = sine;
gSprites[monSpriteId].x2 = sine;
gSprites[monSpriteId].y2 = sine;
}
else
{
gSprites[monSpriteId].pos1.x = sprite->data[5];
gSprites[monSpriteId].pos1.y = sprite->data[6];
gSprites[monSpriteId].pos2.x = 0;
gSprites[monSpriteId].pos2.y = 0;
gSprites[monSpriteId].x = sprite->data[5];
gSprites[monSpriteId].y = sprite->data[6];
gSprites[monSpriteId].x2 = 0;
gSprites[monSpriteId].y2 = 0;
r6 = TRUE;
}
if (sprite->animEnded && r12 && r6)
@ -1133,7 +1133,7 @@ static void SpriteCB_TradePokeball(struct Sprite *sprite)
r6 = 0;
StartSpriteAnim(sprite, 1);
AnimateBallOpenParticlesForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r6);
AnimateBallOpenParticlesForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r6);
sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, r8, r5);
sprite->callback = SpriteCB_TradePokeballSendOff;
#ifdef BUGFIX
@ -1169,7 +1169,7 @@ static void SpriteCB_TradePokeballSendOff(struct Sprite *sprite)
else
{
gSprites[monSpriteId].data[1] += 96;
gSprites[monSpriteId].pos2.y = -gSprites[monSpriteId].data[1] >> 8;
gSprites[monSpriteId].y2 = -gSprites[monSpriteId].data[1] >> 8;
}
}
@ -1195,15 +1195,15 @@ void StartHealthboxSlideIn(u8 battlerId)
healthboxSprite->sSpeedX = 5;
healthboxSprite->sSpeedY = 0;
healthboxSprite->pos2.x = 0x73;
healthboxSprite->pos2.y = 0;
healthboxSprite->x2 = 0x73;
healthboxSprite->y2 = 0;
healthboxSprite->callback = SpriteCB_HealthboxSlideIn;
if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
{
healthboxSprite->sSpeedX = -healthboxSprite->sSpeedX;
healthboxSprite->sSpeedY = -healthboxSprite->sSpeedY;
healthboxSprite->pos2.x = -healthboxSprite->pos2.x;
healthboxSprite->pos2.y = -healthboxSprite->pos2.y;
healthboxSprite->x2 = -healthboxSprite->x2;
healthboxSprite->y2 = -healthboxSprite->y2;
}
gSprites[healthboxSprite->data[5]].callback(&gSprites[healthboxSprite->data[5]]);
if (GetBattlerPosition(battlerId) == B_POSITION_PLAYER_RIGHT)
@ -1222,9 +1222,9 @@ static void SpriteCB_HealthboxSlideInDelayed(struct Sprite *sprite)
static void SpriteCB_HealthboxSlideIn(struct Sprite *sprite)
{
sprite->pos2.x -= sprite->sSpeedX;
sprite->pos2.y -= sprite->sSpeedY;
if (sprite->pos2.x == 0 && sprite->pos2.y == 0)
sprite->x2 -= sprite->sSpeedX;
sprite->y2 -= sprite->sSpeedY;
if (sprite->x2 == 0 && sprite->y2 == 0)
sprite->callback = SpriteCallbackDummy;
}
@ -1246,13 +1246,13 @@ static void SpriteCB_HitAnimHealthoxEffect(struct Sprite *sprite)
{
u8 r1 = sprite->data[1];
gSprites[r1].pos2.y = sprite->data[0];
gSprites[r1].y2 = sprite->data[0];
sprite->data[0] = -sprite->data[0];
sprite->data[2]++;
if (sprite->data[2] == 21)
{
gSprites[r1].pos2.x = 0;
gSprites[r1].pos2.y = 0;
gSprites[r1].x2 = 0;
gSprites[r1].y2 = 0;
DestroySprite(sprite);
}
}

View File

@ -934,8 +934,8 @@ static u8 CreateMonSprite(struct Pokemon* mon)
static void StartMonJumpForPokeblock(u8 spriteId)
{
gSprites[spriteId].pos1.x = MON_X;
gSprites[spriteId].pos1.y = MON_Y;
gSprites[spriteId].x = MON_X;
gSprites[spriteId].y = MON_Y;
gSprites[spriteId].sSpeed = -8;
gSprites[spriteId].sAccel = 1;
gSprites[spriteId].callback = SpriteCB_MonJumpForPokeblock;
@ -943,8 +943,8 @@ static void StartMonJumpForPokeblock(u8 spriteId)
static void SpriteCB_MonJumpForPokeblock(struct Sprite* sprite)
{
sprite->pos1.x += 4;
sprite->pos1.y += sprite->sSpeed;
sprite->x += 4;
sprite->y += sprite->sSpeed;
sprite->sSpeed += sprite->sAccel;
// Play cry at jump peak
@ -988,8 +988,8 @@ static u8 CreatePokeblockSprite(void)
static void SpriteCB_ThrownPokeblock(struct Sprite* sprite)
{
sprite->pos1.x -= 4;
sprite->pos1.y += sprite->sSpeed;
sprite->x -= 4;
sprite->y += sprite->sSpeed;
sprite->sSpeed += sprite->sAccel;
if (sprite->sSpeed == 10)
DestroySprite(sprite);
@ -1094,8 +1094,8 @@ static bool8 InitMonAnimStage(void)
pokeblockFeed->monInitX = Sin(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_SIN_AMPLITUDE]);
pokeblockFeed->monInitY = Cos(pokeblockFeed->animData[ANIMDATA_ROT_IDX], pokeblockFeed->animData[ANIMDATA_COS_AMPLITUDE]);
pokeblockFeed->maxAnimStageTime = pokeblockFeed->animData[ANIMDATA_TIME];
pokeblockFeed->monX = pokeblockFeed->monSpritePtr->pos2.x;
pokeblockFeed->monY = pokeblockFeed->monSpritePtr->pos2.y;
pokeblockFeed->monX = pokeblockFeed->monSpritePtr->x2;
pokeblockFeed->monY = pokeblockFeed->monSpritePtr->y2;
// Calculate the positions to move to during the animation
// The time is counted down during this, so reset it afterwards
@ -1111,8 +1111,8 @@ static bool8 DoMonAnimStep(void)
{
// Update mon's position
u16 time = sPokeblockFeed->maxAnimStageTime - sPokeblockFeed->animData[ANIMDATA_TIME];
sPokeblockFeed->monSpritePtr->pos2.x = sPokeblockFeed->monAnimX[time];
sPokeblockFeed->monSpritePtr->pos2.y = sPokeblockFeed->monAnimY[time];
sPokeblockFeed->monSpritePtr->x2 = sPokeblockFeed->monAnimX[time];
sPokeblockFeed->monSpritePtr->y2 = sPokeblockFeed->monAnimY[time];
// Count down time remaining in this stage
// Return TRUE if this stage is complete

View File

@ -1785,7 +1785,7 @@ static void Task_HandlePokedexStartMenuInput(u8 taskId)
static void Task_OpenInfoScreenAfterMonMovement(u8 taskId)
{
if (gSprites[sPokedexView->selectedMonSpriteId].pos1.x == 48 && gSprites[sPokedexView->selectedMonSpriteId].pos1.y == 56)
if (gSprites[sPokedexView->selectedMonSpriteId].x == 48 && gSprites[sPokedexView->selectedMonSpriteId].y == 56)
{
sPokedexView->currentPageBackup = sPokedexView->currentPage;
gTasks[taskId].tTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId);
@ -1987,7 +1987,7 @@ static void Task_HandleSearchResultsStartMenuInput(u8 taskId)
static void Task_OpenSearchResultsInfoScreenAfterMonMovement(u8 taskId)
{
if (gSprites[sPokedexView->selectedMonSpriteId].pos1.x == 48 && gSprites[sPokedexView->selectedMonSpriteId].pos1.y == 56)
if (gSprites[sPokedexView->selectedMonSpriteId].x == 48 && gSprites[sPokedexView->selectedMonSpriteId].y == 56)
{
sPokedexView->currentPageBackup = sPokedexView->currentPage;
gTasks[taskId].tTaskId = LoadInfoScreen(&sPokedexView->pokedexList[sPokedexView->selectedPokemon], sPokedexView->selectedMonSpriteId);
@ -2652,7 +2652,7 @@ static void UpdateSelectedMonSpriteId(void)
{
u16 spriteId = sPokedexView->monSpriteIds[i];
if (gSprites[spriteId].pos2.x == 0 && gSprites[spriteId].pos2.y == 0 && spriteId != 0xFFFF)
if (gSprites[spriteId].x2 == 0 && gSprites[spriteId].y2 == 0 && spriteId != 0xFFFF)
sPokedexView->selectedMonSpriteId = spriteId;
}
}
@ -3000,19 +3000,19 @@ void SpriteCB_MoveMonForInfoScreen(struct Sprite *sprite)
{
sprite->oam.priority = 0;
sprite->oam.affineMode = ST_OAM_AFFINE_OFF;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
if (sprite->pos1.x != 48 || sprite->pos1.y != 56)
sprite->x2 = 0;
sprite->y2 = 0;
if (sprite->x != 48 || sprite->y != 56)
{
if (sprite->pos1.x > 48)
sprite->pos1.x--;
if (sprite->pos1.x < 48)
sprite->pos1.x++;
if (sprite->x > 48)
sprite->x--;
if (sprite->x < 48)
sprite->x++;
if (sprite->pos1.y > 56)
sprite->pos1.y--;
if (sprite->pos1.y < 56)
sprite->pos1.y++;
if (sprite->y > 56)
sprite->y--;
if (sprite->y < 56)
sprite->y++;
}
else
{
@ -3032,7 +3032,7 @@ static void SpriteCB_PokedexListMonSprite(struct Sprite *sprite)
else
{
u32 var;
sprite->pos2.y = gSineTable[(u8)sprite->data[5]] * 76 / 256;
sprite->y2 = gSineTable[(u8)sprite->data[5]] * 76 / 256;
var = SAFE_DIV(0x10000, gSineTable[sprite->data[5] + 64]);
if (var > 0xFFFF)
var = 0xFFFF;
@ -3062,7 +3062,7 @@ static void SpriteCB_Scrollbar(struct Sprite *sprite)
if (sPokedexView->currentPage != PAGE_MAIN && sPokedexView->currentPage != PAGE_SEARCH_RESULTS)
DestroySprite(sprite);
else
sprite->pos2.y = sPokedexView->selectedPokemon * 120 / (sPokedexView->pokemonListCount - 1);
sprite->y2 = sPokedexView->selectedPokemon * 120 / (sPokedexView->pokemonListCount - 1);
}
static void SpriteCB_ScrollArrow(struct Sprite *sprite)
@ -3091,7 +3091,7 @@ static void SpriteCB_ScrollArrow(struct Sprite *sprite)
sprite->invisible = FALSE;
r0 = sprite->data[2] - 128;
}
sprite->pos2.y = gSineTable[r0] / 64;
sprite->y2 = gSineTable[r0] / 64;
sprite->data[2] = sprite->data[2] + 8;
if (sPokedexView->menuIsOpen == FALSE && sPokedexView->menuY == 0 && sprite->invisible == FALSE)
sprite->invisible = FALSE;
@ -3126,8 +3126,8 @@ static void SpriteCB_RotatingPokeBall(struct Sprite *sprite)
val = sPokedexView->pokeBallRotation + (sprite->data[1] + 64);
r3 = gSineTable[val];
r0 = gSineTable[val + 64];
sprite->pos2.x = r0 * 40 / 256;
sprite->pos2.y = r3 * 40 / 256;
sprite->x2 = r0 * 40 / 256;
sprite->y2 = r3 * 40 / 256;
}
}
@ -3144,8 +3144,8 @@ static void SpriteCB_DexListStartMenuCursor(struct Sprite *sprite)
if (sPokedexView->menuIsOpen && sPokedexView->menuY == r1)
{
sprite->invisible = FALSE;
sprite->pos2.y = sPokedexView->menuCursorPos * 16;
sprite->pos2.x = gSineTable[(u8)sprite->data[2]] / 64;
sprite->y2 = sPokedexView->menuCursorPos * 16;
sprite->x2 = gSineTable[(u8)sprite->data[2]] / 64;
sprite->data[2] += 8;
}
else
@ -3755,7 +3755,7 @@ static void Task_LoadSizeScreen(u8 taskId)
gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL;
gSprites[spriteId].oam.matrixNum = 1;
gSprites[spriteId].oam.priority = 0;
gSprites[spriteId].pos2.y = gPokedexEntries[sPokedexListItem->dexNum].trainerOffset;
gSprites[spriteId].y2 = gPokedexEntries[sPokedexListItem->dexNum].trainerOffset;
SetOamMatrix(1, gPokedexEntries[sPokedexListItem->dexNum].trainerScale, 0, 0, gPokedexEntries[sPokedexListItem->dexNum].trainerScale);
LoadPalette(sSizeScreenSilhouette_Pal, (gSprites[spriteId].oam.paletteNum + 16) * 16, 0x20);
gTasks[taskId].data[5] = spriteId;
@ -3766,7 +3766,7 @@ static void Task_LoadSizeScreen(u8 taskId)
gSprites[spriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL;
gSprites[spriteId].oam.matrixNum = 2;
gSprites[spriteId].oam.priority = 0;
gSprites[spriteId].pos2.y = gPokedexEntries[sPokedexListItem->dexNum].pokemonOffset;
gSprites[spriteId].y2 = gPokedexEntries[sPokedexListItem->dexNum].pokemonOffset;
SetOamMatrix(2, gPokedexEntries[sPokedexListItem->dexNum].pokemonScale, 0, 0, gPokedexEntries[sPokedexListItem->dexNum].pokemonScale);
LoadPalette(sSizeScreenSilhouette_Pal, (gSprites[spriteId].oam.paletteNum + 16) * 16, 0x20);
gTasks[taskId].tMonSpriteId = spriteId;
@ -4054,15 +4054,15 @@ static void Task_ExitCaughtMonPage(u8 taskId)
static void SpriteCB_SlideCaughtMonToCenter(struct Sprite *sprite)
{
if (sprite->pos1.x < 0x78)
sprite->pos1.x += 2;
if (sprite->pos1.x > 0x78)
sprite->pos1.x -= 2;
if (sprite->x < 0x78)
sprite->x += 2;
if (sprite->x > 0x78)
sprite->x -= 2;
if (sprite->pos1.y < 0x50)
sprite->pos1.y += 1;
if (sprite->pos1.y > 0x50)
sprite->pos1.y -= 1;
if (sprite->y < 0x50)
sprite->y += 1;
if (sprite->y > 0x50)
sprite->y -= 1;
}
#undef tState
@ -5570,7 +5570,7 @@ static void SpriteCB_SearchParameterScrollArrow(struct Sprite *sprite)
sprite->invisible = FALSE;
}
val = sprite->data[2] + sprite->sIsDownArrow * 128;
sprite->pos2.y = gSineTable[val] / 128;
sprite->y2 = gSineTable[val] / 128;
sprite->data[2] += 8;
}
else

View File

@ -560,8 +560,8 @@ static void SpriteCB_CryMeterNeedle(struct Sprite *sprite)
SetOamMatrix(0, matrix.a, matrix.b, matrix.c, matrix.d);
x = gSineTable[((sCryMeterNeedle->rotation + 0x7F) & 0xFF)];
y = gSineTable[((sCryMeterNeedle->rotation + 0x7F) & 0xFF) + 64];
sprite->pos2.x = x * 24 / 256;
sprite->pos2.y = y * 24 / 256;
sprite->x2 = x * 24 / 256;
sprite->y2 = y * 24 / 256;
}
static void SetCryMeterNeedleTarget(s8 offset)

File diff suppressed because it is too large Load Diff

View File

@ -2764,7 +2764,7 @@ static void DoStarAnim(struct PokemonJumpGfx *jumpGfx, int multiplayerId)
ResetPokeJumpSpriteData(jumpGfx->starSprites[multiplayerId]);
jumpGfx->starSprites[multiplayerId]->sOffset = jumpGfx->monSprites[multiplayerId] - gSprites;
jumpGfx->starSprites[multiplayerId]->invisible = FALSE;
jumpGfx->starSprites[multiplayerId]->pos1.y = 96;
jumpGfx->starSprites[multiplayerId]->y = 96;
jumpGfx->starSprites[multiplayerId]->callback = SpriteCB_Star;
StartSpriteAnim(jumpGfx->starSprites[multiplayerId], 1);
}
@ -2781,11 +2781,11 @@ static void SpriteCB_Star(struct Sprite *sprite)
}
break;
case 1:
sprite->pos1.y--;
sprite->y--;
sprite->sTimer++;
if (sprite->pos1.y <= 72)
if (sprite->y <= 72)
{
sprite->pos1.y = 72;
sprite->y = 72;
sprite->sState++;
}
break;
@ -2806,7 +2806,7 @@ static void SpriteCB_Star(struct Sprite *sprite)
static void Gfx_StartMonHitShake(struct PokemonJumpGfx *jumpGfx, int multiplayerId)
{
jumpGfx->monSprites[multiplayerId]->callback = SpriteCB_MonHitShake;
jumpGfx->monSprites[multiplayerId]->pos2.y = 0;
jumpGfx->monSprites[multiplayerId]->y2 = 0;
ResetPokeJumpSpriteData(jumpGfx->monSprites[multiplayerId]);
}
@ -2823,16 +2823,16 @@ static void SpriteCB_MonHitShake(struct Sprite *sprite)
if (++sprite->sTimer > 1)
{
if (++sprite->sNumShakes & 1)
sprite->pos2.y = 2;
sprite->y2 = 2;
else
sprite->pos2.y = -2;
sprite->y2 = -2;
sprite->sTimer = 0;
}
if (sprite->sNumShakes > 12)
{
sprite->pos2.y = 0;
sprite->y2 = 0;
sprite->callback = SpriteCallbackDummy;
}
}
@ -2919,7 +2919,7 @@ static void SpriteCB_MonIntroBounce(struct Sprite *sprite)
if (sprite->sHopPos > 127)
sprite->sHopPos = 0;
sprite->pos2.y = -(gSineTable[sprite->sHopPos] >> 3);
sprite->y2 = -(gSineTable[sprite->sHopPos] >> 3);
if (sprite->sHopPos == 0)
{
if (++sprite->sNumHops < 2)
@ -2990,7 +2990,7 @@ static void UpdateVineAnim(struct PokemonJumpGfx *jumpGfx, int vineState)
count = 0;
for (i = 0; i < VINE_SPRITES_PER_SIDE; i++)
{
jumpGfx->vineSprites[count]->pos1.y = sVineYCoords[i][vineState];
jumpGfx->vineSprites[count]->y = sVineYCoords[i][vineState];
jumpGfx->vineSprites[count]->oam.priority = priority;
jumpGfx->vineSprites[count]->oam.paletteNum = palNum;
StartSpriteAnim(jumpGfx->vineSprites[count], vineState);
@ -2999,7 +2999,7 @@ static void UpdateVineAnim(struct PokemonJumpGfx *jumpGfx, int vineState)
for (i = VINE_SPRITES_PER_SIDE - 1; i >= 0; i--)
{
jumpGfx->vineSprites[count]->pos1.y = sVineYCoords[i][vineState];
jumpGfx->vineSprites[count]->y = sVineYCoords[i][vineState];
jumpGfx->vineSprites[count]->oam.priority = priority;
jumpGfx->vineSprites[count]->oam.paletteNum = palNum;
StartSpriteAnim(jumpGfx->vineSprites[count], vineState);
@ -3726,7 +3726,7 @@ static void CreateJumpMonSprites(void)
static void SetMonSpriteY(u32 id, s16 y)
{
sPokemonJumpGfx->monSprites[id]->pos2.y = y;
sPokemonJumpGfx->monSprites[id]->y2 = y;
}
static void UpdateVineSwing(int vineState)

View File

@ -1873,12 +1873,12 @@ static void ChooseBoxMenu_CreateSprites(u8 curBox)
anim = 0;
if (i & 2)
{
sChooseBoxMenu->menuSideSprites[i]->pos1.x = 196;
sChooseBoxMenu->menuSideSprites[i]->x = 196;
anim = 2;
}
if (i & 1)
{
sChooseBoxMenu->menuSideSprites[i]->pos1.y = 112;
sChooseBoxMenu->menuSideSprites[i]->y = 112;
sChooseBoxMenu->menuSideSprites[i]->oam.size = 0;
anim++;
}
@ -1970,11 +1970,11 @@ static void SpriteCB_ChooseBoxArrow(struct Sprite *sprite)
if (++sprite->data[1] > 3)
{
sprite->data[1] = 0;
sprite->pos2.x += sprite->data[0];
sprite->x2 += sprite->data[0];
if (++sprite->data[2] > 5)
{
sprite->data[2] = 0;
sprite->pos2.x = 0;
sprite->x2 = 0;
}
}
}
@ -3881,8 +3881,8 @@ static void CreateMarkingComboSprite(void)
sStorage->markingComboSprite = CreateMonMarkingComboSprite(GFXTAG_MARKING_COMBO, PALTAG_MARKING_COMBO, NULL);
sStorage->markingComboSprite->oam.priority = 1;
sStorage->markingComboSprite->subpriority = 1;
sStorage->markingComboSprite->pos1.x = 40;
sStorage->markingComboSprite->pos1.y = 150;
sStorage->markingComboSprite->x = 40;
sStorage->markingComboSprite->y = 150;
sStorage->markingComboTilesPtr = (void*) OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(GFXTAG_MARKING_COMBO);
}
@ -4532,13 +4532,13 @@ static void SpriteCB_BoxMonIconScrollIn(struct Sprite *sprite)
{
// Icon moving
sprite->sDistance--;
sprite->pos1.x += sprite->sSpeed;
sprite->x += sprite->sSpeed;
}
else
{
// Icon arrived
sStorage->iconScrollNumIncoming--;
sprite->pos1.x = sprite->sScrollInDestX;
sprite->x = sprite->sScrollInDestX;
sprite->callback = SpriteCallbackDummy;
}
}
@ -4552,8 +4552,8 @@ static void SpriteCB_BoxMonIconScrollOut(struct Sprite *sprite)
else
{
// Icon moving
sprite->pos1.x += sprite->sSpeed;
sprite->sScrollOutX = sprite->pos1.x + sprite->pos2.x;
sprite->x += sprite->sSpeed;
sprite->sScrollOutX = sprite->x + sprite->x2;
// Check if icon offscreen
if (sprite->sScrollOutX <= 68 || sprite->sScrollOutX >= 252)
@ -4777,7 +4777,7 @@ static void CreatePartyMonsSprites(bool8 visible)
{
for (i = 0; i < count; i++)
{
sStorage->partySprites[i]->pos1.y -= DISPLAY_HEIGHT;
sStorage->partySprites[i]->y -= DISPLAY_HEIGHT;
sStorage->partySprites[i]->invisible = TRUE;
}
}
@ -4834,8 +4834,8 @@ static void MovePartySpriteToNextSlot(struct Sprite *sprite, u16 partyId)
else
x = 152, y = 8 * (3 * (partyId - 1)) + 16;
sprite->sMonX = (u16)(sprite->pos1.x) * 8;
sprite->sMonY = (u16)(sprite->pos1.y) * 8;
sprite->sMonX = (u16)(sprite->x) * 8;
sprite->sMonY = (u16)(sprite->y) * 8;
sprite->sSpeedX = ((x * 8) - sprite->sMonX) / 8;
sprite->sSpeedY = ((y * 8) - sprite->sMonY) / 8;
sprite->data[6] = 8;
@ -4848,21 +4848,21 @@ static void SpriteCB_MovePartyMonToNextSlot(struct Sprite *sprite)
{
s16 x = sprite->sMonX += sprite->sSpeedX;
s16 y = sprite->sMonY += sprite->sSpeedY;
sprite->pos1.x = x / 8u;
sprite->pos1.y = y / 8u;
sprite->x = x / 8u;
sprite->y = y / 8u;
sprite->sMoveSteps--;
}
else
{
if (sprite->sPartyId == 0)
{
sprite->pos1.x = 104;
sprite->pos1.y = 64;
sprite->x = 104;
sprite->y = 64;
}
else
{
sprite->pos1.x = 152;
sprite->pos1.y = 8 * (3 * (sprite->sPartyId - 1)) + 16;
sprite->x = 152;
sprite->y = 8 * (3 * (sprite->sPartyId - 1)) + 16;
}
sprite->callback = SpriteCallbackDummy;
sStorage->partySprites[sprite->sPartyId] = sprite;
@ -4894,8 +4894,8 @@ static void MovePartySprites(s16 yDelta)
{
if (sStorage->partySprites[i] != NULL)
{
sStorage->partySprites[i]->pos1.y += yDelta;
posY = sStorage->partySprites[i]->pos1.y + sStorage->partySprites[i]->pos2.y + sStorage->partySprites[i]->centerToCornerVecY;
sStorage->partySprites[i]->y += yDelta;
posY = sStorage->partySprites[i]->y + sStorage->partySprites[i]->y2 + sStorage->partySprites[i]->centerToCornerVecY;
posY += 16;
if (posY > 192)
sStorage->partySprites[i]->invisible = TRUE;
@ -4995,12 +4995,12 @@ static bool8 MoveShiftingMons(void)
sStorage->shiftTimer++;
if (sStorage->shiftTimer & 1)
{
(*sStorage->shiftMonSpritePtr)->pos1.y--;
sStorage->movingMonSprite->pos1.y++;
(*sStorage->shiftMonSpritePtr)->y--;
sStorage->movingMonSprite->y++;
}
(*sStorage->shiftMonSpritePtr)->pos2.x = gSineTable[sStorage->shiftTimer * 8] / 16;
sStorage->movingMonSprite->pos2.x = -(gSineTable[sStorage->shiftTimer * 8] / 16);
(*sStorage->shiftMonSpritePtr)->x2 = gSineTable[sStorage->shiftTimer * 8] / 16;
sStorage->movingMonSprite->x2 = -(gSineTable[sStorage->shiftTimer * 8] / 16);
if (sStorage->shiftTimer == 8)
{
sStorage->movingMonSprite->oam.priority = (*sStorage->shiftMonSpritePtr)->oam.priority;
@ -5097,8 +5097,8 @@ static void SetMovingMonPriority(u8 priority)
static void SpriteCB_HeldMon(struct Sprite *sprite)
{
sprite->pos1.x = sStorage->cursorSprite->pos1.x;
sprite->pos1.y = sStorage->cursorSprite->pos1.y + sStorage->cursorSprite->pos2.y + 4;
sprite->x = sStorage->cursorSprite->x;
sprite->y = sStorage->cursorSprite->y + sStorage->cursorSprite->y2 + 4;
}
static u16 TryLoadMonIconTiles(u16 species)
@ -5598,7 +5598,7 @@ static void SpriteCB_IncomingBoxTitle(struct Sprite *sprite)
{
if (sprite->sIncomingDelay != 0)
sprite->sIncomingDelay--;
else if ((sprite->pos1.x += sprite->sSpeed) == sprite->sIncomingX)
else if ((sprite->x += sprite->sSpeed) == sprite->sIncomingX)
sprite->callback = SpriteCallbackDummy;
}
@ -5610,8 +5610,8 @@ static void SpriteCB_OutgoingBoxTitle(struct Sprite *sprite)
}
else
{
sprite->pos1.x += sprite->sSpeed;
sprite->sOutgoingX = sprite->pos1.x + sprite->pos2.x;
sprite->x += sprite->sSpeed;
sprite->sOutgoingX = sprite->x + sprite->x2;
if (sprite->sOutgoingX < 64 || sprite->sOutgoingX > DISPLAY_WIDTH + 16)
DestroySprite(sprite);
}
@ -5676,7 +5676,7 @@ static void StartBoxScrollArrowsSlide(s8 direction)
for (i = 0; i < 2; i++)
{
sStorage->arrowSprites[i]->pos2.x = 0;
sStorage->arrowSprites[i]->x2 = 0;
sStorage->arrowSprites[i]->sState = 2;
}
if (direction < 0)
@ -5704,8 +5704,8 @@ static void StopBoxScrollArrowsSlide(void)
for (i = 0; i < 2; i++)
{
sStorage->arrowSprites[i]->pos1.x = 136 * i + 92;
sStorage->arrowSprites[i]->pos2.x = 0;
sStorage->arrowSprites[i]->x = 136 * i + 92;
sStorage->arrowSprites[i]->x2 = 0;
sStorage->arrowSprites[i]->invisible = FALSE;
}
AnimateBoxScrollArrows(TRUE);
@ -5740,17 +5740,17 @@ static void SpriteCB_Arrow(struct Sprite *sprite)
switch (sprite->sState)
{
case 0:
sprite->pos2.x = 0;
sprite->x2 = 0;
break;
case 1:
if (++sprite->sTimer > 3)
{
sprite->sTimer = 0;
sprite->pos2.x += sprite->sSpeed;
sprite->x2 += sprite->sSpeed;
if (++sprite->data[2] > 5)
{
sprite->data[2] = 0;
sprite->pos2.x = 0;
sprite->x2 = 0;
}
}
break;
@ -5758,18 +5758,18 @@ static void SpriteCB_Arrow(struct Sprite *sprite)
sprite->sState = 3;
break;
case 3:
sprite->pos1.x -= sStorage->scrollSpeed;
if (sprite->pos1.x <= 72 || sprite->pos1.x >= DISPLAY_WIDTH + 8)
sprite->x -= sStorage->scrollSpeed;
if (sprite->x <= 72 || sprite->x >= DISPLAY_WIDTH + 8)
sprite->invisible = TRUE;
if (--sprite->sTimer == 0)
{
sprite->pos1.x = sprite->data[2];
sprite->x = sprite->data[2];
sprite->invisible = FALSE;
sprite->sState = 4;
}
break;
case 4:
sprite->pos1.x -= sStorage->scrollSpeed;
sprite->x -= sStorage->scrollSpeed;
break;
}
}
@ -5901,35 +5901,35 @@ static bool8 UpdateCursorPos(void)
// Update position toward target
sStorage->cursorNewX += sStorage->cursorSpeedX;
sStorage->cursorNewY += sStorage->cursorSpeedY;
sStorage->cursorSprite->pos1.x = sStorage->cursorNewX >> 8;
sStorage->cursorSprite->pos1.y = sStorage->cursorNewY >> 8;
sStorage->cursorSprite->x = sStorage->cursorNewX >> 8;
sStorage->cursorSprite->y = sStorage->cursorNewY >> 8;
// Limit cursor on right
if (sStorage->cursorSprite->pos1.x > DISPLAY_WIDTH + 16)
if (sStorage->cursorSprite->x > DISPLAY_WIDTH + 16)
{
tmp = sStorage->cursorSprite->pos1.x - (DISPLAY_WIDTH + 16);
sStorage->cursorSprite->pos1.x = tmp + 64;
tmp = sStorage->cursorSprite->x - (DISPLAY_WIDTH + 16);
sStorage->cursorSprite->x = tmp + 64;
}
// Limit cursor on left
if (sStorage->cursorSprite->pos1.x < 64)
if (sStorage->cursorSprite->x < 64)
{
tmp = 64 - sStorage->cursorSprite->pos1.x;
sStorage->cursorSprite->pos1.x = DISPLAY_WIDTH + 16 - tmp;
tmp = 64 - sStorage->cursorSprite->x;
sStorage->cursorSprite->x = DISPLAY_WIDTH + 16 - tmp;
}
// Limit cursor on bottom
if (sStorage->cursorSprite->pos1.y > DISPLAY_HEIGHT + 16)
if (sStorage->cursorSprite->y > DISPLAY_HEIGHT + 16)
{
tmp = sStorage->cursorSprite->pos1.y - (DISPLAY_HEIGHT + 16);
sStorage->cursorSprite->pos1.y = tmp - 16;
tmp = sStorage->cursorSprite->y - (DISPLAY_HEIGHT + 16);
sStorage->cursorSprite->y = tmp - 16;
}
// Limit cursor on top
if (sStorage->cursorSprite->pos1.y < -16)
if (sStorage->cursorSprite->y < -16)
{
tmp = -16 - sStorage->cursorSprite->pos1.y;
sStorage->cursorSprite->pos1.y = DISPLAY_HEIGHT + 16 - tmp;
tmp = -16 - sStorage->cursorSprite->y;
sStorage->cursorSprite->y = DISPLAY_HEIGHT + 16 - tmp;
}
// Cursor flips vertically when moving on/off the top buttons
@ -5939,8 +5939,8 @@ static bool8 UpdateCursorPos(void)
else
{
// Time is up for cursor movement, make sure it's exactly at target
sStorage->cursorSprite->pos1.x = sStorage->cursorTargetX;
sStorage->cursorSprite->pos1.y = sStorage->cursorTargetY;
sStorage->cursorSprite->x = sStorage->cursorTargetX;
sStorage->cursorSprite->y = sStorage->cursorTargetY;
DoCursorNewPosUpdate();
}
@ -5973,26 +5973,26 @@ static void InitCursorMove(void)
switch (sStorage->cursorVerticalWrap)
{
default: // No wrap
yDistance = sStorage->cursorTargetY - sStorage->cursorSprite->pos1.y;
yDistance = sStorage->cursorTargetY - sStorage->cursorSprite->y;
break;
case -1: // Wrap from top to bottom
yDistance = sStorage->cursorTargetY - 192 - sStorage->cursorSprite->pos1.y;
yDistance = sStorage->cursorTargetY - 192 - sStorage->cursorSprite->y;
break;
case 1: // Wrap from bottom to top
yDistance = sStorage->cursorTargetY + 192 - sStorage->cursorSprite->pos1.y;
yDistance = sStorage->cursorTargetY + 192 - sStorage->cursorSprite->y;
break;
}
switch (sStorage->cursorHorizontalWrap)
{
default: // No Wrap
xDistance = sStorage->cursorTargetX - sStorage->cursorSprite->pos1.x;
xDistance = sStorage->cursorTargetX - sStorage->cursorSprite->x;
break;
case -1: // Wrap from left to right
xDistance = sStorage->cursorTargetX - 192 - sStorage->cursorSprite->pos1.x;
xDistance = sStorage->cursorTargetX - 192 - sStorage->cursorSprite->x;
break;
case 1: // Wrap from right to left
xDistance = sStorage->cursorTargetX + 192 - sStorage->cursorSprite->pos1.x;
xDistance = sStorage->cursorTargetX + 192 - sStorage->cursorSprite->x;
break;
}
@ -6000,8 +6000,8 @@ static void InitCursorMove(void)
xDistance <<= 8;
sStorage->cursorSpeedX = xDistance / sStorage->cursorMoveSteps;
sStorage->cursorSpeedY = yDistance / sStorage->cursorMoveSteps;
sStorage->cursorNewX = sStorage->cursorSprite->pos1.x << 8;
sStorage->cursorNewY = sStorage->cursorSprite->pos1.y << 8;
sStorage->cursorNewX = sStorage->cursorSprite->x << 8;
sStorage->cursorNewY = sStorage->cursorSprite->y << 8;
}
static void SetCursorPosition(u8 newCursorArea, u8 newCursorPosition)
@ -6277,13 +6277,13 @@ static bool8 MultiMonPlaceChange_Up(void)
static bool8 MonPlaceChange_CursorDown(void)
{
switch (sStorage->cursorSprite->pos2.y)
switch (sStorage->cursorSprite->y2)
{
default:
sStorage->cursorSprite->pos2.y++;
sStorage->cursorSprite->y2++;
break;
case 0:
sStorage->cursorSprite->pos2.y++;
sStorage->cursorSprite->y2++;
break;
case 8: // Cursor has reached bottom
return FALSE;
@ -6294,12 +6294,12 @@ static bool8 MonPlaceChange_CursorDown(void)
static bool8 MonPlaceChange_CursorUp(void)
{
switch (sStorage->cursorSprite->pos2.y)
switch (sStorage->cursorSprite->y2)
{
case 0: // Cursor has reached top
return FALSE;
default:
sStorage->cursorSprite->pos2.y--;
sStorage->cursorSprite->y2--;
break;
}
@ -7743,8 +7743,8 @@ static bool8 SetMenuTexts_Item(void)
static void SpriteCB_CursorShadow(struct Sprite *sprite)
{
sprite->pos1.x = sStorage->cursorSprite->pos1.x;
sprite->pos1.y = sStorage->cursorSprite->pos1.y + 20;
sprite->x = sStorage->cursorSprite->x;
sprite->y = sStorage->cursorSprite->y + 20;
}
static void CreateCursorSprites(void)
@ -9079,20 +9079,20 @@ static void SetItemIconPosition(u8 id, u8 cursorArea, u8 cursorPos)
case CURSOR_AREA_IN_BOX:
x = cursorPos % IN_BOX_COLUMNS;
y = cursorPos / IN_BOX_COLUMNS;
sStorage->itemIcons[id].sprite->pos1.x = (24 * x) + 112;
sStorage->itemIcons[id].sprite->pos1.y = (24 * y) + 56;
sStorage->itemIcons[id].sprite->x = (24 * x) + 112;
sStorage->itemIcons[id].sprite->y = (24 * y) + 56;
sStorage->itemIcons[id].sprite->oam.priority = 2;
break;
case CURSOR_AREA_IN_PARTY:
if (cursorPos == 0)
{
sStorage->itemIcons[id].sprite->pos1.x = 116;
sStorage->itemIcons[id].sprite->pos1.y = 76;
sStorage->itemIcons[id].sprite->x = 116;
sStorage->itemIcons[id].sprite->y = 76;
}
else
{
sStorage->itemIcons[id].sprite->pos1.x = 164;
sStorage->itemIcons[id].sprite->pos1.y = 24 * (cursorPos - 1) + 28;
sStorage->itemIcons[id].sprite->x = 164;
sStorage->itemIcons[id].sprite->y = 24 * (cursorPos - 1) + 28;
}
sStorage->itemIcons[id].sprite->oam.priority = 1;
break;
@ -9281,8 +9281,8 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite)
switch (sprite->sState)
{
case 0:
sprite->data[1] = sprite->pos1.x << 4;
sprite->data[2] = sprite->pos1.y << 4;
sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10;
sprite->data[4] = 21;
sprite->data[5] = 0;
@ -9290,8 +9290,8 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite)
case 1:
sprite->data[1] -= sprite->data[3];
sprite->data[2] -= sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4;
sprite->x = sprite->data[1] >> 4;
sprite->y = sprite->data[2] >> 4;
if (++sprite->data[5] > 11)
sprite->callback = SpriteCB_ItemIcon_SetPosToCursor;
break;
@ -9300,8 +9300,8 @@ static void SpriteCB_ItemIcon_ToHand(struct Sprite *sprite)
static void SpriteCB_ItemIcon_SetPosToCursor(struct Sprite *sprite)
{
sprite->pos1.x = sStorage->cursorSprite->pos1.x + 4;
sprite->pos1.y = sStorage->cursorSprite->pos1.y + sStorage->cursorSprite->pos2.y + 8;
sprite->x = sStorage->cursorSprite->x + 4;
sprite->y = sStorage->cursorSprite->y + sStorage->cursorSprite->y2 + 8;
sprite->oam.priority = sStorage->cursorSprite->oam.priority;
}
@ -9310,8 +9310,8 @@ static void SpriteCB_ItemIcon_ToMon(struct Sprite *sprite)
switch (sprite->sState)
{
case 0:
sprite->data[1] = sprite->pos1.x << 4;
sprite->data[2] = sprite->pos1.y << 4;
sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10;
sprite->data[4] = 21;
sprite->data[5] = 0;
@ -9319,8 +9319,8 @@ static void SpriteCB_ItemIcon_ToMon(struct Sprite *sprite)
case 1:
sprite->data[1] += sprite->data[3];
sprite->data[2] += sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4;
sprite->x = sprite->data[1] >> 4;
sprite->y = sprite->data[2] >> 4;
if (++sprite->data[5] > 11)
{
SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos);
@ -9335,8 +9335,8 @@ static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *sprite)
switch (sprite->sState)
{
case 0:
sprite->data[1] = sprite->pos1.x << 4;
sprite->data[2] = sprite->pos1.y << 4;
sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10;
sprite->data[4] = 21;
sprite->data[5] = 0;
@ -9344,13 +9344,13 @@ static void SpriteCB_ItemIcon_SwapToHand(struct Sprite *sprite)
case 1:
sprite->data[1] -= sprite->data[3];
sprite->data[2] -= sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4;
sprite->pos2.x = gSineTable[sprite->data[5] * 8] >> 4;
sprite->x = sprite->data[1] >> 4;
sprite->y = sprite->data[2] >> 4;
sprite->x2 = gSineTable[sprite->data[5] * 8] >> 4;
if (++sprite->data[5] > 11)
{
SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos);
sprite->pos2.x = 0;
sprite->x2 = 0;
sprite->callback = SpriteCB_ItemIcon_SetPosToCursor;
}
break;
@ -9362,8 +9362,8 @@ static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *sprite)
switch (sprite->sState)
{
case 0:
sprite->data[1] = sprite->pos1.x << 4;
sprite->data[2] = sprite->pos1.y << 4;
sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10;
sprite->data[4] = 21;
sprite->data[5] = 0;
@ -9371,14 +9371,14 @@ static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *sprite)
case 1:
sprite->data[1] += sprite->data[3];
sprite->data[2] += sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4;
sprite->pos2.x = -(gSineTable[sprite->data[5] * 8] >> 4);
sprite->x = sprite->data[1] >> 4;
sprite->y = sprite->data[2] >> 4;
sprite->x2 = -(gSineTable[sprite->data[5] * 8] >> 4);
if (++sprite->data[5] > 11)
{
SetItemIconPosition(GetItemIconIdxBySprite(sprite), sprite->sCursorArea, sprite->sCursorPos);
sprite->callback = SpriteCallbackDummy;
sprite->pos2.x = 0;
sprite->x2 = 0;
}
break;
}
@ -9386,8 +9386,8 @@ static void SpriteCB_ItemIcon_SwapToMon(struct Sprite *sprite)
static void SpriteCB_ItemIcon_HideParty(struct Sprite *sprite)
{
sprite->pos1.y -= 8;
if (sprite->pos1.y + sprite->pos2.y < -16)
sprite->y -= 8;
if (sprite->y + sprite->y2 < -16)
{
sprite->callback = SpriteCallbackDummy;
SetItemIconActive(GetItemIconIdxBySprite(sprite), FALSE);

View File

@ -3772,8 +3772,8 @@ static void SetTypeSpritePosAndPal(u8 typeId, u8 x, u8 y, u8 spriteArrayId)
struct Sprite *sprite = &gSprites[sMonSummaryScreen->spriteIds[spriteArrayId]];
StartSpriteAnim(sprite, typeId);
sprite->oam.paletteNum = sMoveTypeToOamPaletteNum[typeId];
sprite->pos1.x = x + 16;
sprite->pos1.y = y + 8;
sprite->x = x + 16;
sprite->y = y + 8;
SetSpriteInvisibility(spriteArrayId, FALSE);
}
@ -3999,8 +3999,8 @@ static void CreateMonMarkingsSprite(struct Pokemon *mon)
if (sprite != NULL)
{
StartSpriteAnim(sprite, GetMonData(mon, MON_DATA_MARKINGS));
sMonSummaryScreen->markingsSprite->pos1.x = 60;
sMonSummaryScreen->markingsSprite->pos1.y = 26;
sMonSummaryScreen->markingsSprite->x = 60;
sMonSummaryScreen->markingsSprite->y = 26;
sMonSummaryScreen->markingsSprite->oam.priority = 1;
}
}
@ -4087,9 +4087,9 @@ static void SpriteCb_MoveSelector(struct Sprite *sprite)
}
if (sprite->data[0] == SPRITE_ARR_ID_MOVE_SELECTOR1)
sprite->pos2.y = sMonSummaryScreen->firstMoveIndex * 16;
sprite->y2 = sMonSummaryScreen->firstMoveIndex * 16;
else
sprite->pos2.y = sMonSummaryScreen->secondMoveIndex * 16;
sprite->y2 = sMonSummaryScreen->secondMoveIndex * 16;
}
static void DestroyMoveSelectorSprites(u8 firstArrayId)

View File

@ -672,8 +672,8 @@ void CreateMonMarkingsOrPokeballIndicators(void)
BufferMonMarkingsMenuTiles();
sprite = CreateMonMarkingAllCombosSprite(0x69, 0x69, sConditionGraphMonMarkingsPal);
sprite->oam.priority = 3;
sprite->pos1.x = 192;
sprite->pos1.y = 32;
sprite->x = 192;
sprite->y = 32;
sprite->callback = MonMarkingsCallback;
structPtr->monMarksSprite = sprite;
PokenavFillPalette(IndexOfSpritePaletteTag(0x69), 0);
@ -792,7 +792,7 @@ void FreePartyConditionSubstruct2(void)
void MonPicGfxSpriteCallback(struct Sprite *sprite)
{
struct Pokenav7Struct *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MON_MARK_MENU);
sprite->pos1.x = structPtr->monTransitionX + 38;
sprite->x = structPtr->monTransitionX + 38;
}
void CreateConditionMonPic(u8 id)

View File

@ -604,7 +604,7 @@ static void CleanupPokenavMainMenuResources(void)
static void SpriteCB_SpinningPokenav(struct Sprite *sprite)
{
// If the background starts scrolling, follow it.
sprite->pos2.y = (GetBgY(0) / 256u) * -1;
sprite->y2 = (GetBgY(0) / 256u) * -1;
}
struct Sprite *PauseSpinningPokenavSprite(void)
@ -619,8 +619,8 @@ void ResumeSpinningPokenavSprite(void)
{
struct PokenavMainMenuResources *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU);
structPtr->spinningPokenav->pos1.x = 220;
structPtr->spinningPokenav->pos1.y = 12;
structPtr->spinningPokenav->x = 220;
structPtr->spinningPokenav->y = 12;
structPtr->spinningPokenav->callback = SpriteCB_SpinningPokenav;
structPtr->spinningPokenav->invisible = FALSE;
structPtr->spinningPokenav->oam.priority = 0;
@ -640,13 +640,13 @@ static void InitHoennMapHeaderSprites(void)
spriteId = CreateSprite(&sPokenavLeftHeaderHoennMapSpriteTemplate, 0, 0, 1);
structPtr->leftHeaderSprites[i] = &gSprites[spriteId];
structPtr->leftHeaderSprites[i]->invisible = TRUE;
structPtr->leftHeaderSprites[i]->pos2.x = i * 64;
structPtr->leftHeaderSprites[i]->x2 = i * 64;
spriteId = CreateSprite(&sUnknown_0861FB44, 0, 0, 2);
structPtr->submenuLeftHeaderSprites[i] = &gSprites[spriteId];
structPtr->submenuLeftHeaderSprites[i]->invisible = TRUE;
structPtr->submenuLeftHeaderSprites[i]->pos2.x = i * 32;
structPtr->submenuLeftHeaderSprites[i]->pos2.y = 18;
structPtr->submenuLeftHeaderSprites[i]->x2 = i * 32;
structPtr->submenuLeftHeaderSprites[i]->y2 = 18;
structPtr->submenuLeftHeaderSprites[i]->oam.tileNum += (i * 8) + 64;
}
}
@ -686,9 +686,9 @@ static void LoadLeftHeaderGfxForMenu(u32 menuGfxId)
structPtr->leftHeaderSprites[1]->oam.tileNum = GetSpriteTileStartByTag(2) + sPokenavMenuLeftHeaderSpriteSheets[menuGfxId].size;
if (menuGfxId == POKENAV_GFX_MAP_MENU_ZOOMED_OUT || menuGfxId == POKENAV_GFX_MAP_MENU_ZOOMED_IN)
structPtr->leftHeaderSprites[1]->pos2.x = 56;
structPtr->leftHeaderSprites[1]->x2 = 56;
else
structPtr->leftHeaderSprites[1]->pos2.x = 64;
structPtr->leftHeaderSprites[1]->x2 = 64;
}
static void LoadLeftHeaderGfxForSubMenu(u32 menuGfxId)
@ -762,7 +762,7 @@ static void ShowLeftHeaderSprites(u32 startY, bool32 isOnRightSide)
for (i = 0; i < (s32)ARRAY_COUNT(structPtr->leftHeaderSprites); i++)
{
structPtr->leftHeaderSprites[i]->pos1.y = startY;
structPtr->leftHeaderSprites[i]->y = startY;
MoveLeftHeader(structPtr->leftHeaderSprites[i], start, end, 12);
}
}
@ -779,7 +779,7 @@ static void ShowLeftHeaderSubmenuSprites(u32 startY, bool32 isOnRightSide)
for (i = 0; i < (s32)ARRAY_COUNT(structPtr->submenuLeftHeaderSprites); i++)
{
structPtr->submenuLeftHeaderSprites[i]->pos1.y = startY;
structPtr->submenuLeftHeaderSprites[i]->y = startY;
MoveLeftHeader(structPtr->submenuLeftHeaderSprites[i], start, end, 12);
}
}
@ -818,7 +818,7 @@ static void HideLeftHeaderSubmenuSprites(bool32 isOnRightSide)
static void MoveLeftHeader(struct Sprite *sprite, s32 startX, s32 endX, s32 duration)
{
sprite->pos1.x = startX;
sprite->x = startX;
sprite->data[0] = startX * 16;
sprite->data[1] = (endX - startX) * 16 / duration;
sprite->data[2] = duration;
@ -832,15 +832,15 @@ static void SpriteCB_MoveLeftHeader(struct Sprite *sprite)
{
sprite->data[2]--;
sprite->data[0] += sprite->data[1];
sprite->pos1.x = sprite->data[0] >> 4;
if (sprite->pos1.x < -16 || sprite->pos1.x > 256)
sprite->x = sprite->data[0] >> 4;
if (sprite->x < -16 || sprite->x > 256)
sprite->invisible = TRUE;
else
sprite->invisible = FALSE;
}
else
{
sprite->pos1.x = sprite->data[7];
sprite->x = sprite->data[7];
sprite->callback = SpriteCallbackDummy;
}
}

View File

@ -1074,9 +1074,9 @@ static void DrawMsgBoxForMatchCallMsg(struct Pokenav4Struct *state)
PutWindowTilemap(state->msgBoxWindowId);
CopyWindowToVram(state->msgBoxWindowId, 3);
sprite = PauseSpinningPokenavSprite();
sprite->pos1.x = 24;
sprite->pos1.y = 112;
sprite->pos2.y = 0;
sprite->x = 24;
sprite->y = 112;
sprite->y2 = 0;
}
static void DrawMsgBoxForCloseByMsg(struct Pokenav4Struct *state)
@ -1200,7 +1200,7 @@ static void CloseMatchCallSelectOptionsWindow(struct Pokenav4Struct *state)
static void UpdateCursorGfxPos(struct Pokenav4Struct *state, int top)
{
state->optionsCursorSprite->pos2.y = top * 16;
state->optionsCursorSprite->y2 = top * 16;
}
void SpriteCB_OptionsCursor(struct Sprite *sprite)
@ -1208,7 +1208,7 @@ void SpriteCB_OptionsCursor(struct Sprite *sprite)
if (++sprite->data[0] > 3)
{
sprite->data[0] = 0;
sprite->pos2.x = (sprite->pos2.x + 1) & 0x7;
sprite->x2 = (sprite->x2 + 1) & 0x7;
}
}
@ -1251,16 +1251,16 @@ static void SpriteCB_TrainerPicSlideOnscreen(struct Sprite *sprite)
case 0:
if (CheckForSpaceForDma3Request(sprite->data[7]) != -1)
{
sprite->pos2.x = -80;
sprite->x2 = -80;
sprite->invisible = FALSE;
sprite->data[0]++;
}
break;
case 1:
sprite->pos2.x += 8;
if (sprite->pos2.x >= 0)
sprite->x2 += 8;
if (sprite->x2 >= 0)
{
sprite->pos2.x = 0;
sprite->x2 = 0;
sprite->callback = SpriteCallbackDummy;
}
break;
@ -1269,8 +1269,8 @@ static void SpriteCB_TrainerPicSlideOnscreen(struct Sprite *sprite)
static void SpriteCB_TrainerPicSlideOffscreen(struct Sprite *sprite)
{
sprite->pos2.x -= 8;
if (sprite->pos2.x <= -80)
sprite->x2 -= 8;
if (sprite->x2 <= -80)
{
sprite->invisible = TRUE;
sprite->callback = SpriteCallbackDummy;

View File

@ -890,7 +890,7 @@ void ToggleMatchCallArrows(struct PokenavSub17Substruct *list, bool32 shouldHide
void SpriteCB_MatchCallRightArrow(struct Sprite *sprite)
{
struct PokenavSub17 *structPtr = GetSubstructPtr(POKENAV_SUBSTRUCT_MATCH_CALL_LIST);
sprite->pos2.y = structPtr->unk888.selectedIndexOffset << 4;
sprite->y2 = structPtr->unk888.selectedIndexOffset << 4;
}
void SpriteCB_MatchCallDownArrow(struct Sprite *sprite)
@ -907,7 +907,7 @@ void SpriteCB_MatchCallDownArrow(struct Sprite *sprite)
sprite->data[0] = 0;
offset = (sprite->data[1] + 1) & 7;
sprite->data[1] = offset;
sprite->pos2.y = offset;
sprite->y2 = offset;
}
}
@ -925,7 +925,7 @@ void SpriteCB_MatchCallUpArrow(struct Sprite *sprite)
sprite->data[0] = 0;
offset = (sprite->data[1] + 1) & 7;
sprite->data[1] = offset;
sprite->pos2.y = -1 * offset;
sprite->y2 = -1 * offset;
}
}

View File

@ -781,7 +781,7 @@ static void CreateMenuOptionSprites(void)
{
u8 spriteId = CreateSprite(&sMenuOptionSpriteTemplate, 0x8c, 20 * i + 40, 3);
unk->iconSprites[i][j] = &gSprites[spriteId];
gSprites[spriteId].pos2.x = 32 * j;
gSprites[spriteId].x2 = 32 * j;
}
}
}
@ -822,9 +822,9 @@ static void DrawOptionLabelGfx(const u16 *const *tiles, s32 yPos, s32 deltaY)
unk->iconSprites[i][j]->oam.tileNum = (*tiles)[0] + sp04 + 8 * j;
unk->iconSprites[i][j]->oam.paletteNum = IndexOfSpritePaletteTag((*tiles)[1] + 4);
unk->iconSprites[i][j]->invisible = TRUE;
unk->iconSprites[i][j]->pos1.y = yPos;
unk->iconSprites[i][j]->pos1.x = 0x8c;
unk->iconSprites[i][j]->pos2.x = 32 * j;
unk->iconSprites[i][j]->y = yPos;
unk->iconSprites[i][j]->x = 0x8c;
unk->iconSprites[i][j]->x2 = 32 * j;
}
unk->iconVisible[i] = TRUE;
}
@ -935,7 +935,7 @@ static void SetMenuOptionGfxParamsInactive(struct Sprite ** sprites, s32 x, s32
for (i = 0; i < 4; i++)
{
(*sprites)->pos1.x = x;
(*sprites)->x = x;
(*sprites)->data[0] = a3;
(*sprites)->data[1] = 16 * (a2 - x) / a3;
(*sprites)->data[2] = 16 * x;
@ -987,11 +987,11 @@ static void sub_81CA474(struct Sprite * sprite)
if (sprite->data[0] != -1)
{
sprite->data[2] += sprite->data[1];
sprite->pos1.x = sprite->data[2] >> 4;
sprite->x = sprite->data[2] >> 4;
}
else
{
sprite->pos1.x = sprite->data[7];
sprite->x = sprite->data[7];
sprite->callback = SpriteCallbackDummy;
}
}
@ -1007,8 +1007,8 @@ static void sub_81CA4AC(struct Sprite * sprite)
StartSpriteAffineAnim(sprite, 1);
sprite->data[1]++;
sprite->data[2] = 0x100;
sprite->pos1.x += sprite->pos2.x;
sprite->pos2.x = 0;
sprite->x += sprite->x2;
sprite->x2 = 0;
}
else
{
@ -1019,16 +1019,16 @@ static void sub_81CA4AC(struct Sprite * sprite)
switch (sprite->data[7])
{
case 0:
sprite->pos2.x = -r1 * 3;
sprite->x2 = -r1 * 3;
break;
case 1:
sprite->pos2.x = -r1;
sprite->x2 = -r1;
break;
case 2:
sprite->pos2.x = r1;
sprite->x2 = r1;
break;
case 3:
sprite->pos2.x = r1 * 3;
sprite->x2 = r1 * 3;
break;
}
if (sprite->affineAnimEnded)

View File

@ -727,7 +727,7 @@ static void UpdateCityZoomTextPosition(void)
struct Pokenav5Struct_2 *state = GetSubstructPtr(POKENAV_SUBSTRUCT_REGION_MAP_ZOOM);
int y = 132 - (GetBgY(1) >> 8);
for (i = 0; i < (int)ARRAY_COUNT(state->cityZoomTextSprites); i++)
state->cityZoomTextSprites[i]->pos1.y = y;
state->cityZoomTextSprites[i]->y = y;
}
static void SetCityZoomTextInvisibility(bool32 invisible)

View File

@ -997,7 +997,7 @@ static void StartMonSpriteSlide(struct Sprite *sprite, s32 startX, s32 destX, s3
{
u32 delta = destX - startX;
sprite->pos1.x = startX;
sprite->x = startX;
sprite->sCurrX = startX << 4;
sprite->sMoveIncr = (delta << 4) / time;
sprite->sTime = time;
@ -1012,15 +1012,15 @@ static void SpriteCB_MonSpriteSlide(struct Sprite *sprite)
{
sprite->sTime--;
sprite->sCurrX += sprite->sMoveIncr;
sprite->pos1.x = sprite->sCurrX >> 4;
if (sprite->pos1.x <= MON_SPRITE_X_OFF)
sprite->x = sprite->sCurrX >> 4;
if (sprite->x <= MON_SPRITE_X_OFF)
sprite->invisible = TRUE;
else
sprite->invisible = FALSE;
}
else
{
sprite->pos1.x = sprite->sDestX;
sprite->x = sprite->sDestX;
sprite->callback = SpriteCallbackDummy;
}
}
@ -1232,8 +1232,8 @@ static void UpdateAndZoomInSelectedRibbon(struct PokenavSub14 *structPtr)
s32 x = (position % RIBBONS_PER_ROW) * 16 + 96;
s32 y = (position / RIBBONS_PER_ROW) * 16 + 40;
structPtr->bigRibbonSprite->pos1.x = x;
structPtr->bigRibbonSprite->pos1.y = y;
structPtr->bigRibbonSprite->x = x;
structPtr->bigRibbonSprite->y = y;
// Set new selected ribbon's gfx data
ribbonId = GetRibbonId();

View File

@ -1433,34 +1433,34 @@ static void SpriteCB_DuoFightPre_Groudon(struct Sprite *sprite)
s16 *data = sprite->data;
data[5]++;
data[5] &= 0x1F;
if (data[5] == 0 && sprite->pos1.x != 72)
if (data[5] == 0 && sprite->x != 72)
{
sprite->pos1.x--;
gSprites[sprite->sGroudonBodySpriteId].pos1.x--;
gSprites[sGroudonShoulderSpriteId].pos1.x--;
gSprites[sGroudonClawSpriteId].pos1.x--;
sprite->x--;
gSprites[sprite->sGroudonBodySpriteId].x--;
gSprites[sGroudonShoulderSpriteId].x--;
gSprites[sGroudonClawSpriteId].x--;
}
switch (sprite->animCmdIndex)
{
case 0:
gSprites[sGroudonShoulderSpriteId].pos2.x = 0;
gSprites[sGroudonShoulderSpriteId].pos2.y = 0;
gSprites[sGroudonClawSpriteId].pos2.x = 0;
gSprites[sGroudonClawSpriteId].pos2.y = 0;
gSprites[sGroudonShoulderSpriteId].x2 = 0;
gSprites[sGroudonShoulderSpriteId].y2 = 0;
gSprites[sGroudonClawSpriteId].x2 = 0;
gSprites[sGroudonClawSpriteId].y2 = 0;
break;
case 1:
case 3:
gSprites[sGroudonShoulderSpriteId].pos2.x = -1;
gSprites[sGroudonShoulderSpriteId].pos2.y = 0;
gSprites[sGroudonClawSpriteId].pos2.x = -1;
gSprites[sGroudonClawSpriteId].pos2.y = 0;
gSprites[sGroudonShoulderSpriteId].x2 = -1;
gSprites[sGroudonShoulderSpriteId].y2 = 0;
gSprites[sGroudonClawSpriteId].x2 = -1;
gSprites[sGroudonClawSpriteId].y2 = 0;
break;
case 2:
gSprites[sGroudonShoulderSpriteId].pos2.x = -1;
gSprites[sGroudonShoulderSpriteId].pos2.y = 1;
gSprites[sGroudonClawSpriteId].pos2.x = -2;
gSprites[sGroudonClawSpriteId].pos2.y = 1;
gSprites[sGroudonShoulderSpriteId].x2 = -1;
gSprites[sGroudonShoulderSpriteId].y2 = 1;
gSprites[sGroudonClawSpriteId].x2 = -2;
gSprites[sGroudonClawSpriteId].y2 = 1;
break;
}
}
@ -1502,58 +1502,58 @@ static void SpriteCB_DuoFightPre_Kyogre(struct Sprite *sprite)
s16 *data = sprite->data;
data[5]++;
data[5] &= 0x1F;
if (data[5] == 0 && sprite->pos1.x != 152)
if (data[5] == 0 && sprite->x != 152)
{
sprite->pos1.x++;
gSprites[sprite->data[0] >> 8].pos1.x++;
gSprites[sprite->data[0] & 0xFF].pos1.x++;
gSprites[data[1] >> 8].pos1.x++;
gSprites[data[1] & 0xFF].pos1.x++;
gSprites[data[2] >> 8].pos1.x++;
gSprites[data[2] & 0xFF].pos1.x++;
gSprites[data[3] >> 8].pos1.x++;
gSprites[data[3] & 0xFF].pos1.x++;
gSprites[data[4] >> 8].pos1.x++;
gSprites[data[4] & 0xFF].pos1.x++;
sprite->x++;
gSprites[sprite->data[0] >> 8].x++;
gSprites[sprite->data[0] & 0xFF].x++;
gSprites[data[1] >> 8].x++;
gSprites[data[1] & 0xFF].x++;
gSprites[data[2] >> 8].x++;
gSprites[data[2] & 0xFF].x++;
gSprites[data[3] >> 8].x++;
gSprites[data[3] & 0xFF].x++;
gSprites[data[4] >> 8].x++;
gSprites[data[4] & 0xFF].x++;
}
switch (gSprites[data[2] & 0xFF].animCmdIndex)
{
case 0:
sprite->pos2.y = 0;
gSprites[data[0] >> 8].pos2.y = 0;
gSprites[data[0] & 0xFF].pos2.y = 0;
gSprites[data[1] >> 8].pos2.y = 0;
gSprites[data[1] & 0xFF].pos2.y = 0;
gSprites[data[2] >> 8].pos2.y = 0;
gSprites[data[2] & 0xFF].pos2.y = 0;
gSprites[data[3] >> 8].pos2.y = 0;
gSprites[data[3] & 0xFF].pos2.y = 0;
gSprites[data[4] >> 8].pos2.y = 0;
gSprites[data[4] & 0xFF].pos2.y = 0;
sprite->y2 = 0;
gSprites[data[0] >> 8].y2 = 0;
gSprites[data[0] & 0xFF].y2 = 0;
gSprites[data[1] >> 8].y2 = 0;
gSprites[data[1] & 0xFF].y2 = 0;
gSprites[data[2] >> 8].y2 = 0;
gSprites[data[2] & 0xFF].y2 = 0;
gSprites[data[3] >> 8].y2 = 0;
gSprites[data[3] & 0xFF].y2 = 0;
gSprites[data[4] >> 8].y2 = 0;
gSprites[data[4] & 0xFF].y2 = 0;
break;
case 1:
case 3:
sprite->pos2.y = 1;
gSprites[data[0] >> 8].pos2.y = 1;
gSprites[data[0] & 0xFF].pos2.y = 1;
gSprites[data[1] >> 8].pos2.y = 1;
gSprites[data[1] & 0xFF].pos2.y = 1;
gSprites[data[2] >> 8].pos2.y = 1;
gSprites[data[2] & 0xFF].pos2.y = 1;
gSprites[data[3] >> 8].pos2.y = 1;
gSprites[data[3] & 0xFF].pos2.y = 1;
gSprites[data[4] >> 8].pos2.y = 1;
gSprites[data[4] & 0xFF].pos2.y = 1;
sprite->y2 = 1;
gSprites[data[0] >> 8].y2 = 1;
gSprites[data[0] & 0xFF].y2 = 1;
gSprites[data[1] >> 8].y2 = 1;
gSprites[data[1] & 0xFF].y2 = 1;
gSprites[data[2] >> 8].y2 = 1;
gSprites[data[2] & 0xFF].y2 = 1;
gSprites[data[3] >> 8].y2 = 1;
gSprites[data[3] & 0xFF].y2 = 1;
gSprites[data[4] >> 8].y2 = 1;
gSprites[data[4] & 0xFF].y2 = 1;
break;
case 2:
sprite->pos2.y = 2;
gSprites[data[0] >> 8].pos2.y = 2;
gSprites[data[0] & 0xFF].pos2.y = 2;
gSprites[data[1] >> 8].pos2.y = 2;
gSprites[data[1] & 0xFF].pos2.y = 2;
gSprites[data[2] >> 8].pos2.y = 2;
gSprites[data[4] & 0xFF].pos2.y = 2;
sprite->y2 = 2;
gSprites[data[0] >> 8].y2 = 2;
gSprites[data[0] & 0xFF].y2 = 2;
gSprites[data[1] >> 8].y2 = 2;
gSprites[data[1] & 0xFF].y2 = 2;
gSprites[data[2] >> 8].y2 = 2;
gSprites[data[4] & 0xFF].y2 = 2;
break;
}
}
@ -1825,34 +1825,34 @@ static void SpriteCB_DuoFight_Groudon(struct Sprite *sprite)
s16 *data = sprite->data;
data[5]++;
data[5] &= 0xF;
if (!(data[5] & 7) && sprite->pos1.x != 72)
if (!(data[5] & 7) && sprite->x != 72)
{
sprite->pos1.x--;
gSprites[sprite->sGroudonBodySpriteId].pos1.x--;
gSprites[sGroudonShoulderSpriteId].pos1.x--;
gSprites[sGroudonClawSpriteId].pos1.x--;
sprite->x--;
gSprites[sprite->sGroudonBodySpriteId].x--;
gSprites[sGroudonShoulderSpriteId].x--;
gSprites[sGroudonClawSpriteId].x--;
}
switch (sprite->animCmdIndex)
{
case 0:
gSprites[sGroudonShoulderSpriteId].pos2.x = 0;
gSprites[sGroudonShoulderSpriteId].pos2.y = 0;
gSprites[sGroudonClawSpriteId].pos2.x = 0;
gSprites[sGroudonClawSpriteId].pos2.y = 0;
gSprites[sGroudonShoulderSpriteId].x2 = 0;
gSprites[sGroudonShoulderSpriteId].y2 = 0;
gSprites[sGroudonClawSpriteId].x2 = 0;
gSprites[sGroudonClawSpriteId].y2 = 0;
break;
case 1:
case 3:
gSprites[sGroudonShoulderSpriteId].pos2.x = -1;
gSprites[sGroudonShoulderSpriteId].pos2.y = 0;
gSprites[sGroudonClawSpriteId].pos2.x = -1;
gSprites[sGroudonClawSpriteId].pos2.y = 0;
gSprites[sGroudonShoulderSpriteId].x2 = -1;
gSprites[sGroudonShoulderSpriteId].y2 = 0;
gSprites[sGroudonClawSpriteId].x2 = -1;
gSprites[sGroudonClawSpriteId].y2 = 0;
break;
case 2:
gSprites[sGroudonShoulderSpriteId].pos2.x = -1;
gSprites[sGroudonShoulderSpriteId].pos2.y = 1;
gSprites[sGroudonClawSpriteId].pos2.x = -2;
gSprites[sGroudonClawSpriteId].pos2.y = 1;
gSprites[sGroudonShoulderSpriteId].x2 = -1;
gSprites[sGroudonShoulderSpriteId].y2 = 1;
gSprites[sGroudonClawSpriteId].x2 = -2;
gSprites[sGroudonClawSpriteId].y2 = 1;
break;
}
}
@ -1860,12 +1860,12 @@ static void SpriteCB_DuoFight_Groudon(struct Sprite *sprite)
static void DuoFight_SlideGroudonDown(struct Sprite *sprite)
{
s16 *data = sprite->data;
if (sprite->pos1.y <= DISPLAY_HEIGHT)
if (sprite->y <= DISPLAY_HEIGHT)
{
sprite->pos1.y += 8;
gSprites[sprite->sGroudonBodySpriteId].pos1.y += 8;
gSprites[sGroudonShoulderSpriteId].pos1.y += 8;
gSprites[sGroudonClawSpriteId].pos1.y += 8;
sprite->y += 8;
gSprites[sprite->sGroudonBodySpriteId].y += 8;
gSprites[sGroudonShoulderSpriteId].y += 8;
gSprites[sGroudonClawSpriteId].y += 8;
}
}
@ -1906,58 +1906,58 @@ static void SpriteCB_DuoFight_Kyogre(struct Sprite *sprite)
s16 *data = sprite->data;
data[5]++;
data[5] &= 0xF;
if (!(data[5] & 7) && sprite->pos1.x != 152)
if (!(data[5] & 7) && sprite->x != 152)
{
sprite->pos1.x++;
gSprites[sprite->data[0] >> 8].pos1.x++;
gSprites[sprite->data[0] & 0xFF].pos1.x++;
gSprites[data[1] >> 8].pos1.x++;
gSprites[data[1] & 0xFF].pos1.x++;
gSprites[data[2] >> 8].pos1.x++;
gSprites[data[2] & 0xFF].pos1.x++;
gSprites[data[3] >> 8].pos1.x++;
gSprites[data[3] & 0xFF].pos1.x++;
gSprites[data[4] >> 8].pos1.x++;
gSprites[data[4] & 0xFF].pos1.x++;
sprite->x++;
gSprites[sprite->data[0] >> 8].x++;
gSprites[sprite->data[0] & 0xFF].x++;
gSprites[data[1] >> 8].x++;
gSprites[data[1] & 0xFF].x++;
gSprites[data[2] >> 8].x++;
gSprites[data[2] & 0xFF].x++;
gSprites[data[3] >> 8].x++;
gSprites[data[3] & 0xFF].x++;
gSprites[data[4] >> 8].x++;
gSprites[data[4] & 0xFF].x++;
}
switch (gSprites[data[2] & 0xFF].animCmdIndex)
{
case 0:
sprite->pos2.y = 0;
gSprites[data[0] >> 8].pos2.y = 0;
gSprites[data[0] & 0xFF].pos2.y = 0;
gSprites[data[1] >> 8].pos2.y = 0;
gSprites[data[1] & 0xFF].pos2.y = 0;
gSprites[data[2] >> 8].pos2.y = 0;
gSprites[data[2] & 0xFF].pos2.y = 0;
gSprites[data[3] >> 8].pos2.y = 0;
gSprites[data[3] & 0xFF].pos2.y = 0;
gSprites[data[4] >> 8].pos2.y = 0;
gSprites[data[4] & 0xFF].pos2.y = 0;
sprite->y2 = 0;
gSprites[data[0] >> 8].y2 = 0;
gSprites[data[0] & 0xFF].y2 = 0;
gSprites[data[1] >> 8].y2 = 0;
gSprites[data[1] & 0xFF].y2 = 0;
gSprites[data[2] >> 8].y2 = 0;
gSprites[data[2] & 0xFF].y2 = 0;
gSprites[data[3] >> 8].y2 = 0;
gSprites[data[3] & 0xFF].y2 = 0;
gSprites[data[4] >> 8].y2 = 0;
gSprites[data[4] & 0xFF].y2 = 0;
break;
case 1:
case 3:
sprite->pos2.y = 1;
gSprites[data[0] >> 8].pos2.y = 1;
gSprites[data[0] & 0xFF].pos2.y = 1;
gSprites[data[1] >> 8].pos2.y = 1;
gSprites[data[1] & 0xFF].pos2.y = 1;
gSprites[data[2] >> 8].pos2.y = 1;
gSprites[data[2] & 0xFF].pos2.y = 1;
gSprites[data[3] >> 8].pos2.y = 1;
gSprites[data[3] & 0xFF].pos2.y = 1;
gSprites[data[4] >> 8].pos2.y = 1;
gSprites[data[4] & 0xFF].pos2.y = 1;
sprite->y2 = 1;
gSprites[data[0] >> 8].y2 = 1;
gSprites[data[0] & 0xFF].y2 = 1;
gSprites[data[1] >> 8].y2 = 1;
gSprites[data[1] & 0xFF].y2 = 1;
gSprites[data[2] >> 8].y2 = 1;
gSprites[data[2] & 0xFF].y2 = 1;
gSprites[data[3] >> 8].y2 = 1;
gSprites[data[3] & 0xFF].y2 = 1;
gSprites[data[4] >> 8].y2 = 1;
gSprites[data[4] & 0xFF].y2 = 1;
break;
case 2:
sprite->pos2.y = 2;
gSprites[data[0] >> 8].pos2.y = 2;
gSprites[data[0] & 0xFF].pos2.y = 2;
gSprites[data[1] >> 8].pos2.y = 2;
gSprites[data[1] & 0xFF].pos2.y = 2;
gSprites[data[2] >> 8].pos2.y = 2;
gSprites[data[4] & 0xFF].pos2.y = 2;
sprite->y2 = 2;
gSprites[data[0] >> 8].y2 = 2;
gSprites[data[0] & 0xFF].y2 = 2;
gSprites[data[1] >> 8].y2 = 2;
gSprites[data[1] & 0xFF].y2 = 2;
gSprites[data[2] >> 8].y2 = 2;
gSprites[data[4] & 0xFF].y2 = 2;
break;
}
}
@ -1965,19 +1965,19 @@ static void SpriteCB_DuoFight_Kyogre(struct Sprite *sprite)
static void DuoFight_SlideKyogreDown(struct Sprite *sprite)
{
s16 *data = sprite->data;
if (sprite->pos1.y <= DISPLAY_HEIGHT)
if (sprite->y <= DISPLAY_HEIGHT)
{
sprite->pos1.y += 8;
gSprites[sprite->data[0] >> 8].pos1.y += 8;
gSprites[sprite->data[0] & 0xFF].pos1.y += 8;
gSprites[data[1] >> 8].pos1.y += 8;
gSprites[data[1] & 0xFF].pos1.y += 8;
gSprites[data[2] >> 8].pos1.y += 8;
gSprites[data[2] & 0xFF].pos1.y += 8;
gSprites[data[3] >> 8].pos1.y += 8;
gSprites[data[3] & 0xFF].pos1.y += 8;
gSprites[data[4] >> 8].pos1.y += 8;
gSprites[data[4] & 0xFF].pos1.y += 8;
sprite->y += 8;
gSprites[sprite->data[0] >> 8].y += 8;
gSprites[sprite->data[0] & 0xFF].y += 8;
gSprites[data[1] >> 8].y += 8;
gSprites[data[1] & 0xFF].y += 8;
gSprites[data[2] >> 8].y += 8;
gSprites[data[2] & 0xFF].y += 8;
gSprites[data[3] >> 8].y += 8;
gSprites[data[3] & 0xFF].y += 8;
gSprites[data[4] >> 8].y += 8;
gSprites[data[4] & 0xFF].y += 8;
}
}
@ -2184,13 +2184,13 @@ static void SpriteCB_TakesFlight_Smoke(struct Sprite *sprite)
{
if (sprite->sTimer == 0)
{
sprite->pos2.x = 0;
sprite->pos2.y = 0;
sprite->x2 = 0;
sprite->y2 = 0;
}
else
{
sprite->pos2.x += sTakesFlight_SmokeCoords[sprite->sSmokeId][0];
sprite->pos2.y += sTakesFlight_SmokeCoords[sprite->sSmokeId][1];
sprite->x2 += sTakesFlight_SmokeCoords[sprite->sSmokeId][0];
sprite->y2 += sTakesFlight_SmokeCoords[sprite->sSmokeId][1];
}
sprite->sTimer++;
@ -2433,13 +2433,13 @@ static void SpriteCB_Descends_Rayquaza(struct Sprite *sprite)
if (sTimer % sXMovePeriod == 0)
{
sprite->pos2.x--;
gSprites[sTailSpriteId].pos2.x--;
sprite->x2--;
gSprites[sTailSpriteId].x2--;
}
if (sTimer % sYMovePeriod == 0)
{
sprite->pos2.y++;
gSprites[sTailSpriteId].pos2.y++;
sprite->y2++;
gSprites[sTailSpriteId].y2++;
}
sTimer++;
@ -2902,14 +2902,14 @@ static void SpriteCB_ChasesAway_DuoRingPush(struct Sprite *sprite)
{
if (!sprite->sIsKyogre)
{
sprite->pos1.x -= sprite->sSpeed;
gSprites[sprite->sBodyPartSpriteId1].pos1.x -= sprite->sSpeed;
sprite->x -= sprite->sSpeed;
gSprites[sprite->sBodyPartSpriteId1].x -= sprite->sSpeed;
}
else
{
sprite->pos1.x += sprite->sSpeed;
gSprites[sprite->sBodyPartSpriteId1].pos1.x += sprite->sSpeed;
gSprites[sprite->sBodyPartSpriteId2].pos1.x += sprite->sSpeed;
sprite->x += sprite->sSpeed;
gSprites[sprite->sBodyPartSpriteId1].x += sprite->sSpeed;
gSprites[sprite->sBodyPartSpriteId2].x += sprite->sSpeed;
}
sprite->sDecel++;
@ -2949,18 +2949,18 @@ static void SpriteCB_ChasesAway_GroudonLeave(struct Sprite *sprite)
case 2:
if (sprite->animDelayCounter % 12 == 0)
{
sprite->pos1.x -= 2;
gSprites[sprite->data[0]].pos1.x -=2;
sprite->x -= 2;
gSprites[sprite->data[0]].x -=2;
}
gSprites[sprite->data[0]].pos2.y = 0;
gSprites[sprite->data[0]].y2 = 0;
break;
case 1:
case 3:
gSprites[sprite->data[0]].pos2.y = -2;
gSprites[sprite->data[0]].y2 = -2;
if ((sprite->animDelayCounter & 15) == 0)
{
sprite->pos1.y++;
gSprites[sprite->data[0]].pos1.y++;
sprite->y++;
gSprites[sprite->data[0]].y++;
}
break;
}
@ -2982,10 +2982,10 @@ static void SpriteCB_ChasesAway_KyogreLeave(struct Sprite *sprite)
{
if ((sprite->data[4] & 3) == 0)
{
if (sprite->pos2.x == 1)
sprite->pos2.x = -1;
if (sprite->x2 == 1)
sprite->x2 = -1;
else
sprite->pos2.x = 1;
sprite->x2 = 1;
}
if (sprite->data[5] == 128)
{
@ -2998,10 +2998,10 @@ static void SpriteCB_ChasesAway_KyogreLeave(struct Sprite *sprite)
}
if (sprite->data[5] > 127)
{
if (sprite->pos2.y != 32)
if (sprite->y2 != 32)
{
sprite->data[6]++;
sprite->pos2.y = sprite->data[6] >> 4;
sprite->y2 = sprite->data[6] >> 4;
}
}
else
@ -3029,8 +3029,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite)
s16 frame = sprite->sTimer;
if (frame <= 64)
{
sprite->pos2.y += 2;
gSprites[sprite->sTailSpriteId].pos2.y += 2;
sprite->y2 += 2;
gSprites[sprite->sTailSpriteId].y2 += 2;
if (sprite->sTimer == 64)
{
ChasesAway_SetRayquazaAnim(sprite, 1, 0, -48);
@ -3062,8 +3062,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite)
{
SpriteCB_ChasesAway_RayquazaFloat(sprite);
ChasesAway_SetRayquazaAnim(sprite, 3, 48, 16);
sprite->pos2.x = 1;
gSprites[sprite->sTailSpriteId].pos2.x = 1;
sprite->x2 = 1;
gSprites[sprite->sTailSpriteId].x2 = 1;
PlayCry1(SPECIES_RAYQUAZA, 0);
CreateTask(Task_ChasesAway_AnimateRing, 0);
}
@ -3072,8 +3072,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite)
switch (frame)
{
case 376:
sprite->pos2.x = 0;
gSprites[sprite->sTailSpriteId].pos2.x = 0;
sprite->x2 = 0;
gSprites[sprite->sTailSpriteId].x2 = 0;
SpriteCB_ChasesAway_RayquazaFloat(sprite);
ChasesAway_SetRayquazaAnim(sprite, 2, 48, 16);
sprite->callback = SpriteCB_ChasesAway_RayquazaFloat;
@ -3086,8 +3086,8 @@ static void SpriteCB_ChasesAway_Rayquaza(struct Sprite *sprite)
if (sprite->sTimer > 328 && (sprite->sTimer & 1) == 0)
{
sprite->pos2.x *= -1;
gSprites[sprite->sTailSpriteId].pos2.x = sprite->pos2.x;
sprite->x2 *= -1;
gSprites[sprite->sTailSpriteId].x2 = sprite->x2;
}
sprite->sTimer++;
@ -3098,8 +3098,8 @@ static void SpriteCB_ChasesAway_RayquazaFloat(struct Sprite *body)
struct Sprite *tail = &gSprites[body->sTailSpriteId];
if (!(body->sFloatTimer & tail->sTailFloatDelay))
{
body->pos2.y += body->sYOffset;
gSprites[body->sTailSpriteId].pos2.y += body->sYOffset; // why access gSprites again? tail->pos2.y would be sufficient
body->y2 += body->sYOffset;
gSprites[body->sTailSpriteId].y2 += body->sYOffset; // why access gSprites again? tail->y2 would be sufficient
body->sYOffset += body->sYOffsetDir;
if (body->sYOffset >= tail->sTailFloatPeak || body->sYOffset <= -tail->sTailFloatPeak)
{
@ -3119,11 +3119,11 @@ static void ChasesAway_SetRayquazaAnim(struct Sprite *body, u8 animNum, s16 x, s
{
struct Sprite *tail = &gSprites[body->sTailSpriteId];
tail->pos1.x = body->pos1.x + x;
tail->pos1.y = body->pos1.y + y;
tail->x = body->x + x;
tail->y = body->y + y;
tail->pos2.x = body->pos2.x;
tail->pos2.y = body->pos2.y;
tail->x2 = body->x2;
tail->y2 = body->y2;
StartSpriteAnim(body, animNum);
StartSpriteAnim(tail, animNum);

View File

@ -952,8 +952,8 @@ void PokedexAreaScreen_UpdateRegionMapVariablesAndVideoRegs(s16 x, s16 y)
UpdateRegionMapVideoRegs();
if (gRegionMap->playerIconSprite != NULL)
{
gRegionMap->playerIconSprite->pos2.x = -x;
gRegionMap->playerIconSprite->pos2.y = -y;
gRegionMap->playerIconSprite->x2 = -x;
gRegionMap->playerIconSprite->y2 = -y;
}
}
@ -1364,8 +1364,8 @@ static void SpriteCB_CursorMapFull(struct Sprite *sprite)
{
if (gRegionMap->cursorMovementFrameCounter != 0)
{
sprite->pos1.x += 2 * gRegionMap->cursorDeltaX;
sprite->pos1.y += 2 * gRegionMap->cursorDeltaY;
sprite->x += 2 * gRegionMap->cursorDeltaX;
sprite->y += 2 * gRegionMap->cursorDeltaY;
gRegionMap->cursorMovementFrameCounter--;
}
}
@ -1411,15 +1411,15 @@ void CreateRegionMapCursor(u16 tileTag, u16 paletteTag)
if (gRegionMap->zoomed == TRUE)
{
gRegionMap->cursorSprite->oam.size = SPRITE_SIZE(32x32);
gRegionMap->cursorSprite->pos1.x -= 8;
gRegionMap->cursorSprite->pos1.y -= 8;
gRegionMap->cursorSprite->x -= 8;
gRegionMap->cursorSprite->y -= 8;
StartSpriteAnim(gRegionMap->cursorSprite, 1);
}
else
{
gRegionMap->cursorSprite->oam.size = SPRITE_SIZE(16x16);
gRegionMap->cursorSprite->pos1.x = 8 * gRegionMap->cursorPosX + 4;
gRegionMap->cursorSprite->pos1.y = 8 * gRegionMap->cursorPosY + 4;
gRegionMap->cursorSprite->x = 8 * gRegionMap->cursorPosX + 4;
gRegionMap->cursorSprite->y = 8 * gRegionMap->cursorPosY + 4;
}
gRegionMap->cursorSprite->data[1] = 2;
gRegionMap->cursorSprite->data[2] = (IndexOfSpritePaletteTag(paletteTag) << 4) + 0x101;
@ -1472,14 +1472,14 @@ void CreateRegionMapPlayerIcon(u16 tileTag, u16 paletteTag)
gRegionMap->playerIconSprite = &gSprites[spriteId];
if (!gRegionMap->zoomed)
{
gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 8 + 4;
gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 8 + 4;
gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 8 + 4;
gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 8 + 4;
gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull;
}
else
{
gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 16 - 0x30;
gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 16 - 0x42;
gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 16 - 0x30;
gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 16 - 0x42;
gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed;
}
}
@ -1499,17 +1499,17 @@ static void UnhideRegionMapPlayerIcon(void)
{
if (gRegionMap->zoomed == TRUE)
{
gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 16 - 0x30;
gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 16 - 0x42;
gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 16 - 0x30;
gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 16 - 0x42;
gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapZoomed;
gRegionMap->playerIconSprite->invisible = FALSE;
}
else
{
gRegionMap->playerIconSprite->pos1.x = gRegionMap->playerIconSpritePosX * 8 + 4;
gRegionMap->playerIconSprite->pos1.y = gRegionMap->playerIconSpritePosY * 8 + 4;
gRegionMap->playerIconSprite->pos2.x = 0;
gRegionMap->playerIconSprite->pos2.y = 0;
gRegionMap->playerIconSprite->x = gRegionMap->playerIconSpritePosX * 8 + 4;
gRegionMap->playerIconSprite->y = gRegionMap->playerIconSpritePosY * 8 + 4;
gRegionMap->playerIconSprite->x2 = 0;
gRegionMap->playerIconSprite->y2 = 0;
gRegionMap->playerIconSprite->callback = SpriteCB_PlayerIconMapFull;
gRegionMap->playerIconSprite->invisible = FALSE;
}
@ -1518,10 +1518,10 @@ static void UnhideRegionMapPlayerIcon(void)
static void SpriteCB_PlayerIconMapZoomed(struct Sprite *sprite)
{
sprite->pos2.x = -2 * gRegionMap->scrollX;
sprite->pos2.y = -2 * gRegionMap->scrollY;
sprite->data[0] = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY;
sprite->data[1] = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX;
sprite->x2 = -2 * gRegionMap->scrollX;
sprite->y2 = -2 * gRegionMap->scrollY;
sprite->data[0] = sprite->y + sprite->y2 + sprite->centerToCornerVecY;
sprite->data[1] = sprite->x + sprite->x2 + sprite->centerToCornerVecX;
if (sprite->data[0] < -8 || sprite->data[0] > 0xa8 || sprite->data[1] < -8 || sprite->data[1] > 0xf8)
{
sprite->data[2] = FALSE;

View File

@ -243,36 +243,36 @@ static void SpriteCB_Cursor_UpOrRight(struct Sprite *sprite)
sprite->invisible = FALSE;
sprite->animNum = ARROW_UP;
sprite->animDelayCounter = 0;
sprite->pos1.x = 53;
sprite->pos1.y = 68;
sprite->x = 53;
sprite->y = 68;
break;
case SELECTION_HOURS:
sprite->invisible = FALSE;
sprite->animNum = ARROW_UP;
sprite->animDelayCounter = 0;
sprite->pos1.x = 86;
sprite->pos1.y = 68;
sprite->x = 86;
sprite->y = 68;
break;
case SELECTION_MINS:
sprite->invisible = FALSE;
sprite->animNum = ARROW_UP;
sprite->animDelayCounter = 0;
sprite->pos1.x = 101;
sprite->pos1.y = 68;
sprite->x = 101;
sprite->y = 68;
break;
case SELECTION_SECS:
sprite->invisible = FALSE;
sprite->animNum = ARROW_UP;
sprite->animDelayCounter = 0;
sprite->pos1.x = 116;
sprite->pos1.y = 68;
sprite->x = 116;
sprite->y = 68;
break;
case SELECTION_CONFIRM:
sprite->invisible = FALSE;
sprite->animNum = ARROW_RIGHT;
sprite->animDelayCounter = 0;
sprite->pos1.x = 153;
sprite->pos1.y = 80;
sprite->x = 153;
sprite->y = 80;
break;
case SELECTION_NONE:
DestroySprite(sprite);
@ -293,29 +293,29 @@ static void SpriteCB_Cursor_Down(struct Sprite *sprite)
sprite->invisible = FALSE;
sprite->animNum = ARROW_DOWN;
sprite->animDelayCounter = 0;
sprite->pos1.x = 53;
sprite->pos1.y = 92;
sprite->x = 53;
sprite->y = 92;
break;
case SELECTION_HOURS:
sprite->invisible = FALSE;
sprite->animNum = ARROW_DOWN;
sprite->animDelayCounter = 0;
sprite->pos1.x = 86;
sprite->pos1.y = 92;
sprite->x = 86;
sprite->y = 92;
break;
case SELECTION_MINS:
sprite->invisible = FALSE;
sprite->animNum = ARROW_DOWN;
sprite->animDelayCounter = 0;
sprite->pos1.x = 101;
sprite->pos1.y = 92;
sprite->x = 101;
sprite->y = 92;
break;
case SELECTION_SECS:
sprite->invisible = FALSE;
sprite->animNum = ARROW_DOWN;
sprite->animDelayCounter = 0;
sprite->pos1.x = 116;
sprite->pos1.y = 92;
sprite->x = 116;
sprite->y = 92;
break;
case SELECTION_CONFIRM:
// The up arrow is used as a right arrow when Confirm is selected

Some files were not shown because too many files have changed in this diff Show More