Merge pull request #450 from PikalaxALT/flatten_sprite_pos

Flatten pos fields in struct Sprite
This commit is contained in:
GriffinR
2021-07-25 12:51:51 -04:00
committed by GitHub
92 changed files with 2891 additions and 2891 deletions
+2 -2
View File
@@ -197,8 +197,8 @@ struct Sprite
/*0x18*/ const struct SubspriteTable *subspriteTables; /*0x18*/ const struct SubspriteTable *subspriteTables;
/*0x1C*/ SpriteCallback callback; /*0x1C*/ SpriteCallback callback;
/*0x20*/ struct Coords16 pos1; /*0x20*/ s16 x, y;
/*0x24*/ struct Coords16 pos2; /*0x24*/ s16 x2, y2;
/*0x28*/ s8 centerToCornerVecX; /*0x28*/ s8 centerToCornerVecX;
/*0x29*/ s8 centerToCornerVecY; /*0x29*/ s8 centerToCornerVecY;
+10 -10
View File
@@ -2183,8 +2183,8 @@ static void ScriptCmd_monbg(void)
spriteId = gBattlerSpriteIds[battlerId]; spriteId = gBattlerSpriteIds[battlerId];
taskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10); taskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10);
gTasks[taskId].data[t1_MONBG_BATTLER] = spriteId; gTasks[taskId].data[t1_MONBG_BATTLER] = spriteId;
gTasks[taskId].data[1] = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x; gTasks[taskId].data[1] = gSprites[spriteId].x + gSprites[spriteId].x2;
gTasks[taskId].data[2] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y; gTasks[taskId].data[2] = gSprites[spriteId].y + gSprites[spriteId].y2;
if (!toBG_2) if (!toBG_2)
{ {
gTasks[taskId].data[3] = gBattle_BG1_X; gTasks[taskId].data[3] = gBattle_BG1_X;
@@ -2214,8 +2214,8 @@ static void ScriptCmd_monbg(void)
spriteId = gBattlerSpriteIds[battlerId]; spriteId = gBattlerSpriteIds[battlerId];
taskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10); taskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10);
gTasks[taskId].data[t1_MONBG_BATTLER] = spriteId; gTasks[taskId].data[t1_MONBG_BATTLER] = spriteId;
gTasks[taskId].data[1] = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x; gTasks[taskId].data[1] = gSprites[spriteId].x + gSprites[spriteId].x2;
gTasks[taskId].data[2] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y; gTasks[taskId].data[2] = gSprites[spriteId].y + gSprites[spriteId].y2;
if (!toBG_2) if (!toBG_2)
{ {
gTasks[taskId].data[3] = gBattle_BG1_X; gTasks[taskId].data[3] = gBattle_BG1_X;
@@ -2268,8 +2268,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
SetAnimBgAttribute(1, BG_ANIM_AREA_OVERFLOW_MODE, 0); SetAnimBgAttribute(1, BG_ANIM_AREA_OVERFLOW_MODE, 0);
battlerSpriteId = gBattlerSpriteIds[battlerId]; 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;
gBattle_BG1_Y = -(gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y) + 0x20; gBattle_BG1_Y = -(gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2) + 0x20;
gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE; gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X); SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X);
@@ -2293,8 +2293,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2)
SetAnimBgAttribute(2, BG_ANIM_AREA_OVERFLOW_MODE, 0); SetAnimBgAttribute(2, BG_ANIM_AREA_OVERFLOW_MODE, 0);
battlerSpriteId = gBattlerSpriteIds[battlerId]; battlerSpriteId = gBattlerSpriteIds[battlerId];
gBattle_BG2_X = -(gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x) + 0x20; gBattle_BG2_X = -(gSprites[battlerSpriteId].x + gSprites[battlerSpriteId].x2) + 0x20;
gBattle_BG2_Y = -(gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y) + 0x20; gBattle_BG2_Y = -(gSprites[battlerSpriteId].y + gSprites[battlerSpriteId].y2) + 0x20;
gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE; gSprites[gBattlerSpriteIds[battlerId]].invisible = TRUE;
SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X); SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X);
@@ -2356,8 +2356,8 @@ static void task_pA_ma0A_obj_to_bg_pal(u8 taskId)
spriteId = gTasks[taskId].data[0]; spriteId = gTasks[taskId].data[0];
palIndex = gTasks[taskId].data[6]; palIndex = gTasks[taskId].data[6];
GetBattleAnimBg1Data(&animBg); GetBattleAnimBg1Data(&animBg);
x = gTasks[taskId].data[1] - (gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x); x = gTasks[taskId].data[1] - (gSprites[spriteId].x + gSprites[spriteId].x2);
y = gTasks[taskId].data[2] - (gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y); y = gTasks[taskId].data[2] - (gSprites[spriteId].y + gSprites[spriteId].y2);
if (gTasks[taskId].data[5] == 0) if (gTasks[taskId].data[5] == 0)
{ {
File diff suppressed because it is too large Load Diff
+184 -184
View File
@@ -1214,7 +1214,7 @@ void sub_80A6E48(struct Sprite *sprite)
{ {
SetSpriteCoordsToAnimAttackerCoords(sprite); SetSpriteCoordsToAnimAttackerCoords(sprite);
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[1] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[2];
sprite->data[2] = gBattleAnimArgs[4]; sprite->data[2] = gBattleAnimArgs[4];
sprite->data[3] = gBattleAnimArgs[5]; sprite->data[3] = gBattleAnimArgs[5];
@@ -1244,12 +1244,12 @@ static void sub_80A6ED8(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos2.y -= 3; sprite->y2 -= 3;
if (++sprite->data[1] == 6) if (++sprite->data[1] == 6)
sprite->data[0]++; sprite->data[0]++;
break; break;
case 1: case 1:
sprite->pos2.y += 3; sprite->y2 += 3;
if (--sprite->data[1] == 0) if (--sprite->data[1] == 0)
sprite->data[0]++; sprite->data[0]++;
break; break;
@@ -1264,12 +1264,12 @@ static void sub_80A6F3C(struct Sprite *sprite)
{ {
s16 temp; s16 temp;
gSprites[sprite->data[2]].pos2.x += sprite->data[1]; gSprites[sprite->data[2]].x2 += sprite->data[1];
temp = sprite->data[1]; temp = sprite->data[1];
sprite->data[1] = -temp; sprite->data[1] = -temp;
if (sprite->data[0] == 0) if (sprite->data[0] == 0)
{ {
gSprites[sprite->data[2]].pos2.x = 0; gSprites[sprite->data[2]].x2 = 0;
DestroySpriteAndMatrix(sprite); DestroySpriteAndMatrix(sprite);
} }
@@ -1280,15 +1280,15 @@ void sub_80A6F8C(struct Sprite *sprite)
{ {
u8 spriteId; u8 spriteId;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
spriteId = gBattlerSpriteIds[gBattleAnimTarget]; spriteId = gBattlerSpriteIds[gBattleAnimTarget];
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else 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[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = spriteId; sprite->data[2] = spriteId;
@@ -1309,8 +1309,8 @@ void sub_80A7020(struct Sprite *sprite)
static void sub_80A7058(struct Sprite *sprite) static void sub_80A7058(struct Sprite *sprite)
{ {
sprite->data[0] = sprite->data[1]; sprite->data[0] = sprite->data[1];
sprite->data[2] = sprite->pos1.x; sprite->data[2] = sprite->x;
sprite->data[4] = sprite->pos1.y + 15; sprite->data[4] = sprite->y + 15;
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, sub_80A7080); StoreSpriteCallbackInData6(sprite, sub_80A7080);
} }
@@ -1346,7 +1346,7 @@ static void AnimTask_WithdrawStep(u8 taskId)
{ {
gTasks[taskId].data[0] += 0xB0; gTasks[taskId].data[0] += 0xB0;
// this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation() // this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation()
gSprites[spriteId].pos2.y++; gSprites[spriteId].y2++;
} }
else if (gTasks[taskId].data[1] == 1) else if (gTasks[taskId].data[1] == 1)
{ {
@@ -1359,7 +1359,7 @@ static void AnimTask_WithdrawStep(u8 taskId)
{ {
gTasks[taskId].data[0] -= 0xB0; gTasks[taskId].data[0] -= 0xB0;
// this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation() // this y position update gets overwritten by SetBattlerSpriteYOffsetFromRotation()
gSprites[spriteId].pos2.y--; gSprites[spriteId].y2--;
} }
SetBattlerSpriteYOffsetFromRotation(spriteId); SetBattlerSpriteYOffsetFromRotation(spriteId);
@@ -1385,11 +1385,11 @@ void Anim_KinesisZapEnergy(struct Sprite *sprite)
{ {
SetSpriteCoordsToAnimAttackerCoords(sprite); SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else 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) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->hFlip = TRUE; sprite->hFlip = TRUE;
@@ -1419,8 +1419,8 @@ void Anim_SwordsDanceBlade(struct Sprite *sprite)
static void AnimSwordsDanceBladeStep(struct Sprite *sprite) static void AnimSwordsDanceBladeStep(struct Sprite *sprite)
{ {
sprite->data[0] = 6; sprite->data[0] = 6;
sprite->data[2] = sprite->pos1.x; sprite->data[2] = sprite->x;
sprite->data[4] = sprite->pos1.y - 32; sprite->data[4] = sprite->y - 32;
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
} }
@@ -1452,7 +1452,7 @@ void AnimSonicBoomProjectile(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE); InitSpritePosToAnimAttacker(sprite, TRUE);
targetXPos = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; targetXPos = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2];
targetYPos = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; targetYPos = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3];
rotation = ArcTan2Neg(targetXPos - sprite->pos1.x, targetYPos - sprite->pos1.y); rotation = ArcTan2Neg(targetXPos - sprite->x, targetYPos - sprite->y);
rotation += 0xF000; rotation += 0xF000;
if (IsContest()) if (IsContest())
rotation -= 0x6000; rotation -= 0x6000;
@@ -1492,14 +1492,14 @@ static void AnimAirWaveProjectile_Step1(struct Sprite *sprite)
sprite->data[1] += sprite->data[5]; sprite->data[1] += sprite->data[5];
sprite->data[2] += sprite->data[6]; sprite->data[2] += sprite->data[6];
if (1 & task->data[7]) if (1 & task->data[7])
sprite->pos2.x = ((u16)sprite->data[1] >> 8) * -1; sprite->x2 = ((u16)sprite->data[1] >> 8) * -1;
else else
sprite->pos2.x = (u16)sprite->data[1] >> 8; sprite->x2 = (u16)sprite->data[1] >> 8;
if (1 & task->data[8]) if (1 & task->data[8])
sprite->pos2.y = ((u16)sprite->data[2] / 256u) * -1; sprite->y2 = ((u16)sprite->data[2] / 256u) * -1;
else else
sprite->pos2.y = (u16)sprite->data[2] / 256u; sprite->y2 = (u16)sprite->data[2] / 256u;
if (sprite->data[0]-- <= 0) if (sprite->data[0]-- <= 0)
{ {
@@ -1519,33 +1519,33 @@ void AnimAirWaveProjectile(struct Sprite *sprite)
sprite->data[1] += (-2 & task->data[7]); sprite->data[1] += (-2 & task->data[7]);
sprite->data[2] += (-2 & task->data[8]); sprite->data[2] += (-2 & task->data[8]);
if (1 & task->data[7]) if (1 & task->data[7])
sprite->pos2.x = ((u16)sprite->data[1] >> 8) * -1; sprite->x2 = ((u16)sprite->data[1] >> 8) * -1;
else else
sprite->pos2.x = (u16)sprite->data[1] >> 8; sprite->x2 = (u16)sprite->data[1] >> 8;
if (1 & task->data[8]) if (1 & task->data[8])
sprite->pos2.y = ((u16)sprite->data[2] / 256u) * -1; sprite->y2 = ((u16)sprite->data[2] / 256u) * -1;
else else
sprite->pos2.y = (u16)sprite->data[2] / 256u; sprite->y2 = (u16)sprite->data[2] / 256u;
if (sprite->data[0]-- <= 0) if (sprite->data[0]-- <= 0)
{ {
sprite->data[0] = 8; sprite->data[0] = 8;
task->data[5] = 4; task->data[5] = 4;
a = Q_8_8_inv(0x1000); a = Q_8_8_inv(0x1000);
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
if (task->data[11] >= sprite->pos1.x) if (task->data[11] >= sprite->x)
b = (task->data[11] - sprite->pos1.x) << 8; b = (task->data[11] - sprite->x) << 8;
else else
b = (sprite->pos1.x - task->data[11]) << 8; b = (sprite->x - task->data[11]) << 8;
if (task->data[12] >= sprite->pos1.y) if (task->data[12] >= sprite->y)
c = (task->data[12] - sprite->pos1.y) << 8; c = (task->data[12] - sprite->y) << 8;
else else
c = (sprite->pos1.y - task->data[12]) << 8; c = (sprite->y - task->data[12]) << 8;
sprite->data[2] = 0; sprite->data[2] = 0;
sprite->data[1] = 0; sprite->data[1] = 0;
@@ -1732,7 +1732,7 @@ void AnimCoinThrow(struct Sprite *sprite)
gBattleAnimArgs[2] = -gBattleAnimArgs[2]; gBattleAnimArgs[2] = -gBattleAnimArgs[2];
r6 += 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; var += 0xC000;
TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, var); TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, var);
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
@@ -1745,18 +1745,18 @@ void AnimCoinThrow(struct Sprite *sprite)
void AnimFallingCoin(struct Sprite *sprite) void AnimFallingCoin(struct Sprite *sprite)
{ {
sprite->data[2] = -16; sprite->data[2] = -16;
sprite->pos1.y += 8; sprite->y += 8;
sprite->callback = AnimFallingCoin_Step; sprite->callback = AnimFallingCoin_Step;
} }
static void AnimFallingCoin_Step(struct Sprite *sprite) static void AnimFallingCoin_Step(struct Sprite *sprite)
{ {
sprite->data[0] += 0x80; sprite->data[0] += 0x80;
sprite->pos2.x = sprite->data[0] >> 8; sprite->x2 = sprite->data[0] >> 8;
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) 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; sprite->data[1] += 5;
if (sprite->data[1] > 126) if (sprite->data[1] > 126)
{ {
@@ -1785,10 +1785,10 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite)
s16* ptr; s16* ptr;
PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); PlaySE12WithPanning(SE_M_HORN_ATTACK, BattleAnimAdjustPanning(SOUND_PAN_TARGET));
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
ptr = &sprite->data[7]; ptr = &sprite->data[7];
for (i = 0; i < 8; i++) for (i = 0; i < 8; i++)
ptr[i - 7] = 0; ptr[i - 7] = 0;
@@ -1804,11 +1804,11 @@ static void AnimBulletSeed_Step1(struct Sprite *sprite)
static void AnimBulletSeed_Step2(struct Sprite *sprite) static void AnimBulletSeed_Step2(struct Sprite *sprite)
{ {
sprite->data[0] += sprite->data[7]; sprite->data[0] += sprite->data[7];
sprite->pos2.x = sprite->data[0] >> 8; sprite->x2 = sprite->data[0] >> 8;
if (sprite->data[7] & 1) 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; sprite->data[1] += 8;
if (sprite->data[1] > 126) if (sprite->data[1] > 126)
{ {
@@ -1831,7 +1831,7 @@ void AnimRazorWindTornado(struct Sprite *sprite)
{ {
InitSpritePosToAnimAttacker(sprite, FALSE); InitSpritePosToAnimAttacker(sprite, FALSE);
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
sprite->pos1.y += 16; sprite->y += 16;
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[2];
@@ -1861,8 +1861,8 @@ void AnimViceGripPincer(struct Sprite *sprite)
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
} }
sprite->pos1.x += startXOffset; sprite->x += startXOffset;
sprite->pos1.y += startYOffset; sprite->y += startYOffset;
sprite->data[0] = 6; sprite->data[0] = 6;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + endXOffset; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + endXOffset;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + endYOffset; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + endYOffset;
@@ -1894,12 +1894,12 @@ void AnimGuillotinePincer(struct Sprite *sprite)
StartSpriteAnim(sprite, gBattleAnimArgs[0]); StartSpriteAnim(sprite, gBattleAnimArgs[0]);
} }
sprite->pos1.x += startXOffset; sprite->x += startXOffset;
sprite->pos1.y += startYOffset; sprite->y += startYOffset;
sprite->data[0] = 6; 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[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; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + endYOffset;
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->data[5] = gBattleAnimArgs[0]; sprite->data[5] = gBattleAnimArgs[0];
@@ -1913,10 +1913,10 @@ static void AnimGuillotinePincerStep1(struct Sprite *sprite)
{ {
SeekSpriteAnim(sprite, 0); SeekSpriteAnim(sprite, 0);
sprite->animPaused = TRUE; sprite->animPaused = TRUE;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = 2; sprite->x2 = 2;
sprite->pos2.y = -2; sprite->y2 = -2;
sprite->data[0] = sprite->data[6]; sprite->data[0] = sprite->data[6];
sprite->data[1] ^= 1; sprite->data[1] ^= 1;
sprite->data[2] ^= 1; sprite->data[2] ^= 1;
@@ -1930,15 +1930,15 @@ static void AnimGuillotinePincerStep2(struct Sprite *sprite)
{ {
if (sprite->data[3]) if (sprite->data[3])
{ {
sprite->pos2.x = -sprite->pos2.x; sprite->x2 = -sprite->x2;
sprite->pos2.y = -sprite->pos2.y; sprite->y2 = -sprite->y2;
} }
sprite->data[3] ^= 1; sprite->data[3] ^= 1;
if (++sprite->data[4] == 51) if (++sprite->data[4] == 51)
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->data[4] = 0; sprite->data[4] = 0;
sprite->data[3] = 0; sprite->data[3] = 0;
sprite->animPaused = FALSE; sprite->animPaused = FALSE;
@@ -2059,7 +2059,7 @@ static void AnimTask_MinimizeStep1(u8 taskId)
break; break;
case 5: case 5:
ResetSpriteRotScale(task->data[0]); ResetSpriteRotScale(task->data[0]);
gSprites[task->data[15]].pos2.y = 0; gSprites[task->data[15]].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
break; break;
} }
@@ -2139,7 +2139,7 @@ static void AnimTask_SplashStep(u8 taskId)
case 0: case 0:
RunAffineAnimFromTaskData(task); RunAffineAnimFromTaskData(task);
task->data[4] += 3; 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) if (++task->data[3] > 7)
{ {
task->data[3] = 0; task->data[3] = 0;
@@ -2148,7 +2148,7 @@ static void AnimTask_SplashStep(u8 taskId)
break; break;
case 1: case 1:
RunAffineAnimFromTaskData(task); RunAffineAnimFromTaskData(task);
gSprites[task->data[0]].pos2.y += task->data[4]; gSprites[task->data[0]].y2 += task->data[4];
if (++task->data[3] > 7) if (++task->data[3] > 7)
{ {
task->data[3] = 0; task->data[3] = 0;
@@ -2158,7 +2158,7 @@ static void AnimTask_SplashStep(u8 taskId)
case 2: case 2:
if (task->data[4] != 0) if (task->data[4] != 0)
{ {
gSprites[task->data[0]].pos2.y -= 2; gSprites[task->data[0]].y2 -= 2;
task->data[4] -= 2; task->data[4] -= 2;
} }
else else
@@ -2169,7 +2169,7 @@ static void AnimTask_SplashStep(u8 taskId)
{ {
if (--task->data[2] == 0) if (--task->data[2] == 0)
{ {
gSprites[task->data[0]].pos2.y = 0; gSprites[task->data[0]].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
else else
@@ -2210,17 +2210,17 @@ void AnimBreathPuff(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{ {
StartSpriteAnim(sprite, 0); 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; sprite->data[1] = 64;
} }
else else
{ {
StartSpriteAnim(sprite, 1); 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->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[0] = 52;
sprite->data[2] = 0; sprite->data[2] = 0;
sprite->data[3] = 0; sprite->data[3] = 0;
@@ -2245,10 +2245,10 @@ void AnimAngerMark(struct Sprite *sprite)
if (GetBattlerSide(battler) == B_SIDE_OPPONENT) if (GetBattlerSide(battler) == B_SIDE_OPPONENT)
gBattleAnimArgs[1] *= -1; gBattleAnimArgs[1] *= -1;
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1];
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2];
if (sprite->pos1.y < 8) if (sprite->y < 8)
sprite->pos1.y = 8; sprite->y = 8;
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds; sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
@@ -2284,8 +2284,8 @@ void AnimTask_ThrashMoveMonVertical(u8 taskId)
task->data[2] = 4; task->data[2] = 4;
task->data[3] = 7; task->data[3] = 7;
task->data[4] = 3; task->data[4] = 3;
task->data[5] = gSprites[task->data[0]].pos1.x; task->data[5] = gSprites[task->data[0]].x;
task->data[6] = gSprites[task->data[0]].pos1.y; task->data[6] = gSprites[task->data[0]].y;
task->data[7] = 0; task->data[7] = 0;
task->data[8] = 0; task->data[8] = 0;
task->data[9] = 2; task->data[9] = 2;
@@ -2304,14 +2304,14 @@ static void ThrashMoveMon(u8 taskId)
task->data[7] = 0; task->data[7] = 0;
task->data[8]++; task->data[8]++;
if (task->data[8] & 1) if (task->data[8] & 1)
gSprites[task->data[0]].pos1.y += task->data[9]; gSprites[task->data[0]].y += task->data[9];
else else
gSprites[task->data[0]].pos1.y -= task->data[9]; gSprites[task->data[0]].y -= task->data[9];
} }
switch (task->data[1]) switch (task->data[1])
{ {
case 0: case 0:
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[3] == 0)
{ {
task->data[3] = 14; task->data[3] = 14;
@@ -2319,7 +2319,7 @@ static void ThrashMoveMon(u8 taskId)
} }
break; break;
case 1: case 1:
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[3] == 0)
{ {
task->data[3] = 7; task->data[3] = 7;
@@ -2327,7 +2327,7 @@ static void ThrashMoveMon(u8 taskId)
} }
break; break;
case 2: 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[3] == 0)
{ {
if (--task->data[4] != 0) if (--task->data[4] != 0)
@@ -2338,7 +2338,7 @@ static void ThrashMoveMon(u8 taskId)
else else
{ {
if ((task->data[8] & 1) != 0) 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); DestroyAnimVisualTask(taskId);
} }
@@ -2437,8 +2437,8 @@ static void AnimTask_SketchDrawMon_Step(u8 taskId)
void AnimPencil(struct Sprite *sprite) void AnimPencil(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) - 16; sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) - 16;
sprite->pos1.y = GetBattlerYCoordWithElevation(gBattleAnimTarget) + 16; sprite->y = GetBattlerYCoordWithElevation(gBattleAnimTarget) + 16;
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->data[2] = 0; sprite->data[2] = 0;
@@ -2469,7 +2469,7 @@ static void AnimPencil_Step(struct Sprite *sprite)
if (++sprite->data[1] > 3 && sprite->data[2] < sprite->data[5]) if (++sprite->data[1] > 3 && sprite->data[2] < sprite->data[5])
{ {
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->pos1.y -= 1; sprite->y -= 1;
sprite->data[2]++; sprite->data[2]++;
if (sprite->data[2] % 10 == 0) if (sprite->data[2] % 10 == 0)
PlaySE12WithPanning(SE_M_SKETCH, sprite->data[6]); PlaySE12WithPanning(SE_M_SKETCH, sprite->data[6]);
@@ -2485,7 +2485,7 @@ static void AnimPencil_Step(struct Sprite *sprite)
sprite->data[4] = -0x40 - sprite->data[4]; sprite->data[4] = -0x40 - sprite->data[4];
sprite->data[3] *= -1; sprite->data[3] *= -1;
} }
sprite->pos2.x = sprite->data[4]; sprite->x2 = sprite->data[4];
if (sprite->data[5] == sprite->data[2]) if (sprite->data[5] == sprite->data[2])
{ {
sprite->data[1] = 0; sprite->data[1] = 0;
@@ -2594,7 +2594,7 @@ void AnimHyperVoiceRing(struct Sprite *sprite)
r9 = GetBattlerSpriteCoord(battler1, r10) - gBattleAnimArgs[0]; r9 = GetBattlerSpriteCoord(battler1, r10) - gBattleAnimArgs[0];
if (!IsContest() && IsBattlerSpriteVisible(BATTLE_PARTNER(battler1))) 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; sprite->subpriority = gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler1)]].subpriority + 1;
else else
sprite->subpriority = gSprites[gBattlerSpriteIds[battler1]].subpriority - 1; sprite->subpriority = gSprites[gBattlerSpriteIds[battler1]].subpriority - 1;
@@ -2623,8 +2623,8 @@ void AnimHyperVoiceRing(struct Sprite *sprite)
sp0 -= gBattleAnimArgs[3]; sp0 -= gBattleAnimArgs[3];
sp1 += gBattleAnimArgs[4]; sp1 += gBattleAnimArgs[4];
sprite->pos1.x = sprite->data[1] = r9; sprite->x = sprite->data[1] = r9;
sprite->pos1.y = sprite->data[3] = r6; sprite->y = sprite->data[3] = r6;
sprite->data[2] = sp0; sprite->data[2] = sp0;
sprite->data[4] = sp1; sprite->data[4] = sp1;
sprite->data[0] = gBattleAnimArgs[0]; sprite->data[0] = gBattleAnimArgs[0];
@@ -2663,17 +2663,17 @@ static void AnimSoftBoiledEgg_Step1(struct Sprite *sprite)
{ {
s16 add; s16 add;
sprite->pos2.y -= (sprite->data[0] >> 8); sprite->y2 -= (sprite->data[0] >> 8);
sprite->pos2.x = sprite->data[1] >> 8; sprite->x2 = sprite->data[1] >> 8;
sprite->data[0] -= 32; sprite->data[0] -= 32;
add = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? -160 : 160; add = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? -160 : 160;
sprite->data[1] += add; sprite->data[1] += add;
if (sprite->pos2.y > 0) if (sprite->y2 > 0)
{ {
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->data[0] = 0; sprite->data[0] = 0;
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
sprite->callback = AnimSoftBoiledEgg_Step2; sprite->callback = AnimSoftBoiledEgg_Step2;
@@ -2710,7 +2710,7 @@ static void AnimSoftBoiledEgg_Step3(struct Sprite *sprite)
static void AnimSoftBoiledEgg_Step3_Callback1(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step3_Callback1(struct Sprite *sprite)
{ {
sprite->pos2.y -= 2; sprite->y2 -= 2;
if (++sprite->data[0] == 9) if (++sprite->data[0] == 9)
{ {
sprite->data[0] = 16; sprite->data[0] = 16;
@@ -2767,7 +2767,7 @@ static void StretchAttacker_Step(u8 taskId)
if (!RunAffineAnimFromTaskData(task)) if (!RunAffineAnimFromTaskData(task))
{ {
gSprites[task->data[0]].pos2.y = 0; gSprites[task->data[0]].y2 = 0;
gSprites[task->data[0]].invisible = TRUE; gSprites[task->data[0]].invisible = TRUE;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
@@ -2804,7 +2804,7 @@ static void ExtremeSpeedImpact_Step(u8 taskId)
switch (task->data[0]) switch (task->data[0])
{ {
case 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[1] = 0;
task->data[2] = 0; task->data[2] = 0;
task->data[3] = 0; task->data[3] = 0;
@@ -2816,14 +2816,14 @@ static void ExtremeSpeedImpact_Step(u8 taskId)
task->data[1] = 0; task->data[1] = 0;
task->data[2]++; task->data[2]++;
if (task->data[2] & 1) if (task->data[2] & 1)
gSprites[task->data[15]].pos2.x += 6; gSprites[task->data[15]].x2 += 6;
else else
gSprites[task->data[15]].pos2.x -= 6; gSprites[task->data[15]].x2 -= 6;
if (++task->data[3] > 4) if (++task->data[3] > 4)
{ {
if (task->data[2] & 1) if (task->data[2] & 1)
gSprites[task->data[15]].pos2.x -= 6; gSprites[task->data[15]].x2 -= 6;
task->data[0]++; task->data[0]++;
} }
@@ -2836,8 +2836,8 @@ static void ExtremeSpeedImpact_Step(u8 taskId)
task->data[0]++; task->data[0]++;
break; break;
case 3: case 3:
gSprites[task->data[15]].pos2.x += task->data[13]; gSprites[task->data[15]].x2 += task->data[13];
if (gSprites[task->data[15]].pos2.x == 0) if (gSprites[task->data[15]].x2 == 0)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
break; break;
} }
@@ -2954,8 +2954,8 @@ static void SpeedDust_Step1(u8 taskId)
{ {
gSprites[spriteId].data[0] = taskId; gSprites[spriteId].data[0] = taskId;
gSprites[spriteId].data[1] = 13; gSprites[spriteId].data[1] = 13;
gSprites[spriteId].pos2.x = sSpeedDustPosTable[task->data[2]][0]; gSprites[spriteId].x2 = sSpeedDustPosTable[task->data[2]][0];
gSprites[spriteId].pos2.y = sSpeedDustPosTable[task->data[2]][1]; gSprites[spriteId].y2 = sSpeedDustPosTable[task->data[2]][1];
task->data[13]++; task->data[13]++;
if (++task->data[2] > 3) if (++task->data[2] > 3)
{ {
@@ -3037,8 +3037,8 @@ void AnimMagentaHeart(struct Sprite *sprite)
if (++sprite->data[0] == 1) if (++sprite->data[0] == 1)
InitSpritePosToAnimAttacker(sprite, FALSE); InitSpritePosToAnimAttacker(sprite, FALSE);
sprite->pos2.x = Sin(sprite->data[1], 8); sprite->x2 = Sin(sprite->data[1], 8);
sprite->pos2.y = sprite->data[2] >> 8; sprite->y2 = sprite->data[2] >> 8;
sprite->data[1] = (sprite->data[1] + 7) & 0xFF; sprite->data[1] = (sprite->data[1] + 7) & 0xFF;
sprite->data[2] -= 0x80; sprite->data[2] -= 0x80;
if (sprite->data[0] == 60) if (sprite->data[0] == 60)
@@ -3105,15 +3105,15 @@ void AnimTask_StretchTargetUp(u8 taskId)
if (++gTasks[taskId].data[0] == 1) if (++gTasks[taskId].data[0] == 1)
{ {
PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_TARGET), sUnknown_83E4200); PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_TARGET), sUnknown_83E4200);
gSprites[spriteId].pos2.x = 4; gSprites[spriteId].x2 = 4;
} }
else else
{ {
gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x; gSprites[spriteId].x2 = -gSprites[spriteId].x2;
if (!RunAffineAnimFromTaskData(&gTasks[taskId])) if (!RunAffineAnimFromTaskData(&gTasks[taskId]))
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
} }
@@ -3126,15 +3126,15 @@ void AnimTask_StretchAttackerUp(u8 taskId)
if (++gTasks[taskId].data[0] == 1) if (++gTasks[taskId].data[0] == 1)
{ {
PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_ATTACKER), sUnknown_83E4200); PrepareAffineAnimInTaskData(&gTasks[taskId], GetAnimBattlerSpriteId(ANIM_ATTACKER), sUnknown_83E4200);
gSprites[spriteId].pos2.x = 4; gSprites[spriteId].x2 = 4;
} }
else else
{ {
gSprites[spriteId].pos2.x = -gSprites[spriteId].pos2.x; gSprites[spriteId].x2 = -gSprites[spriteId].x2;
if (!RunAffineAnimFromTaskData(&gTasks[taskId])) if (!RunAffineAnimFromTaskData(&gTasks[taskId]))
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
} }
@@ -3144,9 +3144,9 @@ void AnimRedHeartProjectile(struct Sprite *sprite)
{ {
InitSpritePosToAnimAttacker(sprite, TRUE); InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = 95; sprite->data[0] = 95;
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); 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); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->callback = AnimRedHeartProjectile_Step; sprite->callback = AnimRedHeartProjectile_Step;
@@ -3156,7 +3156,7 @@ static void AnimRedHeartProjectile_Step(struct Sprite *sprite)
{ {
if (!AnimTranslateLinear(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; sprite->data[5] = (sprite->data[5] + 4) & 0xFF;
} }
else else
@@ -3176,8 +3176,8 @@ void AnimParticuleBurst(struct Sprite *sprite)
else else
{ {
sprite->data[4] += sprite->data[1]; sprite->data[4] += sprite->data[1];
sprite->pos2.x = sprite->data[4] >> 8; sprite->x2 = sprite->data[4] >> 8;
sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]); sprite->y2 = Sin(sprite->data[3], sprite->data[2]);
sprite->data[3] = (sprite->data[3] + 3) & 0xFF; sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
if (sprite->data[3] > 100) if (sprite->data[3] > 100)
sprite->invisible = sprite->data[3] % 2; sprite->invisible = sprite->data[3] % 2;
@@ -3189,8 +3189,8 @@ void AnimParticuleBurst(struct Sprite *sprite)
void AnimRedHeartRising(struct Sprite *sprite) void AnimRedHeartRising(struct Sprite *sprite)
{ {
sprite->pos1.x = gBattleAnimArgs[0]; sprite->x = gBattleAnimArgs[0];
sprite->pos1.y = 160; sprite->y = 160;
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[1];
sprite->callback = WaitAnimForDuration; sprite->callback = WaitAnimForDuration;
@@ -3202,10 +3202,10 @@ static void AnimRedHeartRising_Step(struct Sprite *sprite)
s16 y; s16 y;
sprite->data[2] += sprite->data[1]; sprite->data[2] += sprite->data[1];
sprite->pos2.y = -((u16)sprite->data[2] >> 8); sprite->y2 = -((u16)sprite->data[2] >> 8);
sprite->pos2.x = Sin(sprite->data[3], 4); sprite->x2 = Sin(sprite->data[3], 4);
sprite->data[3] = (sprite->data[3] + 3) & 0xFF; sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
y = sprite->pos1.y + sprite->pos2.y; y = sprite->y + sprite->y2;
if (y <= 72) if (y <= 72)
{ {
sprite->invisible = sprite->data[3] % 2; sprite->invisible = sprite->data[3] % 2;
@@ -3390,8 +3390,8 @@ static void ScaryFace_Step(u8 taskId)
// arg 1: initial wave offset // arg 1: initial wave offset
void AnimOrbitFast(struct Sprite *sprite) void AnimOrbitFast(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->affineAnimPaused = TRUE; sprite->affineAnimPaused = TRUE;
sprite->data[0] = gBattleAnimArgs[0]; sprite->data[0] = gBattleAnimArgs[0];
sprite->data[1] = gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[1];
@@ -3407,8 +3407,8 @@ static void AnimOrbitFastStep(struct Sprite *sprite)
else else
sprite->subpriority = sprite->data[7] - 1; sprite->subpriority = sprite->data[7] - 1;
sprite->pos2.x = Sin(sprite->data[1], sprite->data[2] >> 8); sprite->x2 = Sin(sprite->data[1], sprite->data[2] >> 8);
sprite->pos2.y = Cos(sprite->data[1], sprite->data[3] >> 8); sprite->y2 = Cos(sprite->data[1], sprite->data[3] >> 8);
sprite->data[1] = (sprite->data[1] + 9) & 0xFF; sprite->data[1] = (sprite->data[1] + 9) & 0xFF;
switch (sprite->data[5]) switch (sprite->data[5])
{ {
@@ -3441,8 +3441,8 @@ static void AnimOrbitFastStep(struct Sprite *sprite)
// arg 0: initial wave offset // arg 0: initial wave offset
void AnimOrbitScatter(struct Sprite *sprite) void AnimOrbitScatter(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->data[0] = Sin(gBattleAnimArgs[0], 10); sprite->data[0] = Sin(gBattleAnimArgs[0], 10);
sprite->data[1] = Cos(gBattleAnimArgs[0], 7); sprite->data[1] = Cos(gBattleAnimArgs[0], 7);
sprite->callback = AnimOrbitScatterStep; sprite->callback = AnimOrbitScatterStep;
@@ -3450,24 +3450,24 @@ void AnimOrbitScatter(struct Sprite *sprite)
static void AnimOrbitScatterStep(struct Sprite *sprite) static void AnimOrbitScatterStep(struct Sprite *sprite)
{ {
sprite->pos2.x += sprite->data[0]; sprite->x2 += sprite->data[0];
sprite->pos2.y += sprite->data[1]; sprite->y2 += sprite->data[1];
if (sprite->pos1.x + sprite->pos2.x + 16 > 272u || sprite->pos1.y + sprite->pos2.y > 160 || sprite->pos1.y + sprite->pos2.y < -16) if (sprite->x + sprite->x2 + 16 > 272u || sprite->y + sprite->y2 > 160 || sprite->y + sprite->y2 < -16)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
static void AnimSpitUpOrb_Step(struct Sprite *sprite) static void AnimSpitUpOrb_Step(struct Sprite *sprite)
{ {
sprite->pos2.x += sprite->data[0]; sprite->x2 += sprite->data[0];
sprite->pos2.y += sprite->data[1]; sprite->y2 += sprite->data[1];
if (sprite->data[3]++ >= sprite->data[2]) if (sprite->data[3]++ >= sprite->data[2])
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
void AnimSpitUpOrb(struct Sprite *sprite) void AnimSpitUpOrb(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->data[0] = Sin(gBattleAnimArgs[0], 10); sprite->data[0] = Sin(gBattleAnimArgs[0], 10);
sprite->data[1] = Cos(gBattleAnimArgs[0], 7); sprite->data[1] = Cos(gBattleAnimArgs[0], 7);
sprite->data[2] = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[1];
@@ -3492,20 +3492,20 @@ void AnimAngel(struct Sprite *sprite)
if (!sprite->data[0]) if (!sprite->data[0])
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
sprite->data[0]++; sprite->data[0]++;
var0 = (sprite->data[0] * 10) & 0xFF; var0 = (sprite->data[0] * 10) & 0xFF;
sprite->pos2.x = Sin(var0, 80) >> 8; sprite->x2 = Sin(var0, 80) >> 8;
if (sprite->data[0] < 80) 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) if (sprite->data[0] > 90)
{ {
sprite->data[2]++; sprite->data[2]++;
sprite->pos2.x -= sprite->data[2] / 2; sprite->x2 -= sprite->data[2] / 2;
} }
if (sprite->data[0] > 100) if (sprite->data[0] > 100)
@@ -3515,8 +3515,8 @@ void AnimAngel(struct Sprite *sprite)
static void sub_80AA49C(struct Sprite *sprite) static void sub_80AA49C(struct Sprite *sprite)
{ {
sprite->data[5]++; sprite->data[5]++;
sprite->pos2.x = Sin(sprite->data[3], 5); sprite->x2 = Sin(sprite->data[3], 5);
sprite->pos2.y = sprite->data[5] / 2; sprite->y2 = sprite->data[5] / 2;
sprite->data[3] = (sprite->data[3] + 3) & 0xFF; sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
if (sprite->data[5] > 20) if (sprite->data[5] > 20)
sprite->invisible = sprite->data[5] % 2; sprite->invisible = sprite->data[5] % 2;
@@ -3536,16 +3536,16 @@ void AnimPinkHeart(struct Sprite *sprite)
else else
{ {
sprite->data[4] += sprite->data[1]; sprite->data[4] += sprite->data[1];
sprite->pos2.x = sprite->data[4] >> 8; sprite->x2 = sprite->data[4] >> 8;
sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]); sprite->y2 = Sin(sprite->data[3], sprite->data[2]);
sprite->data[3] = (sprite->data[3] + 3) & 0xFF; sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
if (sprite->data[3] > 70) if (sprite->data[3] > 70)
{ {
sprite->callback = sub_80AA49C; sprite->callback = sub_80AA49C;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->data[3] = Random() % 180; sprite->data[3] = Random() % 180;
} }
} }
@@ -3555,8 +3555,8 @@ void AnimDevil(struct Sprite *sprite)
{ {
if (sprite->data[3] == 0) if (sprite->data[3] == 0)
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
StartSpriteAnim(sprite, 0); StartSpriteAnim(sprite, 0);
sprite->subpriority = GetBattlerSpriteSubpriority(gBattleAnimTarget) - 1; sprite->subpriority = GetBattlerSpriteSubpriority(gBattleAnimTarget) - 1;
sprite->data[2] = 1; sprite->data[2] = 1;
@@ -3565,8 +3565,8 @@ void AnimDevil(struct Sprite *sprite)
sprite->data[1] = (sprite->data[0] * 4) % 256; sprite->data[1] = (sprite->data[0] * 4) % 256;
if (sprite->data[1] < 0) if (sprite->data[1] < 0)
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->pos2.x = Cos(sprite->data[1], 30 - sprite->data[0] / 4); sprite->x2 = Cos(sprite->data[1], 30 - sprite->data[0] / 4);
sprite->pos2.y = Sin(sprite->data[1], 10 - sprite->data[0] / 8); sprite->y2 = Sin(sprite->data[1], 10 - sprite->data[0] / 8);
if (sprite->data[1] > 128 && sprite->data[2] > 0) if (sprite->data[1] > 128 && sprite->data[2] > 0)
sprite->data[2] = -1; sprite->data[2] = -1;
if (sprite->data[1] == 0 && sprite->data[2] < 0) if (sprite->data[1] == 0 && sprite->data[2] < 0)
@@ -3584,8 +3584,8 @@ void AnimFurySwipes(struct Sprite *sprite)
{ {
if (sprite->data[0] == 0) if (sprite->data[0] == 0)
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
StartSpriteAnim(sprite, gBattleAnimArgs[2]); StartSpriteAnim(sprite, gBattleAnimArgs[2]);
sprite->data[0]++; sprite->data[0]++;
} }
@@ -3605,19 +3605,19 @@ void AnimMovementWaves(struct Sprite *sprite)
{ {
if (!gBattleAnimArgs[0]) if (!gBattleAnimArgs[0])
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
} }
if (!gBattleAnimArgs[1]) if (!gBattleAnimArgs[1])
sprite->pos1.x += 32; sprite->x += 32;
else else
sprite->pos1.x -= 32; sprite->x -= 32;
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[1];
@@ -3659,11 +3659,11 @@ void AnimJaggedMusicNote(struct Sprite *sprite)
if (GetBattlerSide(battler) == B_SIDE_OPPONENT) if (GetBattlerSide(battler) == B_SIDE_OPPONENT)
gBattleAnimArgs[1] *= -1; gBattleAnimArgs[1] *= -1;
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[1];
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2];
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = (u16)sprite->pos1.x << 3; sprite->data[1] = (u16)sprite->x << 3;
sprite->data[2] = (u16)sprite->pos1.y << 3; sprite->data[2] = (u16)sprite->y << 3;
var1 = gBattleAnimArgs[1] << 3; var1 = gBattleAnimArgs[1] << 3;
if (var1 < 0) if (var1 < 0)
@@ -3683,8 +3683,8 @@ static void AnimJaggedMusicNote_Step(struct Sprite *sprite)
{ {
sprite->data[1] += sprite->data[3]; sprite->data[1] += sprite->data[3];
sprite->data[2] += sprite->data[4]; sprite->data[2] += sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 3; sprite->x = sprite->data[1] >> 3;
sprite->pos1.y = sprite->data[2] >> 3; sprite->y = sprite->data[2] >> 3;
if (++sprite->data[0] > 16) if (++sprite->data[0] > 16)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -3711,8 +3711,8 @@ void AnimPerishSongMusicNote(struct Sprite *sprite)
if (!sprite->data[0]) if (!sprite->data[0])
{ {
sprite->pos1.x = 120; sprite->x = 120;
sprite->pos1.y = gBattleAnimArgs[0] / 2 - 15; sprite->y = gBattleAnimArgs[0] / 2 - 15;
StartSpriteAnim(sprite, gBattleAnimArgs[1]); StartSpriteAnim(sprite, gBattleAnimArgs[1]);
@@ -3728,9 +3728,9 @@ void AnimPerishSongMusicNote(struct Sprite *sprite)
sprite->data[6] = (sprite->data[6] + 10) & 0xFF; sprite->data[6] = (sprite->data[6] + 10) & 0xFF;
index &= var2; 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]) if (sprite->data[0] > sprite->data[5])
{ {
@@ -3758,7 +3758,7 @@ static void AnimPerishSongMusicNote_Step1(struct Sprite *sprite)
static void AnimPerishSongMusicNote_Step2(struct Sprite *sprite) static void AnimPerishSongMusicNote_Step2(struct Sprite *sprite)
{ {
sprite->data[3] += sprite->data[2]; sprite->data[3] += sprite->data[2];
sprite->pos2.y = sprite->data[3]; sprite->y2 = sprite->data[3];
sprite->data[2]++; sprite->data[2]++;
@@ -3784,20 +3784,20 @@ void AnimGuardRing(struct Sprite *sprite)
{ {
if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker))) if ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE) && IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker)))
{ {
SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->pos1.x, &sprite->pos1.y); SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y);
sprite->pos1.y += 40; sprite->y += 40;
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 40; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + 40;
} }
sprite->data[0] = 13; sprite->data[0] = 13;
sprite->data[2] = sprite->pos1.x; sprite->data[2] = sprite->x;
sprite->data[4] = sprite->pos1.y - 72; sprite->data[4] = sprite->y - 72;
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
File diff suppressed because it is too large Load Diff
+77 -77
View File
@@ -99,8 +99,8 @@ void AnimTask_ShakeMon(u8 taskId)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
else else
{ {
gSprites[spriteId].pos2.x = gBattleAnimArgs[1]; gSprites[spriteId].x2 = gBattleAnimArgs[1];
gSprites[spriteId].pos2.y = gBattleAnimArgs[2]; gSprites[spriteId].y2 = gBattleAnimArgs[2];
gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = gBattleAnimArgs[3]; gTasks[taskId].data[1] = gBattleAnimArgs[3];
gTasks[taskId].data[2] = gBattleAnimArgs[4]; gTasks[taskId].data[2] = gBattleAnimArgs[4];
@@ -116,19 +116,19 @@ static void AnimTask_ShakeMonStep(u8 taskId)
{ {
if (gTasks[taskId].data[3] == 0) 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 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 else
gSprites[gTasks[taskId].data[0]].pos2.y = 0; gSprites[gTasks[taskId].data[0]].y2 = 0;
gTasks[taskId].data[3] = gTasks[taskId].data[2]; gTasks[taskId].data[3] = gTasks[taskId].data[2];
if (--gTasks[taskId].data[1] == 0) if (--gTasks[taskId].data[1] == 0)
{ {
gSprites[gTasks[taskId].data[0]].pos2.x = 0; gSprites[gTasks[taskId].data[0]].x2 = 0;
gSprites[gTasks[taskId].data[0]].pos2.y = 0; gSprites[gTasks[taskId].data[0]].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
} }
@@ -182,8 +182,8 @@ void AnimTask_ShakeMon2(u8 taskId)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
else else
{ {
gSprites[spriteId].pos2.x = gBattleAnimArgs[1]; gSprites[spriteId].x2 = gBattleAnimArgs[1];
gSprites[spriteId].pos2.y = gBattleAnimArgs[2]; gSprites[spriteId].y2 = gBattleAnimArgs[2];
gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = gBattleAnimArgs[3]; gTasks[taskId].data[1] = gBattleAnimArgs[3];
gTasks[taskId].data[2] = gBattleAnimArgs[4]; gTasks[taskId].data[2] = gBattleAnimArgs[4];
@@ -199,19 +199,19 @@ static void AnimTask_ShakeMon2Step(u8 taskId)
{ {
if (gTasks[taskId].data[3] == 0) if (gTasks[taskId].data[3] == 0)
{ {
if (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]].pos2.x = -gTasks[taskId].data[4]; gSprites[gTasks[taskId].data[0]].x2 = -gTasks[taskId].data[4];
else 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]) if (gSprites[gTasks[taskId].data[0]].y2 == gTasks[taskId].data[5])
gSprites[gTasks[taskId].data[0]].pos2.y = -gTasks[taskId].data[5]; gSprites[gTasks[taskId].data[0]].y2 = -gTasks[taskId].data[5];
else 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]; gTasks[taskId].data[3] = gTasks[taskId].data[2];
if (--gTasks[taskId].data[1] == 0) if (--gTasks[taskId].data[1] == 0)
{ {
gSprites[gTasks[taskId].data[0]].pos2.x = 0; gSprites[gTasks[taskId].data[0]].x2 = 0;
gSprites[gTasks[taskId].data[0]].pos2.y = 0; gSprites[gTasks[taskId].data[0]].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
} }
@@ -235,8 +235,8 @@ void AnimTask_ShakeMonInPlace(u8 taskId)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
else else
{ {
gSprites[spriteId].pos2.x += gBattleAnimArgs[1]; gSprites[spriteId].x2 += gBattleAnimArgs[1];
gSprites[spriteId].pos2.y += gBattleAnimArgs[2]; gSprites[spriteId].y2 += gBattleAnimArgs[2];
gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = 0; gTasks[taskId].data[1] = 0;
gTasks[taskId].data[2] = gBattleAnimArgs[3]; gTasks[taskId].data[2] = gBattleAnimArgs[3];
@@ -255,26 +255,26 @@ static void AnimTask_ShakeMonInPlaceStep(u8 taskId)
{ {
if (gTasks[taskId].data[1] & 1) if (gTasks[taskId].data[1] & 1)
{ {
gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5]; gSprites[gTasks[taskId].data[0]].x2 += gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6]; gSprites[gTasks[taskId].data[0]].y2 += gTasks[taskId].data[6];
} }
else else
{ {
gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5]; gSprites[gTasks[taskId].data[0]].x2 -= gTasks[taskId].data[5];
gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6]; gSprites[gTasks[taskId].data[0]].y2 -= gTasks[taskId].data[6];
} }
gTasks[taskId].data[3] = gTasks[taskId].data[4]; gTasks[taskId].data[3] = gTasks[taskId].data[4];
if (++gTasks[taskId].data[1] >= gTasks[taskId].data[2]) if (++gTasks[taskId].data[1] >= gTasks[taskId].data[2])
{ {
if (gTasks[taskId].data[1] & 1) if (gTasks[taskId].data[1] & 1)
{ {
gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5] / 2; gSprites[gTasks[taskId].data[0]].x2 += gTasks[taskId].data[5] / 2;
gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6] / 2; gSprites[gTasks[taskId].data[0]].y2 += gTasks[taskId].data[6] / 2;
} }
else else
{ {
gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5] / 2; gSprites[gTasks[taskId].data[0]].x2 -= gTasks[taskId].data[5] / 2;
gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6] / 2; gSprites[gTasks[taskId].data[0]].y2 -= gTasks[taskId].data[6] / 2;
} }
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
@@ -293,7 +293,7 @@ void AnimTask_ShakeAndSinkMon(u8 taskId)
{ {
u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
gSprites[spriteId].pos2.x = gBattleAnimArgs[1]; gSprites[spriteId].x2 = gBattleAnimArgs[1];
gTasks[taskId].data[0] = spriteId; gTasks[taskId].data[0] = spriteId;
gTasks[taskId].data[1] = gBattleAnimArgs[1]; gTasks[taskId].data[1] = gBattleAnimArgs[1];
gTasks[taskId].data[2] = gBattleAnimArgs[2]; gTasks[taskId].data[2] = gBattleAnimArgs[2];
@@ -310,13 +310,13 @@ static void AnimTask_ShakeAndSinkMonStep(u8 taskId)
if (gTasks[taskId].data[2] == gTasks[taskId].data[8]++) if (gTasks[taskId].data[2] == gTasks[taskId].data[8]++)
{ {
gTasks[taskId].data[8] = 0; gTasks[taskId].data[8] = 0;
if (gSprites[spriteId].pos2.x == data1) if (gSprites[spriteId].x2 == data1)
data1 = -data1; data1 = -data1;
gSprites[spriteId].pos2.x += data1; gSprites[spriteId].x2 += data1;
} }
gTasks[taskId].data[1] = data1; gTasks[taskId].data[1] = data1;
gTasks[taskId].data[9] += gTasks[taskId].data[3]; 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) if (--gTasks[taskId].data[4] == 0)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
@@ -349,17 +349,17 @@ void AnimTask_TranslateMonElliptical(u8 taskId)
static void AnimTask_TranslateMonEllipticalStep(u8 taskId) static void AnimTask_TranslateMonEllipticalStep(u8 taskId)
{ {
u8 spriteId = gTasks[taskId].data[0]; u8 spriteId = gTasks[taskId].data[0];
gSprites[spriteId].pos2.x = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]); gSprites[spriteId].x2 = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]);
gSprites[spriteId].pos2.y = -Cos(gTasks[taskId].data[5], gTasks[taskId].data[2]); gSprites[spriteId].y2 = -Cos(gTasks[taskId].data[5], gTasks[taskId].data[2]);
gSprites[spriteId].pos2.y += gTasks[taskId].data[2]; gSprites[spriteId].y2 += gTasks[taskId].data[2];
gTasks[taskId].data[5] += gTasks[taskId].data[4]; gTasks[taskId].data[5] += gTasks[taskId].data[4];
gTasks[taskId].data[5] &= 0xFF; gTasks[taskId].data[5] &= 0xFF;
if (gTasks[taskId].data[5] == 0) if (gTasks[taskId].data[5] == 0)
gTasks[taskId].data[3]--; gTasks[taskId].data[3]--;
if (gTasks[taskId].data[3] == 0) if (gTasks[taskId].data[3] == 0)
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
} }
@@ -446,15 +446,15 @@ static void SlideMonToOriginalPos(struct Sprite * sprite)
else else
spriteId = gBattlerSpriteIds[gBattleAnimTarget]; spriteId = gBattlerSpriteIds[gBattleAnimTarget];
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x; sprite->data[1] = gSprites[spriteId].x + gSprites[spriteId].x2;
sprite->data[2] = gSprites[spriteId].pos1.x; sprite->data[2] = gSprites[spriteId].x;
sprite->data[3] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y; sprite->data[3] = gSprites[spriteId].y + gSprites[spriteId].y2;
sprite->data[4] = gSprites[spriteId].pos1.y; sprite->data[4] = gSprites[spriteId].y;
InitSpriteDataForLinearTranslation(sprite); InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = 0; sprite->data[3] = 0;
sprite->data[4] = 0; sprite->data[4] = 0;
sprite->data[5] = gSprites[spriteId].pos2.x; sprite->data[5] = gSprites[spriteId].x2;
sprite->data[6] = gSprites[spriteId].pos2.y; sprite->data[6] = gSprites[spriteId].y2;
sprite->invisible = TRUE; sprite->invisible = TRUE;
if (gBattleAnimArgs[1] == 1) if (gBattleAnimArgs[1] == 1)
sprite->data[2] = 0; sprite->data[2] = 0;
@@ -472,9 +472,9 @@ static void SlideMonToOriginalPosStep(struct Sprite * sprite)
if (sprite->data[0] == 0) if (sprite->data[0] == 0)
{ {
if (data7 == 1 || data7 == 0) if (data7 == 1 || data7 == 0)
otherSprite->pos2.x = 0; otherSprite->x2 = 0;
if (data7 == 2 || data7 == 0) if (data7 == 2 || data7 == 0)
otherSprite->pos2.y = 0; otherSprite->y2 = 0;
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
else else
@@ -482,8 +482,8 @@ static void SlideMonToOriginalPosStep(struct Sprite * sprite)
sprite->data[0]--; sprite->data[0]--;
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
otherSprite->pos2.x = (sprite->data[3] >> 8) + sprite->data[5]; otherSprite->x2 = (sprite->data[3] >> 8) + sprite->data[5];
otherSprite->pos2.y = (sprite->data[4] >> 8) + sprite->data[6]; otherSprite->y2 = (sprite->data[4] >> 8) + sprite->data[6];
} }
} }
@@ -511,10 +511,10 @@ static void SlideMonToOffset(struct Sprite * sprite)
gBattleAnimArgs[2] = -gBattleAnimArgs[2]; gBattleAnimArgs[2] = -gBattleAnimArgs[2];
} }
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = gSprites[spriteId].pos1.x; sprite->data[1] = gSprites[spriteId].x;
sprite->data[2] = gSprites[spriteId].pos1.x + gBattleAnimArgs[1]; sprite->data[2] = gSprites[spriteId].x + gBattleAnimArgs[1];
sprite->data[3] = gSprites[spriteId].pos1.y; sprite->data[3] = gSprites[spriteId].y;
sprite->data[4] = gSprites[spriteId].pos1.y + gBattleAnimArgs[2]; sprite->data[4] = gSprites[spriteId].y + gBattleAnimArgs[2];
InitSpriteDataForLinearTranslation(sprite); InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = 0; sprite->data[3] = 0;
sprite->data[4] = 0; sprite->data[4] = 0;
@@ -541,13 +541,13 @@ static void sub_8099394(struct Sprite * sprite)
gBattleAnimArgs[2] = -gBattleAnimArgs[2]; gBattleAnimArgs[2] = -gBattleAnimArgs[2];
} }
sprite->data[0] = gBattleAnimArgs[4]; 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[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]; sprite->data[4] = sprite->data[3] + gBattleAnimArgs[2];
InitSpriteDataForLinearTranslation(sprite); InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = gSprites[spriteId].pos2.x << 8; sprite->data[3] = gSprites[spriteId].x2 << 8;
sprite->data[4] = gSprites[spriteId].pos2.y << 8; sprite->data[4] = gSprites[spriteId].y2 << 8;
sprite->data[5] = spriteId; sprite->data[5] = spriteId;
sprite->data[6] = gBattleAnimArgs[5]; sprite->data[6] = gBattleAnimArgs[5];
if (gBattleAnimArgs[5] == 0) if (gBattleAnimArgs[5] == 0)
@@ -559,8 +559,8 @@ static void sub_8099394(struct Sprite * sprite)
static void sub_809946C(struct Sprite * sprite) static void sub_809946C(struct Sprite * sprite)
{ {
gSprites[sprite->data[5]].pos2.x = 0; gSprites[sprite->data[5]].x2 = 0;
gSprites[sprite->data[5]].pos2.y = 0; gSprites[sprite->data[5]].y2 = 0;
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -597,8 +597,8 @@ static void AnimTask_WindUpLungePart1(u8 taskId)
{ {
u8 spriteId = gTasks[taskId].data[0]; u8 spriteId = gTasks[taskId].data[0];
gTasks[taskId].data[11] += gTasks[taskId].data[1]; gTasks[taskId].data[11] += gTasks[taskId].data[1];
gSprites[spriteId].pos2.x = gTasks[taskId].data[11] >> 8; gSprites[spriteId].x2 = gTasks[taskId].data[11] >> 8;
gSprites[spriteId].pos2.y = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]); gSprites[spriteId].y2 = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]);
gTasks[taskId].data[10] += gTasks[taskId].data[7]; gTasks[taskId].data[10] += gTasks[taskId].data[7];
if (--gTasks[taskId].data[3] == 0) if (--gTasks[taskId].data[3] == 0)
gTasks[taskId].func = AnimTask_WindUpLungePart2; gTasks[taskId].func = AnimTask_WindUpLungePart2;
@@ -614,7 +614,7 @@ static void AnimTask_WindUpLungePart2(u8 taskId)
{ {
spriteId = gTasks[taskId].data[0]; spriteId = gTasks[taskId].data[0];
gTasks[taskId].data[12] += gTasks[taskId].data[5]; 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) if (--gTasks[taskId].data[6] == 0)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
@@ -661,8 +661,8 @@ void AnimTask_SlideOffScreen(u8 taskId)
static void sub_80996B8(u8 taskId) static void sub_80996B8(u8 taskId)
{ {
u8 spriteId = gTasks[taskId].data[0]; u8 spriteId = gTasks[taskId].data[0];
gSprites[spriteId].pos2.x += gTasks[taskId].data[1]; gSprites[spriteId].x2 += gTasks[taskId].data[1];
if (gSprites[spriteId].pos2.x + gSprites[spriteId].pos1.x < -0x20 || gSprites[spriteId].pos2.x + gSprites[spriteId].pos1.x > 0x110) if (gSprites[spriteId].x2 + gSprites[spriteId].x < -0x20 || gSprites[spriteId].x2 + gSprites[spriteId].x > 0x110)
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
@@ -707,22 +707,22 @@ static void AnimTask_SwayMonStep(u8 taskId)
sineValue = Sin(waveIndex, gTasks[taskId].data[1]); sineValue = Sin(waveIndex, gTasks[taskId].data[1]);
if (gTasks[taskId].data[0] == 0) 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) else if (GetBattlerSide(gTasks[taskId].data[5]) == B_SIDE_PLAYER)
{ {
gSprites[spriteId].pos2.y = abs(sineValue); gSprites[spriteId].y2 = abs(sineValue);
} }
else else
gSprites[spriteId].pos2.y = -abs(sineValue); gSprites[spriteId].y2 = -abs(sineValue);
if ((waveIndex > 0x7F && gTasks[taskId].data[11] == 0 && gTasks[taskId].data[12] == 1) || (waveIndex < 0x7F && gTasks[taskId].data[11] == 1 && gTasks[taskId].data[12] == 0)) if ((waveIndex > 0x7F && gTasks[taskId].data[11] == 0 && gTasks[taskId].data[12] == 1) || (waveIndex < 0x7F && gTasks[taskId].data[11] == 1 && gTasks[taskId].data[12] == 0))
{ {
gTasks[taskId].data[11] ^= 1; gTasks[taskId].data[11] ^= 1;
gTasks[taskId].data[12] ^= 1; gTasks[taskId].data[12] ^= 1;
if (--gTasks[taskId].data[3] == 0) if (--gTasks[taskId].data[3] == 0)
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
} }
@@ -890,8 +890,8 @@ void AnimTask_ShakeTargetBasedOnMovePowerOrDmg(u8 taskId)
gTasks[taskId].data[10] = gBattleAnimArgs[3]; gTasks[taskId].data[10] = gBattleAnimArgs[3];
gTasks[taskId].data[11] = gBattleAnimArgs[4]; gTasks[taskId].data[11] = gBattleAnimArgs[4];
gTasks[taskId].data[7] = GetAnimBattlerSpriteId(ANIM_TARGET); gTasks[taskId].data[7] = GetAnimBattlerSpriteId(ANIM_TARGET);
gTasks[taskId].data[8] = gSprites[gTasks[taskId].data[7]].pos2.x; gTasks[taskId].data[8] = gSprites[gTasks[taskId].data[7]].x2;
gTasks[taskId].data[9] = gSprites[gTasks[taskId].data[7]].pos2.y; gTasks[taskId].data[9] = gSprites[gTasks[taskId].data[7]].y2;
gTasks[taskId].data[0] = 0; gTasks[taskId].data[0] = 0;
gTasks[taskId].data[1] = gBattleAnimArgs[1]; gTasks[taskId].data[1] = gBattleAnimArgs[1];
gTasks[taskId].data[2] = gBattleAnimArgs[2]; gTasks[taskId].data[2] = gBattleAnimArgs[2];
@@ -909,28 +909,28 @@ static void sub_8099CB8(u8 taskId)
{ {
if (task->data[12]) 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 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[11])
{ {
if (task->data[12]) if (task->data[12])
{ {
gSprites[task->data[7]].pos2.y = task->data[15]; gSprites[task->data[7]].y2 = task->data[15];
} }
else else
{ {
gSprites[task->data[7]].pos2.y = 0; gSprites[task->data[7]].y2 = 0;
} }
} }
if (!--task->data[2]) if (!--task->data[2])
{ {
gSprites[task->data[7]].pos2.x = 0; gSprites[task->data[7]].x2 = 0;
gSprites[task->data[7]].pos2.y = 0; gSprites[task->data[7]].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
return; return;
} }
+96 -96
View File
@@ -396,8 +396,8 @@ void TranslateSpriteInCircleOverDuration(struct Sprite *sprite)
{ {
if (sprite->data[3]) if (sprite->data[3])
{ {
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[1]); sprite->y2 = Cos(sprite->data[0], sprite->data[1]);
sprite->data[0] += sprite->data[2]; sprite->data[0] += sprite->data[2];
if (sprite->data[0] >= 0x100) if (sprite->data[0] >= 0x100)
sprite->data[0] -= 0x100; sprite->data[0] -= 0x100;
@@ -417,8 +417,8 @@ void TranslateSpriteInGrowingCircleOverDuration(struct Sprite *sprite)
{ {
if (sprite->data[3]) if (sprite->data[3])
{ {
sprite->pos2.x = Sin(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]); sprite->x2 = 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->y2 = Cos(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]);
sprite->data[0] += sprite->data[2]; sprite->data[0] += sprite->data[2];
sprite->data[5] += sprite->data[4]; sprite->data[5] += sprite->data[4];
if (sprite->data[0] >= 0x100) if (sprite->data[0] >= 0x100)
@@ -440,8 +440,8 @@ static void TranslateSpriteInLissajousCurveOverDuration(struct Sprite *sprite)
{ {
if (sprite->data[3]) if (sprite->data[3])
{ {
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[4], sprite->data[1]); sprite->y2 = Cos(sprite->data[4], sprite->data[1]);
sprite->data[0] += sprite->data[2]; sprite->data[0] += sprite->data[2];
sprite->data[4] += sprite->data[5]; sprite->data[4] += sprite->data[5];
if (sprite->data[0] >= 0x100) if (sprite->data[0] >= 0x100)
@@ -466,8 +466,8 @@ void TranslateSpriteInEllipseOverDuration(struct Sprite *sprite)
{ {
if (sprite->data[3]) if (sprite->data[3])
{ {
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[4]); sprite->y2 = Cos(sprite->data[0], sprite->data[4]);
sprite->data[0] += sprite->data[2]; sprite->data[0] += sprite->data[2];
if (sprite->data[0] >= 0x100) if (sprite->data[0] >= 0x100)
sprite->data[0] -= 0x100; sprite->data[0] -= 0x100;
@@ -518,8 +518,8 @@ void TranslateSpriteLinear(struct Sprite *sprite)
if (sprite->data[0] > 0) if (sprite->data[0] > 0)
{ {
--sprite->data[0]; --sprite->data[0];
sprite->pos2.x += sprite->data[1]; sprite->x2 += sprite->data[1];
sprite->pos2.y += sprite->data[2]; sprite->y2 += sprite->data[2];
} }
else else
{ {
@@ -534,8 +534,8 @@ void TranslateSpriteLinearFixedPoint(struct Sprite *sprite)
--sprite->data[0]; --sprite->data[0];
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
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;
} }
else else
{ {
@@ -550,8 +550,8 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite)
--sprite->data[0]; --sprite->data[0];
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
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;
} }
else else
{ {
@@ -564,8 +564,8 @@ static void TranslateSpriteLinearFixedPointIconFrame(struct Sprite *sprite)
// not used // not used
static void SetupAndStartSpriteLinearTranslationToTarget(struct Sprite *sprite) static void SetupAndStartSpriteLinearTranslationToTarget(struct Sprite *sprite)
{ {
sprite->data[1] = sprite->pos1.x + sprite->pos2.x; sprite->data[1] = sprite->x + sprite->x2;
sprite->data[3] = sprite->pos1.y + sprite->pos2.y; sprite->data[3] = sprite->y + sprite->y2;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = SetupAndStartSpriteLinearTranslation; sprite->callback = SetupAndStartSpriteLinearTranslation;
@@ -576,8 +576,8 @@ void TranslateMonSpriteLinear(struct Sprite *sprite)
if (sprite->data[0] > 0) if (sprite->data[0] > 0)
{ {
--sprite->data[0]; --sprite->data[0];
gSprites[sprite->data[3]].pos2.x += sprite->data[1]; gSprites[sprite->data[3]].x2 += sprite->data[1];
gSprites[sprite->data[3]].pos2.y += sprite->data[2]; gSprites[sprite->data[3]].y2 += sprite->data[2];
} }
else else
{ {
@@ -592,8 +592,8 @@ void TranslateMonSpriteLinearFixedPoint(struct Sprite *sprite)
--sprite->data[0]; --sprite->data[0];
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
gSprites[sprite->data[5]].pos2.x = sprite->data[3] >> 8; gSprites[sprite->data[5]].x2 = sprite->data[3] >> 8;
gSprites[sprite->data[5]].pos2.y = sprite->data[4] >> 8; gSprites[sprite->data[5]].y2 = sprite->data[4] >> 8;
} }
else else
{ {
@@ -606,9 +606,9 @@ void TranslateSpriteLinearAndFlicker(struct Sprite *sprite)
if (sprite->data[0] > 0) if (sprite->data[0] > 0)
{ {
--sprite->data[0]; --sprite->data[0];
sprite->pos2.x = sprite->data[2] >> 8; sprite->x2 = sprite->data[2] >> 8;
sprite->data[2] += sprite->data[1]; 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]; sprite->data[4] += sprite->data[3];
if (sprite->data[0] % sprite->data[5] == 0) if (sprite->data[0] % sprite->data[5] == 0)
{ {
@@ -631,8 +631,8 @@ void DestroySpriteAndMatrix(struct Sprite *sprite)
// not used // not used
static void SetupAndStartSpriteLinearTranslationToAttacker(struct Sprite *sprite) static void SetupAndStartSpriteLinearTranslationToAttacker(struct Sprite *sprite)
{ {
sprite->data[1] = sprite->pos1.x + sprite->pos2.x; sprite->data[1] = sprite->x + sprite->x2;
sprite->data[3] = sprite->pos1.y + sprite->pos2.y; sprite->data[3] = sprite->y + sprite->y2;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = SetupAndStartSpriteLinearTranslation; sprite->callback = SetupAndStartSpriteLinearTranslation;
@@ -673,8 +673,8 @@ void DestroyAnimVisualTaskAndDisableBlend(u8 taskId)
void SetSpriteCoordsToAnimAttackerCoords(struct Sprite *sprite) void SetSpriteCoordsToAnimAttackerCoords(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
} }
// Sets the initial x offset of the anim sprite depending on the horizontal orientation // Sets the initial x offset of the anim sprite depending on the horizontal orientation
@@ -686,25 +686,25 @@ void SetAnimSpriteInitialXOffset(struct Sprite *sprite, s16 xOffset)
if (attackerX > targetX) if (attackerX > targetX)
{ {
sprite->pos1.x -= xOffset; sprite->x -= xOffset;
} }
else if (attackerX < targetX) else if (attackerX < targetX)
{ {
sprite->pos1.x += xOffset; sprite->x += xOffset;
} }
else else
{ {
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= xOffset; sprite->x -= xOffset;
else else
sprite->pos1.x += xOffset; sprite->x += xOffset;
} }
} }
void InitAnimArcTranslation(struct Sprite *sprite) void InitAnimArcTranslation(struct Sprite *sprite)
{ {
sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitX = sprite->x;
sprite->sTransl_InitY = sprite->pos1.y; sprite->sTransl_InitY = sprite->y;
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->data[6] = 0x8000 / sprite->sTransl_Speed; sprite->data[6] = 0x8000 / sprite->sTransl_Speed;
sprite->data[7] = 0; sprite->data[7] = 0;
@@ -715,7 +715,7 @@ bool8 TranslateAnimHorizontalArc(struct Sprite *sprite)
if (AnimTranslateLinear(sprite)) if (AnimTranslateLinear(sprite))
return TRUE; return TRUE;
sprite->data[7] += sprite->data[6]; sprite->data[7] += sprite->data[6];
sprite->pos2.y += Sin((u8)(sprite->data[7] >> 8), sprite->sTransl_ArcAmpl); sprite->y2 += Sin((u8)(sprite->data[7] >> 8), sprite->sTransl_ArcAmpl);
return FALSE; return FALSE;
} }
@@ -724,16 +724,16 @@ bool8 TranslateAnimVerticalArc(struct Sprite *sprite)
if (AnimTranslateLinear(sprite)) if (AnimTranslateLinear(sprite))
return TRUE; return TRUE;
sprite->data[7] += sprite->data[6]; sprite->data[7] += sprite->data[6];
sprite->pos2.x += Sin((u8)(sprite->data[7] >> 8), sprite->sTransl_ArcAmpl); sprite->x2 += Sin((u8)(sprite->data[7] >> 8), sprite->sTransl_ArcAmpl);
return FALSE; return FALSE;
} }
void SetSpritePrimaryCoordsFromSecondaryCoords(struct Sprite *sprite) void SetSpritePrimaryCoordsFromSecondaryCoords(struct Sprite *sprite)
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
} }
void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets) void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets)
@@ -742,27 +742,27 @@ void InitSpritePosToAnimTarget(struct Sprite *sprite, bool8 respectMonPicOffsets
// is why there is no else clause for the "respectMonPicOffsets" check. // is why there is no else clause for the "respectMonPicOffsets" check.
if (!respectMonPicOffsets) if (!respectMonPicOffsets)
{ {
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X); sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y); sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y);
} }
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
void InitSpritePosToAnimAttacker(struct Sprite *sprite, bool8 respectMonPicOffsets) void InitSpritePosToAnimAttacker(struct Sprite *sprite, bool8 respectMonPicOffsets)
{ {
if (!respectMonPicOffsets) if (!respectMonPicOffsets)
{ {
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X); sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y); sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
} }
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
u8 GetBattlerSide(u8 battlerId) u8 GetBattlerSide(u8 battlerId)
@@ -907,8 +907,8 @@ void ToggleBg3Mode(bool8 arg0)
void StartSpriteLinearTranslationFromCurrentPos(struct Sprite *sprite) void StartSpriteLinearTranslationFromCurrentPos(struct Sprite *sprite)
{ {
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
InitSpriteDataForLinearTranslation(sprite); InitSpriteDataForLinearTranslation(sprite);
sprite->callback = TranslateSpriteLinearFixedPointIconFrame; sprite->callback = TranslateSpriteLinearFixedPointIconFrame;
sprite->callback(sprite); sprite->callback(sprite);
@@ -955,8 +955,8 @@ void InitAnimLinearTranslation(struct Sprite *sprite)
void StartAnimLinearTranslation(struct Sprite *sprite) void StartAnimLinearTranslation(struct Sprite *sprite)
{ {
sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitX = sprite->x;
sprite->sTransl_InitY = sprite->pos1.y; sprite->sTransl_InitY = sprite->y;
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->callback = RunLinearTranslation_ThenceSetCBtoStoredInData6; sprite->callback = RunLinearTranslation_ThenceSetCBtoStoredInData6;
sprite->callback(sprite); sprite->callback(sprite);
@@ -964,8 +964,8 @@ void StartAnimLinearTranslation(struct Sprite *sprite)
void PlayerThrowBall_StartAnimLinearTranslation(struct Sprite *sprite) void PlayerThrowBall_StartAnimLinearTranslation(struct Sprite *sprite)
{ {
sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitX = sprite->x;
sprite->sTransl_InitY = sprite->pos1.y; sprite->sTransl_InitY = sprite->y;
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->callback = PlayerThrowBall_RunLinearTranslation_ThenceSetCBtoStoredInData6; sprite->callback = PlayerThrowBall_RunLinearTranslation_ThenceSetCBtoStoredInData6;
sprite->callback(sprite); sprite->callback(sprite);
@@ -984,14 +984,14 @@ bool8 AnimTranslateLinear(struct Sprite *sprite)
x += v1; x += v1;
y += v2; y += v2;
if (v1 & 1) if (v1 & 1)
sprite->pos2.x = -(x >> 8); sprite->x2 = -(x >> 8);
else else
sprite->pos2.x = x >> 8; sprite->x2 = x >> 8;
if (v2 & 1) if (v2 & 1)
sprite->pos2.y = -(y >> 8); sprite->y2 = -(y >> 8);
else else
sprite->pos2.y = y >> 8; sprite->y2 = y >> 8;
sprite->data[3] = x; sprite->data[3] = x;
sprite->data[4] = y; sprite->data[4] = y;
--sprite->data[0]; --sprite->data[0];
@@ -1021,8 +1021,8 @@ void BattleAnim_InitLinearTranslationWithDuration(struct Sprite *sprite)
void BattleAnim_InitAndRunLinearTranslationWithDuration(struct Sprite *sprite) void BattleAnim_InitAndRunLinearTranslationWithDuration(struct Sprite *sprite)
{ {
sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitX = sprite->x;
sprite->sTransl_InitY = sprite->pos1.y; sprite->sTransl_InitY = sprite->y;
BattleAnim_InitLinearTranslationWithDuration(sprite); BattleAnim_InitLinearTranslationWithDuration(sprite);
sprite->callback = RunLinearTranslation_ThenceSetCBtoStoredInData6; sprite->callback = RunLinearTranslation_ThenceSetCBtoStoredInData6;
sprite->callback(sprite); sprite->callback(sprite);
@@ -1055,8 +1055,8 @@ static void InitAnimFastLinearTranslation(struct Sprite *sprite)
void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite) void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite)
{ {
sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitX = sprite->x;
sprite->sTransl_InitY = sprite->pos1.y; sprite->sTransl_InitY = sprite->y;
InitAnimFastLinearTranslation(sprite); InitAnimFastLinearTranslation(sprite);
sprite->callback = SpriteCB_RunAnimFastLinearTranslation; sprite->callback = SpriteCB_RunAnimFastLinearTranslation;
sprite->callback(sprite); sprite->callback(sprite);
@@ -1075,13 +1075,13 @@ bool8 AnimFastTranslateLinear(struct Sprite *sprite)
x += v1; x += v1;
y += v2; y += v2;
if (v1 & 1) if (v1 & 1)
sprite->pos2.x = -(x >> 4); sprite->x2 = -(x >> 4);
else else
sprite->pos2.x = x >> 4; sprite->x2 = x >> 4;
if (v2 & 1) if (v2 & 1)
sprite->pos2.y = -(y >> 4); sprite->y2 = -(y >> 4);
else else
sprite->pos2.y = y >> 4; sprite->y2 = y >> 4;
sprite->data[3] = x; sprite->data[3] = x;
sprite->data[4] = y; sprite->data[4] = y;
--sprite->data[0]; --sprite->data[0];
@@ -1104,8 +1104,8 @@ void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite)
void InitAndStartAnimFastLinearTranslationWithSpeed(struct Sprite *sprite) void InitAndStartAnimFastLinearTranslationWithSpeed(struct Sprite *sprite)
{ {
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
InitAnimFastLinearTranslationWithSpeed(sprite); InitAnimFastLinearTranslationWithSpeed(sprite);
sprite->callback = SpriteCB_RunAnimFastLinearTranslation; sprite->callback = SpriteCB_RunAnimFastLinearTranslation;
sprite->callback(sprite); sprite->callback(sprite);
@@ -1168,7 +1168,7 @@ void SetBattlerSpriteYOffsetFromRotation(u8 spriteId)
if (c < 0) if (c < 0)
c = -c; 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) void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 xScale, s16 yScale, u16 rotation)
@@ -1680,7 +1680,7 @@ bool8 RunAffineAnimFromTaskData(struct Task *task)
++task->data[7]; ++task->data[7];
break; break;
case AFFINEANIMCMDTYPE_END: case AFFINEANIMCMDTYPE_END:
gSprites[task->data[15]].pos2.y = 0; gSprites[task->data[15]].y2 = 0;
ResetSpriteRotScale(task->data[15]); ResetSpriteRotScale(task->data[15]);
return FALSE; return FALSE;
} }
@@ -1697,7 +1697,7 @@ void SetBattlerSpriteYOffsetFromYScale(u8 spriteId)
if (var2 > 128) if (var2 > 128)
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 // Sets the sprite's y offset equal to the y displacement caused by another sprite
@@ -1710,7 +1710,7 @@ void SetBattlerSpriteYOffsetFromOtherYScale(u8 spriteId, u8 otherSpriteId)
if (var2 > 128) if (var2 > 128)
var2 = 128; var2 = 128;
gSprites[spriteId].pos2.y = (var - var2) / 2; gSprites[spriteId].y2 = (var - var2) / 2;
} }
static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId) static u16 GetBattlerYDeltaFromSpriteId(u8 spriteId)
@@ -1788,7 +1788,7 @@ u8 BattleAnimHelper_RunSpriteSquash(struct Task *task)
if (task->data[8]) if (task->data[8])
SetBattlerSpriteYOffsetFromYScale(task->data[15]); SetBattlerSpriteYOffsetFromYScale(task->data[15]);
else else
gSprites[task->data[15]].pos2.y = 0; gSprites[task->data[15]].y2 = 0;
return task->data[8]; return task->data[8];
} }
@@ -2074,15 +2074,15 @@ void SpriteCB_AnimTranslateSpriteLinearAndFlicker(struct Sprite *sprite)
SetSpriteCoordsToAnimAttackerCoords(sprite); SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
gBattleAnimArgs[3] = -gBattleAnimArgs[3]; gBattleAnimArgs[3] = -gBattleAnimArgs[3];
sprite->hFlip = TRUE; sprite->hFlip = TRUE;
} }
else 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[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[3] = gBattleAnimArgs[4]; sprite->data[3] = gBattleAnimArgs[4];
@@ -2095,14 +2095,14 @@ void SpriteCB_AnimTranslateSpriteLinearAndFlicker2(struct Sprite *sprite)
{ {
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
gBattleAnimArgs[3] *= -1; gBattleAnimArgs[3] *= -1;
} }
else 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[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[3] = gBattleAnimArgs[4]; sprite->data[3] = gBattleAnimArgs[4];
@@ -2116,10 +2116,10 @@ void SpriteCB_TrackOffsetFromAttackerAndWaitAnim(struct Sprite *sprite)
{ {
SetSpriteCoordsToAnimAttackerCoords(sprite); SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else else
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->callback = RunStoredCallbackWhenAnimEnds; sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
} }
@@ -2134,7 +2134,7 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId)
task->data[1] = ((GetBattlerSide(gBattleAnimAttacker)) != B_SIDE_PLAYER) ? -8 : 8; task->data[1] = ((GetBattlerSide(gBattleAnimAttacker)) != B_SIDE_PLAYER) ? -8 : 8;
task->data[2] = 0; task->data[2] = 0;
task->data[3] = 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(10097); task->data[4] = AllocSpritePalette(10097);
task->data[5] = 0; task->data[5] = 0;
dest = (task->data[4] + 0x10) * 0x10; dest = (task->data[4] + 0x10) * 0x10;
@@ -2156,7 +2156,7 @@ static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId)
{ {
case 0: case 0:
PunchAnim_CreateTraceSprite(task, taskId); PunchAnim_CreateTraceSprite(task, taskId);
gSprites[task->data[0]].pos2.x += task->data[1]; gSprites[task->data[0]].x2 += task->data[1];
if (++task->data[3] == 5) if (++task->data[3] == 5)
{ {
--task->data[3]; --task->data[3];
@@ -2165,10 +2165,10 @@ static void AnimTask_AttackerPunchWithTrace_Step(u8 taskId)
break; break;
case 1: case 1:
PunchAnim_CreateTraceSprite(task, taskId); PunchAnim_CreateTraceSprite(task, taskId);
gSprites[task->data[0]].pos2.x -= task->data[1]; gSprites[task->data[0]].x2 -= task->data[1];
if (--task->data[3] == 0) if (--task->data[3] == 0)
{ {
gSprites[task->data[0]].pos2.x = 0; gSprites[task->data[0]].x2 = 0;
++task->data[2]; ++task->data[2];
} }
break; break;
@@ -2193,7 +2193,7 @@ static void PunchAnim_CreateTraceSprite(struct Task *task, u8 taskId)
gSprites[spriteId].data[0] = 8; gSprites[spriteId].data[0] = 8;
gSprites[spriteId].data[1] = taskId; gSprites[spriteId].data[1] = taskId;
gSprites[spriteId].data[2] = spriteId; 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 = SpriteCB_PunchTrace; gSprites[spriteId].callback = SpriteCB_PunchTrace;
++task->data[5]; ++task->data[5];
} }
@@ -2210,8 +2210,8 @@ static void SpriteCB_PunchTrace(struct Sprite *sprite)
void SpriteCB_WeatherBallUp(struct Sprite *sprite) void SpriteCB_WeatherBallUp(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
sprite->data[0] = 5; sprite->data[0] = 5;
else else
@@ -2224,11 +2224,11 @@ static void SpriteCB_WeatherBallUp_Step(struct Sprite *sprite)
{ {
sprite->data[2] += sprite->data[0]; sprite->data[2] += sprite->data[0];
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->pos2.x = sprite->data[2] / 10; sprite->x2 = sprite->data[2] / 10;
sprite->pos2.y = sprite->data[3] / 10; sprite->y2 = sprite->data[3] / 10;
if (sprite->data[1] < -20) if (sprite->data[1] < -20)
++sprite->data[1]; ++sprite->data[1];
if (sprite->pos1.y + sprite->pos2.y < -32) if (sprite->y + sprite->y2 < -32)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -2237,19 +2237,19 @@ void AnimWeatherBallDown(struct Sprite *sprite)
s32 x; s32 x;
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[4]; sprite->data[2] = sprite->x + gBattleAnimArgs[4];
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[5]; sprite->data[4] = sprite->y + gBattleAnimArgs[5];
if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)
{ {
x = (u16)gBattleAnimArgs[4] + 30; x = (u16)gBattleAnimArgs[4] + 30;
sprite->pos1.x += x; sprite->x += x;
sprite->pos1.y = gBattleAnimArgs[5] - 20; sprite->y = gBattleAnimArgs[5] - 20;
} }
else else
{ {
x = (u16)gBattleAnimArgs[4] - 30; x = (u16)gBattleAnimArgs[4] - 30;
sprite->pos1.x += x; sprite->x += x;
sprite->pos1.y = gBattleAnimArgs[5] - 80; sprite->y = gBattleAnimArgs[5] - 80;
} }
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+64 -64
View File
@@ -448,8 +448,8 @@ UNUSED void AnimTask_UnusedLevelUpHealthBox(u8 taskId)
AnimLoadCompressedBgTilemap(animBgData.bgId, gUnknown_D2EC24_Tilemap); AnimLoadCompressedBgTilemap(animBgData.bgId, gUnknown_D2EC24_Tilemap);
AnimLoadCompressedBgGfx(animBgData.bgId, gUnknown_D2EC24_Gfx, animBgData.tilesOffset); AnimLoadCompressedBgGfx(animBgData.bgId, gUnknown_D2EC24_Gfx, animBgData.tilesOffset);
LoadCompressedPalette(gCureBubblesPal, animBgData.paletteId << 4, 32); LoadCompressedPalette(gCureBubblesPal, animBgData.paletteId << 4, 32);
gBattle_BG1_X = -gSprites[spriteId3].pos1.x + 32; gBattle_BG1_X = -gSprites[spriteId3].x + 32;
gBattle_BG1_Y = -gSprites[spriteId3].pos1.y - 32; gBattle_BG1_Y = -gSprites[spriteId3].y - 32;
gTasks[taskId].data[1] = 640; gTasks[taskId].data[1] = 640;
gTasks[taskId].data[0] = spriteId3; gTasks[taskId].data[0] = spriteId3;
gTasks[taskId].data[2] = spriteId4; gTasks[taskId].data[2] = spriteId4;
@@ -821,9 +821,9 @@ static void SpriteCB_ThrowBall_Init(struct Sprite *sprite)
u16 destX = sprite->data[1]; u16 destX = sprite->data[1];
u16 destY = sprite->data[2]; u16 destY = sprite->data[2];
sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitX = sprite->x;
sprite->sTransl_DestX = destX; sprite->sTransl_DestX = destX;
sprite->sTransl_InitY = sprite->pos1.y; sprite->sTransl_InitY = sprite->y;
sprite->sTransl_DestY = destY; sprite->sTransl_DestY = destY;
sprite->sTransl_ArcAmpl = -40; sprite->sTransl_ArcAmpl = -40;
InitAnimArcTranslation(sprite); InitAnimArcTranslation(sprite);
@@ -848,10 +848,10 @@ static void SpriteCB_ThrowBall_ArcFlight(struct Sprite *sprite)
else else
{ {
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
for (i = 0; i < 8; i++) for (i = 0; i < 8; i++)
sprite->data[i] = 0; sprite->data[i] = 0;
@@ -863,7 +863,7 @@ static void SpriteCB_ThrowBall_ArcFlight(struct Sprite *sprite)
switch (ballId) switch (ballId)
{ {
case 0 ... POKEBALL_COUNT - 1: case 0 ... POKEBALL_COUNT - 1:
LaunchBallStarsTask(sprite->pos1.x, sprite->pos1.y - 5, 1, 28, ballId); LaunchBallStarsTask(sprite->x, sprite->y - 5, 1, 28, ballId);
LaunchBallFadeMonTask(0, gBattleAnimTarget, 14, ballId); LaunchBallFadeMonTask(0, gBattleAnimTarget, 14, ballId);
break; break;
} }
@@ -897,7 +897,7 @@ static void SpriteCB_ThrowBall_ShrinkMon(struct Sprite *sprite)
PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL); PrepareBattlerSpriteForRotScale(spriteId, ST_OAM_OBJ_NORMAL);
gTasks[taskId].data[10] = 256; gTasks[taskId].data[10] = 256;
gMonShrinkDuration = 28; 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 = (gMonShrinkDistance * 256) / gMonShrinkDuration; gMonShrinkDelta = (gMonShrinkDistance * 256) / gMonShrinkDuration;
gTasks[taskId].data[2] = gMonShrinkDelta; gTasks[taskId].data[2] = gMonShrinkDelta;
gTasks[taskId].data[0]++; gTasks[taskId].data[0]++;
@@ -906,7 +906,7 @@ static void SpriteCB_ThrowBall_ShrinkMon(struct Sprite *sprite)
gTasks[taskId].data[10] += 0x20; gTasks[taskId].data[10] += 0x20;
SetSpriteRotScale(spriteId, gTasks[taskId].data[10], gTasks[taskId].data[10], 0); SetSpriteRotScale(spriteId, gTasks[taskId].data[10], gTasks[taskId].data[10], 0);
gTasks[taskId].data[3] += gTasks[taskId].data[2]; 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] >= 0x480) if (gTasks[taskId].data[10] >= 0x480)
gTasks[taskId].data[0]++; gTasks[taskId].data[0]++;
break; break;
@@ -937,8 +937,8 @@ static void SpriteCB_ThrowBall_InitialFall(struct Sprite *sprite)
sprite->data[4] = 40; sprite->data[4] = 40;
sprite->data[5] = 0; sprite->data[5] = 0;
angle = 0; angle = 0;
sprite->pos1.y += Cos(angle, 40); sprite->y += Cos(angle, 40);
sprite->pos2.y = -Cos(angle, sprite->data[4]); sprite->y2 = -Cos(angle, sprite->data[4]);
sprite->callback = SpriteCB_ThrowBall_Bounce; sprite->callback = SpriteCB_ThrowBall_Bounce;
} }
} }
@@ -952,7 +952,7 @@ static void SpriteCB_ThrowBall_Bounce(struct Sprite *sprite)
switch (sprite->data[3] & 0xFF) switch (sprite->data[3] & 0xFF)
{ {
case 0: case 0:
sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]); sprite->y2 = -Cos(sprite->data[5], sprite->data[4]);
sprite->data[5] += (sprite->data[3] >> 8) + 4; sprite->data[5] += (sprite->data[3] >> 8) + 4;
if (sprite->data[5] >= 64) if (sprite->data[5] >= 64)
{ {
@@ -982,7 +982,7 @@ static void SpriteCB_ThrowBall_Bounce(struct Sprite *sprite)
} }
break; break;
case 1: case 1:
sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]); sprite->y2 = -Cos(sprite->data[5], sprite->data[4]);
sprite->data[5] -= (sprite->data[3] >> 8) + 4; sprite->data[5] -= (sprite->data[3] >> 8) + 4;
if (sprite->data[5] <= 0) if (sprite->data[5] <= 0)
{ {
@@ -995,8 +995,8 @@ static void SpriteCB_ThrowBall_Bounce(struct Sprite *sprite)
if (lastBounce) if (lastBounce)
{ {
sprite->data[3] = 0; sprite->data[3] = 0;
sprite->pos1.y += Cos(64, 40); sprite->y += Cos(64, 40);
sprite->pos2.y = 0; sprite->y2 = 0;
if (gBattleSpritesDataPtr->animationData->ballThrowCaseId == BALL_NO_SHAKES) if (gBattleSpritesDataPtr->animationData->ballThrowCaseId == BALL_NO_SHAKES)
{ {
sprite->data[5] = 0; sprite->data[5] = 0;
@@ -1034,7 +1034,7 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
case 0: case 0:
if (gBattleSpritesDataPtr->animationData->field_C > 0xFF) if (gBattleSpritesDataPtr->animationData->field_C > 0xFF)
{ {
sprite->pos2.x += sprite->data[4]; sprite->x2 += sprite->data[4];
gBattleSpritesDataPtr->animationData->field_C &= 0xFF; gBattleSpritesDataPtr->animationData->field_C &= 0xFF;
} }
else else
@@ -1072,7 +1072,7 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
case 2: case 2:
if (gBattleSpritesDataPtr->animationData->field_C > 0xFF) if (gBattleSpritesDataPtr->animationData->field_C > 0xFF)
{ {
sprite->pos2.x += sprite->data[4]; sprite->x2 += sprite->data[4];
gBattleSpritesDataPtr->animationData->field_C &= 0xFF; gBattleSpritesDataPtr->animationData->field_C &= 0xFF;
} }
else else
@@ -1109,7 +1109,7 @@ static void SpriteCB_ThrowBall_DoShake(struct Sprite *sprite)
case 4: case 4:
if (gBattleSpritesDataPtr->animationData->field_C > 0xFF) if (gBattleSpritesDataPtr->animationData->field_C > 0xFF)
{ {
sprite->pos2.x += sprite->data[4]; sprite->x2 += sprite->data[4];
gBattleSpritesDataPtr->animationData->field_C &= 0xFF; gBattleSpritesDataPtr->animationData->field_C &= 0xFF;
} }
else else
@@ -1290,12 +1290,12 @@ static void CreateStarsWhenBallClicks(struct Sprite *sprite)
LoadBallParticleGfx(BALL_MASTER); LoadBallParticleGfx(BALL_MASTER);
for (i = 0; i < 3; i++) for (i = 0; i < 3; i++)
{ {
u8 spriteId = CreateSprite(&sBallParticlesSpriteTemplates[BALL_MASTER], sprite->pos1.x, sprite->pos1.y, subpriority); u8 spriteId = CreateSprite(&sBallParticlesSpriteTemplates[BALL_MASTER], sprite->x, sprite->y, subpriority);
if (spriteId != MAX_SPRITES) if (spriteId != MAX_SPRITES)
{ {
gSprites[spriteId].sTransl_Speed = 24; gSprites[spriteId].sTransl_Speed = 24;
gSprites[spriteId].sTransl_DestX = sprite->pos1.x + sCaptureStar[i].xOffset; gSprites[spriteId].sTransl_DestX = sprite->x + sCaptureStar[i].xOffset;
gSprites[spriteId].sTransl_DestY = sprite->pos1.y + sCaptureStar[i].yOffset; gSprites[spriteId].sTransl_DestY = sprite->y + sCaptureStar[i].yOffset;
gSprites[spriteId].sTransl_ArcAmpl = sCaptureStar[i].amplitude; gSprites[spriteId].sTransl_ArcAmpl = sCaptureStar[i].amplitude;
InitAnimArcTranslation(&gSprites[spriteId]); InitAnimArcTranslation(&gSprites[spriteId]);
gSprites[spriteId].callback = SpriteCB_BallCaptureSuccessStar; gSprites[spriteId].callback = SpriteCB_BallCaptureSuccessStar;
@@ -1322,7 +1322,7 @@ static void SpriteCB_ThrowBall_BeginBreakOut(struct Sprite *sprite)
switch (ballId) switch (ballId)
{ {
case 0 ... POKEBALL_COUNT - 1: case 0 ... POKEBALL_COUNT - 1:
LaunchBallStarsTask(sprite->pos1.x, sprite->pos1.y - 5, 1, 28, ballId); LaunchBallStarsTask(sprite->x, sprite->y - 5, 1, 28, ballId);
LaunchBallFadeMonTask(1, gBattleAnimTarget, 14, ballId); LaunchBallFadeMonTask(1, gBattleAnimTarget, 14, ballId);
break; break;
} }
@@ -1348,12 +1348,12 @@ static void SpriteCB_ThrowBall_RunBreakOut(struct Sprite *sprite)
else else
{ {
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].data[1] -= 288; gSprites[gBattlerSpriteIds[gBattleAnimTarget]].data[1] -= 288;
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].pos2.y = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].data[1] >> 8; gSprites[gBattlerSpriteIds[gBattleAnimTarget]].y2 = gSprites[gBattlerSpriteIds[gBattleAnimTarget]].data[1] >> 8;
} }
if (sprite->animEnded && next) if (sprite->animEnded && next)
{ {
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].pos2.y = 0; gSprites[gBattlerSpriteIds[gBattleAnimTarget]].y2 = 0;
gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible = gBattleSpritesDataPtr->animationData->field_9_x2; gSprites[gBattlerSpriteIds[gBattleAnimTarget]].invisible = gBattleSpritesDataPtr->animationData->field_9_x2;
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->callback = BattleAnimObj_SignalEnd; sprite->callback = BattleAnimObj_SignalEnd;
@@ -1366,9 +1366,9 @@ static void TrainerBallBlock(struct Sprite *sprite)
{ {
int i; int i;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
for (i = 0; i < 6; i++) for (i = 0; i < 6; i++)
sprite->data[i] = 0; sprite->data[i] = 0;
@@ -1380,12 +1380,12 @@ static void TrainerBallBlock2(struct Sprite *sprite)
s16 var0 = sprite->data[0] + 0x800; s16 var0 = sprite->data[0] + 0x800;
s16 var1 = sprite->data[1] + 0x680; s16 var1 = sprite->data[1] + 0x680;
sprite->pos2.x -= var1 >> 8; sprite->x2 -= var1 >> 8;
sprite->pos2.y += var0 >> 8; sprite->y2 += var0 >> 8;
sprite->data[0] = (sprite->data[0] + 0x800) & 0xFF; sprite->data[0] = (sprite->data[0] + 0x800) & 0xFF;
sprite->data[1] = (sprite->data[1] + 0x680) & 0xFF; sprite->data[1] = (sprite->data[1] + 0x680) & 0xFF;
if (sprite->pos1.y + sprite->pos2.y > 160 if (sprite->y + sprite->y2 > 160
|| sprite->pos1.x + sprite->pos2.x < -8) || sprite->x + sprite->x2 < -8)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->callback = BattleAnimObj_SignalEnd; sprite->callback = BattleAnimObj_SignalEnd;
@@ -1396,13 +1396,13 @@ static void TrainerBallBlock2(struct Sprite *sprite)
static void GhostBallDodge(struct Sprite *sprite) static void GhostBallDodge(struct Sprite *sprite)
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
sprite->data[0] = 0x22; sprite->data[0] = 0x22;
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = sprite->pos1.x - 8; sprite->data[2] = sprite->x - 8;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = 0x90; sprite->data[4] = 0x90;
sprite->data[5] = 0x20; sprite->data[5] = 0x20;
InitAnimArcTranslation(sprite); InitAnimArcTranslation(sprite);
@@ -1414,7 +1414,7 @@ static void GhostBallDodge2(struct Sprite *sprite)
{ {
if (!TranslateAnimVerticalArc(sprite)) if (!TranslateAnimVerticalArc(sprite))
{ {
if ((sprite->pos1.y + sprite->pos2.y) < 65) if ((sprite->y + sprite->y2) < 65)
return; return;
} }
@@ -1508,8 +1508,8 @@ static void PokeBallOpenParticleAnimation_Step1(struct Sprite *sprite)
static void PokeBallOpenParticleAnimation_Step2(struct Sprite *sprite) static void PokeBallOpenParticleAnimation_Step2(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[1]); sprite->y2 = Cos(sprite->data[0], sprite->data[1]);
sprite->data[1] += 2; sprite->data[1] += 2;
if (sprite->data[1] == 50) if (sprite->data[1] == 50)
DestroyBallOpenAnimationParticle(sprite); DestroyBallOpenAnimationParticle(sprite);
@@ -1701,8 +1701,8 @@ static void GreatBallOpenParticleAnimation(u8 taskId)
static void FanOutBallOpenParticles_Step1(struct Sprite *sprite) static void FanOutBallOpenParticles_Step1(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], sprite->data[2]); sprite->y2 = Cos(sprite->data[0], sprite->data[2]);
sprite->data[0] = (sprite->data[0] + sprite->data[4]) & 0xFF; sprite->data[0] = (sprite->data[0] + sprite->data[4]) & 0xFF;
sprite->data[1] += sprite->data[5]; sprite->data[1] += sprite->data[5];
sprite->data[2] += sprite->data[6]; sprite->data[2] += sprite->data[6];
@@ -1743,8 +1743,8 @@ static void RepeatBallOpenParticleAnimation(u8 taskId)
static void RepeatBallOpenParticleAnimation_Step1(struct Sprite *sprite) static void RepeatBallOpenParticleAnimation_Step1(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], Sin(sprite->data[0], sprite->data[2])); sprite->y2 = Cos(sprite->data[0], Sin(sprite->data[0], sprite->data[2]));
sprite->data[0] = (sprite->data[0] + 6) & 0xFF; sprite->data[0] = (sprite->data[0] + 6) & 0xFF;
sprite->data[1]++; sprite->data[1]++;
sprite->data[2]++; sprite->data[2]++;
@@ -1831,8 +1831,8 @@ static void PremierBallOpenParticleAnimation(u8 taskId)
static void PremierBallOpenParticleAnimation_Step1(struct Sprite *sprite) static void PremierBallOpenParticleAnimation_Step1(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]); sprite->x2 = Sin(sprite->data[0], sprite->data[1]);
sprite->pos2.y = Cos(sprite->data[0], Sin(sprite->data[0] & 0x3F, sprite->data[2])); sprite->y2 = Cos(sprite->data[0], Sin(sprite->data[0] & 0x3F, sprite->data[2]));
sprite->data[0] = (sprite->data[0] + 10) & 0xFF; sprite->data[0] = (sprite->data[0] + 10) & 0xFF;
sprite->data[1]++; sprite->data[1]++;
sprite->data[2]++; sprite->data[2]++;
@@ -1955,12 +1955,12 @@ void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId)
gTasks[taskId].data[11] = gBattleAnimArgs[0]; gTasks[taskId].data[11] = gBattleAnimArgs[0];
gTasks[taskId].data[0] += 0x500; gTasks[taskId].data[0] += 0x500;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gSprites[spriteId].pos2.x += gTasks[taskId].data[0] >> 8; gSprites[spriteId].x2 += gTasks[taskId].data[0] >> 8;
else else
gSprites[spriteId].pos2.x -= gTasks[taskId].data[0] >> 8; gSprites[spriteId].x2 -= gTasks[taskId].data[0] >> 8;
gTasks[taskId].data[0] &= 0xFF; 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) if (x > 304)
gTasks[taskId].data[10]++; gTasks[taskId].data[10]++;
break; break;
@@ -1971,24 +1971,24 @@ void AnimTask_SwapMonSpriteToFromSubstitute(u8 taskId)
case 2: case 2:
gTasks[taskId].data[0] += 0x500; gTasks[taskId].data[0] += 0x500;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gSprites[spriteId].pos2.x -= gTasks[taskId].data[0] >> 8; gSprites[spriteId].x2 -= gTasks[taskId].data[0] >> 8;
else else
gSprites[spriteId].pos2.x += gTasks[taskId].data[0] >> 8; gSprites[spriteId].x2 += gTasks[taskId].data[0] >> 8;
gTasks[taskId].data[0] &= 0xFF; gTasks[taskId].data[0] &= 0xFF;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) 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; done = TRUE;
} }
} }
else else
{ {
if (gSprites[spriteId].pos2.x >= 0) if (gSprites[spriteId].x2 >= 0)
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
done = TRUE; done = TRUE;
} }
} }
@@ -2133,8 +2133,8 @@ static void AnimTask_ShinySparkles(u8 taskId)
else else
{ {
gSprites[spriteId].callback = SpriteCB_ShinySparkles_2; gSprites[spriteId].callback = SpriteCB_ShinySparkles_2;
gSprites[spriteId].pos2.x = -32; gSprites[spriteId].x2 = -32;
gSprites[spriteId].pos2.y = 32; gSprites[spriteId].y2 = 32;
gSprites[spriteId].invisible = TRUE; gSprites[spriteId].invisible = TRUE;
if (gTasks[taskId].data[11] == FALSE) if (gTasks[taskId].data[11] == FALSE)
{ {
@@ -2174,8 +2174,8 @@ static void AnimTask_ShinySparkles_WaitSparkles(u8 taskId)
static void SpriteCB_ShinySparkles_1(struct Sprite *sprite) static void SpriteCB_ShinySparkles_1(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[1], 24); sprite->x2 = Sin(sprite->data[1], 24);
sprite->pos2.y = Cos(sprite->data[1], 24); sprite->y2 = Cos(sprite->data[1], 24);
sprite->data[1] += 12; sprite->data[1] += 12;
if (sprite->data[1] > 0xFF) if (sprite->data[1] > 0xFF)
{ {
@@ -2194,9 +2194,9 @@ static void SpriteCB_ShinySparkles_2(struct Sprite *sprite)
else else
{ {
sprite->invisible = FALSE; sprite->invisible = FALSE;
sprite->pos2.x += 5; sprite->x2 += 5;
sprite->pos2.y -= 5; sprite->y2 -= 5;
if (sprite->pos2.x > 32) if (sprite->x2 > 32)
{ {
gTasks[sprite->data[0]].data[12]--; gTasks[sprite->data[0]].data[12]--;
FreeSpriteOamMatrix(sprite); FreeSpriteOamMatrix(sprite);
+5 -5
View File
@@ -250,7 +250,7 @@ static u8 sub_8078178(u8 battlerId, bool8 b)
gTasks[taskId].data[1] = RGB_RED; gTasks[taskId].data[1] = RGB_RED;
for (i = 0; i < 10; i++) for (i = 0; i < 10; i++)
{ {
spriteId2 = CreateSprite(&sUnknown_83BF574, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y + 32, 0); spriteId2 = CreateSprite(&sUnknown_83BF574, gSprites[battlerSpriteId].x, gSprites[battlerSpriteId].y + 32, 0);
gSprites[spriteId2].data[0] = i * 51; gSprites[spriteId2].data[0] = i * 51;
gSprites[spriteId2].data[1] = -256; gSprites[spriteId2].data[1] = -256;
gSprites[spriteId2].invisible = TRUE; gSprites[spriteId2].invisible = TRUE;
@@ -263,7 +263,7 @@ static u8 sub_8078178(u8 battlerId, bool8 b)
gTasks[taskId].data[1] = RGB_BLUE; gTasks[taskId].data[1] = RGB_BLUE;
for (i = 0; i < 10; i++) for (i = 0; i < 10; i++)
{ {
spriteId2 = CreateSprite(&sUnknown_83BF574, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y - 32, 0); spriteId2 = CreateSprite(&sUnknown_83BF574, gSprites[battlerSpriteId].x, gSprites[battlerSpriteId].y - 32, 0);
gSprites[spriteId2].data[0] = i * 51; gSprites[spriteId2].data[0] = i * 51;
gSprites[spriteId2].data[1] = 256; gSprites[spriteId2].data[1] = 256;
gSprites[spriteId2].invisible = TRUE; gSprites[spriteId2].invisible = TRUE;
@@ -324,15 +324,15 @@ static void sub_807834C(struct Sprite *sprite)
static void sub_8078380(struct Sprite *sprite) static void sub_8078380(struct Sprite *sprite)
{ {
sprite->pos2.x = Cos(sprite->data[0], 32); sprite->x2 = Cos(sprite->data[0], 32);
sprite->pos2.y = Sin(sprite->data[0], 8); sprite->y2 = Sin(sprite->data[0], 8);
if (sprite->data[0] < 128) if (sprite->data[0] < 128)
sprite->subpriority = 29; sprite->subpriority = 29;
else else
sprite->subpriority = 31; sprite->subpriority = 31;
sprite->data[0] = (sprite->data[0] + 8) & 0xFF; sprite->data[0] = (sprite->data[0] + 8) & 0xFF;
sprite->data[5] += sprite->data[1]; sprite->data[5] += sprite->data[1];
sprite->pos2.y += sprite->data[5] >> 8; sprite->y2 += sprite->data[5] >> 8;
sprite->data[2]++; sprite->data[2]++;
if (sprite->data[2] == 52) if (sprite->data[2] == 52)
{ {
+2 -2
View File
@@ -337,8 +337,8 @@ void AnimTask_SetUpCurseBackground(u8 taskId)
sub_80730C0(animBgData.paletteId, animBgData.bgTilemap, 0, 0); sub_80730C0(animBgData.paletteId, animBgData.bgTilemap, 0, 0);
AnimLoadCompressedBgGfx(animBgData.bgId, gFile_graphics_battle_anims_masks_curse_sheet, animBgData.tilesOffset); AnimLoadCompressedBgGfx(animBgData.bgId, gFile_graphics_battle_anims_masks_curse_sheet, animBgData.tilesOffset);
LoadPalette(sRgbWhite, animBgData.paletteId * 16 + 1, 2); LoadPalette(sRgbWhite, animBgData.paletteId * 16 + 1, 2);
gBattle_BG1_X = -gSprites[spriteId].pos1.x + 32; gBattle_BG1_X = -gSprites[spriteId].x + 32;
gBattle_BG1_Y = -gSprites[spriteId].pos1.y + 32; gBattle_BG1_Y = -gSprites[spriteId].y + 32;
gTasks[taskId].data[0] = newSpriteId; gTasks[taskId].data[0] = newSpriteId;
gTasks[taskId].data[6] = var0; gTasks[taskId].data[6] = var0;
gTasks[taskId].func = sub_80BAF38; gTasks[taskId].func = sub_80BAF38;
+2 -2
View File
@@ -940,8 +940,8 @@ void InitLinkBattleVsScreen(u8 taskId)
gSprites[gBattleStruct->linkBattleVsSpriteId_S].oam.tileNum += 0x40; gSprites[gBattleStruct->linkBattleVsSpriteId_S].oam.tileNum += 0x40;
gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[0] = 0; gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[0] = 0;
gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[0] = 1; gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[0] = 1;
gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_V].pos1.x; gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_V].x;
gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_S].pos1.x; gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[1] = gSprites[gBattleStruct->linkBattleVsSpriteId_S].x;
gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[2] = 0; gSprites[gBattleStruct->linkBattleVsSpriteId_V].data[2] = 0;
gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[2] = 0; gSprites[gBattleStruct->linkBattleVsSpriteId_S].data[2] = 0;
} }
+5 -5
View File
@@ -278,7 +278,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
static void TryShinyAnimAfterMonAnim(void) static void TryShinyAnimAfterMonAnim(void)
{ {
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded == TRUE if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded == TRUE
&& gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
{ {
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim) if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim)
{ {
@@ -1024,7 +1024,7 @@ static void LinkOpponentHandleLoadMonSprite(void)
GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteCoord(gActiveBattler, 2),
GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]);
@@ -1161,7 +1161,7 @@ static void LinkOpponentHandleDrawTrainerPic(void)
xPos, xPos,
(8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum;
@@ -1181,7 +1181,7 @@ static void LinkOpponentHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; 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; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@@ -1530,7 +1530,7 @@ static void LinkOpponentHandleIntroTrainerBallThrow(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; 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; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite);
taskId = CreateTask(Task_StartSendOutAnim, 5); taskId = CreateTask(Task_StartSendOutAnim, 5);
+6 -6
View File
@@ -243,7 +243,7 @@ static void Intro_ShowHealthbox(void)
static void WaitForMonAnimAfterLoad(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(); LinkPartnerBufferExecCompleted();
} }
@@ -265,7 +265,7 @@ static void CompleteOnHealthbarDone(void)
static void FreeMonSpriteAfterFaintAnim(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)
{ {
FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum); FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum);
DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]); DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
@@ -981,7 +981,7 @@ static void LinkPartnerHandleLoadMonSprite(void)
GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteCoord(gActiveBattler, 2),
GetBattlerSpriteDefault_Y(gActiveBattler), GetBattlerSpriteDefault_Y(gActiveBattler),
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], gBattleMonForms[gActiveBattler]);
@@ -1075,7 +1075,7 @@ static void LinkPartnerHandleDrawTrainerPic(void)
SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler)); SetMultiuseSpriteTemplateToTrainerBack(trainerPicId, GetBattlerPosition(gActiveBattler));
gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, GetBattlerSpriteSubpriority(gActiveBattler)); gBattlerSpriteIds[gActiveBattler] = CreateSprite(&gMultiuseSpriteTemplate, xPos, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy;
@@ -1091,7 +1091,7 @@ static void LinkPartnerHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; 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]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@@ -1445,7 +1445,7 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; 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]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
+4 -4
View File
@@ -615,7 +615,7 @@ static void DestroyExpTaskAndCompleteOnInactiveTextPrinter(u8 taskId)
static void FreeMonSpriteAfterFaintAnim(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)
{ {
FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum); FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum);
DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]); DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
@@ -1592,7 +1592,7 @@ static void OakOldManHandleDrawTrainerPic(void)
30); 30);
} }
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy;
@@ -1619,7 +1619,7 @@ static void OakOldManHandleTrainerSlide(void)
30); 30);
} }
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -96;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy2; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy2;
@@ -2081,7 +2081,7 @@ static void OakOldManHandleIntroTrainerBallThrow(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; 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]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
+7 -7
View File
@@ -272,7 +272,7 @@ static void Intro_TryShinyAnimShowHealthbox(void)
static void TryShinyAnimAfterMonAnim(void) static void TryShinyAnimAfterMonAnim(void)
{ {
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded == TRUE if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded == TRUE
&& gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
{ {
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim) if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim)
{ {
@@ -1038,7 +1038,7 @@ static void OpponentHandleLoadMonSprite(void)
GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteCoord(gActiveBattler, 2),
y, y,
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = species; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = species;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
@@ -1137,7 +1137,7 @@ static void OpponentHandleDrawTrainerPic(void)
176, 176,
(8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum;
@@ -1167,8 +1167,8 @@ static void OpponentHandleTrainerSlide(void)
176, 176,
(8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40, (8 - gTrainerFrontPicCoords[trainerPicId].size) * 4 + 40,
30); 30);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 96; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 96;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.x += 32; gSprites[gBattlerSpriteIds[gActiveBattler]].x += 32;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum;
@@ -1183,7 +1183,7 @@ static void OpponentHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; 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; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide; gBattlerControllerFuncs[gActiveBattler] = FreeTrainerSpriteAfterSlide;
@@ -1630,7 +1630,7 @@ static void OpponentHandleIntroTrainerBallThrow(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 35;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = 280; 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; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreeOpponentSprite);
taskId = CreateTask(Task_StartSendOutAnim, 5); taskId = CreateTask(Task_StartSendOutAnim, 5);
+12 -12
View File
@@ -211,7 +211,7 @@ static void PlayerBufferRunCommand(void)
static void CompleteOnBattlerSpritePosX_0(void) static void CompleteOnBattlerSpritePosX_0(void)
{ {
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) if (gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
PlayerBufferExecCompleted(); PlayerBufferExecCompleted();
} }
@@ -1194,15 +1194,15 @@ static void Task_CreateLevelUpVerticalStripes(u8 taskId)
{ {
data[14] = gBattle_BG1_X; data[14] = gBattle_BG1_X;
data[13] = gBattle_BG1_Y; data[13] = gBattle_BG1_Y;
gBattle_BG1_X = -(sprite->pos1.x + sprite->pos2.x) + 32; gBattle_BG1_X = -(sprite->x + sprite->x2) + 32;
gBattle_BG1_Y = -(sprite->pos1.y + sprite->pos2.y) + 32; gBattle_BG1_Y = -(sprite->y + sprite->y2) + 32;
} }
else else
{ {
data[14] = gBattle_BG2_X; data[14] = gBattle_BG2_X;
data[13] = gBattle_BG2_Y; data[13] = gBattle_BG2_Y;
gBattle_BG2_X = -(sprite->pos1.x + sprite->pos2.x) + 32; gBattle_BG2_X = -(sprite->x + sprite->x2) + 32;
gBattle_BG2_Y = -(sprite->pos1.y + sprite->pos2.y) + 32; gBattle_BG2_Y = -(sprite->y + sprite->y2) + 32;
} }
++data[15]; ++data[15];
} }
@@ -1219,8 +1219,8 @@ static void Task_CreateLevelUpVerticalStripes(u8 taskId)
case 2: case 2:
PlaySE(SE_RS_SHOP); PlaySE(SE_RS_SHOP);
if (IsMonGettingExpSentOut()) if (IsMonGettingExpSentOut())
CreateLevelUpVerticalSpritesTask(sprite->pos1.x + sprite->pos2.x, CreateLevelUpVerticalSpritesTask(sprite->x + sprite->x2,
sprite->pos1.y + sprite->pos2.y, sprite->y + sprite->y2,
10000, 10000,
10000, 10000,
1, 1,
@@ -1260,7 +1260,7 @@ static void Task_CreateLevelUpVerticalStripes(u8 taskId)
static void FreeMonSpriteAfterFaintAnim(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)
{ {
FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum); FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum);
DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]); DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
@@ -2190,7 +2190,7 @@ static void PlayerHandleDrawTrainerPic(void)
(8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80,
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy;
@@ -2220,7 +2220,7 @@ static void PlayerHandleTrainerSlide(void)
(8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80, (8 - gTrainerBackPicCoords[trainerPicId].size) * 4 + 80,
30); 30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -96;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy2; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy2;
@@ -2231,7 +2231,7 @@ static void PlayerHandleTrainerSlideBack(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; 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]].callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCallbackDummy);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1);
@@ -2706,7 +2706,7 @@ static void PlayerHandleIntroTrainerBallThrow(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; 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 = PlayerThrowBall_StartAnimLinearTranslation; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = PlayerThrowBall_StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
+7 -7
View File
@@ -231,7 +231,7 @@ static void CompleteOnBattlerSpriteCallbackDummy(void)
static void CompleteOnBattlerSpritePosX_0(void) static void CompleteOnBattlerSpritePosX_0(void)
{ {
if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded == TRUE if (gSprites[gBattlerSpriteIds[gActiveBattler]].animEnded == TRUE
&& gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x == 0) && gSprites[gBattlerSpriteIds[gActiveBattler]].x2 == 0)
{ {
if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim) if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBattler].triedShinyMonAnim)
{ {
@@ -598,7 +598,7 @@ static void FreeMonSpriteAfterFaintAnim(void)
{ {
if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER)
{ {
if (gSprites[gBattlerSpriteIds[gActiveBattler]].pos1.y + gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.y > DISPLAY_HEIGHT) if (gSprites[gBattlerSpriteIds[gActiveBattler]].y + gSprites[gBattlerSpriteIds[gActiveBattler]].y2 > DISPLAY_HEIGHT)
{ {
FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum); FreeOamMatrix(gSprites[gBattlerSpriteIds[gActiveBattler]].oam.matrixNum);
DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]); DestroySprite(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
@@ -1310,7 +1310,7 @@ static void PokedudeHandleLoadMonSprite(void)
GetBattlerSpriteCoord(gActiveBattler, 2), GetBattlerSpriteCoord(gActiveBattler, 2),
y, y,
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = species; gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = species;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
@@ -1357,7 +1357,7 @@ static void PokedudeHandleDrawTrainerPic(void)
80, 80,
(8 - gTrainerBackPicCoords[BACK_PIC_POKEDUDE].size) * 4 + 80, (8 - gTrainerBackPicCoords[BACK_PIC_POKEDUDE].size) * 4 + 80,
30); 30);
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
@@ -1371,7 +1371,7 @@ static void PokedudeHandleDrawTrainerPic(void)
176, 176,
(8 - gTrainerFrontPicCoords[tranerPicid].size) * 4 + 40, (8 - gTrainerFrontPicCoords[tranerPicid].size) * 4 + 40,
GetBattlerSpriteSubpriority(gActiveBattler)); GetBattlerSpriteSubpriority(gActiveBattler));
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[tranerPicid].tag); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[tranerPicid].tag);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gSprites[gBattlerSpriteIds[gActiveBattler]].oam.tileNum;
@@ -1391,7 +1391,7 @@ static void PokedudeHandleTrainerSlide(void)
(8 - gTrainerBackPicCoords[BACK_PIC_POKEDUDE].size) * 4 + 80, (8 - gTrainerBackPicCoords[BACK_PIC_POKEDUDE].size) * 4 + 80,
30); 30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = -96; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = -96;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy2; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy2;
@@ -1853,7 +1853,7 @@ static void PokedudeHandleIntroTrainerBallThrow(void)
SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]); SetSpritePrimaryCoordsFromSecondaryCoords(&gSprites[gBattlerSpriteIds[gActiveBattler]]);
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = 50;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[2] = -40; 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]].callback = StartAnimLinearTranslation;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].data[5] = gActiveBattler;
StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite);
+1 -1
View File
@@ -346,7 +346,7 @@ static void SafariHandleDrawTrainerPic(void)
(8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].size) * 4 + 80, (8 - gTrainerBackPicCoords[gSaveBlock2Ptr->playerGender].size) * 4 + 80,
30); 30);
gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler; gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = gActiveBattler;
gSprites[gBattlerSpriteIds[gActiveBattler]].pos2.x = 240; gSprites[gBattlerSpriteIds[gActiveBattler]].x2 = 240;
gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2; gSprites[gBattlerSpriteIds[gActiveBattler]].data[0] = -2;
gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn; gSprites[gBattlerSpriteIds[gActiveBattler]].callback = SpriteCB_TrainerSlideIn;
gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy; gBattlerControllerFuncs[gActiveBattler] = CompleteOnBattlerSpriteCallbackDummy;
+9 -9
View File
@@ -162,8 +162,8 @@ void SpriteCB_TrainerSlideIn(struct Sprite *sprite)
{ {
if (!(gIntroSlideFlags & 1)) if (!(gIntroSlideFlags & 1))
{ {
sprite->pos2.x += sprite->data[0]; sprite->x2 += sprite->data[0];
if (sprite->pos2.x == 0) if (sprite->x2 == 0)
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
} }
@@ -682,7 +682,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 notTransform)
LZDecompressWram(lzPaletteData, buffer); LZDecompressWram(lzPaletteData, buffer);
LoadPalette(buffer, paletteOffset, 32); LoadPalette(buffer, paletteOffset, 32);
Free(buffer); Free(buffer);
gSprites[gBattlerSpriteIds[battlerAtk]].pos1.y = GetBattlerSpriteDefault_Y(battlerAtk); gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[battlerAtk]); StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[battlerAtk]);
SetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerAtk]], MON_DATA_NICKNAME, gSpeciesNames[targetSpecies]); SetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerAtk]], MON_DATA_NICKNAME, gSpeciesNames[targetSpecies]);
UpdateNickInHealthbox(gHealthboxSpriteIds[battlerAtk], &gEnemyParty[gBattlerPartyIndexes[battlerAtk]]); UpdateNickInHealthbox(gHealthboxSpriteIds[battlerAtk], &gEnemyParty[gBattlerPartyIndexes[battlerAtk]]);
@@ -699,7 +699,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 notTransform)
BlendPalette(paletteOffset, 16, 6, RGB_WHITE); BlendPalette(paletteOffset, 16, 6, RGB_WHITE);
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32); CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
} }
gSprites[gBattlerSpriteIds[battlerAtk]].pos1.y = GetBattlerSpriteDefault_Y(battlerAtk); gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk);
} }
else else
{ {
@@ -749,7 +749,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 notTransform)
CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32); CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32);
gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies = targetSpecies; gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies = targetSpecies;
gBattleMonForms[battlerAtk] = gBattleMonForms[battlerDef]; 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]); StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[battlerAtk]);
} }
} }
@@ -792,9 +792,9 @@ void LoadBattleMonGfxAndAnimate(u8 battlerId, bool8 loadMonSprite, u8 spriteId)
BattleLoadSubstituteOrMonSpriteGfx(battlerId, loadMonSprite); BattleLoadSubstituteOrMonSpriteGfx(battlerId, loadMonSprite);
StartSpriteAnim(&gSprites[spriteId], gBattleMonForms[battlerId]); StartSpriteAnim(&gSprites[spriteId], gBattleMonForms[battlerId]);
if (!loadMonSprite) if (!loadMonSprite)
gSprites[spriteId].pos1.y = GetSubstituteSpriteDefault_Y(battlerId); gSprites[spriteId].y = GetSubstituteSpriteDefault_Y(battlerId);
else else
gSprites[spriteId].pos1.y = GetBattlerSpriteDefault_Y(battlerId); gSprites[spriteId].y = GetBattlerSpriteDefault_Y(battlerId);
} }
void TrySetBehindSubstituteSpriteBit(u8 battlerId, u16 move) void TrySetBehindSubstituteSpriteBit(u8 battlerId, u16 move)
@@ -923,8 +923,8 @@ static void SpriteCB_EnemyShadow(struct Sprite *shadowSprite)
invisible = TRUE; invisible = TRUE;
if (gBattleSpritesDataPtr->battlerData[battlerId].behindSubstitute) if (gBattleSpritesDataPtr->battlerData[battlerId].behindSubstitute)
invisible = TRUE; invisible = TRUE;
shadowSprite->pos1.x = battlerSprite->pos1.x; shadowSprite->x = battlerSprite->x;
shadowSprite->pos2.x = battlerSprite->pos2.x; shadowSprite->x2 = battlerSprite->x2;
shadowSprite->invisible = invisible; shadowSprite->invisible = invisible;
} }
+40 -40
View File
@@ -610,32 +610,32 @@ static void SpriteCB_HealthBar(struct Sprite *sprite)
switch (sprite->data[6]) switch (sprite->data[6])
{ {
case 0: case 0:
sprite->pos1.x = gSprites[r5].pos1.x + 16; sprite->x = gSprites[r5].x + 16;
sprite->pos1.y = gSprites[r5].pos1.y; sprite->y = gSprites[r5].y;
break; break;
case 1: case 1:
sprite->pos1.x = gSprites[r5].pos1.x + 16; sprite->x = gSprites[r5].x + 16;
sprite->pos1.y = gSprites[r5].pos1.y; sprite->y = gSprites[r5].y;
break; break;
default: default:
case 2: case 2:
sprite->pos1.x = gSprites[r5].pos1.x + 8; sprite->x = gSprites[r5].x + 8;
sprite->pos1.y = gSprites[r5].pos1.y; sprite->y = gSprites[r5].y;
break; break;
} }
sprite->pos2.x = gSprites[r5].pos2.x; sprite->x2 = gSprites[r5].x2;
sprite->pos2.y = gSprites[r5].pos2.y; sprite->y2 = gSprites[r5].y2;
} }
static void SpriteCB_HealthBoxOther(struct Sprite *sprite) static void SpriteCB_HealthBoxOther(struct Sprite *sprite)
{ {
u8 healthboxMainSpriteId = sprite->hOther_HealthBoxSpriteId; u8 healthboxMainSpriteId = sprite->hOther_HealthBoxSpriteId;
sprite->pos1.x = gSprites[healthboxMainSpriteId].pos1.x + 64; sprite->x = gSprites[healthboxMainSpriteId].x + 64;
sprite->pos1.y = gSprites[healthboxMainSpriteId].pos1.y; sprite->y = gSprites[healthboxMainSpriteId].y;
sprite->pos2.x = gSprites[healthboxMainSpriteId].pos2.x; sprite->x2 = gSprites[healthboxMainSpriteId].x2;
sprite->pos2.y = gSprites[healthboxMainSpriteId].pos2.y; sprite->y2 = gSprites[healthboxMainSpriteId].y2;
} }
void SetBattleBarStruct(u8 battlerId, u8 healthboxSpriteId, s32 maxVal, s32 oldVal, s32 receivedValue) void SetBattleBarStruct(u8 battlerId, u8 healthboxSpriteId, s32 maxVal, s32 oldVal, s32 receivedValue)
@@ -663,8 +663,8 @@ void SetHealthboxSpriteVisible(u8 healthboxSpriteId)
static void UpdateSpritePos(u8 spriteId, s16 x, s16 y) static void UpdateSpritePos(u8 spriteId, s16 x, s16 y)
{ {
gSprites[spriteId].pos1.x = x; gSprites[spriteId].x = x;
gSprites[spriteId].pos1.y = y; gSprites[spriteId].y = y;
} }
void DestoryHealthboxSprite(u8 healthboxSpriteId) void DestoryHealthboxSprite(u8 healthboxSpriteId)
@@ -1087,17 +1087,17 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
summaryBarSpriteId = CreateSprite(&sStatusSummaryBarSpriteTemplates[isOpponent], bar_X, bar_Y, 10); summaryBarSpriteId = CreateSprite(&sStatusSummaryBarSpriteTemplates[isOpponent], bar_X, bar_Y, 10);
SetSubspriteTables(&gSprites[summaryBarSpriteId], sStatusSummaryBar_SubspriteTable); SetSubspriteTables(&gSprites[summaryBarSpriteId], sStatusSummaryBar_SubspriteTable);
gSprites[summaryBarSpriteId].pos2.x = bar_pos2_X; gSprites[summaryBarSpriteId].x2 = bar_pos2_X;
gSprites[summaryBarSpriteId].data[0] = bar_data0; gSprites[summaryBarSpriteId].data[0] = bar_data0;
if (isOpponent) if (isOpponent)
{ {
gSprites[summaryBarSpriteId].pos1.x -= 96; gSprites[summaryBarSpriteId].x -= 96;
gSprites[summaryBarSpriteId].oam.matrixNum = ST_OAM_HFLIP; gSprites[summaryBarSpriteId].oam.matrixNum = ST_OAM_HFLIP;
} }
else else
{ {
gSprites[summaryBarSpriteId].pos1.x += 96; gSprites[summaryBarSpriteId].x += 96;
} }
for (i = 0; i < PARTY_SIZE; i++) for (i = 0; i < PARTY_SIZE; i++)
@@ -1109,23 +1109,23 @@ u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo,
if (!isOpponent) if (!isOpponent)
{ {
gSprites[ballIconSpritesIds[i]].pos2.x = 0; gSprites[ballIconSpritesIds[i]].x2 = 0;
gSprites[ballIconSpritesIds[i]].pos2.y = 0; gSprites[ballIconSpritesIds[i]].y2 = 0;
} }
gSprites[ballIconSpritesIds[i]].data[0] = summaryBarSpriteId; gSprites[ballIconSpritesIds[i]].data[0] = summaryBarSpriteId;
if (!isOpponent) 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]].data[1] = i * 7 + 10;
gSprites[ballIconSpritesIds[i]].pos2.x = 120; gSprites[ballIconSpritesIds[i]].x2 = 120;
} }
else 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]].data[1] = (6 - i) * 7 + 10;
gSprites[ballIconSpritesIds[i]].pos2.x = -120; gSprites[ballIconSpritesIds[i]].x2 = -120;
} }
gSprites[ballIconSpritesIds[i]].data[2] = isOpponent; gSprites[ballIconSpritesIds[i]].data[2] = isOpponent;
@@ -1360,17 +1360,17 @@ static void sub_804948C(u8 taskId)
static void SpriteCB_StatusSummaryBar(struct Sprite *sprite) static void SpriteCB_StatusSummaryBar(struct Sprite *sprite)
{ {
if (sprite->pos2.x != 0) if (sprite->x2 != 0)
sprite->pos2.x += sprite->data[0]; sprite->x2 += sprite->data[0];
} }
static void sub_8049568(struct Sprite *sprite) static void sub_8049568(struct Sprite *sprite)
{ {
sprite->data[1] += 32; sprite->data[1] += 32;
if (sprite->data[0] > 0) if (sprite->data[0] > 0)
sprite->pos2.x += sprite->data[1] >> 4; sprite->x2 += sprite->data[1] >> 4;
else else
sprite->pos2.x -= sprite->data[1] >> 4; sprite->x2 -= sprite->data[1] >> 4;
sprite->data[1] &= 0xF; sprite->data[1] &= 0xF;
} }
@@ -1393,18 +1393,18 @@ static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite)
if (var1 != 0) if (var1 != 0)
{ {
sprite->pos2.x += var2 >> 4; sprite->x2 += var2 >> 4;
if (sprite->pos2.x > 0) if (sprite->x2 > 0)
sprite->pos2.x = 0; sprite->x2 = 0;
} }
else else
{ {
sprite->pos2.x -= var2 >> 4; sprite->x2 -= var2 >> 4;
if (sprite->pos2.x < 0) if (sprite->x2 < 0)
sprite->pos2.x = 0; sprite->x2 = 0;
} }
if (sprite->pos2.x == 0) if (sprite->x2 == 0)
{ {
pan = SOUND_PAN_TARGET; pan = SOUND_PAN_TARGET;
if (var1 != 0) if (var1 != 0)
@@ -1434,11 +1434,11 @@ static void sub_8049630(struct Sprite *sprite)
var2 += 56; var2 += 56;
sprite->data[3] = var2 & 0xFFF0; sprite->data[3] = var2 & 0xFFF0;
if (var1 != 0) if (var1 != 0)
sprite->pos2.x += var2 >> 4; sprite->x2 += var2 >> 4;
else else
sprite->pos2.x -= var2 >> 4; sprite->x2 -= var2 >> 4;
if (sprite->pos2.x + sprite->pos1.x > 248 if (sprite->x2 + sprite->x > 248
|| sprite->pos2.x + sprite->pos1.x < -8) || sprite->x2 + sprite->x < -8)
{ {
sprite->invisible = TRUE; sprite->invisible = TRUE;
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
@@ -1449,8 +1449,8 @@ static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite *sprite)
{ {
u8 barSpriteId = sprite->data[0]; u8 barSpriteId = sprite->data[0];
sprite->pos2.x = gSprites[barSpriteId].pos2.x; sprite->x2 = gSprites[barSpriteId].x2;
sprite->pos2.y = gSprites[barSpriteId].pos2.y; sprite->y2 = gSprites[barSpriteId].y2;
} }
static const u8 gUnknown_8260556[] = _("{HIGHLIGHT 02}"); static const u8 gUnknown_8260556[] = _("{HIGHLIGHT 02}");
+14 -14
View File
@@ -1642,9 +1642,9 @@ void SpriteCB_VsLetterDummy(struct Sprite *sprite)
static void SpriteCB_VsLetter(struct Sprite *sprite) static void SpriteCB_VsLetter(struct Sprite *sprite)
{ {
if (sprite->data[0] != 0) 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 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; sprite->data[2] += 0x180;
if (sprite->affineAnimEnded) if (sprite->affineAnimEnded)
{ {
@@ -1855,8 +1855,8 @@ static void SpriteCB_MoveWildMonToRight(struct Sprite *sprite)
{ {
if ((gIntroSlideFlags & 1) == 0) if ((gIntroSlideFlags & 1) == 0)
{ {
sprite->pos2.x += 2; sprite->x2 += 2;
if (sprite->pos2.x == 0) if (sprite->x2 == 0)
{ {
sprite->callback = SpriteCB_WildMonShowHealthbox; sprite->callback = SpriteCB_WildMonShowHealthbox;
PlayCry1(sprite->data[2], 25); PlayCry1(sprite->data[2], 25);
@@ -1953,7 +1953,7 @@ static void SpriteCB_AnimFaintOpponent(struct Sprite *sprite)
if (--sprite->data[4] == 0) if (--sprite->data[4] == 0)
{ {
sprite->data[4] = 2; sprite->data[4] = 2;
sprite->pos2.y += 8; // Move the sprite down. sprite->y2 += 8; // Move the sprite down.
if (--sprite->data[3] < 0) if (--sprite->data[3] < 0)
{ {
FreeSpriteOamMatrix(sprite); FreeSpriteOamMatrix(sprite);
@@ -2003,8 +2003,8 @@ static void oac_poke_ally_(struct Sprite *sprite)
{ {
if (!(gIntroSlideFlags & 1)) if (!(gIntroSlideFlags & 1))
{ {
sprite->pos2.x -= 2; sprite->x2 -= 2;
if (sprite->pos2.x == 0) if (sprite->x2 == 0)
{ {
sprite->callback = SpriteCallbackDummy3; sprite->callback = SpriteCallbackDummy3;
sprite->data[1] = 0; sprite->data[1] = 0;
@@ -2025,8 +2025,8 @@ void SpriteCB_FaintSlideAnim(struct Sprite *sprite)
{ {
if (!(gIntroSlideFlags & 1)) if (!(gIntroSlideFlags & 1))
{ {
sprite->pos2.x += sprite->data[1]; sprite->x2 += sprite->data[1];
sprite->pos2.y += sprite->data[2]; sprite->y2 += sprite->data[2];
} }
} }
@@ -2072,8 +2072,8 @@ void DoBounceEffect(u8 battler, u8 which, s8 delta, s8 amplitude)
gSprites[invisibleSpriteId].sAmplitude = amplitude; gSprites[invisibleSpriteId].sAmplitude = amplitude;
gSprites[invisibleSpriteId].sBouncerSpriteId = bouncerSpriteId; gSprites[invisibleSpriteId].sBouncerSpriteId = bouncerSpriteId;
gSprites[invisibleSpriteId].sWhich = which; gSprites[invisibleSpriteId].sWhich = which;
gSprites[bouncerSpriteId].pos2.x = 0; gSprites[bouncerSpriteId].x2 = 0;
gSprites[bouncerSpriteId].pos2.y = 0; gSprites[bouncerSpriteId].y2 = 0;
} }
void EndBounceEffect(u8 battler, u8 which) void EndBounceEffect(u8 battler, u8 which)
@@ -2098,8 +2098,8 @@ void EndBounceEffect(u8 battler, u8 which)
DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].battlerBounceSpriteId]); DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].battlerBounceSpriteId]);
gBattleSpritesDataPtr->healthBoxesData[battler].battlerIsBouncing = 0; gBattleSpritesDataPtr->healthBoxesData[battler].battlerIsBouncing = 0;
} }
gSprites[bouncerSpriteId].pos2.x = 0; gSprites[bouncerSpriteId].x2 = 0;
gSprites[bouncerSpriteId].pos2.y = 0; gSprites[bouncerSpriteId].y2 = 0;
} }
static void SpriteCB_BounceEffect(struct Sprite *sprite) static void SpriteCB_BounceEffect(struct Sprite *sprite)
@@ -2111,7 +2111,7 @@ static void SpriteCB_BounceEffect(struct Sprite *sprite)
index = sprite->sSinIndex; index = sprite->sSinIndex;
else else
index = sprite->sSinIndex; 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; sprite->sSinIndex = (sprite->sSinIndex + sprite->sDelta) & 0xFF;
} }
+2 -2
View File
@@ -5709,8 +5709,8 @@ static void PutMonIconOnLvlUpBox(void)
static void SpriteCB_MonIconOnLvlUpBox(struct Sprite* sprite) 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; sprite->sDestroy = TRUE;
} }
+20 -20
View File
@@ -1102,10 +1102,10 @@ static void SpriteCB_BT_Phase2SlidingPokeballs(struct Sprite *sprite)
} }
else else
{ {
if ((u16)sprite->pos1.x <= 240) if ((u16)sprite->x <= 240)
{ {
s16 posX = sprite->pos1.x >> 3; s16 posX = sprite->x >> 3;
s16 posY = sprite->pos1.y >> 3; s16 posY = sprite->y >> 3;
if (posX != sprite->data[2]) if (posX != sprite->data[2])
{ {
@@ -1119,8 +1119,8 @@ static void SpriteCB_BT_Phase2SlidingPokeballs(struct Sprite *sprite)
SOME_VRAM_STORE(ptr, posY + 1, posX, 0xF001); SOME_VRAM_STORE(ptr, posY + 1, posX, 0xF001);
} }
} }
sprite->pos1.x += arr0[sprite->data[0]]; sprite->x += arr0[sprite->data[0]];
if (sprite->pos1.x < -15 || sprite->pos1.x > 255) if (sprite->x < -15 || sprite->x > 255)
FieldEffectStop(sprite, FLDEFF_POKEBALL); FieldEffectStop(sprite, FLDEFF_POKEBALL);
} }
} }
@@ -2093,10 +2093,10 @@ static bool8 BT_Phase2MugshotsSpriteFuncs_InitParams(struct Sprite *sprite)
static bool8 BT_Phase2MugshotsSpriteFuncs_SlideSpriteIn(struct Sprite *sprite) static bool8 BT_Phase2MugshotsSpriteFuncs_SlideSpriteIn(struct Sprite *sprite)
{ {
sprite->pos1.x += sprite->spSpeed; sprite->x += sprite->spSpeed;
if (sprite->spOpponentOrPlayer && sprite->pos1.x < 133) if (sprite->spOpponentOrPlayer && sprite->x < 133)
++sprite->spState; ++sprite->spState;
else if (!sprite->spOpponentOrPlayer && sprite->pos1.x > 103) else if (!sprite->spOpponentOrPlayer && sprite->x > 103)
++sprite->spState; ++sprite->spState;
return FALSE; return FALSE;
} }
@@ -2104,7 +2104,7 @@ static bool8 BT_Phase2MugshotsSpriteFuncs_SlideSpriteIn(struct Sprite *sprite)
static bool8 BT_Phase2MugshotsSpriteFuncs_DecelerateSprite(struct Sprite *sprite) static bool8 BT_Phase2MugshotsSpriteFuncs_DecelerateSprite(struct Sprite *sprite)
{ {
sprite->spSpeed += sprite->spAbsAcc; sprite->spSpeed += sprite->spAbsAcc;
sprite->pos1.x += sprite->spSpeed; sprite->x += sprite->spSpeed;
if (sprite->spSpeed == 0) if (sprite->spSpeed == 0)
{ {
++sprite->spState; ++sprite->spState;
@@ -2118,8 +2118,8 @@ static bool8 BT_Phase2MugshotsSpriteFuncs_DecelerateSprite(struct Sprite *sprite
static bool8 BT_Phase2MugshotsSpriteFuncs_DecelerateSprite2(struct Sprite *sprite) static bool8 BT_Phase2MugshotsSpriteFuncs_DecelerateSprite2(struct Sprite *sprite)
{ {
sprite->spSpeed += sprite->spAbsAcc; sprite->spSpeed += sprite->spAbsAcc;
sprite->pos1.x += sprite->spSpeed; sprite->x += sprite->spSpeed;
if (sprite->pos1.x < -31 || sprite->pos1.x > 271) if (sprite->x < -31 || sprite->x > 271)
++sprite->spState; ++sprite->spState;
return FALSE; return FALSE;
} }
@@ -2296,8 +2296,8 @@ static bool8 BT_Phase2WhiteFadeInStripes_SetupSprites(struct Task *task)
for (i = 0, posY = 0; i < 6; ++i, posY += 0x1B) for (i = 0, posY = 0; i < 6; ++i, posY += 0x1B)
{ {
sprite = &gSprites[CreateInvisibleSprite(SpriteCB_BT_Phase2WhiteFadeInStripes)]; sprite = &gSprites[CreateInvisibleSprite(SpriteCB_BT_Phase2WhiteFadeInStripes)];
sprite->pos1.x = 0xF0; sprite->x = 0xF0;
sprite->pos1.y = posY; sprite->y = posY;
sprite->spDelay = buffer[i]; sprite->spDelay = buffer[i];
} }
++sprite->spLastSprite; ++sprite->spLastSprite;
@@ -2389,21 +2389,21 @@ static void SpriteCB_BT_Phase2WhiteFadeInStripes(struct Sprite *sprite)
else else
{ {
u16 i; u16 i;
u16 *bldY = &gScanlineEffectRegBuffers[0][sprite->pos1.y]; u16 *bldY = &gScanlineEffectRegBuffers[0][sprite->y];
u16 *win0H = &gScanlineEffectRegBuffers[0][sprite->pos1.y + 160]; u16 *win0H = &gScanlineEffectRegBuffers[0][sprite->y + 160];
u32 stripeWidth = sprite->spLastSprite ? 0x19 : 0x1B; u32 stripeWidth = sprite->spLastSprite ? 0x19 : 0x1B;
for (i = 0; i < stripeWidth; ++i) for (i = 0; i < stripeWidth; ++i)
{ {
bldY[i] = sprite->spBldyCounter >> 8; bldY[i] = sprite->spBldyCounter >> 8;
win0H[i] = (u8)(sprite->pos1.x); win0H[i] = (u8)(sprite->x);
} }
if (sprite->pos1.x == 0 && sprite->spBldyCounter == 0x1000) if (sprite->x == 0 && sprite->spBldyCounter == 0x1000)
sprite->spFinished = 1; sprite->spFinished = 1;
sprite->pos1.x -= 24; sprite->x -= 24;
sprite->spBldyCounter += 192; sprite->spBldyCounter += 192;
if (sprite->pos1.x < 0) if (sprite->x < 0)
sprite->pos1.x = 0; sprite->x = 0;
if (sprite->spBldyCounter > 0x1000) if (sprite->spBldyCounter > 0x1000)
sprite->spBldyCounter = 0x1000; sprite->spBldyCounter = 0x1000;
if (sprite->spLastSprite) if (sprite->spLastSprite)
+27 -27
View File
@@ -2700,8 +2700,8 @@ static void CreateBerrySprites(struct BerryCrushGame * game, struct BerryCrushGa
spritesManager->berrySprites[i] = &gSprites[spriteId]; spritesManager->berrySprites[i] = &gSprites[spriteId];
spritesManager->berrySprites[i]->oam.priority = 3; spritesManager->berrySprites[i]->oam.priority = 3;
spritesManager->berrySprites[i]->affineAnimPaused = TRUE; spritesManager->berrySprites[i]->affineAnimPaused = TRUE;
spritesManager->berrySprites[i]->pos1.x = spritesManager->playerCoords[i]->berryXOffset + 120; spritesManager->berrySprites[i]->x = spritesManager->playerCoords[i]->berryXOffset + 120;
spritesManager->berrySprites[i]->pos1.y = -16; spritesManager->berrySprites[i]->y = -16;
data = spritesManager->berrySprites[i]->data; data = spritesManager->berrySprites[i]->data;
speed = Q_8_8(2.0); speed = Q_8_8(2.0);
sYSpeed = speed; sYSpeed = speed;
@@ -2717,7 +2717,7 @@ static void CreateBerrySprites(struct BerryCrushGame * game, struct BerryCrushGa
var2 = speed + Q_8_8(0.125); var2 = speed + Q_8_8(0.125);
var2 = var2 / 2; // go from Q8.8 to Q9.7 var2 = var2 / 2; // go from Q8.8 to Q9.7
var1 = Q_N_S_div(7, Q_N_S(7, 127), var2); var1 = Q_N_S_div(7, Q_N_S(7, 127), var2);
sX = Q_N_S(7, (u16)spritesManager->berrySprites[i]->pos1.x); sX = Q_N_S(7, (u16)spritesManager->berrySprites[i]->x);
sXSpeed = Q_N_S_div(7, distance, var1); sXSpeed = Q_N_S_div(7, distance, var1);
var1 = Q_N_S_mul(7, var1, Q_N_S(7, 0.666666667)); var1 = Q_N_S_mul(7, var1, Q_N_S(7, 0.666666667));
sSinIdx = 0; sSinIdx = 0;
@@ -2733,21 +2733,21 @@ static void SpriteCB_DropBerryIntoCrusher(struct Sprite * sprite)
s16 *data = sprite->data; s16 *data = sprite->data;
sYSpeed += sYAccel; sYSpeed += sYAccel;
sprite->pos2.y += Q_8_8_TO_INT(sYSpeed); sprite->y2 += Q_8_8_TO_INT(sYSpeed);
if (sBitfield & F_MOVE_HORIZ) if (sBitfield & F_MOVE_HORIZ)
{ {
sprite->sX += sXSpeed; sprite->sX += sXSpeed;
sSinIdx += sSinSpeed; sSinIdx += sSinSpeed;
sprite->pos2.x = Sin(Q_N_S_TO_INT(7, sSinIdx), sAmplitude); sprite->x2 = Sin(Q_N_S_TO_INT(7, sSinIdx), sAmplitude);
if ((sBitfield & F_MOVE_HORIZ) && Q_N_S_TO_INT(7, sSinIdx) > 126) if ((sBitfield & F_MOVE_HORIZ) && Q_N_S_TO_INT(7, sSinIdx) > 126)
{ {
sprite->pos2.x = 0; sprite->x2 = 0;
sBitfield &= MASK_TARGET_Y; sBitfield &= MASK_TARGET_Y;
} }
} }
sprite->pos1.x = Q_N_S_TO_INT(7, sX); sprite->x = Q_N_S_TO_INT(7, sX);
if (sprite->pos1.y + sprite->pos2.y >= (sBitfield & MASK_TARGET_Y)) if (sprite->y + sprite->y2 >= (sBitfield & MASK_TARGET_Y))
{ {
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
FreeSpriteOamMatrix(sprite); FreeSpriteOamMatrix(sprite);
@@ -2800,8 +2800,8 @@ static void UpdateInputEffects(struct BerryCrushGame * game, struct BerryCrushGa
gfx->impactSprites[i]->invisible = FALSE; gfx->impactSprites[i]->invisible = FALSE;
gfx->impactSprites[i]->animPaused = FALSE; gfx->impactSprites[i]->animPaused = FALSE;
gfx->impactSprites[i]->pos2.x = sImpactCoords[(flags % (NELEMS(sImpactCoords) + 1)) - 1][0]; gfx->impactSprites[i]->x2 = sImpactCoords[(flags % (NELEMS(sImpactCoords) + 1)) - 1][0];
gfx->impactSprites[i]->pos2.y = sImpactCoords[(flags % (NELEMS(sImpactCoords) + 1)) - 1][1]; gfx->impactSprites[i]->y2 = sImpactCoords[(flags % (NELEMS(sImpactCoords) + 1)) - 1][1];
#undef flags #undef flags
} }
} }
@@ -2820,10 +2820,10 @@ static void UpdateInputEffects(struct BerryCrushGame * game, struct BerryCrushGa
if (gfx->sparkleSprites[i]->invisible) if (gfx->sparkleSprites[i]->invisible)
{ {
gfx->sparkleSprites[i]->callback = SpriteCB_Sparkle_Init; gfx->sparkleSprites[i]->callback = SpriteCB_Sparkle_Init;
gfx->sparkleSprites[i]->pos1.x = sSparkleCoords[i][0] + 120; gfx->sparkleSprites[i]->x = sSparkleCoords[i][0] + 120;
gfx->sparkleSprites[i]->pos1.y = sSparkleCoords[i][1] + 136 - (yModifier * 4); gfx->sparkleSprites[i]->y = sSparkleCoords[i][1] + 136 - (yModifier * 4);
gfx->sparkleSprites[i]->pos2.x = sSparkleCoords[i][0] + (sSparkleCoords[i][0] / (xModifier * 4)); gfx->sparkleSprites[i]->x2 = sSparkleCoords[i][0] + (sSparkleCoords[i][0] / (xModifier * 4));
gfx->sparkleSprites[i]->pos2.y = sSparkleCoords[i][1]; gfx->sparkleSprites[i]->y2 = sSparkleCoords[i][1];
if (linkState->bigSparkle) if (linkState->bigSparkle)
StartSpriteAnim(gfx->sparkleSprites[i], 1); StartSpriteAnim(gfx->sparkleSprites[i], 1);
else else
@@ -3403,8 +3403,8 @@ static void SpriteCB_Sparkle_End(struct Sprite * sprite)
for (; r1 < NELEMS(sprite->data); ++r1) for (; r1 < NELEMS(sprite->data); ++r1)
sprite->data[r1] = 0; sprite->data[r1] = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->invisible = TRUE; sprite->invisible = TRUE;
sprite->animPaused = TRUE; sprite->animPaused = TRUE;
sprite->callback = r5; sprite->callback = r5;
@@ -3430,20 +3430,20 @@ static void SpriteCB_Sparkle(struct Sprite * sprite)
s16 *data = sprite->data; s16 *data = sprite->data;
sYSpeed += sYAccel; sYSpeed += sYAccel;
sprite->pos2.y += Q_8_8_TO_INT(sYSpeed); sprite->y2 += Q_8_8_TO_INT(sYSpeed);
if (sBitfield & F_MOVE_HORIZ) if (sBitfield & F_MOVE_HORIZ)
{ {
sprite->sX += sXSpeed; sprite->sX += sXSpeed;
sSinIdx += sSinSpeed; sSinIdx += sSinSpeed;
sprite->pos2.x = Sin(Q_N_S_TO_INT(7, sSinIdx), sAmplitude); sprite->x2 = Sin(Q_N_S_TO_INT(7, sSinIdx), sAmplitude);
if ((sBitfield & F_MOVE_HORIZ) && Q_N_S_TO_INT(7, sSinIdx) > 126) if ((sBitfield & F_MOVE_HORIZ) && Q_N_S_TO_INT(7, sSinIdx) > 126)
{ {
sprite->pos2.x = 0; sprite->x2 = 0;
sBitfield &= MASK_TARGET_Y; sBitfield &= MASK_TARGET_Y;
} }
} }
sprite->pos1.x = Q_N_S_TO_INT(7, sX); sprite->x = Q_N_S_TO_INT(7, sX);
if (sprite->pos1.y + sprite->pos2.y > (sBitfield & MASK_TARGET_Y)) if (sprite->y + sprite->y2 > (sBitfield & MASK_TARGET_Y))
sprite->callback = SpriteCB_Sparkle_End; sprite->callback = SpriteCB_Sparkle_End;
} }
@@ -3460,17 +3460,17 @@ static void SpriteCB_Sparkle_Init(struct Sprite * sprite)
sYAccel = Q_8_8(0.125); sYAccel = Q_8_8(0.125);
targetY = 168; targetY = 168;
sBitfield = targetY; sBitfield = targetY;
xMult = Q_N_S(7, sprite->pos2.x); xMult = Q_N_S(7, sprite->x2);
var = Q_N_S_div(7, Q_N_S(7, targetY - (u16) sprite->pos1.y), (speed + Q_8_8(0.125)) >> 1); var = Q_N_S_div(7, Q_N_S(7, targetY - (u16) sprite->y), (speed + Q_8_8(0.125)) >> 1);
sprite->sX = Q_N_S(7, (u16)sprite->pos1.x); sprite->sX = Q_N_S(7, (u16)sprite->x);
sXSpeed = Q_N_S_div(7, xMult, var); sXSpeed = Q_N_S_div(7, xMult, var);
speed = Q_N_S_mul(7, var, Q_N_S(7, 0.666666667)); speed = Q_N_S_mul(7, var, Q_N_S(7, 0.666666667));
sSinIdx = zero; sSinIdx = zero;
sSinSpeed = Q_N_S_div(7, Q_N_S(7, 127), speed); sSinSpeed = Q_N_S_div(7, Q_N_S(7, 127), speed);
sAmplitude = sprite->pos2.x / 4; sAmplitude = sprite->x2 / 4;
sBitfield |= F_MOVE_HORIZ; sBitfield |= F_MOVE_HORIZ;
sprite->pos2.y = zero; sprite->y2 = zero;
sprite->pos2.x = zero; sprite->x2 = zero;
sprite->callback = SpriteCB_Sparkle; sprite->callback = SpriteCB_Sparkle;
sprite->animPaused = FALSE; sprite->animPaused = FALSE;
sprite->invisible = FALSE; sprite->invisible = FALSE;
+23 -23
View File
@@ -210,8 +210,8 @@ static void AnimMegahornHorn(struct Sprite *sprite)
gBattleAnimArgs[3] = -gBattleAnimArgs[3]; gBattleAnimArgs[3] = -gBattleAnimArgs[3];
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
} }
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2];
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
@@ -231,8 +231,8 @@ static void AnimLeechLifeNeedle(struct Sprite *sprite)
gBattleAnimArgs[1] = -gBattleAnimArgs[1]; gBattleAnimArgs[1] = -gBattleAnimArgs[1];
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
} }
sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, 2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, 3) + gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
@@ -253,8 +253,8 @@ static void AnimTranslateWebThread(struct Sprite *sprite)
gBattleAnimArgs[2] /= 2; gBattleAnimArgs[2] /= 2;
InitSpritePosToAnimAttacker(sprite, TRUE); InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
if (!gBattleAnimArgs[4]) if (!gBattleAnimArgs[4])
{ {
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
@@ -276,20 +276,20 @@ static void sub_80B41C0(struct Sprite *sprite)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
return; 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; sprite->data[6] = (sprite->data[6] + 13) & 0xFF;
} }
static void AnimStringWrap(struct Sprite *sprite) 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) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else else
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)
sprite->pos1.y += 8; sprite->y += 8;
sprite->callback = sub_80B4274; sprite->callback = sub_80B4274;
} }
@@ -379,7 +379,7 @@ static void AnimTranslateStinger(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, 1); InitSpritePosToAnimAttacker(sprite, 1);
lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2]; lVarX = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2];
lVarY = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; 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; rot += 0xC000;
TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rot); TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rot);
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
@@ -422,10 +422,10 @@ static void AnimMissileArcStep(struct Sprite *sprite)
{ {
s16 tempData[8]; s16 tempData[8];
u16 *data = sprite->data; u16 *data = sprite->data;
u16 x1 = sprite->pos1.x; u16 x1 = sprite->x;
s16 x2 = sprite->pos2.x; s16 x2 = sprite->x2;
u16 y1 = sprite->pos1.y; u16 y1 = sprite->y;
s16 y2 = sprite->pos2.y; s16 y2 = sprite->y2;
s32 i; s32 i;
for (i = 0; i < 8; ++i) for (i = 0; i < 8; ++i)
@@ -434,8 +434,8 @@ static void AnimMissileArcStep(struct Sprite *sprite)
y2 += y1; y2 += y1;
if (!TranslateAnimHorizontalArc(sprite)) if (!TranslateAnimHorizontalArc(sprite))
{ {
u16 rotation = ArcTan2Neg(sprite->pos1.x + sprite->pos2.x - x2, u16 rotation = ArcTan2Neg(sprite->x + sprite->x2 - x2,
sprite->pos1.y + sprite->pos2.y - y2); sprite->y + sprite->y2 - y2);
rotation += 0xC000; rotation += 0xC000;
TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rotation); TrySetSpriteRotScale(sprite, FALSE, 0x100, 0x100, rotation);
@@ -449,13 +449,13 @@ static void AnimTailGlowOrb(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 18; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 18;
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 18; sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 18;
} }
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds; sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
+8 -8
View File
@@ -1275,10 +1275,10 @@ static void Task_MovePlayerAndGroundSprites(u8 taskId)
case 0: case 0:
break; break;
case 1: case 1:
if (gSprites[data->playerSpriteId].pos1.x != 0xD0) if (gSprites[data->playerSpriteId].x != 0xD0)
{ {
gSprites[data->playerSpriteId].pos1.x--; gSprites[data->playerSpriteId].x--;
gSprites[data->groundSpriteId].pos1.x--; gSprites[data->groundSpriteId].x--;
} }
else else
{ {
@@ -1288,10 +1288,10 @@ static void Task_MovePlayerAndGroundSprites(u8 taskId)
case 2: case 2:
if (sCreditsMgr->unk_1D & 1) if (sCreditsMgr->unk_1D & 1)
{ {
if (gSprites[data->playerSpriteId].pos1.y != 0x50) if (gSprites[data->playerSpriteId].y != 0x50)
{ {
gSprites[data->playerSpriteId].pos1.y--; gSprites[data->playerSpriteId].y--;
gSprites[data->groundSpriteId].pos1.y--; gSprites[data->groundSpriteId].y--;
} }
else else
{ {
@@ -1302,8 +1302,8 @@ static void Task_MovePlayerAndGroundSprites(u8 taskId)
case 3: case 3:
if (sCreditsMgr->mainseqno == 15) if (sCreditsMgr->mainseqno == 15)
{ {
gSprites[data->playerSpriteId].pos1.x--; gSprites[data->playerSpriteId].x--;
gSprites[data->groundSpriteId].pos1.x--; gSprites[data->groundSpriteId].x--;
} }
break; break;
} }
+25 -25
View File
@@ -284,17 +284,17 @@ static void sub_80B7B48(struct Sprite *sprite)
{ {
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
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[7] == 0) if (sprite->data[7] == 0)
{ {
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
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;
--sprite->data[0]; --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; sprite->data[5] = (sprite->data[5] + 3) & 0xFF;
if (sprite->data[5] > 0x7F) if (sprite->data[5] > 0x7F)
{ {
@@ -308,8 +308,8 @@ static void sub_80B7B48(struct Sprite *sprite)
static void AnimBite(struct Sprite *sprite) static void AnimBite(struct Sprite *sprite)
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
StartSpriteAffineAnim(sprite, gBattleAnimArgs[2]); StartSpriteAffineAnim(sprite, gBattleAnimArgs[2]);
sprite->data[0] = gBattleAnimArgs[3]; sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = gBattleAnimArgs[4]; sprite->data[1] = gBattleAnimArgs[4];
@@ -321,8 +321,8 @@ static void sub_80B7C10(struct Sprite *sprite)
{ {
sprite->data[4] += sprite->data[0]; sprite->data[4] += sprite->data[0];
sprite->data[5] += sprite->data[1]; sprite->data[5] += sprite->data[1];
sprite->pos2.x = sprite->data[4] >> 8; sprite->x2 = sprite->data[4] >> 8;
sprite->pos2.y = sprite->data[5] >> 8; sprite->y2 = sprite->data[5] >> 8;
if (++sprite->data[3] == sprite->data[2]) if (++sprite->data[3] == sprite->data[2])
sprite->callback = sub_80B7C50; sprite->callback = sub_80B7C50;
} }
@@ -331,8 +331,8 @@ static void sub_80B7C50(struct Sprite *sprite)
{ {
sprite->data[4] -= sprite->data[0]; sprite->data[4] -= sprite->data[0];
sprite->data[5] -= sprite->data[1]; sprite->data[5] -= sprite->data[1];
sprite->pos2.x = sprite->data[4] >> 8; sprite->x2 = sprite->data[4] >> 8;
sprite->pos2.y = sprite->data[5] >> 8; sprite->y2 = sprite->data[5] >> 8;
if (--sprite->data[3] == 0) if (--sprite->data[3] == 0)
DestroySpriteAndMatrix(sprite); DestroySpriteAndMatrix(sprite);
} }
@@ -351,29 +351,29 @@ static void AnimTearDrop(struct Sprite *sprite)
switch (gBattleAnimArgs[1]) switch (gBattleAnimArgs[1])
{ {
case 0: case 0:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 8; sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 8;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8; sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8;
break; break;
case 1: case 1:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 14; sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_RIGHT) - 14;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16; sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16;
break; break;
case 2: case 2:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 8; sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 8;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8; sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 8;
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
xOffset = -20; xOffset = -20;
break; break;
case 3: case 3:
sprite->pos1.x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 14; sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) + 14;
sprite->pos1.y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16; sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP) + 16;
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
xOffset = -20; xOffset = -20;
break; break;
} }
sprite->data[0] = 32; sprite->data[0] = 32;
sprite->data[2] = sprite->pos1.x + xOffset; sprite->data[2] = sprite->x + xOffset;
sprite->data[4] = sprite->pos1.y + 12; sprite->data[4] = sprite->y + 12;
sprite->data[5] = -12; sprite->data[5] = -12;
InitAnimArcTranslation(sprite); InitAnimArcTranslation(sprite);
sprite->callback = sub_80B7D88; sprite->callback = sub_80B7D88;
@@ -750,8 +750,8 @@ void sub_80B8664(u8 taskId)
static void AnimClawSlash(struct Sprite *sprite) static void AnimClawSlash(struct Sprite *sprite)
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
StartSpriteAnim(sprite, gBattleAnimArgs[2]); StartSpriteAnim(sprite, gBattleAnimArgs[2]);
sprite->callback = RunStoredCallbackWhenAnimEnds; sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@@ -804,8 +804,8 @@ void AnimTask_MetallicShine(u8 taskId)
AnimLoadCompressedBgTilemap(animBg.bgId, gMetalShineTilemap); AnimLoadCompressedBgTilemap(animBg.bgId, gMetalShineTilemap);
AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset); AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset);
LoadCompressedPalette(gMetalShinePalette, animBg.paletteId * 16, 32); LoadCompressedPalette(gMetalShinePalette, animBg.paletteId * 16, 32);
gBattle_BG1_X = -gSprites[spriteId].pos1.x + 96; gBattle_BG1_X = -gSprites[spriteId].x + 96;
gBattle_BG1_Y = -gSprites[spriteId].pos1.y + 32; gBattle_BG1_Y = -gSprites[spriteId].y + 32;
paletteNum = 16 + gSprites[spriteId].oam.paletteNum; paletteNum = 16 + gSprites[spriteId].oam.paletteNum;
if (gBattleAnimArgs[1] == 0) if (gBattleAnimArgs[1] == 0)
SetGreyscaleOrOriginalPalette(paletteNum, FALSE); SetGreyscaleOrOriginalPalette(paletteNum, FALSE);
+9 -9
View File
@@ -2010,7 +2010,7 @@ static void SpriteCB_Egg_0(struct Sprite* sprite)
else else
{ {
sprite->data[1] = (sprite->data[1] + 20) & 0xFF; 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) if (sprite->data[0] == 15)
{ {
PlaySE(SE_BALL); PlaySE(SE_BALL);
@@ -2033,7 +2033,7 @@ static void SpriteCB_Egg_1(struct Sprite* sprite)
else else
{ {
sprite->data[1] = (sprite->data[1] + 20) & 0xFF; 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) if (sprite->data[0] == 15)
{ {
PlaySE(SE_BALL); PlaySE(SE_BALL);
@@ -2054,13 +2054,13 @@ static void SpriteCB_Egg_2(struct Sprite* sprite)
sprite->callback = SpriteCB_Egg_3; sprite->callback = SpriteCB_Egg_3;
sprite->data[0] = 0; sprite->data[0] = 0;
species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES); species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES);
gSprites[sEggHatchData->pokeSpriteID].pos2.x = 0; gSprites[sEggHatchData->pokeSpriteID].x2 = 0;
gSprites[sEggHatchData->pokeSpriteID].pos2.y = gMonFrontPicCoords[species].y_offset; gSprites[sEggHatchData->pokeSpriteID].y2 = gMonFrontPicCoords[species].y_offset;
} }
else else
{ {
sprite->data[1] = (sprite->data[1] + 20) & 0xFF; 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) if (sprite->data[0] == 15)
{ {
PlaySE(SE_BALL); PlaySE(SE_BALL);
@@ -2113,7 +2113,7 @@ static void SpriteCB_Egg_5(struct Sprite* sprite)
if (sprite->data[0] == 8) if (sprite->data[0] == 8)
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0x10, 0, 0xFFFF); BeginNormalPaletteFade(0xFFFFFFFF, -1, 0x10, 0, 0xFFFF);
if (sprite->data[0] <= 9) if (sprite->data[0] <= 9)
gSprites[sEggHatchData->pokeSpriteID].pos1.y -= 1; gSprites[sEggHatchData->pokeSpriteID].y -= 1;
if (sprite->data[0] > 40) if (sprite->data[0] > 40)
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
sprite->data[0]++; sprite->data[0]++;
@@ -2124,12 +2124,12 @@ static void SpriteCB_EggShard(struct Sprite* sprite)
sprite->data[4] += sprite->data[1]; sprite->data[4] += sprite->data[1];
sprite->data[5] += sprite->data[2]; sprite->data[5] += sprite->data[2];
sprite->pos2.x = sprite->data[4] / 256; sprite->x2 = sprite->data[4] / 256;
sprite->pos2.y = sprite->data[5] / 256; sprite->y2 = sprite->data[5] / 256;
sprite->data[2] += sprite->data[3]; 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); DestroySprite(sprite);
} }
+13 -13
View File
@@ -357,11 +357,11 @@ static u32 sub_8153C30(struct Sprite * sprite)
break; break;
} }
sprite->pos1.x += var; sprite->x += var;
if (++sprite->data[1] >= 40) if (++sprite->data[1] >= 40)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->pos1.x = sub_8154608(0, sub_81533B4()); sprite->x = sub_8154608(0, sub_81533B4());
} }
} }
@@ -423,8 +423,8 @@ void sub_8153DD8(void)
for (i = 0; i < 10; i++) for (i = 0; i < 10; i++)
{ {
struct Sprite * sprite = &gSprites[gUnknown_203F43C->unk2A[i]]; struct Sprite * sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
sprite->pos1.x = (i * 16) + 48; sprite->x = (i * 16) + 48;
sprite->pos1.y = -8 - (i * 8); sprite->y = -8 - (i * 8);
gUnknown_203F43C->unkC[i] = 0; gUnknown_203F43C->unkC[i] = 0;
} }
} }
@@ -481,10 +481,10 @@ bool32 sub_8153F1C(void)
{ {
struct Sprite * sprite = &gSprites[gUnknown_203F43C->unk2A[i]]; struct Sprite * sprite = &gSprites[gUnknown_203F43C->unk2A[i]];
gUnknown_203F43C->unk16[i] = 2; gUnknown_203F43C->unk16[i] = 2;
if (gUnknown_203F43C->unkC[i] != 0 && sprite->pos1.y == 8) if (gUnknown_203F43C->unkC[i] != 0 && sprite->y == 8)
continue; continue;
r3 = TRUE; r3 = TRUE;
if (sprite->pos1.y == 8) if (sprite->y == 8)
{ {
if (gUnknown_203F43C->unkC[i] != 0) if (gUnknown_203F43C->unkC[i] != 0)
continue; continue;
@@ -492,7 +492,7 @@ bool32 sub_8153F1C(void)
gUnknown_203F43C->unk16[i] = -16; gUnknown_203F43C->unk16[i] = -16;
PlaySE(SE_CLICK); PlaySE(SE_CLICK);
} }
sprite->pos1.y += gUnknown_203F43C->unk16[i]; sprite->y += gUnknown_203F43C->unk16[i];
} }
if (r3) if (r3)
@@ -654,7 +654,7 @@ static void sub_8154324(bool8 invisible)
void sub_8154370(u8 id, u8 y) void sub_8154370(u8 id, u8 y)
{ {
gSprites[*gUnknown_203F400[id]].pos1.y = y * 8; gSprites[*gUnknown_203F400[id]].y = y * 8;
} }
void sub_8154398(u16 id, u8 frameNum) void sub_8154398(u16 id, u8 frameNum)
@@ -665,8 +665,8 @@ void sub_8154398(u16 id, u8 frameNum)
// Unused // Unused
static void sub_81543C4(u8 spriteId) static void sub_81543C4(u8 spriteId)
{ {
gSprites[spriteId].pos1.x = 20 * spriteId + 50; gSprites[spriteId].x = 20 * spriteId + 50;
gSprites[spriteId].pos1.y = 50; gSprites[spriteId].y = 50;
} }
// Gamefreak made a mistake there and goes out of bounds for the data array as it holds 8 elements // Gamefreak made a mistake there and goes out of bounds for the data array as it holds 8 elements
@@ -688,7 +688,7 @@ static void sub_81543E8(struct Sprite * sprite)
{ {
if (++gUnknown_203F3F8[i][1] > array[i]) if (++gUnknown_203F3F8[i][1] > array[i])
{ {
sprite->pos1.x--; sprite->x--;
gUnknown_203F3F8[i][1] = 0; gUnknown_203F3F8[i][1] = 0;
} }
} }
@@ -737,8 +737,8 @@ void sub_81544F0(void)
{ {
struct Sprite * sprite = &gSprites[*gUnknown_203F3F8[i]]; struct Sprite * sprite = &gSprites[*gUnknown_203F3F8[i]];
sprite->sKeepPosX = TRUE; sprite->sKeepPosX = TRUE;
sprite->pos1.x = gUnknown_8478E0E[i][0]; sprite->x = gUnknown_8478E0E[i][0];
sprite->pos1.y = gUnknown_8478E0E[i][1]; sprite->y = gUnknown_8478E0E[i][1];
} }
} }
+28 -28
View File
@@ -188,19 +188,19 @@ const struct SpriteTemplate gOverheatFlameSpriteTemplate =
static void sub_80B725C(struct Sprite *sprite) static void sub_80B725C(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
gBattleAnimArgs[3] = -gBattleAnimArgs[3]; gBattleAnimArgs[3] = -gBattleAnimArgs[3];
gBattleAnimArgs[4] = -gBattleAnimArgs[4]; gBattleAnimArgs[4] = -gBattleAnimArgs[4];
} }
else 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[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[3] = gBattleAnimArgs[4]; sprite->data[3] = gBattleAnimArgs[4];
@@ -217,15 +217,15 @@ static void sub_80B72F8(struct Sprite *sprite)
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[1]; sprite->x -= gBattleAnimArgs[1];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[2] -= gBattleAnimArgs[2]; sprite->data[2] -= gBattleAnimArgs[2];
sprite->data[4] += gBattleAnimArgs[3]; sprite->data[4] += gBattleAnimArgs[3];
} }
else else
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[2] += gBattleAnimArgs[2]; sprite->data[2] += gBattleAnimArgs[2];
sprite->data[4] += gBattleAnimArgs[3]; sprite->data[4] += gBattleAnimArgs[3];
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
@@ -239,16 +239,16 @@ static void AnimDragonRageFirePlume(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
} }
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[1]); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[1]);
sprite->pos1.y += gBattleAnimArgs[2]; sprite->y += gBattleAnimArgs[2];
sprite->callback = RunStoredCallbackWhenAnimEnds; sprite->callback = RunStoredCallbackWhenAnimEnds;
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
} }
@@ -265,8 +265,8 @@ static void AnimDragonDanceOrb(struct Sprite *sprite)
u16 r5; u16 r5;
u16 r0; u16 r0;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->data[4] = 0; sprite->data[4] = 0;
sprite->data[5] = 1; sprite->data[5] = 1;
sprite->data[6] = gBattleAnimArgs[0]; sprite->data[6] = gBattleAnimArgs[0];
@@ -276,8 +276,8 @@ static void AnimDragonDanceOrb(struct Sprite *sprite)
sprite->data[7] = r5 / 2; sprite->data[7] = r5 / 2;
else else
sprite->data[7] = r0 / 2; sprite->data[7] = r0 / 2;
sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]); sprite->x2 = Cos(sprite->data[6], sprite->data[7]);
sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]); sprite->y2 = Sin(sprite->data[6], sprite->data[7]);
sprite->callback = sub_80B74D8; sprite->callback = sub_80B74D8;
} }
@@ -287,8 +287,8 @@ static void sub_80B74D8(struct Sprite *sprite)
{ {
case 0: case 0:
sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF; sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF;
sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]); sprite->x2 = Cos(sprite->data[6], sprite->data[7]);
sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]); sprite->y2 = Sin(sprite->data[6], sprite->data[7]);
if (++sprite->data[4] > 5) if (++sprite->data[4] > 5)
{ {
sprite->data[4] = 0; sprite->data[4] = 0;
@@ -305,8 +305,8 @@ static void sub_80B74D8(struct Sprite *sprite)
sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF; sprite->data[6] = (sprite->data[6] - sprite->data[5]) & 0xFF;
if (sprite->data[7] <= 0x95 && (sprite->data[7] += 8) > 0x95) if (sprite->data[7] <= 0x95 && (sprite->data[7] += 8) > 0x95)
sprite->data[7] = 0x96; sprite->data[7] = 0x96;
sprite->pos2.x = Cos(sprite->data[6], sprite->data[7]); sprite->x2 = Cos(sprite->data[6], sprite->data[7]);
sprite->pos2.y = Sin(sprite->data[6], sprite->data[7]); sprite->y2 = Sin(sprite->data[6], sprite->data[7]);
if (++sprite->data[4] > 5) if (++sprite->data[4] > 5)
{ {
sprite->data[4] = 0; sprite->data[4] = 0;
@@ -408,12 +408,12 @@ static void AnimOverheatFlame(struct Sprite *sprite)
{ {
s32 i, r6 = (gBattleAnimArgs[2] * 3) / 5; s32 i, r6 = (gBattleAnimArgs[2] * 3) / 5;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[4]; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[4];
sprite->data[1] = Cos(gBattleAnimArgs[1], gBattleAnimArgs[2]); sprite->data[1] = Cos(gBattleAnimArgs[1], gBattleAnimArgs[2]);
sprite->data[2] = Sin(gBattleAnimArgs[1], r6); sprite->data[2] = Sin(gBattleAnimArgs[1], r6);
sprite->pos1.x += sprite->data[1] * gBattleAnimArgs[0]; sprite->x += sprite->data[1] * gBattleAnimArgs[0];
sprite->pos1.y += sprite->data[2] * gBattleAnimArgs[0]; sprite->y += sprite->data[2] * gBattleAnimArgs[0];
sprite->data[3] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[3];
sprite->callback = sub_80B7894; sprite->callback = sub_80B7894;
for (i = 0; i < 7; ++i) for (i = 0; i < 7; ++i)
@@ -424,8 +424,8 @@ static void sub_80B7894(struct Sprite *sprite)
{ {
sprite->data[4] += sprite->data[1]; sprite->data[4] += sprite->data[1];
sprite->data[5] += sprite->data[2]; sprite->data[5] += sprite->data[2];
sprite->pos2.x = sprite->data[4] / 10; sprite->x2 = sprite->data[4] / 10;
sprite->pos2.y = sprite->data[5] / 10; sprite->y2 = sprite->data[5] / 10;
if (++sprite->data[0] > sprite->data[3]) if (++sprite->data[0] > sprite->data[3])
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
+39 -39
View File
@@ -1940,17 +1940,17 @@ static void SpriteCB_BounceCursor(struct Sprite * sprite)
if (++sprite->data[0] > 2) if (++sprite->data[0] > 2)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
if (++sprite->pos2.x > 0) if (++sprite->x2 > 0)
sprite->pos2.x = -6; sprite->x2 = -6;
} }
} }
} }
static void SetSelectDestFieldCursorSpritePosAndResetAnim(u8 x, u8 y) static void SetSelectDestFieldCursorSpritePosAndResetAnim(u8 x, u8 y)
{ {
sEasyChatGraphicsResources->selectDestFieldCursorSprite->pos1.x = x; sEasyChatGraphicsResources->selectDestFieldCursorSprite->x = x;
sEasyChatGraphicsResources->selectDestFieldCursorSprite->pos1.y = y; sEasyChatGraphicsResources->selectDestFieldCursorSprite->y = y;
sEasyChatGraphicsResources->selectDestFieldCursorSprite->pos2.x = 0; sEasyChatGraphicsResources->selectDestFieldCursorSprite->x2 = 0;
sEasyChatGraphicsResources->selectDestFieldCursorSprite->data[0] = 0; sEasyChatGraphicsResources->selectDestFieldCursorSprite->data[0] = 0;
} }
@@ -1958,7 +1958,7 @@ static void FreezeSelectDestFieldCursorSprite(void)
{ {
sEasyChatGraphicsResources->selectDestFieldCursorSprite->data[0] = 0; sEasyChatGraphicsResources->selectDestFieldCursorSprite->data[0] = 0;
sEasyChatGraphicsResources->selectDestFieldCursorSprite->data[1] = 0; sEasyChatGraphicsResources->selectDestFieldCursorSprite->data[1] = 0;
sEasyChatGraphicsResources->selectDestFieldCursorSprite->pos2.x = 0; sEasyChatGraphicsResources->selectDestFieldCursorSprite->x2 = 0;
} }
static void UnfreezeSelectDestFieldCursorSprite(void) static void UnfreezeSelectDestFieldCursorSprite(void)
@@ -1970,11 +1970,11 @@ static void CreateRedRectangularCursorSpritePair(void)
{ {
u8 spriteId = CreateSprite(&sSpriteTemplate_RedRectangularCursor, 0, 0, 3); u8 spriteId = CreateSprite(&sSpriteTemplate_RedRectangularCursor, 0, 0, 3);
sEasyChatGraphicsResources->rectCursorSpriteRight = &gSprites[spriteId]; sEasyChatGraphicsResources->rectCursorSpriteRight = &gSprites[spriteId];
sEasyChatGraphicsResources->rectCursorSpriteRight->pos2.x = 32; sEasyChatGraphicsResources->rectCursorSpriteRight->x2 = 32;
spriteId = CreateSprite(&sSpriteTemplate_RedRectangularCursor, 0, 0, 3); spriteId = CreateSprite(&sSpriteTemplate_RedRectangularCursor, 0, 0, 3);
sEasyChatGraphicsResources->rectCursorSpriteLeft = &gSprites[spriteId]; sEasyChatGraphicsResources->rectCursorSpriteLeft = &gSprites[spriteId];
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos2.x = -32; sEasyChatGraphicsResources->rectCursorSpriteLeft->x2 = -32;
sEasyChatGraphicsResources->rectCursorSpriteRight->hFlip = TRUE; sEasyChatGraphicsResources->rectCursorSpriteRight->hFlip = TRUE;
EC_MoveCursor(); EC_MoveCursor();
@@ -2008,22 +2008,22 @@ static void MoveCursor_Group(s8 x, s8 y)
if (x != -1) if (x != -1)
{ {
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, 0); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, 0);
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.x = x * 84 + 58; sEasyChatGraphicsResources->rectCursorSpriteRight->x = x * 84 + 58;
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.y = y * 16 + 96; sEasyChatGraphicsResources->rectCursorSpriteRight->y = y * 16 + 96;
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, 0); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, 0);
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.x = x * 84 + 58; sEasyChatGraphicsResources->rectCursorSpriteLeft->x = x * 84 + 58;
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.y = y * 16 + 96; sEasyChatGraphicsResources->rectCursorSpriteLeft->y = y * 16 + 96;
} }
else else
{ {
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, 1); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, 1);
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.x = 216; sEasyChatGraphicsResources->rectCursorSpriteRight->x = 216;
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.y = y * 16 + 112; sEasyChatGraphicsResources->rectCursorSpriteRight->y = y * 16 + 112;
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, 1); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, 1);
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.x = 216; sEasyChatGraphicsResources->rectCursorSpriteLeft->x = 216;
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.y = y * 16 + 112; sEasyChatGraphicsResources->rectCursorSpriteLeft->y = y * 16 + 112;
} }
} }
@@ -2048,22 +2048,22 @@ static void MoveCursor_Alpha(s8 cursorX, s8 cursorY)
} }
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, anim); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, anim);
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.x = x; sEasyChatGraphicsResources->rectCursorSpriteRight->x = x;
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.y = y; sEasyChatGraphicsResources->rectCursorSpriteRight->y = y;
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, anim); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, anim);
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.x = x; sEasyChatGraphicsResources->rectCursorSpriteLeft->x = x;
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.y = y; sEasyChatGraphicsResources->rectCursorSpriteLeft->y = y;
} }
else else
{ {
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, 1); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteRight, 1);
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.x = 216; sEasyChatGraphicsResources->rectCursorSpriteRight->x = 216;
sEasyChatGraphicsResources->rectCursorSpriteRight->pos1.y = cursorY * 16 + 112; sEasyChatGraphicsResources->rectCursorSpriteRight->y = cursorY * 16 + 112;
StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, 1); StartSpriteAnim(sEasyChatGraphicsResources->rectCursorSpriteLeft, 1);
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.x = 216; sEasyChatGraphicsResources->rectCursorSpriteLeft->x = 216;
sEasyChatGraphicsResources->rectCursorSpriteLeft->pos1.y = cursorY * 16 + 112; sEasyChatGraphicsResources->rectCursorSpriteLeft->y = cursorY * 16 + 112;
} }
} }
@@ -2081,8 +2081,8 @@ static void SpriteCB_SelectWordCursorSprite(struct Sprite * sprite)
if (++sprite->data[0] > 2) if (++sprite->data[0] > 2)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
if (++sprite->pos2.x > 0) if (++sprite->x2 > 0)
sprite->pos2.x = -6; sprite->x2 = -6;
} }
} }
@@ -2101,9 +2101,9 @@ static void SetSelectWordCursorSpritePosExplicit(u8 x, u8 y)
{ {
if (sEasyChatGraphicsResources->selectWordCursorSprite) if (sEasyChatGraphicsResources->selectWordCursorSprite)
{ {
sEasyChatGraphicsResources->selectWordCursorSprite->pos1.x = x * 8 + 4; sEasyChatGraphicsResources->selectWordCursorSprite->x = x * 8 + 4;
sEasyChatGraphicsResources->selectWordCursorSprite->pos1.y = (y + 1) * 8 + 1; sEasyChatGraphicsResources->selectWordCursorSprite->y = (y + 1) * 8 + 1;
sEasyChatGraphicsResources->selectWordCursorSprite->pos2.x = 0; sEasyChatGraphicsResources->selectWordCursorSprite->x2 = 0;
sEasyChatGraphicsResources->selectWordCursorSprite->data[0] = 0; sEasyChatGraphicsResources->selectWordCursorSprite->data[0] = 0;
} }
} }
@@ -2121,7 +2121,7 @@ static void CreateSelectGroupHelpSprite(void)
{ {
u8 spriteId = CreateSprite(&sSpriteTemplate_SelectGroupHelp, 208, 128, 6); u8 spriteId = CreateSprite(&sSpriteTemplate_SelectGroupHelp, 208, 128, 6);
sEasyChatGraphicsResources->selectGroupHelpSprite = &gSprites[spriteId]; sEasyChatGraphicsResources->selectGroupHelpSprite = &gSprites[spriteId];
sEasyChatGraphicsResources->selectGroupHelpSprite->pos2.x = -64; sEasyChatGraphicsResources->selectGroupHelpSprite->x2 = -64;
spriteId = CreateSprite(&sSpriteTemplate_EasyChatModeIcons, 208, 80, 5); spriteId = CreateSprite(&sSpriteTemplate_EasyChatModeIcons, 208, 80, 5);
sEasyChatGraphicsResources->modeIconsSprite = &gSprites[spriteId]; sEasyChatGraphicsResources->modeIconsSprite = &gSprites[spriteId];
@@ -2135,10 +2135,10 @@ static bool8 AnimateSeletGroupModeAndHelpSpriteEnter(void)
default: default:
return FALSE; return FALSE;
case 0: case 0:
sEasyChatGraphicsResources->selectGroupHelpSprite->pos2.x += 8; sEasyChatGraphicsResources->selectGroupHelpSprite->x2 += 8;
if (sEasyChatGraphicsResources->selectGroupHelpSprite->pos2.x >= 0) if (sEasyChatGraphicsResources->selectGroupHelpSprite->x2 >= 0)
{ {
sEasyChatGraphicsResources->selectGroupHelpSprite->pos2.x = 0; sEasyChatGraphicsResources->selectGroupHelpSprite->x2 = 0;
if (!IsEasyChatAlphaMode()) if (!IsEasyChatAlphaMode())
StartSpriteAnim(sEasyChatGraphicsResources->modeIconsSprite, 1); StartSpriteAnim(sEasyChatGraphicsResources->modeIconsSprite, 1);
else else
@@ -2175,8 +2175,8 @@ static bool8 RunModeIconHidingAnimation(void)
sEasyChatGraphicsResources->modeIconState = 1; sEasyChatGraphicsResources->modeIconState = 1;
break; break;
case 1: case 1:
sEasyChatGraphicsResources->selectGroupHelpSprite->pos2.x -= 8; sEasyChatGraphicsResources->selectGroupHelpSprite->x2 -= 8;
if (sEasyChatGraphicsResources->selectGroupHelpSprite->pos2.x <= -64) if (sEasyChatGraphicsResources->selectGroupHelpSprite->x2 <= -64)
{ {
DestroySprite(sEasyChatGraphicsResources->modeIconsSprite); DestroySprite(sEasyChatGraphicsResources->modeIconsSprite);
DestroySprite(sEasyChatGraphicsResources->selectGroupHelpSprite); DestroySprite(sEasyChatGraphicsResources->selectGroupHelpSprite);
@@ -2241,14 +2241,14 @@ static void UpdateVerticalScrollArrowSpriteXPos(int direction)
if (!direction) if (!direction)
{ {
// Group select // Group select
sEasyChatGraphicsResources->upTriangleCursorSprite->pos1.x = 96; sEasyChatGraphicsResources->upTriangleCursorSprite->x = 96;
sEasyChatGraphicsResources->downTriangleCursorSprite->pos1.x = 96; sEasyChatGraphicsResources->downTriangleCursorSprite->x = 96;
} }
else else
{ {
// Word select // Word select
sEasyChatGraphicsResources->upTriangleCursorSprite->pos1.x = 120; sEasyChatGraphicsResources->upTriangleCursorSprite->x = 120;
sEasyChatGraphicsResources->downTriangleCursorSprite->pos1.x = 120; sEasyChatGraphicsResources->downTriangleCursorSprite->x = 120;
} }
} }
+53 -53
View File
@@ -454,10 +454,10 @@ static const struct SpriteTemplate sShockWaveProgressingBoltSpriteTemplate =
static void AnimLightning(struct Sprite *sprite) static void AnimLightning(struct Sprite *sprite)
{ {
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else else
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->callback = sub_80ADC3C; sprite->callback = sub_80ADC3C;
} }
@@ -470,9 +470,9 @@ static void sub_80ADC3C(struct Sprite *sprite)
static void sub_80ADC58(struct Sprite *sprite) static void sub_80ADC58(struct Sprite *sprite)
{ {
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else else
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->callback = sub_80ADC9C; sprite->callback = sub_80ADC9C;
} }
@@ -484,17 +484,17 @@ static void sub_80ADC9C(struct Sprite *sprite)
static void sub_80ADCB8(struct Sprite *sprite) static void sub_80ADCB8(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
sprite->pos1.y -= gBattleAnimArgs[1]; sprite->y -= gBattleAnimArgs[1];
} }
else else
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[2];
@@ -534,16 +534,16 @@ static void sub_80ADD4C(struct Sprite *sprite)
} }
if (gBattleAnimArgs[5] == 0) if (gBattleAnimArgs[5] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y); sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET);
} }
sprite->pos2.x = (gSineTable[gBattleAnimArgs[0]] * gBattleAnimArgs[1]) >> 8; sprite->x2 = (gSineTable[gBattleAnimArgs[0]] * gBattleAnimArgs[1]) >> 8;
sprite->pos2.y = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8; sprite->y2 = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8;
if (gBattleAnimArgs[6] & 1) if (gBattleAnimArgs[6] & 1)
sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1;
matrixNum = sprite->oam.matrixNum; matrixNum = sprite->oam.matrixNum;
@@ -559,9 +559,9 @@ static void AnimZapCannonSpark(struct Sprite *sprite)
{ {
InitSpritePosToAnimAttacker(sprite, 1); InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[0] = gBattleAnimArgs[3]; 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[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); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->data[5] = gBattleAnimArgs[2]; sprite->data[5] = gBattleAnimArgs[2];
@@ -576,8 +576,8 @@ static void sub_80ADF38(struct Sprite *sprite)
{ {
if (!AnimTranslateLinear(sprite)) if (!AnimTranslateLinear(sprite))
{ {
sprite->pos2.x += Sin(sprite->data[7], sprite->data[5]); sprite->x2 += Sin(sprite->data[7], sprite->data[5]);
sprite->pos2.y += Cos(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; sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF;
if(!(sprite->data[7] % 3)) if(!(sprite->data[7] % 3))
sprite->invisible ^= 1; sprite->invisible ^= 1;
@@ -603,8 +603,8 @@ static void AnimThunderboltOrb(struct Sprite *sprite)
{ {
if (IsContest() || GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) if (IsContest() || GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)
gBattleAnimArgs[1] = -gBattleAnimArgs[1]; gBattleAnimArgs[1] = -gBattleAnimArgs[1];
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2];
sprite->data[3] = gBattleAnimArgs[0]; sprite->data[3] = gBattleAnimArgs[0];
sprite->data[4] = gBattleAnimArgs[3]; sprite->data[4] = gBattleAnimArgs[3];
sprite->data[5] = gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[3];
@@ -622,8 +622,8 @@ static void AnimSparkElectricityFlashing(struct Sprite *sprite)
battler = gBattleAnimAttacker; battler = gBattleAnimAttacker;
if (IsContest() || GetBattlerSide(battler) == B_SIDE_PLAYER) if (IsContest() || GetBattlerSide(battler) == B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1];
sprite->data[4] = gBattleAnimArgs[7] & 0x7FFF; sprite->data[4] = gBattleAnimArgs[7] & 0x7FFF;
sprite->data[5] = gBattleAnimArgs[2]; sprite->data[5] = gBattleAnimArgs[2];
sprite->data[6] = gBattleAnimArgs[5]; sprite->data[6] = gBattleAnimArgs[5];
@@ -635,8 +635,8 @@ static void AnimSparkElectricityFlashing(struct Sprite *sprite)
static void sub_80AE130(struct Sprite *sprite) static void sub_80AE130(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[7], sprite->data[5]); sprite->x2 = Sin(sprite->data[7], sprite->data[5]);
sprite->pos2.y = Cos(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; sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF;
if (sprite->data[7] % sprite->data[4] == 0) if (sprite->data[7] % sprite->data[4] == 0)
sprite->invisible ^= 1; sprite->invisible ^= 1;
@@ -751,9 +751,9 @@ static void AnimThunderWave(struct Sprite *sprite)
{ {
u8 spriteId; u8 spriteId;
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
spriteId = CreateSprite(&gThunderWaveSpriteTemplate, sprite->pos1.x + 32, sprite->pos1.y, sprite->subpriority); spriteId = CreateSprite(&gThunderWaveSpriteTemplate, sprite->x + 32, sprite->y, sprite->subpriority);
gSprites[spriteId].oam.tileNum += 8; gSprites[spriteId].oam.tileNum += 8;
++gAnimVisualTaskCount; ++gAnimVisualTaskCount;
gSprites[spriteId].callback = sub_80AE4F4; gSprites[spriteId].callback = sub_80AE4F4;
@@ -812,12 +812,12 @@ static void sub_80AE5BC(u8 taskId)
{ {
struct Sprite *sprite = &gSprites[spriteId]; struct Sprite *sprite = &gSprites[spriteId];
sprite->pos1.x += sElectricChargingParticleCoordOffsets[task->data[9]][0]; sprite->x += sElectricChargingParticleCoordOffsets[task->data[9]][0];
sprite->pos1.y += sElectricChargingParticleCoordOffsets[task->data[9]][1]; sprite->y += sElectricChargingParticleCoordOffsets[task->data[9]][1];
sprite->data[0] = 40 - task->data[8] * 5; 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[2] = task->data[14];
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = task->data[15]; sprite->data[4] = task->data[15];
sprite->data[5] = taskId; sprite->data[5] = taskId;
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
@@ -861,13 +861,13 @@ static void AnimGrowingChargeOrb(struct Sprite *sprite)
{ {
if (!gBattleAnimArgs[0]) if (!gBattleAnimArgs[0])
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
} }
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds; sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
@@ -877,16 +877,16 @@ static void AnimElectricPuff(struct Sprite *sprite)
{ {
if (!gBattleAnimArgs[0]) if (!gBattleAnimArgs[0])
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
} }
sprite->pos2.x = gBattleAnimArgs[1]; sprite->x2 = gBattleAnimArgs[1];
sprite->pos2.y = gBattleAnimArgs[2]; sprite->y2 = gBattleAnimArgs[2];
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
sprite->callback = RunStoredCallbackWhenAnimEnds; sprite->callback = RunStoredCallbackWhenAnimEnds;
} }
@@ -894,8 +894,8 @@ static void AnimElectricPuff(struct Sprite *sprite)
static void AnimVoltTackleOrbSlide(struct Sprite *sprite) static void AnimVoltTackleOrbSlide(struct Sprite *sprite)
{ {
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->data[6] = GetAnimBattlerSpriteId(ANIM_ATTACKER); sprite->data[6] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
sprite->data[7] = 16; sprite->data[7] = 16;
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT)
@@ -912,9 +912,9 @@ static void sub_80AE83C(struct Sprite *sprite)
++sprite->data[0]; ++sprite->data[0];
break; break;
case 1: case 1:
sprite->pos1.x += sprite->data[7]; sprite->x += sprite->data[7];
gSprites[sprite->data[6]].pos2.x += sprite->data[7]; gSprites[sprite->data[6]].x2 += sprite->data[7];
if ((u16)(sprite->pos1.x + 80) > 400) if ((u16)(sprite->x + 80) > 400)
DestroySpriteAndMatrix(sprite); DestroySpriteAndMatrix(sprite);
break; break;
} }
@@ -939,7 +939,7 @@ void AnimTask_VoltTackleAttackerReappear(u8 taskId)
task->data[14] = 32; task->data[14] = 32;
task->data[13] = -2; task->data[13] = -2;
} }
gSprites[task->data[15]].pos2.x = task->data[14]; gSprites[task->data[15]].x2 = task->data[14];
++task->data[0]; ++task->data[0];
break; break;
case 1: case 1:
@@ -951,7 +951,7 @@ void AnimTask_VoltTackleAttackerReappear(u8 taskId)
if (task->data[14]) if (task->data[14])
{ {
task->data[14] += task->data[13]; task->data[14] += task->data[13];
gSprites[task->data[15]].pos2.x = task->data[14]; gSprites[task->data[15]].x2 = task->data[14];
} }
else else
{ {
@@ -1085,8 +1085,8 @@ static void AnimGrowingShockWaveOrb(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
StartSpriteAffineAnim(sprite, 2); StartSpriteAffineAnim(sprite, 2);
++sprite->data[0]; ++sprite->data[0];
break; break;
+69 -69
View File
@@ -1617,11 +1617,11 @@ static u8 TrySetupObjectEventSprite(struct ObjectEventTemplate *objectEventTempl
} }
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sub_8063AD4(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->pos1.x, &sprite->pos1.y); sub_8063AD4(objectEvent->currentCoords.x + cameraX, objectEvent->currentCoords.y + cameraY, &sprite->x, &sprite->y);
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8; sprite->x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY; sprite->y += 16 + sprite->centerToCornerVecY;
sprite->oam.paletteNum = graphicsInfo->paletteSlot; sprite->oam.paletteNum = graphicsInfo->paletteSlot;
sprite->coordOffsetEnabled = TRUE; sprite->coordOffsetEnabled = TRUE;
sprite->data[0] = objectEventId; sprite->data[0] = objectEventId;
@@ -1772,7 +1772,7 @@ u8 sprite_new(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction)
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.y += sprite->centerToCornerVecY; sprite->y += sprite->centerToCornerVecY;
sprite->oam.paletteNum = graphicsInfo->paletteSlot; sprite->oam.paletteNum = graphicsInfo->paletteSlot;
sprite->coordOffsetEnabled = TRUE; sprite->coordOffsetEnabled = TRUE;
sprite->data[0] = a1; sprite->data[0] = a1;
@@ -1811,7 +1811,7 @@ u8 sub_805EB44(u8 graphicsId, u8 a1, s16 x, s16 y)
{ {
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.y += sprite->centerToCornerVecY; sprite->y += sprite->centerToCornerVecY;
sprite->oam.paletteNum = graphicsInfo->paletteSlot; sprite->oam.paletteNum = graphicsInfo->paletteSlot;
sprite->data[0] = a1; sprite->data[0] = a1;
if (graphicsInfo->paletteSlot == 10) if (graphicsInfo->paletteSlot == 10)
@@ -1950,11 +1950,11 @@ static void ReloadMapObjectWithOffset(u8 objectEventId, s16 x, s16 y)
if (spriteId != MAX_SPRITES) if (spriteId != MAX_SPRITES)
{ {
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sub_8063AD4(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->pos1.x, &sprite->pos1.y); sub_8063AD4(x + objectEvent->currentCoords.x, y + objectEvent->currentCoords.y, &sprite->x, &sprite->y);
sprite->centerToCornerVecX = -(graphicsInfo->width >> 1); sprite->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8; sprite->x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY; sprite->y += 16 + sprite->centerToCornerVecY;
sprite->images = graphicsInfo->images; sprite->images = graphicsInfo->images;
if (objectEvent->movementType == MOVEMENT_TYPE_PLAYER) if (objectEvent->movementType == MOVEMENT_TYPE_PLAYER)
{ {
@@ -2041,11 +2041,11 @@ void ObjectEventSetGraphicsId(struct ObjectEvent *objectEvent, u8 graphicsId)
} }
objectEvent->inanimate = graphicsInfo->inanimate; objectEvent->inanimate = graphicsInfo->inanimate;
objectEvent->graphicsId = graphicsId; 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->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8; sprite->x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY; sprite->y += 16 + sprite->centerToCornerVecY;
if (objectEvent->trackedByCamera) if (objectEvent->trackedByCamera)
{ {
CameraObjectReset1(); CameraObjectReset1();
@@ -2172,8 +2172,8 @@ void SetObjectPositionByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapGroup, s16 x,
if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)) if (!TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId))
{ {
sprite = &gSprites[gObjectEvents[objectEventId].spriteId]; sprite = &gSprites[gObjectEvents[objectEventId].spriteId];
sprite->pos2.x = x; sprite->x2 = x;
sprite->pos2.y = y; sprite->y2 = y;
} }
} }
@@ -2317,11 +2317,11 @@ void MoveObjectEventToMapCoords(struct ObjectEvent *objectEvent, s16 x, s16 y)
sprite = &gSprites[objectEvent->spriteId]; sprite = &gSprites[objectEvent->spriteId];
graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
SetObjectEventCoords(objectEvent, x, y); 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->centerToCornerVecX = -(graphicsInfo->width >> 1);
sprite->centerToCornerVecY = -(graphicsInfo->height >> 1); sprite->centerToCornerVecY = -(graphicsInfo->height >> 1);
sprite->pos1.x += 8; sprite->x += 8;
sprite->pos1.y += 16 + sprite->centerToCornerVecY; sprite->y += 16 + sprite->centerToCornerVecY;
sub_805EFF4(objectEvent); sub_805EFF4(objectEvent);
if (objectEvent->trackedByCamera) if (objectEvent->trackedByCamera)
CameraObjectReset1(); CameraObjectReset1();
@@ -2420,8 +2420,8 @@ static void ObjectCB_CameraObject(struct Sprite *sprite)
static void CameraObject_0(struct Sprite *sprite) static void CameraObject_0(struct Sprite *sprite)
{ {
sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; sprite->x = gSprites[sprite->data[0]].x;
sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; sprite->y = gSprites[sprite->data[0]].y;
sprite->invisible = TRUE; sprite->invisible = TRUE;
sprite->data[1] = 1; sprite->data[1] = 1;
CameraObject_1(sprite); CameraObject_1(sprite);
@@ -2429,19 +2429,19 @@ static void CameraObject_0(struct Sprite *sprite)
static void CameraObject_1(struct Sprite *sprite) static void CameraObject_1(struct Sprite *sprite)
{ {
s16 x = gSprites[sprite->data[0]].pos1.x; s16 x = gSprites[sprite->data[0]].x;
s16 y = gSprites[sprite->data[0]].pos1.y; s16 y = gSprites[sprite->data[0]].y;
sprite->data[2] = x - sprite->pos1.x; sprite->data[2] = x - sprite->x;
sprite->data[3] = y - sprite->pos1.y; sprite->data[3] = y - sprite->y;
sprite->pos1.x = x; sprite->x = x;
sprite->pos1.y = y; sprite->y = y;
} }
static void CameraObject_2(struct Sprite *sprite) static void CameraObject_2(struct Sprite *sprite)
{ {
sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; sprite->x = gSprites[sprite->data[0]].x;
sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; sprite->y = gSprites[sprite->data[0]].y;
sprite->data[2] = 0; sprite->data[2] = 0;
sprite->data[3] = 0; sprite->data[3] = 0;
} }
@@ -2510,8 +2510,8 @@ u8 CopySprite(struct Sprite *sprite, s16 x, s16 y, u8 subpriority)
if (!gSprites[i].inUse) if (!gSprites[i].inUse)
{ {
gSprites[i] = *sprite; gSprites[i] = *sprite;
gSprites[i].pos1.x = x; gSprites[i].x = x;
gSprites[i].pos1.y = y; gSprites[i].y = y;
gSprites[i].subpriority = subpriority; gSprites[i].subpriority = subpriority;
break; break;
} }
@@ -2528,8 +2528,8 @@ u8 CreateCopySpriteAt(struct Sprite *sprite, s16 x, s16 y, u8 subpriority)
if (!gSprites[i].inUse) if (!gSprites[i].inUse)
{ {
gSprites[i] = *sprite; gSprites[i] = *sprite;
gSprites[i].pos1.x = x; gSprites[i].x = x;
gSprites[i].pos1.y = y; gSprites[i].y = y;
gSprites[i].subpriority = subpriority; gSprites[i].subpriority = subpriority;
return i; return i;
} }
@@ -7896,8 +7896,8 @@ static bool8 MovementActionFunc_x99_1(struct ObjectEvent *objectEvent, struct Sp
sprite->animPaused = FALSE; sprite->animPaused = FALSE;
objectEvent->disableAnim = FALSE; objectEvent->disableAnim = FALSE;
} }
sprite->pos2.y = -(3 * gSineTable[sprite->data[6]] >> 7); sprite->y2 = -(3 * gSineTable[sprite->data[6]] >> 7);
objectEvent->singleMovementActive = sprite->pos2.y != 0; objectEvent->singleMovementActive = sprite->y2 != 0;
return FALSE; return FALSE;
case 1: case 1:
if (++sprite->data[4] > 16) if (++sprite->data[4] > 16)
@@ -7932,7 +7932,7 @@ static bool8 MovementActionFunc_x9A_1(struct ObjectEvent *objectEvent, struct Sp
{ {
bool8 ret; bool8 ret;
sprite->data[7] = (sprite->data[7] + 4) & 0xFF; sprite->data[7] = (sprite->data[7] + 4) & 0xFF;
sprite->pos2.x = gSineTable[sprite->data[7]] >> 7; sprite->x2 = gSineTable[sprite->data[7]] >> 7;
if (sprite->data[7] == 0) if (sprite->data[7] == 0)
ret = TRUE; ret = TRUE;
else else
@@ -7967,30 +7967,30 @@ static bool8 MovementAction_PauseSpriteAnim(struct ObjectEvent *objectEvent, str
static bool8 MovementActionFunc_xA4_0(struct ObjectEvent *objectEvent, struct Sprite *sprite) static bool8 MovementActionFunc_xA4_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->data[2]++; sprite->data[2]++;
return FALSE; return FALSE;
} }
static bool8 MovementActionFunc_xA4_1(struct ObjectEvent *objectEvent, struct Sprite *sprite) static bool8 MovementActionFunc_xA4_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{ {
sprite->pos2.y -= 8; sprite->y2 -= 8;
if (sprite->pos2.y == -160) if (sprite->y2 == -160)
sprite->data[2]++; sprite->data[2]++;
return FALSE; return FALSE;
} }
static bool8 MovementActionFunc_xA5_0(struct ObjectEvent *objectEvent, struct Sprite *sprite) static bool8 MovementActionFunc_xA5_0(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{ {
sprite->pos2.y = -160; sprite->y2 = -160;
sprite->data[2]++; sprite->data[2]++;
return FALSE; return FALSE;
} }
static bool8 MovementActionFunc_xA5_1(struct ObjectEvent *objectEvent, struct Sprite *sprite) static bool8 MovementActionFunc_xA5_1(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{ {
sprite->pos2.y += 8; sprite->y2 += 8;
if (sprite->pos2.y == 0) if (sprite->y2 == 0)
sprite->data[2]++; sprite->data[2]++;
return FALSE; return FALSE;
} }
@@ -8035,13 +8035,13 @@ static void CalcWhetherObjectIsOffscreen(struct ObjectEvent *objectEvent, struct
graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
if (sprite->coordOffsetEnabled) if (sprite->coordOffsetEnabled)
{ {
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX; x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY; y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
} }
else else
{ {
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; x = sprite->x + sprite->x2 + sprite->centerToCornerVecX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; y = sprite->y + sprite->y2 + sprite->centerToCornerVecY;
} }
x2 = graphicsInfo->width + (s16)x; x2 = graphicsInfo->width + (s16)x;
y2 = graphicsInfo->height + (s16)y; y2 = graphicsInfo->height + (s16)y;
@@ -8471,7 +8471,7 @@ void ObjectEventUpdateZCoord(struct ObjectEvent *objEvent)
void SetObjectSubpriorityByZCoord(u8 a, struct Sprite *sprite, u8 b) void SetObjectSubpriorityByZCoord(u8 a, struct Sprite *sprite, u8 b)
{ {
s32 tmp = sprite->centerToCornerVecY; s32 tmp = sprite->centerToCornerVecY;
u32 tmpa = *(u16 *)&sprite->pos1.y; u32 tmpa = *(u16 *)&sprite->y;
u32 tmpb = *(u16 *)&gSpriteCoordOffsetY; u32 tmpb = *(u16 *)&gSpriteCoordOffsetY;
s32 tmp2 = (tmpa - tmp) + tmpb; s32 tmp2 = (tmpa - tmp) + tmpb;
u16 tmp3 = (0x10 - ((((u32)tmp2 + 8) & 0xFF) >> 4)) * 2; u16 tmp3 = (0x10 - ((((u32)tmp2 + 8) & 0xFF) >> 4)) * 2;
@@ -8887,32 +8887,32 @@ void UnfreezeObjectEvents(void)
static void little_step(struct Sprite * sprite, u8 direction) static void little_step(struct Sprite * sprite, u8 direction)
{ {
sprite->pos1.x += sDirectionToVectors[direction].x; sprite->x += sDirectionToVectors[direction].x;
sprite->pos1.y += sDirectionToVectors[direction].y; sprite->y += sDirectionToVectors[direction].y;
} }
static void double_little_steps(struct Sprite * sprite, u8 direction) static void double_little_steps(struct Sprite * sprite, u8 direction)
{ {
sprite->pos1.x += 2 * (u16)sDirectionToVectors[direction].x; sprite->x += 2 * (u16)sDirectionToVectors[direction].x;
sprite->pos1.y += 2 * (u16)sDirectionToVectors[direction].y; sprite->y += 2 * (u16)sDirectionToVectors[direction].y;
} }
static void triple_little_steps(struct Sprite * sprite, u8 direction) static void triple_little_steps(struct Sprite * sprite, u8 direction)
{ {
sprite->pos1.x += 2 * (u16)sDirectionToVectors[direction].x + (u16)sDirectionToVectors[direction].x; sprite->x += 2 * (u16)sDirectionToVectors[direction].x + (u16)sDirectionToVectors[direction].x;
sprite->pos1.y += 2 * (u16)sDirectionToVectors[direction].y + (u16)sDirectionToVectors[direction].y; sprite->y += 2 * (u16)sDirectionToVectors[direction].y + (u16)sDirectionToVectors[direction].y;
} }
static void quad_little_steps(struct Sprite * sprite, u8 direction) static void quad_little_steps(struct Sprite * sprite, u8 direction)
{ {
sprite->pos1.x += 4 * (u16)sDirectionToVectors[direction].x; sprite->x += 4 * (u16)sDirectionToVectors[direction].x;
sprite->pos1.y += 4 * (u16)sDirectionToVectors[direction].y; sprite->y += 4 * (u16)sDirectionToVectors[direction].y;
} }
static void oct_little_steps(struct Sprite * sprite, u8 direction) static void oct_little_steps(struct Sprite * sprite, u8 direction)
{ {
sprite->pos1.x += 8 * (u16)sDirectionToVectors[direction].x; sprite->x += 8 * (u16)sDirectionToVectors[direction].x;
sprite->pos1.y += 8 * (u16)sDirectionToVectors[direction].y; sprite->y += 8 * (u16)sDirectionToVectors[direction].y;
} }
void oamt_npc_ministep_reset(struct Sprite * sprite, u8 direction, u8 speed) void oamt_npc_ministep_reset(struct Sprite * sprite, u8 direction, u8 speed)
@@ -9158,7 +9158,7 @@ u8 sub_8068D3C(struct Sprite *sprite)
if (sprite->tJumpSpeed != 0) if (sprite->tJumpSpeed != 0)
little_step(sprite, sprite->tDirection); little_step(sprite, sprite->tDirection);
sprite->pos2.y = GetJumpYDisplacement(sprite->tStepNo >> shifts[sprite->tJumpSpeed], sprite->tJumpHeight); sprite->y2 = GetJumpYDisplacement(sprite->tStepNo >> shifts[sprite->tJumpSpeed], sprite->tJumpHeight);
sprite->tStepNo++; sprite->tStepNo++;
@@ -9167,7 +9167,7 @@ u8 sub_8068D3C(struct Sprite *sprite)
if (sprite->tStepNo >= duration[sprite->tJumpSpeed]) if (sprite->tStepNo >= duration[sprite->tJumpSpeed])
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
jumpPhase = -1; jumpPhase = -1;
} }
@@ -9183,7 +9183,7 @@ u8 sub_8068DC4(struct Sprite *sprite)
if (sprite->tJumpSpeed != 0 && !(sprite->tStepNo & 1)) if (sprite->tJumpSpeed != 0 && !(sprite->tStepNo & 1))
little_step(sprite, sprite->tDirection); little_step(sprite, sprite->tDirection);
sprite->pos2.y = GetJumpYDisplacement(sprite->tStepNo >> shifts[sprite->tJumpSpeed], sprite->tJumpHeight); sprite->y2 = GetJumpYDisplacement(sprite->tStepNo >> shifts[sprite->tJumpSpeed], sprite->tJumpHeight);
sprite->tStepNo++; sprite->tStepNo++;
@@ -9192,7 +9192,7 @@ u8 sub_8068DC4(struct Sprite *sprite)
if (sprite->tStepNo >= duration[sprite->tJumpSpeed]) if (sprite->tStepNo >= duration[sprite->tJumpSpeed])
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
jumpPhase = -1; jumpPhase = -1;
} }
@@ -9247,13 +9247,13 @@ void UpdateObjectEventSpriteVisibility(struct Sprite *sprite, bool8 invisible)
if (sprite->coordOffsetEnabled) if (sprite->coordOffsetEnabled)
{ {
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX; x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY; y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
} }
else else
{ {
x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; x = sprite->x + sprite->x2 + sprite->centerToCornerVecX;
y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; y = sprite->y + sprite->y2 + sprite->centerToCornerVecY;
} }
x2 = x - (sprite->centerToCornerVecX >> 1); x2 = x - (sprite->centerToCornerVecX >> 1);
@@ -9377,13 +9377,13 @@ static void DoObjectUnionRoomWarpYDisplacementUpwards(struct Sprite * sprite)
switch (sprite->tUnionRoomWarpAnimState) switch (sprite->tUnionRoomWarpAnimState)
{ {
case 0: case 0:
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->tUnionRoomWarpAnimState++; sprite->tUnionRoomWarpAnimState++;
// fallthrough // fallthrough
case 1: case 1:
if ((sprite->pos2.y -= 8) == -160) if ((sprite->y2 -= 8) == -160)
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->tInvisible = 1; sprite->tInvisible = 1;
sprite->tUnionRoomWarpAnimNo = 0; sprite->tUnionRoomWarpAnimNo = 0;
sprite->tUnionRoomWarpAnimState = 0; sprite->tUnionRoomWarpAnimState = 0;
@@ -9397,11 +9397,11 @@ static void DoObjectUnionRoomWarpYDisplacementDownwards(struct Sprite * sprite)
switch (sprite->tUnionRoomWarpAnimState) switch (sprite->tUnionRoomWarpAnimState)
{ {
case 0: case 0:
sprite->pos2.y = -160; sprite->y2 = -160;
sprite->tUnionRoomWarpAnimState++; sprite->tUnionRoomWarpAnimState++;
// fallthrough // fallthrough
case 1: case 1:
if ((sprite->pos2.y += 8) == 0) if ((sprite->y2 += 8) == 0)
{ {
sprite->tUnionRoomWarpAnimNo = 0; sprite->tUnionRoomWarpAnimNo = 0;
sprite->tUnionRoomWarpAnimState = 0; sprite->tUnionRoomWarpAnimState = 0;
@@ -9463,8 +9463,8 @@ void DoShadowFieldEffect(struct ObjectEvent *objectEvent)
static void DoRippleFieldEffect(struct ObjectEvent *objectEvent, struct Sprite *sprite) static void DoRippleFieldEffect(struct ObjectEvent *objectEvent, struct Sprite *sprite)
{ {
const struct ObjectEventGraphicsInfo *graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); const struct ObjectEventGraphicsInfo *graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
gFieldEffectArguments[0] = sprite->pos1.x; gFieldEffectArguments[0] = sprite->x;
gFieldEffectArguments[1] = sprite->pos1.y + (graphicsInfo->height >> 1) - 2; gFieldEffectArguments[1] = sprite->y + (graphicsInfo->height >> 1) - 2;
gFieldEffectArguments[2] = 151; gFieldEffectArguments[2] = 151;
gFieldEffectArguments[3] = 3; gFieldEffectArguments[3] = 3;
FieldEffectStart(FLDEFF_RIPPLE); FieldEffectStart(FLDEFF_RIPPLE);
+14 -14
View File
@@ -105,16 +105,16 @@ static void SetEvoSparklesMatrices(void)
static void SpriteCB_PreEvoSparkleSet1(struct Sprite * sprite) static void SpriteCB_PreEvoSparkleSet1(struct Sprite * sprite)
{ {
u8 mnum; u8 mnum;
if (sprite->pos1.y > 8) if (sprite->y > 8)
{ {
sprite->pos1.y = 88 - sprite->data[7] * sprite->data[7] / 80; sprite->y = 88 - sprite->data[7] * sprite->data[7] / 80;
sprite->pos2.y = Sin((u8)sprite->data[6], sprite->data[5]) / 4; sprite->y2 = Sin((u8)sprite->data[6], sprite->data[5]) / 4;
sprite->pos2.x = Cos((u8) sprite->data[6], sprite->data[5]); sprite->x2 = Cos((u8) sprite->data[6], sprite->data[5]);
sprite->data[6] += 4; sprite->data[6] += 4;
if (sprite->data[7] & 1) if (sprite->data[7] & 1)
sprite->data[5]--; sprite->data[5]--;
sprite->data[7]++; sprite->data[7]++;
if (sprite->pos2.y > 0) if (sprite->y2 > 0)
sprite->subpriority = 1; sprite->subpriority = 1;
else else
sprite->subpriority = 20; sprite->subpriority = 20;
@@ -145,11 +145,11 @@ static void CreatePreEvoSparkleSet1(u8 a0)
static void SpriteCB_PreEvoSparkleSet2(struct Sprite * sprite) static void SpriteCB_PreEvoSparkleSet2(struct Sprite * sprite)
{ {
if (sprite->pos1.y < 88) if (sprite->y < 88)
{ {
sprite->pos1.y = 8 + sprite->data[7] * sprite->data[7] / 5; sprite->y = 8 + sprite->data[7] * sprite->data[7] / 5;
sprite->pos2.y = Sin((u8)sprite->data[6], sprite->data[5]) / 4; sprite->y2 = Sin((u8)sprite->data[6], sprite->data[5]) / 4;
sprite->pos2.x = Cos((u8)sprite->data[6], sprite->data[5]); sprite->x2 = Cos((u8)sprite->data[6], sprite->data[5]);
sprite->data[5] = Sin((u8)(sprite->data[7] * 4), 40) + 8; sprite->data[5] = Sin((u8)(sprite->data[7] * 4), 40) + 8;
sprite->data[7]++; sprite->data[7]++;
} }
@@ -178,8 +178,8 @@ static void SpriteCB_PostEvoSparkleSet1(struct Sprite * sprite)
{ {
if (sprite->data[5] > 8) if (sprite->data[5] > 8)
{ {
sprite->pos2.y = Sin((u8)sprite->data[6], sprite->data[5]); sprite->y2 = Sin((u8)sprite->data[6], sprite->data[5]);
sprite->pos2.x = Cos((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[5] -= sprite->data[3];
sprite->data[6] += 4; sprite->data[6] += 4;
} }
@@ -209,11 +209,11 @@ static void SpriteCB_PostEvoSparkleSet2(struct Sprite * sprite)
{ {
u8 mnum; u8 mnum;
if ((sprite->data[7] & 3) == 0) if ((sprite->data[7] & 3) == 0)
sprite->pos1.y++; sprite->y++;
if (sprite->data[6] < 128) if (sprite->data[6] < 128)
{ {
sprite->pos2.y = -Sin((u8)sprite->data[6], sprite->data[5]); sprite->y2 = -Sin((u8)sprite->data[6], sprite->data[5]);
sprite->pos1.x = 120 + sprite->data[3] * sprite->data[7] / 3; sprite->x = 120 + sprite->data[3] * sprite->data[7] / 3;
sprite->data[6]++; sprite->data[6]++;
mnum = 31 - sprite->data[6] * 12 / 128; mnum = 31 - sprite->data[6] * 12 / 128;
if (sprite->data[6] > 64) if (sprite->data[6] > 64)
+12 -12
View File
@@ -753,10 +753,10 @@ static void Task_TopMenuHandleInput(u8 taskId)
UpdateInfoBoxTilemap(1, 5); UpdateInfoBoxTilemap(1, 5);
PrintUIHelp(1); PrintUIHelp(1);
task->data[2] = CreatePersonPicSprite(sFameCheckerData->unlockedPersons[cursorPos]); task->data[2] = CreatePersonPicSprite(sFameCheckerData->unlockedPersons[cursorPos]);
gSprites[task->data[2]].pos2.x = 0xF0; gSprites[task->data[2]].x2 = 0xF0;
gSprites[task->data[2]].data[0] = 1; gSprites[task->data[2]].data[0] = 1;
task->data[3] = CreateSpinningPokeballSprite(); task->data[3] = CreateSpinningPokeballSprite();
gSprites[task->data[3]].pos2.x = 0xF0; gSprites[task->data[3]].x2 = 0xF0;
gSprites[task->data[3]].data[0] = 1; gSprites[task->data[3]].data[0] = 1;
task->func = Task_EnterPickMode; task->func = Task_EnterPickMode;
} }
@@ -808,9 +808,9 @@ static bool8 TryExitPickMode(u8 taskId)
if (sFameCheckerData->inPickMode) if (sFameCheckerData->inPickMode)
{ {
gSprites[task->data[2]].data[0] = 2; gSprites[task->data[2]].data[0] = 2;
gSprites[task->data[2]].pos2.x += 10; gSprites[task->data[2]].x2 += 10;
gSprites[task->data[3]].data[0] = 2; gSprites[task->data[3]].data[0] = 2;
gSprites[task->data[3]].pos2.x += 10; gSprites[task->data[3]].x2 += 10;
WipeMsgBoxAndTransfer(); WipeMsgBoxAndTransfer();
task->func = Task_ExitPickMode; task->func = Task_ExitPickMode;
MessageBoxPrintEmptyText(); MessageBoxPrintEmptyText();
@@ -932,8 +932,8 @@ static void FC_MoveSelectorCursor(u8 taskId, s8 dx, s8 dy)
u8 i; u8 i;
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
PlaySE(SE_M_SWAGGER2); PlaySE(SE_M_SWAGGER2);
gSprites[data[0]].pos1.x += dx; gSprites[data[0]].x += dx;
gSprites[data[0]].pos1.y += dy; gSprites[data[0]].y += dy;
for (i = 0; i < 6; i++) for (i = 0; i < 6; i++)
SetMessageSelectorIconObjMode(sFameCheckerData->spriteIds[i], ST_OAM_OBJ_BLEND); SetMessageSelectorIconObjMode(sFameCheckerData->spriteIds[i], ST_OAM_OBJ_BLEND);
FillWindowPixelRect(FCWINDOWID_MSGBOX, PIXEL_FILL(1), 0, 0, 0xd0, 0x20); FillWindowPixelRect(FCWINDOWID_MSGBOX, PIXEL_FILL(1), 0, 0, 0xd0, 0x20);
@@ -1315,23 +1315,23 @@ static void SpriteCB_FCSpinningPokeball(struct Sprite * sprite)
{ {
if (sprite->data[0] == 1) if (sprite->data[0] == 1)
{ {
if (sprite->pos2.x - 10 < 0) if (sprite->x2 - 10 < 0)
{ {
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->data[0] = 0; sprite->data[0] = 0;
} }
else else
sprite->pos2.x -= 10; sprite->x2 -= 10;
} }
else if (sprite->data[0] == 2) else if (sprite->data[0] == 2)
{ {
if (sprite->pos2.x > 240) if (sprite->x2 > 240)
{ {
sprite->pos2.x = 240; sprite->x2 = 240;
sprite->data[0] = 0; sprite->data[0] = 0;
} }
else else
sprite->pos2.x += 10; sprite->x2 += 10;
} }
} }
+101 -101
View File
@@ -826,8 +826,8 @@ static u8 CreatePokeballGlowSprite(s16 duration, s16 x, s16 y, bool16 fanfare)
struct Sprite * sprite; struct Sprite * sprite;
spriteId = CreateInvisibleSprite(SpriteCB_PokeballGlowEffect); spriteId = CreateInvisibleSprite(SpriteCB_PokeballGlowEffect);
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sprite->pos2.x = x; sprite->x2 = x;
sprite->pos2.y = y; sprite->y2 = y;
sprite->subpriority = 0xFF; sprite->subpriority = 0xFF;
sprite->data[5] = fanfare; sprite->data[5] = fanfare;
sprite->data[6] = duration; sprite->data[6] = duration;
@@ -859,7 +859,7 @@ static void PokeballGlowEffect_0(struct Sprite * sprite)
if (sprite->data[1] == 0 || (--sprite->data[1]) == 0) if (sprite->data[1] == 0 || (--sprite->data[1]) == 0)
{ {
sprite->data[1] = 25; sprite->data[1] = 25;
endSpriteId = CreateSpriteAtEnd(&sUnknown_83CBF88, sUnknown_83CC010[sprite->data[2]].x + sprite->pos2.x, sUnknown_83CC010[sprite->data[2]].y + sprite->pos2.y, 0xFF); endSpriteId = CreateSpriteAtEnd(&sUnknown_83CBF88, sUnknown_83CC010[sprite->data[2]].x + sprite->x2, sUnknown_83CC010[sprite->data[2]].y + sprite->y2, 0xFF);
gSprites[endSpriteId].oam.priority = 2; gSprites[endSpriteId].oam.priority = 2;
gSprites[endSpriteId].data[0] = sprite->data[7]; gSprites[endSpriteId].data[0] = sprite->data[7];
sprite->data[2]++; sprite->data[2]++;
@@ -1155,7 +1155,7 @@ static bool8 FallWarpEffect_3(struct Task * task)
s16 centerToCornerVecY; s16 centerToCornerVecY;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
centerToCornerVecY = -(sprite->centerToCornerVecY << 1); centerToCornerVecY = -(sprite->centerToCornerVecY << 1);
sprite->pos2.y = -(sprite->pos1.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY); sprite->y2 = -(sprite->y + sprite->centerToCornerVecY + gSpriteCoordOffsetY + centerToCornerVecY);
task->data[1] = 1; task->data[1] = 1;
task->data[2] = 0; task->data[2] = 0;
gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE; gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE;
@@ -1171,7 +1171,7 @@ static bool8 FallWarpEffect_4(struct Task * task)
objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.y += task->data[1]; sprite->y2 += task->data[1];
if (task->data[1] < 8) if (task->data[1] < 8)
{ {
task->data[2] += task->data[1]; task->data[2] += task->data[1];
@@ -1180,19 +1180,19 @@ static bool8 FallWarpEffect_4(struct Task * task)
task->data[1] <<= 1; task->data[1] <<= 1;
} }
} }
if (task->data[3] == 0 && sprite->pos2.y >= -16) if (task->data[3] == 0 && sprite->y2 >= -16)
{ {
task->data[3]++; task->data[3]++;
objectEvent->fixedPriority = FALSE; objectEvent->fixedPriority = FALSE;
sprite->subspriteMode = task->data[4]; sprite->subspriteMode = task->data[4];
objectEvent->triggerGroundEffectsOnMove = TRUE; objectEvent->triggerGroundEffectsOnMove = TRUE;
} }
if (sprite->pos2.y >= 0) if (sprite->y2 >= 0)
{ {
PlaySE(SE_M_STRENGTH); PlaySE(SE_M_STRENGTH);
objectEvent->triggerGroundEffectsOnStop = TRUE; objectEvent->triggerGroundEffectsOnStop = TRUE;
objectEvent->landingJump = TRUE; objectEvent->landingJump = TRUE;
sprite->pos2.y = 0; sprite->y2 = 0;
task->data[0]++; task->data[0]++;
} }
return FALSE; return FALSE;
@@ -1358,8 +1358,8 @@ static void Escalator_AnimatePlayerGoingDown(struct Task * task)
{ {
struct Sprite * sprite; struct Sprite * sprite;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x84, task->data[2]); sprite->x2 = Cos(0x84, task->data[2]);
sprite->pos2.y = Sin(0x94, task->data[2]); sprite->y2 = Sin(0x94, task->data[2]);
task->data[3]++; task->data[3]++;
if (task->data[3] & 1) if (task->data[3] & 1)
{ {
@@ -1371,8 +1371,8 @@ static void Escalator_AnimatePlayerGoingUp(struct Task * task)
{ {
struct Sprite * sprite; struct Sprite * sprite;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x7c, task->data[2]); sprite->x2 = Cos(0x7c, task->data[2]);
sprite->pos2.y = Sin(0x76, task->data[2]); sprite->y2 = Sin(0x76, task->data[2]);
task->data[3]++; task->data[3]++;
if (task->data[3] & 1) if (task->data[3] & 1)
{ {
@@ -1455,8 +1455,8 @@ static bool8 EscalatorWarpInEffect_2(struct Task * task)
{ {
struct Sprite * sprite; struct Sprite * sprite;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x84, task->data[1]); sprite->x2 = Cos(0x84, task->data[1]);
sprite->pos2.y = Sin(0x94, task->data[1]); sprite->y2 = Sin(0x94, task->data[1]);
task->data[0]++; task->data[0]++;
return FALSE; return FALSE;
} }
@@ -1465,8 +1465,8 @@ static bool8 EscalatorWarpInEffect_3(struct Task * task)
{ {
struct Sprite * sprite; struct Sprite * sprite;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x84, task->data[1]); sprite->x2 = Cos(0x84, task->data[1]);
sprite->pos2.y = Sin(0x94, task->data[1]); sprite->y2 = Sin(0x94, task->data[1]);
task->data[2]++; task->data[2]++;
if (task->data[2] & 1) if (task->data[2] & 1)
{ {
@@ -1474,8 +1474,8 @@ static bool8 EscalatorWarpInEffect_3(struct Task * task)
} }
if (task->data[1] == 0) if (task->data[1] == 0)
{ {
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
task->data[0] = 5; task->data[0] = 5;
} }
return FALSE; return FALSE;
@@ -1486,8 +1486,8 @@ static bool8 EscalatorWarpInEffect_4(struct Task * task)
{ {
struct Sprite * sprite; struct Sprite * sprite;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x7c, task->data[1]); sprite->x2 = Cos(0x7c, task->data[1]);
sprite->pos2.y = Sin(0x76, task->data[1]); sprite->y2 = Sin(0x76, task->data[1]);
task->data[0]++; task->data[0]++;
return FALSE; return FALSE;
} }
@@ -1496,8 +1496,8 @@ static bool8 EscalatorWarpInEffect_5(struct Task * task)
{ {
struct Sprite * sprite; struct Sprite * sprite;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = Cos(0x7c, task->data[1]); sprite->x2 = Cos(0x7c, task->data[1]);
sprite->pos2.y = Sin(0x76, task->data[1]); sprite->y2 = Sin(0x76, task->data[1]);
task->data[2]++; task->data[2]++;
if (task->data[2] & 1) if (task->data[2] & 1)
{ {
@@ -1505,8 +1505,8 @@ static bool8 EscalatorWarpInEffect_5(struct Task * task)
} }
if (task->data[1] == 0) if (task->data[1] == 0)
{ {
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
task->data[0]++; task->data[0]++;
} }
return FALSE; return FALSE;
@@ -1736,7 +1736,7 @@ static bool8 LavaridgeGymB1FWarpEffect_2(struct Task * task, struct ObjectEvent
static bool8 LavaridgeGymB1FWarpEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite) static bool8 LavaridgeGymB1FWarpEffect_3(struct Task * task, struct ObjectEvent * objectEvent, struct Sprite * sprite)
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
task->data[3] = 1; task->data[3] = 1;
gFieldEffectArguments[0] = objectEvent->currentCoords.x; gFieldEffectArguments[0] = objectEvent->currentCoords.x;
gFieldEffectArguments[1] = objectEvent->currentCoords.y; gFieldEffectArguments[1] = objectEvent->currentCoords.y;
@@ -1765,9 +1765,9 @@ static bool8 LavaridgeGymB1FWarpEffect_4(struct Task * task, struct ObjectEvent
if (task->data[2] > 6) if (task->data[2] > 6)
{ {
centerToCornerVecY = -(sprite->centerToCornerVecY << 1); 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) if (task->data[3] <= 7)
{ {
task->data[3]++; task->data[3]++;
@@ -1777,7 +1777,7 @@ static bool8 LavaridgeGymB1FWarpEffect_4(struct Task * task, struct ObjectEvent
task->data[4] = 1; task->data[4] = 1;
} }
} }
if (task->data[5] == 0 && sprite->pos2.y < -0x10) if (task->data[5] == 0 && sprite->y2 < -0x10)
{ {
task->data[5]++; task->data[5]++;
objectEvent->fixedPriority = TRUE; objectEvent->fixedPriority = TRUE;
@@ -2108,7 +2108,7 @@ static bool32 sub_80857F0(struct ObjectEvent * playerObj, s16 *state_p, s16 *y_p
(*state_p)++; (*state_p)++;
// fallthrough // fallthrough
case 1: case 1:
sprite->pos2.y -= 8; sprite->y2 -= 8;
(*y_p) -= 8; (*y_p) -= 8;
if (*y_p <= -16) if (*y_p <= -16)
{ {
@@ -2120,7 +2120,7 @@ static bool32 sub_80857F0(struct ObjectEvent * playerObj, s16 *state_p, s16 *y_p
} }
break; break;
case 2: case 2:
sprite->pos2.y -= 8; sprite->y2 -= 8;
(*y_p) -= 8; (*y_p) -= 8;
if (*y_p <= -88) if (*y_p <= -88)
{ {
@@ -2147,7 +2147,7 @@ static bool32 sub_80858A4(struct ObjectEvent * playerObj, s16 *state_p, s16 *y_p
case 0: case 0:
CameraObjectReset2(); CameraObjectReset2();
*y_p = -88; *y_p = -88;
sprite->pos2.y -= 88; sprite->y2 -= 88;
*priority_p = sprite->oam.priority; *priority_p = sprite->oam.priority;
*subpriority_p = sprite->subpriority; *subpriority_p = sprite->subpriority;
*subspriteMode_p = sprite->subspriteMode; *subspriteMode_p = sprite->subspriteMode;
@@ -2158,7 +2158,7 @@ static bool32 sub_80858A4(struct ObjectEvent * playerObj, s16 *state_p, s16 *y_p
(*state_p)++; (*state_p)++;
// fallthrough // fallthrough
case 1: case 1:
sprite->pos2.y += 4; sprite->y2 += 4;
(*y_p) += 4; (*y_p) += 4;
if (*y_p >= -16) if (*y_p >= -16)
{ {
@@ -2169,7 +2169,7 @@ static bool32 sub_80858A4(struct ObjectEvent * playerObj, s16 *state_p, s16 *y_p
} }
break; break;
case 2: case 2:
sprite->pos2.y += 4; sprite->y2 += 4;
(*y_p) += 4; (*y_p) += 4;
if (*y_p >= 0) if (*y_p >= 0)
{ {
@@ -2310,7 +2310,7 @@ static void TeleportFieldEffectTask3(struct Task * task)
task->data[1] = 4; task->data[1] = 4;
ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]); ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]);
} }
sprite->pos1.y -= task->data[3]; sprite->y -= task->data[3];
task->data[4] += task->data[3]; task->data[4] += task->data[3];
if ((--task->data[2]) <= 0 && (task->data[2] = 4, task->data[3] < 8)) if ((--task->data[2]) <= 0 && (task->data[2] = 4, task->data[3] < 8))
{ {
@@ -2375,7 +2375,7 @@ static void TeleportInFieldEffectTask1(struct Task * task)
{ {
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
centerToCornerVecY = -(sprite->centerToCornerVecY << 1); 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; gObjectEvents[gPlayerAvatar.objectEventId].invisible = FALSE;
task->data[0]++; task->data[0]++;
task->data[1] = 8; task->data[1] = 8;
@@ -2391,7 +2391,7 @@ static void TeleportInFieldEffectTask2(struct Task * task)
u8 spinDirections[5] = {1, 3, 4, 2, 1}; u8 spinDirections[5] = {1, 3, 4, 2, 1};
struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; struct ObjectEvent * objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
struct Sprite * sprite = &gSprites[gPlayerAvatar.spriteId]; 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) if (task->data[13] == 0)
{ {
@@ -2407,7 +2407,7 @@ static void TeleportInFieldEffectTask2(struct Task * task)
sprite->subspriteMode = SUBSPRITES_IGNORE_PRIORITY; 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]--; task->data[1]--;
} }
@@ -2416,9 +2416,9 @@ static void TeleportInFieldEffectTask2(struct Task * task)
task->data[2] = 4; task->data[2] = 4;
ObjectEventTurn(objectEvent, spinDirections[objectEvent->facingDirection]); 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[0]++;
task->data[1] = 1; task->data[1] = 1;
task->data[2] = 0; task->data[2] = 0;
@@ -2836,9 +2836,9 @@ static u8 sub_8086860(u32 species, u32 otId, u32 personality)
static void sub_80868C0(struct Sprite * sprite) static void sub_80868C0(struct Sprite * sprite)
{ {
if ((sprite->pos1.x -= 20) <= 0x78) if ((sprite->x -= 20) <= 0x78)
{ {
sprite->pos1.x = 0x78; sprite->x = 0x78;
sprite->data[1] = 30; sprite->data[1] = 30;
sprite->callback = sub_8086904; sprite->callback = sub_8086904;
if (sprite->data[6]) if (sprite->data[6])
@@ -2862,13 +2862,13 @@ static void sub_8086904(struct Sprite * sprite)
static void sub_8086920(struct Sprite * sprite) static void sub_8086920(struct Sprite * sprite)
{ {
if (sprite->pos1.x < -0x40) if (sprite->x < -0x40)
{ {
sprite->data[7] = 1; sprite->data[7] = 1;
} }
else else
{ {
sprite->pos1.x -= 20; sprite->x -= 20;
} }
} }
@@ -3063,17 +3063,17 @@ static void sub_8086D94(struct Sprite * sprite)
{ {
struct Sprite * npcSprite; struct Sprite * npcSprite;
sprite->pos2.x = Cos(sprite->data[2], 0x8c); sprite->x2 = Cos(sprite->data[2], 0x8c);
sprite->pos2.y = Sin(sprite->data[2], 0x48); sprite->y2 = Sin(sprite->data[2], 0x48);
sprite->data[2] = (sprite->data[2] + 4) & 0xff; sprite->data[2] = (sprite->data[2] + 4) & 0xff;
if (sprite->data[0]) if (sprite->data[0])
{ {
npcSprite = &gSprites[sprite->data[1]]; npcSprite = &gSprites[sprite->data[1]];
npcSprite->coordOffsetEnabled = FALSE; npcSprite->coordOffsetEnabled = FALSE;
npcSprite->pos1.x = sprite->pos1.x + sprite->pos2.x; npcSprite->x = sprite->x + sprite->x2;
npcSprite->pos1.y = sprite->pos1.y + sprite->pos2.y - 8; npcSprite->y = sprite->y + sprite->y2 - 8;
npcSprite->pos2.x = 0; npcSprite->x2 = 0;
npcSprite->pos2.y = 0; npcSprite->y2 = 0;
} }
if (sprite->data[2] >= 0x80) if (sprite->data[2] >= 0x80)
{ {
@@ -3257,10 +3257,10 @@ static void sub_80871C8(u8 spriteId)
struct Sprite * sprite; struct Sprite * sprite;
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sprite->callback = sub_80872F0; sprite->callback = sub_80872F0;
sprite->pos1.x = 0x78; sprite->x = 0x78;
sprite->pos1.y = 0x00; sprite->y = 0x00;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
memset(&sprite->data[0], 0, 8 * sizeof(u16) /* zero all data cells */); memset(&sprite->data[0], 0, 8 * sizeof(u16) /* zero all data cells */);
sprite->data[6] = 0x40; sprite->data[6] = 0x40;
} }
@@ -3298,17 +3298,17 @@ static void sub_8087220(struct Sprite * sprite)
InitSpriteAffineAnim(sprite); InitSpriteAffineAnim(sprite);
StartSpriteAffineAnim(sprite, 0); StartSpriteAffineAnim(sprite, 0);
if (gSaveBlock2Ptr->playerGender == MALE) if (gSaveBlock2Ptr->playerGender == MALE)
sprite->pos1.x = 0x80; sprite->x = 0x80;
else else
sprite->pos1.x = 0x76; sprite->x = 0x76;
sprite->pos1.y = -0x30; sprite->y = -0x30;
sprite->data[0]++; sprite->data[0]++;
sprite->data[1] = 0x40; sprite->data[1] = 0x40;
sprite->data[2] = 0x100; sprite->data[2] = 0x100;
} }
sprite->data[1] += (sprite->data[2] >> 8); sprite->data[1] += (sprite->data[2] >> 8);
sprite->pos2.x = Cos(sprite->data[1], 0x78); sprite->x2 = Cos(sprite->data[1], 0x78);
sprite->pos2.y = Sin(sprite->data[1], 0x78); sprite->y2 = Sin(sprite->data[1], 0x78);
if (sprite->data[2] < 0x800) if (sprite->data[2] < 0x800)
{ {
sprite->data[2] += 0x60; sprite->data[2] += 0x60;
@@ -3325,17 +3325,17 @@ static void sub_8087220(struct Sprite * sprite)
static void sub_80872F0(struct Sprite * sprite) static void sub_80872F0(struct Sprite * sprite)
{ {
sprite->pos2.x = Cos(sprite->data[2], 0x8c); sprite->x2 = Cos(sprite->data[2], 0x8c);
sprite->pos2.y = Sin(sprite->data[2], 0x48); sprite->y2 = Sin(sprite->data[2], 0x48);
sprite->data[2] = (sprite->data[2] + 4) & 0xff; sprite->data[2] = (sprite->data[2] + 4) & 0xff;
if (sprite->data[6] != MAX_SPRITES) if (sprite->data[6] != MAX_SPRITES)
{ {
struct Sprite * sprite1 = &gSprites[sprite->data[6]]; struct Sprite * sprite1 = &gSprites[sprite->data[6]];
sprite1->coordOffsetEnabled = FALSE; sprite1->coordOffsetEnabled = FALSE;
sprite1->pos1.x = sprite->pos1.x + sprite->pos2.x; sprite1->x = sprite->x + sprite->x2;
sprite1->pos1.y = sprite->pos1.y + sprite->pos2.y - 8; sprite1->y = sprite->y + sprite->y2 - 8;
sprite1->pos2.x = 0; sprite1->x2 = 0;
sprite1->pos2.y = 0; sprite1->y2 = 0;
} }
if (sprite->data[2] >= 0x80) if (sprite->data[2] >= 0x80)
{ {
@@ -3354,10 +3354,10 @@ static void sub_8087364(struct Sprite * sprite)
InitSpriteAffineAnim(sprite); InitSpriteAffineAnim(sprite);
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
if (gSaveBlock2Ptr->playerGender == MALE) if (gSaveBlock2Ptr->playerGender == MALE)
sprite->pos1.x = 0x70; sprite->x = 0x70;
else else
sprite->pos1.x = 0x64; sprite->x = 0x64;
sprite->pos1.y = -0x20; sprite->y = -0x20;
sprite->data[0]++; sprite->data[0]++;
sprite->data[1] = 0xf0; sprite->data[1] = 0xf0;
sprite->data[2] = 0x800; sprite->data[2] = 0x800;
@@ -3366,8 +3366,8 @@ static void sub_8087364(struct Sprite * sprite)
sprite->data[1] += sprite->data[2] >> 8; sprite->data[1] += sprite->data[2] >> 8;
sprite->data[3] += sprite->data[2] >> 8; sprite->data[3] += sprite->data[2] >> 8;
sprite->data[1] &= 0xff; sprite->data[1] &= 0xff;
sprite->pos2.x = Cos(sprite->data[1], 0x20); sprite->x2 = Cos(sprite->data[1], 0x20);
sprite->pos2.y = Sin(sprite->data[1], 0x78); sprite->y2 = Sin(sprite->data[1], 0x78);
if (sprite->data[2] > 0x100) if (sprite->data[2] > 0x100)
{ {
sprite->data[2] -= sprite->data[4]; sprite->data[2] -= sprite->data[4];
@@ -3466,10 +3466,10 @@ static void FlyInEffect_2(struct Task * task)
objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId]; objectEvent = &gObjectEvents[gPlayerAvatar.objectEventId];
sprite = &gSprites[objectEvent->spriteId]; sprite = &gSprites[objectEvent->spriteId];
sub_8087204(task->data[1], 0x40); sub_8087204(task->data[1], 0x40);
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
task->data[0]++; task->data[0]++;
task->data[2] = 0; task->data[2] = 0;
} }
@@ -3498,7 +3498,7 @@ static void FlyInEffect_3(struct Task * task)
8 8
}; };
struct Sprite * sprite = &gSprites[gPlayerAvatar.spriteId]; struct Sprite * sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.y = gUnknown_83CC1F0[task->data[2]]; sprite->y2 = gUnknown_83CC1F0[task->data[2]];
if ((++task->data[2]) >= 18) if ((++task->data[2]) >= 18)
{ {
task->data[0]++; task->data[0]++;
@@ -3515,8 +3515,8 @@ static void FlyInEffect_4(struct Task * task)
sprite = &gSprites[objectEvent->spriteId]; sprite = &gSprites[objectEvent->spriteId];
objectEvent->inanimate = FALSE; objectEvent->inanimate = FALSE;
MoveObjectEventToMapCoords(objectEvent, objectEvent->currentCoords.x, objectEvent->currentCoords.y); MoveObjectEventToMapCoords(objectEvent, objectEvent->currentCoords.x, objectEvent->currentCoords.y);
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->coordOffsetEnabled = TRUE; sprite->coordOffsetEnabled = TRUE;
StartPlayerAvatarSummonMonForFieldMoveAnim(); StartPlayerAvatarSummonMonForFieldMoveAnim();
ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION); ObjectEventSetHeldMovement(objectEvent, MOVEMENT_ACTION_START_ANIM_IN_DIRECTION);
@@ -3592,18 +3592,18 @@ static void sub_80877FC(struct Sprite * sprite, u8 affineAnimId)
static void sub_8087828(struct Sprite * sprite) static void sub_8087828(struct Sprite * sprite)
{ {
struct Sprite * sprite2; struct Sprite * sprite2;
sprite->pos2.x = Cos(sprite->data[2], 0xB4); sprite->x2 = Cos(sprite->data[2], 0xB4);
sprite->pos2.y = Sin(sprite->data[2], 0x48); sprite->y2 = Sin(sprite->data[2], 0x48);
sprite->data[2] += 2; sprite->data[2] += 2;
sprite->data[2] &= 0xFF; sprite->data[2] &= 0xFF;
if (sprite->data[6] != MAX_SPRITES) if (sprite->data[6] != MAX_SPRITES)
{ {
sprite2 = &gSprites[sprite->data[6]]; sprite2 = &gSprites[sprite->data[6]];
sprite2->coordOffsetEnabled = FALSE; sprite2->coordOffsetEnabled = FALSE;
sprite2->pos1.x = sprite->pos1.x + sprite->pos2.x; sprite2->x = sprite->x + sprite->x2;
sprite2->pos1.y = sprite->pos1.y + sprite->pos2.y - 8; sprite2->y = sprite->y + sprite->y2 - 8;
sprite2->pos2.x = 0; sprite2->x2 = 0;
sprite2->pos2.y = 0; sprite2->y2 = 0;
} }
if (sprite->data[2] >= 0x80) if (sprite->data[2] >= 0x80)
{ {
@@ -3648,8 +3648,8 @@ u32 FldEff_MoveDeoxysRock(void)
ShiftObjectEventCoords(objectEvent, gFieldEffectArguments[3] + 7, gFieldEffectArguments[4] + 7); ShiftObjectEventCoords(objectEvent, gFieldEffectArguments[3] + 7, gFieldEffectArguments[4] + 7);
taskId = CreateTask(Task_MoveDeoxysRock_Step, 0x50); taskId = CreateTask(Task_MoveDeoxysRock_Step, 0x50);
gTasks[taskId].data[1] = objectEvent->spriteId; gTasks[taskId].data[1] = objectEvent->spriteId;
gTasks[taskId].data[2] = gSprites[objectEvent->spriteId].pos1.x + x; gTasks[taskId].data[2] = gSprites[objectEvent->spriteId].x + x;
gTasks[taskId].data[3] = gSprites[objectEvent->spriteId].pos1.y + y; gTasks[taskId].data[3] = gSprites[objectEvent->spriteId].y + y;
gTasks[taskId].data[8] = gFieldEffectArguments[5]; gTasks[taskId].data[8] = gFieldEffectArguments[5];
gTasks[taskId].data[9] = objectEventIdBuffer; gTasks[taskId].data[9] = objectEventIdBuffer;
} }
@@ -3664,8 +3664,8 @@ static void Task_MoveDeoxysRock_Step(u8 taskId)
switch (data[0]) switch (data[0])
{ {
case 0: case 0:
data[4] = sprite->pos1.x << 4; data[4] = sprite->x << 4;
data[5] = sprite->pos1.y << 4; data[5] = sprite->y << 4;
// UB: Possible divide by zero // UB: Possible divide by zero
data[6] = SAFE_DIV(((data[2] << 4) - data[4]), data[8]); data[6] = SAFE_DIV(((data[2] << 4) - data[4]), data[8]);
@@ -3678,14 +3678,14 @@ static void Task_MoveDeoxysRock_Step(u8 taskId)
data[8]--; data[8]--;
data[4] += data[6]; data[4] += data[6];
data[5] += data[7]; data[5] += data[7];
sprite->pos1.x = data[4] >> 4; sprite->x = data[4] >> 4;
sprite->pos1.y = data[5] >> 4; sprite->y = data[5] >> 4;
} }
else else
{ {
objectEvent = &gObjectEvents[data[9]]; objectEvent = &gObjectEvents[data[9]];
sprite->pos1.x = data[2]; sprite->x = data[2];
sprite->pos1.y = data[3]; sprite->y = data[3];
ShiftStillObjectEventCoords(objectEvent); ShiftStillObjectEventCoords(objectEvent);
objectEvent->triggerGroundEffectsOnStop = TRUE; objectEvent->triggerGroundEffectsOnStop = TRUE;
FieldEffectActiveListRemove(FLDEFF_MOVE_DEOXYS_ROCK); FieldEffectActiveListRemove(FLDEFF_MOVE_DEOXYS_ROCK);
@@ -3856,8 +3856,8 @@ static void Unk44Effect_2(s16 *data, u8 taskId)
static void sub_8087CFC(struct Sprite* sprite) static void sub_8087CFC(struct Sprite* sprite)
{ {
int i; int i;
int xPos = (s16)gTotalCameraPixelOffsetX + sprite->pos1.x + sprite->pos2.x; int xPos = (s16)gTotalCameraPixelOffsetX + sprite->x + sprite->x2;
int yPos = (s16)gTotalCameraPixelOffsetY + sprite->pos1.y + sprite->pos2.y - 4; int yPos = (s16)gTotalCameraPixelOffsetY + sprite->y + sprite->y2 - 4;
for (i = 0; i < 4; i++) for (i = 0; i < 4; i++)
{ {
@@ -3876,23 +3876,23 @@ static void SpriteCB_FldEffUnk44(struct Sprite* sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos1.x -= 16; sprite->x -= 16;
sprite->pos1.y -= 12; sprite->y -= 12;
break; break;
case 1: case 1:
sprite->pos1.x += 16; sprite->x += 16;
sprite->pos1.y -= 12; sprite->y -= 12;
break; break;
case 2: case 2:
sprite->pos1.x -= 16; sprite->x -= 16;
sprite->pos1.y += 12; sprite->y += 12;
break; break;
case 3: case 3:
sprite->pos1.x += 16; sprite->x += 16;
sprite->pos1.y += 12; sprite->y += 12;
break; break;
} }
if (sprite->pos1.x < -4 || sprite->pos1.x > 0xF4 || sprite->pos1.y < -4 || sprite->pos1.y > 0xA4) if (sprite->x < -4 || sprite->x > 0xF4 || sprite->y < -4 || sprite->y > 0xA4)
DestroySprite(sprite); DestroySprite(sprite);
} }
+50 -50
View File
@@ -33,7 +33,7 @@ void SetUpReflection(struct ObjectEvent * objectEvent, struct Sprite * sprite, b
{ {
struct Sprite * reflectionSprite; 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->callback = UpdateObjectReflectionSprite;
reflectionSprite->oam.priority = 3; reflectionSprite->oam.priority = 3;
reflectionSprite->oam.paletteNum = gReflectionEffectPaletteMap[reflectionSprite->oam.paletteNum]; reflectionSprite->oam.paletteNum = gReflectionEffectPaletteMap[reflectionSprite->oam.paletteNum];
@@ -131,13 +131,13 @@ static void UpdateObjectReflectionSprite(struct Sprite * reflectionSprite)
reflectionSprite->subspriteTables = mainSprite->subspriteTables; reflectionSprite->subspriteTables = mainSprite->subspriteTables;
reflectionSprite->subspriteTableNum = mainSprite->subspriteTableNum; reflectionSprite->subspriteTableNum = mainSprite->subspriteTableNum;
reflectionSprite->invisible = mainSprite->invisible; reflectionSprite->invisible = mainSprite->invisible;
reflectionSprite->pos1.x = mainSprite->pos1.x; reflectionSprite->x = mainSprite->x;
// reflectionSprite->data[2] holds an additional vertical offset, used by the high bridges on Route 120 // reflectionSprite->data[2] holds an additional vertical offset, used by the high bridges on Route 120
reflectionSprite->pos1.y = mainSprite->pos1.y + GetReflectionVerticalOffset(objectEvent) + reflectionSprite->data[2]; reflectionSprite->y = mainSprite->y + GetReflectionVerticalOffset(objectEvent) + reflectionSprite->data[2];
reflectionSprite->centerToCornerVecX = mainSprite->centerToCornerVecX; reflectionSprite->centerToCornerVecX = mainSprite->centerToCornerVecX;
reflectionSprite->centerToCornerVecY = mainSprite->centerToCornerVecY; reflectionSprite->centerToCornerVecY = mainSprite->centerToCornerVecY;
reflectionSprite->pos2.x = mainSprite->pos2.x; reflectionSprite->x2 = mainSprite->x2;
reflectionSprite->pos2.y = -mainSprite->pos2.y; reflectionSprite->y2 = -mainSprite->y2;
reflectionSprite->coordOffsetEnabled = mainSprite->coordOffsetEnabled; reflectionSprite->coordOffsetEnabled = mainSprite->coordOffsetEnabled;
/* /*
@@ -192,8 +192,8 @@ void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y)
{ {
SetSpritePosToMapCoords(x, y, &x2, &y2); SetSpritePosToMapCoords(x, y, &x2, &y2);
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sprite->pos1.x = x2 + 8; sprite->x = x2 + 8;
sprite->pos1.y = y2 + 8; sprite->y = y2 + 8;
sprite->invisible = FALSE; sprite->invisible = FALSE;
sprite->data[0] = x; sprite->data[0] = x;
sprite->data[1] = y; sprite->data[1] = y;
@@ -250,8 +250,8 @@ void UpdateShadowFieldEffect(struct Sprite * sprite)
objectEvent = &gObjectEvents[objectEventId]; objectEvent = &gObjectEvents[objectEventId];
linkedSprite = &gSprites[objectEvent->spriteId]; linkedSprite = &gSprites[objectEvent->spriteId];
sprite->oam.priority = linkedSprite->oam.priority; sprite->oam.priority = linkedSprite->oam.priority;
sprite->pos1.x = linkedSprite->pos1.x; sprite->x = linkedSprite->x;
sprite->pos1.y = linkedSprite->pos1.y + sprite->data[3]; sprite->y = linkedSprite->y + sprite->data[3];
if (!objectEvent->active || !objectEvent->hasShadow if (!objectEvent->active || !objectEvent->hasShadow
|| MetatileBehavior_IsPokeGrass(objectEvent->currentMetatileBehavior) || MetatileBehavior_IsPokeGrass(objectEvent->currentMetatileBehavior)
|| MetatileBehavior_IsSurfable(objectEvent->currentMetatileBehavior) || MetatileBehavior_IsSurfable(objectEvent->currentMetatileBehavior)
@@ -474,8 +474,8 @@ u32 FldEff_ShortGrass(void)
sprite->data[0] = gFieldEffectArguments[0]; sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1]; sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2]; sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x; sprite->data[3] = gSprites[objectEvent->spriteId].x;
sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y; sprite->data[4] = gSprites[objectEvent->spriteId].y;
} }
return 0; return 0;
} }
@@ -496,8 +496,8 @@ void UpdateShortGrassFieldEffect(struct Sprite * sprite)
{ {
graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId); graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId);
linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId]; linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId];
y = linkedSprite->pos1.y; y = linkedSprite->y;
x = linkedSprite->pos1.x; x = linkedSprite->x;
if (x != sprite->data[3] || y != sprite->data[4]) if (x != sprite->data[3] || y != sprite->data[4])
{ {
sprite->data[3] = x; sprite->data[3] = x;
@@ -507,9 +507,9 @@ void UpdateShortGrassFieldEffect(struct Sprite * sprite)
StartSpriteAnim(sprite, 0); StartSpriteAnim(sprite, 0);
} }
} }
sprite->pos1.x = x; sprite->x = x;
sprite->pos1.y = y; sprite->y = y;
sprite->pos2.y = (graphicsInfo->height >> 1) - 8; sprite->y2 = (graphicsInfo->height >> 1) - 8;
sprite->subpriority = linkedSprite->subpriority - 1; sprite->subpriority = linkedSprite->subpriority - 1;
sprite->oam.priority = linkedSprite->oam.priority; sprite->oam.priority = linkedSprite->oam.priority;
UpdateObjectEventSpriteVisibility(sprite, linkedSprite->invisible); UpdateObjectEventSpriteVisibility(sprite, linkedSprite->invisible);
@@ -622,7 +622,7 @@ u32 FldEff_Splash(void)
sprite->data[0] = gFieldEffectArguments[0]; sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1]; sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2]; sprite->data[2] = gFieldEffectArguments[2];
sprite->pos2.y = (graphicsInfo->height >> 1) - 4; sprite->y2 = (graphicsInfo->height >> 1) - 4;
PlaySE(SE_PUDDLE); PlaySE(SE_PUDDLE);
} }
return 0; return 0;
@@ -638,8 +638,8 @@ void UpdateSplashFieldEffect(struct Sprite * sprite)
} }
else else
{ {
sprite->pos1.x = gSprites[gObjectEvents[objectEventId].spriteId].pos1.x; sprite->x = gSprites[gObjectEvents[objectEventId].spriteId].x;
sprite->pos1.y = gSprites[gObjectEvents[objectEventId].spriteId].pos1.y; sprite->y = gSprites[gObjectEvents[objectEventId].spriteId].y;
UpdateObjectEventSpriteVisibility(sprite, FALSE); UpdateObjectEventSpriteVisibility(sprite, FALSE);
} }
} }
@@ -703,7 +703,7 @@ u32 FldEff_FeetInFlowingWater(void)
sprite->data[2] = gFieldEffectArguments[2]; sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = -1; sprite->data[3] = -1;
sprite->data[4] = -1; sprite->data[4] = -1;
sprite->pos2.y = (graphicsInfo->height >> 1) - 4; sprite->y2 = (graphicsInfo->height >> 1) - 4;
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
} }
return 0; return 0;
@@ -723,8 +723,8 @@ static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite * sprite)
{ {
objectEvent = &gObjectEvents[objectEventId]; objectEvent = &gObjectEvents[objectEventId];
linkedSprite = &gSprites[objectEvent->spriteId]; linkedSprite = &gSprites[objectEvent->spriteId];
sprite->pos1.x = linkedSprite->pos1.x; sprite->x = linkedSprite->x;
sprite->pos1.y = linkedSprite->pos1.y; sprite->y = linkedSprite->y;
sprite->subpriority = linkedSprite->subpriority; sprite->subpriority = linkedSprite->subpriority;
UpdateObjectEventSpriteVisibility(sprite, FALSE); UpdateObjectEventSpriteVisibility(sprite, FALSE);
if (objectEvent->currentCoords.x != sprite->data[3] || objectEvent->currentCoords.y != sprite->data[4]) if (objectEvent->currentCoords.x != sprite->data[3] || objectEvent->currentCoords.y != sprite->data[4])
@@ -773,8 +773,8 @@ u32 FldEff_HotSpringsWater(void)
sprite->data[0] = gFieldEffectArguments[0]; sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1]; sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2]; sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x; sprite->data[3] = gSprites[objectEvent->spriteId].x;
sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y; sprite->data[4] = gSprites[objectEvent->spriteId].y;
} }
return 0; return 0;
} }
@@ -793,8 +793,8 @@ void UpdateHotSpringsWaterFieldEffect(struct Sprite * sprite)
{ {
graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId); graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId);
linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId]; linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId];
sprite->pos1.x = linkedSprite->pos1.x; sprite->x = linkedSprite->x;
sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 8; sprite->y = (graphicsInfo->height >> 1) + linkedSprite->y - 8;
sprite->subpriority = linkedSprite->subpriority - 1; sprite->subpriority = linkedSprite->subpriority - 1;
UpdateObjectEventSpriteVisibility(sprite, FALSE); UpdateObjectEventSpriteVisibility(sprite, FALSE);
} }
@@ -1023,7 +1023,7 @@ void sub_80DC588(struct ObjectEvent * objectEvent, struct Sprite * sprite)
u8 i; u8 i;
s16 x = objectEvent->currentCoords.x; s16 x = objectEvent->currentCoords.x;
s16 y = objectEvent->currentCoords.y; s16 y = objectEvent->currentCoords.y;
s32 spriteY = sprite->pos2.y; s32 spriteY = sprite->y2;
if (spriteY == 0 && (x != sprite->data[6] || y != sprite->data[7])) if (spriteY == 0 && (x != sprite->data[6] || y != sprite->data[7]))
{ {
@@ -1050,7 +1050,7 @@ static void CreateBobbingEffect(struct ObjectEvent * objectEvent, struct Sprite
{ {
if (((u16)(++ sprite->data[4]) & unk_83FECFA[sprite->data[5]]) == 0) if (((u16)(++ sprite->data[4]) & unk_83FECFA[sprite->data[5]]) == 0)
{ {
sprite->pos2.y += sprite->data[3]; sprite->y2 += sprite->data[3];
} }
if ((sprite->data[4] & 0x1F) == 0) if ((sprite->data[4] & 0x1F) == 0)
{ {
@@ -1059,13 +1059,13 @@ static void CreateBobbingEffect(struct ObjectEvent * objectEvent, struct Sprite
if (v0 != 2) if (v0 != 2)
{ {
if (sub_80DC4EC(sprite) == 0) if (sub_80DC4EC(sprite) == 0)
linkedSprite->pos2.y = sprite->pos2.y; linkedSprite->y2 = sprite->y2;
else else
linkedSprite->pos2.y = sprite->data[1] + sprite->pos2.y; linkedSprite->y2 = sprite->data[1] + sprite->y2;
if (sprite->animCmdIndex != 0) if (sprite->animCmdIndex != 0)
linkedSprite->pos2.y++; linkedSprite->y2++;
sprite->pos1.x = linkedSprite->pos1.x; sprite->x = linkedSprite->x;
sprite->pos1.y = linkedSprite->pos1.y + 8; sprite->y = linkedSprite->y + 8;
} }
} }
} }
@@ -1091,7 +1091,7 @@ static void sub_80DC700(struct Sprite * sprite)
oldSprite = &gSprites[sprite->data[0]]; oldSprite = &gSprites[sprite->data[0]];
if (((sprite->data[2]++) & 0x03) == 0) if (((sprite->data[2]++) & 0x03) == 0)
{ {
oldSprite->pos2.y += sprite->data[1]; oldSprite->y2 += sprite->data[1];
} }
if ((sprite->data[2] & 0x0F) == 0) if ((sprite->data[2] & 0x0F) == 0)
{ {
@@ -1137,9 +1137,9 @@ u32 FldEff_SandPile(void)
sprite->data[0] = gFieldEffectArguments[0]; sprite->data[0] = gFieldEffectArguments[0];
sprite->data[1] = gFieldEffectArguments[1]; sprite->data[1] = gFieldEffectArguments[1];
sprite->data[2] = gFieldEffectArguments[2]; sprite->data[2] = gFieldEffectArguments[2];
sprite->data[3] = gSprites[objectEvent->spriteId].pos1.x; sprite->data[3] = gSprites[objectEvent->spriteId].x;
sprite->data[4] = gSprites[objectEvent->spriteId].pos1.y; sprite->data[4] = gSprites[objectEvent->spriteId].y;
sprite->pos2.y = (graphicsInfo->height >> 1) - 2; sprite->y2 = (graphicsInfo->height >> 1) - 2;
SeekSpriteAnim(sprite, 2); SeekSpriteAnim(sprite, 2);
} }
return 0; return 0;
@@ -1157,8 +1157,8 @@ void UpdateSandPileFieldEffect(struct Sprite * sprite)
} }
else else
{ {
y = gSprites[gObjectEvents[objectEventId].spriteId].pos1.y; y = gSprites[gObjectEvents[objectEventId].spriteId].y;
x = gSprites[gObjectEvents[objectEventId].spriteId].pos1.x; x = gSprites[gObjectEvents[objectEventId].spriteId].x;
if (x != sprite->data[3] || y != sprite->data[4]) if (x != sprite->data[3] || y != sprite->data[4])
{ {
sprite->data[3] = x; sprite->data[3] = x;
@@ -1168,8 +1168,8 @@ void UpdateSandPileFieldEffect(struct Sprite * sprite)
StartSpriteAnim(sprite, 0); StartSpriteAnim(sprite, 0);
} }
} }
sprite->pos1.x = x; sprite->x = x;
sprite->pos1.y = y; sprite->y = y;
sprite->subpriority = gSprites[gObjectEvents[objectEventId].spriteId].subpriority; sprite->subpriority = gSprites[gObjectEvents[objectEventId].spriteId].subpriority;
UpdateObjectEventSpriteVisibility(sprite, FALSE); UpdateObjectEventSpriteVisibility(sprite, FALSE);
} }
@@ -1195,7 +1195,7 @@ void UpdateBubblesFieldEffect(struct Sprite * sprite)
{ {
sprite->data[0] += 0x80; sprite->data[0] += 0x80;
sprite->data[0] &= 0x100; sprite->data[0] &= 0x100;
sprite->pos1.y -= sprite->data[0] >> 8; sprite->y -= sprite->data[0] >> 8;
UpdateObjectEventSpriteVisibility(sprite, FALSE); UpdateObjectEventSpriteVisibility(sprite, FALSE);
if (sprite->invisible || sprite->animEnded) if (sprite->invisible || sprite->animEnded)
{ {
@@ -1274,8 +1274,8 @@ void UpdateDisguiseFieldEffect(struct Sprite * sprite)
graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId); graphicsInfo = GetObjectEventGraphicsInfo(gObjectEvents[objectEventId].graphicsId);
linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId]; linkedSprite = &gSprites[gObjectEvents[objectEventId].spriteId];
sprite->invisible = linkedSprite->invisible; sprite->invisible = linkedSprite->invisible;
sprite->pos1.x = linkedSprite->pos1.x; sprite->x = linkedSprite->x;
sprite->pos1.y = (graphicsInfo->height >> 1) + linkedSprite->pos1.y - 16; sprite->y = (graphicsInfo->height >> 1) + linkedSprite->y - 16;
sprite->subpriority = linkedSprite->subpriority - 1; sprite->subpriority = linkedSprite->subpriority - 1;
if (sprite->data[0] == 1) if (sprite->data[0] == 1)
{ {
@@ -1392,13 +1392,13 @@ static void sub_80DCD48(struct Sprite * sprite, u8 z, u8 offset)
{ {
graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId);
linkedSprite = &gSprites[objectEvent->spriteId]; linkedSprite = &gSprites[objectEvent->spriteId];
xhi = sprite->pos1.x + sprite->centerToCornerVecX; xhi = sprite->x + sprite->centerToCornerVecX;
var = sprite->pos1.x - sprite->centerToCornerVecX; var = sprite->x - sprite->centerToCornerVecX;
if (xhi < linkedSprite->pos1.x && var > linkedSprite->pos1.x) if (xhi < linkedSprite->x && var > linkedSprite->x)
{ {
lyhi = linkedSprite->pos1.y + linkedSprite->centerToCornerVecY; lyhi = linkedSprite->y + linkedSprite->centerToCornerVecY;
var = linkedSprite->pos1.y; var = linkedSprite->y;
ylo = sprite->pos1.y - sprite->centerToCornerVecY; ylo = sprite->y - sprite->centerToCornerVecY;
yhi = ylo + linkedSprite->centerToCornerVecY; yhi = ylo + linkedSprite->centerToCornerVecY;
if ((lyhi < yhi || lyhi < ylo) && var > yhi && sprite->subpriority <= linkedSprite->subpriority) if ((lyhi < yhi || lyhi < ylo) && var > yhi && sprite->subpriority <= linkedSprite->subpriority)
{ {
+8 -8
View File
@@ -849,8 +849,8 @@ static void sub_807EAC4(s16 a0, s16 a1, s16 *a2, s16 *a3, s16 *a4)
*a3 += a1; *a3 += a1;
*a2 += a0; *a2 += a0;
(*a4)++; (*a4)++;
playerSpr->pos2.x = *a2 >> 5; playerSpr->x2 = *a2 >> 5;
playerSpr->pos2.y = *a3 >> 5; playerSpr->y2 = *a3 >> 5;
if (playerObj->heldMovementFinished) if (playerObj->heldMovementFinished)
{ {
ObjectEventForceSetHeldMovement(playerObj, GetWalkInPlaceNormalMovementAction(GetPlayerFacingDirection())); ObjectEventForceSetHeldMovement(playerObj, GetWalkInPlaceNormalMovementAction(GetPlayerFacingDirection()));
@@ -937,8 +937,8 @@ static void sub_807ECBC(s16 *a0, s16 *a1, s16 *a2, s16 *a3, s16 *a4)
*a3 = *a1 * 16; *a3 = *a1 * 16;
*a4 = 16; *a4 = 16;
sprite = &gSprites[gPlayerAvatar.spriteId]; sprite = &gSprites[gPlayerAvatar.spriteId];
sprite->pos2.x = *a2 >> 5; sprite->x2 = *a2 >> 5;
sprite->pos2.y = *a3 >> 5; sprite->y2 = *a3 >> 5;
*a0 *= -1; *a0 *= -1;
*a1 *= -1; *a1 *= -1;
} }
@@ -951,15 +951,15 @@ static bool8 sub_807EDA0(s16 *a0, s16 *a1, s16 *a2, s16 *a3, s16 *a4)
{ {
*a2 += *a0; *a2 += *a0;
*a3 += *a1; *a3 += *a1;
sprite->pos2.x = *a2 >> 5; sprite->x2 = *a2 >> 5;
sprite->pos2.y = *a3 >> 5; sprite->y2 = *a3 >> 5;
(*a4)--; (*a4)--;
return TRUE; return TRUE;
} }
else else
{ {
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
return FALSE; return FALSE;
} }
} }
+21 -21
View File
@@ -1862,8 +1862,8 @@ static bool8 Fishing11(struct Task *task)
ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection); ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection);
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
sub_80DC4A4(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 0, 0); sub_80DC4A4(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 0, 0);
gSprites[gPlayerAvatar.spriteId].pos2.x = 0; gSprites[gPlayerAvatar.spriteId].x2 = 0;
gSprites[gPlayerAvatar.spriteId].pos2.y = 0; gSprites[gPlayerAvatar.spriteId].y2 = 0;
ClearDialogWindowAndFrame(0, TRUE); ClearDialogWindowAndFrame(0, TRUE);
task->tFrameCounter++; task->tFrameCounter++;
return FALSE; return FALSE;
@@ -1920,8 +1920,8 @@ static bool8 Fishing15(struct Task *task)
ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection); ObjectEventTurn(playerObjEvent, playerObjEvent->movementDirection);
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
sub_80DC4A4(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 0, 0); sub_80DC4A4(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 0, 0);
gSprites[gPlayerAvatar.spriteId].pos2.x = 0; gSprites[gPlayerAvatar.spriteId].x2 = 0;
gSprites[gPlayerAvatar.spriteId].pos2.y = 0; gSprites[gPlayerAvatar.spriteId].y2 = 0;
task->tStep++; task->tStep++;
} }
return FALSE; return FALSE;
@@ -1951,8 +1951,8 @@ void AlignFishingAnimationFrames(struct Sprite * playerSprite)
u8 animType; u8 animType;
AnimateSprite(playerSprite); AnimateSprite(playerSprite);
playerSprite->pos2.x = 0; playerSprite->x2 = 0;
playerSprite->pos2.y = 0; playerSprite->y2 = 0;
animCmdIndex = playerSprite->animCmdIndex; animCmdIndex = playerSprite->animCmdIndex;
if (playerSprite->anims[playerSprite->animNum][animCmdIndex].type == -1) if (playerSprite->anims[playerSprite->animNum][animCmdIndex].type == -1)
{ {
@@ -1967,16 +1967,16 @@ void AlignFishingAnimationFrames(struct Sprite * playerSprite)
animType = playerSprite->anims[playerSprite->animNum][animCmdIndex].type; animType = playerSprite->anims[playerSprite->animNum][animCmdIndex].type;
if (animType == 1 || animType == 2 || animType == 3) if (animType == 1 || animType == 2 || animType == 3)
{ {
playerSprite->pos2.x = 8; playerSprite->x2 = 8;
if (GetPlayerFacingDirection() == 3) if (GetPlayerFacingDirection() == 3)
playerSprite->pos2.x = -8; playerSprite->x2 = -8;
} }
if (animType == 5) if (animType == 5)
playerSprite->pos2.y = -8; playerSprite->y2 = -8;
if (animType == 10 || animType == 11) if (animType == 10 || animType == 11)
playerSprite->pos2.y = 8; playerSprite->y2 = 8;
if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING) if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_SURFING)
sub_80DC4A4(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 1, playerSprite->pos2.y); sub_80DC4A4(gObjectEvents[gPlayerAvatar.objectEventId].fieldEffectSpriteId, 1, playerSprite->y2);
} }
#define tState data[0] #define tState data[0]
@@ -2038,8 +2038,8 @@ static void Task_TeleportWarpOutPlayerAnim(u8 taskId)
SavePlayerFacingDirectionForTeleport(object->facingDirection); SavePlayerFacingDirectionForTeleport(object->facingDirection);
tRotationTimer = 0; tRotationTimer = 0;
tDeltaY = 1; tDeltaY = 1;
tYdeflection = (u16)(sprite->pos1.y + sprite->pos2.y) * 16; tYdeflection = (u16)(sprite->y + sprite->y2) * 16;
sprite->pos2.y = 0; sprite->y2 = 0;
CameraObjectReset2(); CameraObjectReset2();
object->fixedPriority = TRUE; object->fixedPriority = TRUE;
sprite->oam.priority = 0; sprite->oam.priority = 0;
@@ -2050,8 +2050,8 @@ static void Task_TeleportWarpOutPlayerAnim(u8 taskId)
TeleportAnim_RotatePlayer(object, &tRotationTimer); TeleportAnim_RotatePlayer(object, &tRotationTimer);
tYdeflection -= tDeltaY; tYdeflection -= tDeltaY;
tDeltaY += 3; tDeltaY += 3;
sprite->pos1.y = tYdeflection >> 4; sprite->y = tYdeflection >> 4;
if (sprite->pos1.y + (s16)gTotalCameraPixelOffsetY < -32) if (sprite->y + (s16)gTotalCameraPixelOffsetY < -32)
{ {
tState++; tState++;
} }
@@ -2086,11 +2086,11 @@ static void Task_TeleportWarpInPlayerAnim(u8 taskId)
ObjectEventForceSetHeldMovement(object, GetFaceDirectionMovementAction(sTeleportFacingDirectionSequence[tFinalFacingDirection])); ObjectEventForceSetHeldMovement(object, GetFaceDirectionMovementAction(sTeleportFacingDirectionSequence[tFinalFacingDirection]));
tRotationTimer = 0; tRotationTimer = 0;
tDeltaY = 116; tDeltaY = 116;
tYpos = sprite->pos1.y; tYpos = sprite->y;
tPriority = sprite->oam.priority; tPriority = sprite->oam.priority;
tSubpriority = sprite->subpriority; tSubpriority = sprite->subpriority;
tYdeflection = -((u16)sprite->pos2.y + 32) * 16; tYdeflection = -((u16)sprite->y2 + 32) * 16;
sprite->pos2.y = 0; sprite->y2 = 0;
CameraObjectReset2(); CameraObjectReset2();
object->fixedPriority = TRUE; object->fixedPriority = TRUE;
sprite->oam.priority = 1; sprite->oam.priority = 1;
@@ -2105,10 +2105,10 @@ static void Task_TeleportWarpInPlayerAnim(u8 taskId)
{ {
tDeltaY = 4; tDeltaY = 4;
} }
sprite->pos1.y = tYdeflection >> 4; sprite->y = tYdeflection >> 4;
if (sprite->pos1.y >= tYpos) if (sprite->y >= tYpos)
{ {
sprite->pos1.y = tYpos; sprite->y = tYpos;
tLandingDelay = 0; tLandingDelay = 0;
tState++; tState++;
} }
+54 -54
View File
@@ -164,7 +164,7 @@ static void CreateCloudSprites(void)
{ {
gWeatherPtr->sprites.s1.cloudSprites[i] = &gSprites[spriteId]; gWeatherPtr->sprites.s1.cloudSprites[i] = &gSprites[spriteId];
sprite = gWeatherPtr->sprites.s1.cloudSprites[i]; 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; sprite->coordOffsetEnabled = TRUE;
} }
else else
@@ -198,7 +198,7 @@ static void UpdateCloudSprite(struct Sprite *sprite)
// Move 1 pixel left every 2 frames. // Move 1 pixel left every 2 frames.
sprite->data[0] = (sprite->data[0] + 1) & 1; sprite->data[0] = (sprite->data[0] + 1) & 1;
if (sprite->data[0]) if (sprite->data[0])
sprite->pos1.x--; sprite->x--;
} }
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
@@ -559,12 +559,12 @@ static void UpdateRainSprite(struct Sprite *sprite)
// Raindrop is in its "falling" motion. // Raindrop is in its "falling" motion.
sprite->tPosX += sRainSpriteMovement[gWeatherPtr->isDownpour][0]; sprite->tPosX += sRainSpriteMovement[gWeatherPtr->isDownpour][0];
sprite->tPosY += sRainSpriteMovement[gWeatherPtr->isDownpour][1]; sprite->tPosY += sRainSpriteMovement[gWeatherPtr->isDownpour][1];
sprite->pos1.x = sprite->tPosX >> 4; sprite->x = sprite->tPosX >> 4;
sprite->pos1.y = sprite->tPosY >> 4; sprite->y = sprite->tPosY >> 4;
if (sprite->tActive if (sprite->tActive
&& (sprite->pos1.x >= -8 && sprite->pos1.x <= 248) && (sprite->x >= -8 && sprite->x <= 248)
&& sprite->pos1.y >= -16 && sprite->pos1.y <= 176) && sprite->y >= -16 && sprite->y <= 176)
sprite->invisible = FALSE; sprite->invisible = FALSE;
else else
sprite->invisible = TRUE; sprite->invisible = TRUE;
@@ -574,8 +574,8 @@ static void UpdateRainSprite(struct Sprite *sprite)
// Make raindrop splash on the ground // Make raindrop splash on the ground
StartSpriteAnim(sprite, gWeatherPtr->isDownpour + 1); StartSpriteAnim(sprite, gWeatherPtr->isDownpour + 1);
sprite->tState = 1; sprite->tState = 1;
sprite->pos1.x -= gSpriteCoordOffsetX; sprite->x -= gSpriteCoordOffsetX;
sprite->pos1.y -= gSpriteCoordOffsetY; sprite->y -= gSpriteCoordOffsetY;
sprite->coordOffsetEnabled = TRUE; sprite->coordOffsetEnabled = TRUE;
} }
} }
@@ -885,10 +885,10 @@ static void InitSnowflakeSpriteMovement(struct Sprite *sprite)
u16 rand; u16 rand;
u16 x = ((sprite->tSnowflakeId * 5) & 7) * 30 + (Random() % 30); u16 x = ((sprite->tSnowflakeId * 5) & 7) * 30 + (Random() % 30);
sprite->pos1.y = -3 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); sprite->y = -3 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->pos1.x = x - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); sprite->x = x - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
sprite->tPosY = sprite->pos1.y * 128; sprite->tPosY = sprite->y * 128;
sprite->pos2.x = 0; sprite->x2 = 0;
rand = Random(); rand = Random();
sprite->tDeltaY = (rand & 3) * 5 + 64; sprite->tDeltaY = (rand & 3) * 5 + 64;
sprite->tDeltaY2 = sprite->tDeltaY; sprite->tDeltaY2 = sprite->tDeltaY;
@@ -905,8 +905,8 @@ static void WaitSnowflakeSprite(struct Sprite *sprite)
{ {
sprite->invisible = FALSE; sprite->invisible = FALSE;
sprite->callback = UpdateSnowflakeSprite; sprite->callback = UpdateSnowflakeSprite;
sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); sprite->y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->tPosY = sprite->pos1.y * 128; sprite->tPosY = sprite->y * 128;
gWeatherPtr->unknown_6E2 = 0; gWeatherPtr->unknown_6E2 = 0;
} }
} }
@@ -917,32 +917,32 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite)
s16 y; s16 y;
sprite->tPosY += sprite->tDeltaY; sprite->tPosY += sprite->tDeltaY;
sprite->pos1.y = sprite->tPosY >> 7; sprite->y = sprite->tPosY >> 7;
sprite->tWaveIndex += sprite->tWaveDelta; sprite->tWaveIndex += sprite->tWaveDelta;
sprite->tWaveIndex &= 0xFF; 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) if (x & 0x100)
x |= -0x100; x |= -0x100;
if (x < -3) if (x < -3)
sprite->pos1.x = 242 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX); sprite->x = 242 - (gSpriteCoordOffsetX + sprite->centerToCornerVecX);
else if (x > 242) 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) if (y > 163 && y < 171)
{ {
sprite->pos1.y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY); sprite->y = 250 - (gSpriteCoordOffsetY + sprite->centerToCornerVecY);
sprite->tPosY = sprite->pos1.y * 128; sprite->tPosY = sprite->y * 128;
sprite->tFallCounter = 0; sprite->tFallCounter = 0;
sprite->tFallDuration = 220; sprite->tFallDuration = 220;
} }
else if (y > 242 && y < 250) else if (y > 242 && y < 250)
{ {
sprite->pos1.y = 163; sprite->y = 163;
sprite->tPosY = sprite->pos1.y * 128; sprite->tPosY = sprite->y * 128;
sprite->tFallCounter = 0; sprite->tFallCounter = 0;
sprite->tFallDuration = 220; sprite->tFallDuration = 220;
sprite->invisible = TRUE; sprite->invisible = TRUE;
@@ -952,7 +952,7 @@ static void UpdateSnowflakeSprite(struct Sprite *sprite)
if (++sprite->tFallCounter == sprite->tFallDuration) if (++sprite->tFallCounter == sprite->tFallDuration)
{ {
InitSnowflakeSpriteMovement(sprite); InitSnowflakeSpriteMovement(sprite);
sprite->pos1.y = 250; sprite->y = 250;
sprite->invisible = TRUE; sprite->invisible = TRUE;
sprite->callback = WaitSnowflakeSprite; sprite->callback = WaitSnowflakeSprite;
} }
@@ -1361,12 +1361,12 @@ bool8 FogHorizontal_Finish(void)
static void FogHorizontalSpriteCallback(struct Sprite *sprite) static void FogHorizontalSpriteCallback(struct Sprite *sprite)
{ {
sprite->pos2.y = (u8)gSpriteCoordOffsetY; sprite->y2 = (u8)gSpriteCoordOffsetY;
sprite->pos1.x = gWeatherPtr->fogHScrollPosX + 32 + sprite->tSpriteColumn * 64; sprite->x = gWeatherPtr->fogHScrollPosX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271) if (sprite->x > 271)
{ {
sprite->pos1.x = 480 + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64; sprite->x = 480 + gWeatherPtr->fogHScrollPosX - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF; sprite->x &= 0x1FF;
} }
} }
@@ -1391,8 +1391,8 @@ static void CreateFogHorizontalSprites(void)
{ {
sprite = &gSprites[spriteId]; sprite = &gSprites[spriteId];
sprite->tSpriteColumn = i % 5; sprite->tSpriteColumn = i % 5;
sprite->pos1.x = (i % 5) * 64 + 32; sprite->x = (i % 5) * 64 + 32;
sprite->pos1.y = (i / 5) * 64 + 32; sprite->y = (i / 5) * 64 + 32;
gWeatherPtr->sprites.s2.fogHSprites[i] = sprite; gWeatherPtr->sprites.s2.fogHSprites[i] = sprite;
} }
else else
@@ -1615,12 +1615,12 @@ static void UpdateAshSprite(struct Sprite *sprite)
sprite->tOffsetY++; sprite->tOffsetY++;
} }
sprite->pos1.y = gSpriteCoordOffsetY + sprite->tOffsetY; sprite->y = gSpriteCoordOffsetY + sprite->tOffsetY;
sprite->pos1.x = gWeatherPtr->ashBaseSpritesX + 32 + sprite->tSpriteColumn * 64; sprite->x = gWeatherPtr->ashBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271) if (sprite->x > 271)
{ {
sprite->pos1.x = gWeatherPtr->ashBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; sprite->x = gWeatherPtr->ashBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF; sprite->x &= 0x1FF;
} }
} }
@@ -1820,12 +1820,12 @@ static void DestroyFogDiagonalSprites(void)
static void UpdateFogDiagonalSprite(struct Sprite *sprite) static void UpdateFogDiagonalSprite(struct Sprite *sprite)
{ {
sprite->pos2.y = gWeatherPtr->fogDPosY; sprite->y2 = gWeatherPtr->fogDPosY;
sprite->pos1.x = gWeatherPtr->fogDBaseSpritesX + 32 + sprite->tSpriteColumn * 64; sprite->x = gWeatherPtr->fogDBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271) if (sprite->x > 271)
{ {
sprite->pos1.x = gWeatherPtr->fogDBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; sprite->x = gWeatherPtr->fogDBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF; sprite->x &= 0x1FF;
} }
} }
@@ -2090,12 +2090,12 @@ static void CreateSwirlSandstormSprites(void)
static void UpdateSandstormSprite(struct Sprite *sprite) static void UpdateSandstormSprite(struct Sprite *sprite)
{ {
sprite->pos2.y = gWeatherPtr->sandstormPosY; sprite->y2 = gWeatherPtr->sandstormPosY;
sprite->pos1.x = gWeatherPtr->sandstormBaseSpritesX + 32 + sprite->tSpriteColumn * 64; sprite->x = gWeatherPtr->sandstormBaseSpritesX + 32 + sprite->tSpriteColumn * 64;
if (sprite->pos1.x > 271) if (sprite->x > 271)
{ {
sprite->pos1.x = gWeatherPtr->sandstormBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64; sprite->x = gWeatherPtr->sandstormBaseSpritesX + 480 - (4 - sprite->tSpriteColumn) * 64;
sprite->pos1.x &= 0x1FF; sprite->x &= 0x1FF;
} }
} }
@@ -2109,16 +2109,16 @@ static void UpdateSandstormSwirlSprite(struct Sprite *sprite)
{ {
u32 x, y; u32 x, y;
if (--sprite->pos1.y < -48) if (--sprite->y < -48)
{ {
sprite->pos1.y = 208; sprite->y = 208;
sprite->tRadius = 4; sprite->tRadius = 4;
} }
x = sprite->tRadius * gSineTable[sprite->tWaveIndex]; x = sprite->tRadius * gSineTable[sprite->tWaveIndex];
y = sprite->tRadius * gSineTable[sprite->tWaveIndex + 0x40]; y = sprite->tRadius * gSineTable[sprite->tWaveIndex + 0x40];
sprite->pos2.x = x >> 8; sprite->x2 = x >> 8;
sprite->pos2.y = y >> 8; sprite->y2 = y >> 8;
sprite->tWaveIndex = (sprite->tWaveIndex + 10) & 0xFF; sprite->tWaveIndex = (sprite->tWaveIndex + 10) & 0xFF;
if (++sprite->tRadiusCounter > 8) if (++sprite->tRadiusCounter > 8)
{ {
@@ -2299,17 +2299,17 @@ static void UpdateBubbleSprite(struct Sprite *sprite)
sprite->tScrollXCounter = 0; sprite->tScrollXCounter = 0;
if (sprite->tScrollXDir == 0) if (sprite->tScrollXDir == 0)
{ {
if (++sprite->pos2.x > 4) if (++sprite->x2 > 4)
sprite->tScrollXDir = 1; sprite->tScrollXDir = 1;
} }
else else
{ {
if (--sprite->pos2.x <= 0) if (--sprite->x2 <= 0)
sprite->tScrollXDir = 0; sprite->tScrollXDir = 0;
} }
} }
sprite->pos1.y -= 3; sprite->y -= 3;
if (++sprite->tCounter >= 120) if (++sprite->tCounter >= 120)
DestroySprite(sprite); DestroySprite(sprite);
} }
+60 -60
View File
@@ -414,7 +414,7 @@ const struct SpriteTemplate gFocusPunchFistSpriteTemplate =
static void unc_080B08A0(struct Sprite *sprite) static void unc_080B08A0(struct Sprite *sprite)
{ {
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[0] = 15; sprite->data[0] = 15;
sprite->callback = WaitAnimForDuration; sprite->callback = WaitAnimForDuration;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@@ -475,8 +475,8 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite)
if (gBattleAnimArgs[2] < 0) if (gBattleAnimArgs[2] < 0)
gBattleAnimArgs[2] = Random() % 5; gBattleAnimArgs[2] = Random() % 5;
StartSpriteAnim(sprite, gBattleAnimArgs[2]); StartSpriteAnim(sprite, gBattleAnimArgs[2]);
sprite->pos1.x = GetBattlerSpriteCoord(battler, 2); sprite->x = GetBattlerSpriteCoord(battler, 2);
sprite->pos1.y = GetBattlerSpriteCoord(battler, 3); sprite->y = GetBattlerSpriteCoord(battler, 3);
xMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_WIDTH) / 2; xMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_WIDTH) / 2;
yMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; yMod = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4;
x = Random() % xMod; x = Random() % xMod;
@@ -487,10 +487,10 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite)
y *= -1; y *= -1;
if ((gBattlerPositions[battler] & BIT_SIDE) == B_SIDE_PLAYER) if ((gBattlerPositions[battler] & BIT_SIDE) == B_SIDE_PLAYER)
y += 0xFFF0; y += 0xFFF0;
sprite->pos1.x += x; sprite->x += x;
sprite->pos1.y += y; sprite->y += y;
sprite->data[0] = gBattleAnimArgs[1]; 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) if (sprite->data[7] != 64)
{ {
StartSpriteAffineAnim(&gSprites[sprite->data[7]], 0); StartSpriteAffineAnim(&gSprites[sprite->data[7]], 0);
@@ -522,14 +522,14 @@ static void AnimCrossChopHand(struct Sprite *sprite)
sprite->data[0] = 30; sprite->data[0] = 30;
if (gBattleAnimArgs[2] == 0) if (gBattleAnimArgs[2] == 0)
{ {
sprite->data[2] = sprite->pos1.x - 20; sprite->data[2] = sprite->x - 20;
} }
else else
{ {
sprite->data[2] = sprite->pos1.x + 20; sprite->data[2] = sprite->x + 20;
sprite->hFlip = 1; sprite->hFlip = 1;
} }
sprite->data[4] = sprite->pos1.y - 20; sprite->data[4] = sprite->y - 20;
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, sub_80B0BD8); StoreSpriteCallbackInData6(sprite, sub_80B0BD8);
} }
@@ -538,13 +538,13 @@ static void sub_80B0BD8(struct Sprite *sprite)
{ {
if (++sprite->data[5] == 11) if (++sprite->data[5] == 11)
{ {
sprite->data[2] = sprite->pos1.x - sprite->pos2.x; sprite->data[2] = sprite->x - sprite->x2;
sprite->data[4] = sprite->pos1.y - sprite->pos2.y; sprite->data[4] = sprite->y - sprite->y2;
sprite->data[0] = 8; sprite->data[0] = 8;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
} }
@@ -558,10 +558,10 @@ static void AnimSlidingKick(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2]; gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[3]; sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = sprite->pos1.y; sprite->data[4] = sprite->y;
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->data[5] = gBattleAnimArgs[5]; sprite->data[5] = gBattleAnimArgs[5];
sprite->data[6] = gBattleAnimArgs[4]; sprite->data[6] = gBattleAnimArgs[4];
@@ -573,7 +573,7 @@ static void sub_80B0CB4(struct Sprite *sprite)
{ {
if (!AnimTranslateLinear(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]; sprite->data[7] += sprite->data[6];
} }
else else
@@ -648,8 +648,8 @@ static void AnimDizzyPunchDuck(struct Sprite *sprite)
else else
{ {
sprite->data[4] += sprite->data[1]; sprite->data[4] += sprite->data[1];
sprite->pos2.x = sprite->data[4] >> 8; sprite->x2 = sprite->data[4] >> 8;
sprite->pos2.y = Sin(sprite->data[3], sprite->data[2]); sprite->y2 = Sin(sprite->data[3], sprite->data[2]);
sprite->data[3] = (sprite->data[3] + 3) & 0xFF; sprite->data[3] = (sprite->data[3] + 3) & 0xFF;
if (sprite->data[3] > 100) if (sprite->data[3] > 100)
sprite->invisible = sprite->data[3] % 2; sprite->invisible = sprite->data[3] % 2;
@@ -662,16 +662,16 @@ static void AnimBrickBreakWall(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
} }
sprite->pos1.x += gBattleAnimArgs[1]; sprite->x += gBattleAnimArgs[1];
sprite->pos1.y += gBattleAnimArgs[2]; sprite->y += gBattleAnimArgs[2];
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[4]; sprite->data[2] = gBattleAnimArgs[4];
@@ -698,9 +698,9 @@ static void sub_80B0EF0(struct Sprite *sprite)
sprite->data[1] = 0; sprite->data[1] = 0;
++sprite->data[3]; ++sprite->data[3];
if (sprite->data[3] & 1) if (sprite->data[3] & 1)
sprite->pos2.x = 2; sprite->x2 = 2;
else else
sprite->pos2.x = -2; sprite->x2 = -2;
} }
if (--sprite->data[2] == 0) if (--sprite->data[2] == 0)
@@ -713,13 +713,13 @@ static void AnimBrickBreakWallShard(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2]; sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[2];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3]; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[3];
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[2]; sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[2];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[3]; sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[3];
} }
sprite->oam.tileNum += gBattleAnimArgs[1] * 16; sprite->oam.tileNum += gBattleAnimArgs[1] * 16;
sprite->data[0] = 0; sprite->data[0] = 0;
@@ -750,8 +750,8 @@ static void AnimBrickBreakWallShard(struct Sprite *sprite)
static void sub_80B1050(struct Sprite *sprite) static void sub_80B1050(struct Sprite *sprite)
{ {
sprite->pos1.x += sprite->data[6]; sprite->x += sprite->data[6];
sprite->pos1.y += sprite->data[7]; sprite->y += sprite->data[7];
if (++sprite->data[0] > 40) if (++sprite->data[0] > 40)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -760,8 +760,8 @@ static void AnimSuperpowerOrb(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
sprite->data[7] = gBattleAnimTarget; sprite->data[7] = gBattleAnimTarget;
} }
@@ -782,9 +782,9 @@ static void sub_80B111C(struct Sprite *sprite)
{ {
SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDCNT, 0);
sprite->data[0] = 16; 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[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); sprite->data[4] = GetBattlerSpriteCoord(sprite->data[7], 3);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
@@ -794,10 +794,10 @@ static void sub_80B111C(struct Sprite *sprite)
static void AnimSuperpowerRock(struct Sprite *sprite) static void AnimSuperpowerRock(struct Sprite *sprite)
{ {
sprite->pos1.x = gBattleAnimArgs[0]; sprite->x = gBattleAnimArgs[0];
sprite->pos1.y = 120; sprite->y = 120;
sprite->data[0] = gBattleAnimArgs[3]; 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->data[6] = gBattleAnimArgs[1];
sprite->oam.tileNum += gBattleAnimArgs[2] * 4; sprite->oam.tileNum += gBattleAnimArgs[2] * 4;
sprite->callback = sub_80B11E4; sprite->callback = sub_80B11E4;
@@ -813,8 +813,8 @@ static void sub_80B11E4(struct Sprite *sprite)
var0 -= sprite->data[6]; var0 -= sprite->data[6];
StorePointerInVars(&sprite->data[4], &sprite->data[5], var0); StorePointerInVars(&sprite->data[4], &sprite->data[5], var0);
var0 = (void *)(((intptr_t)var0) >> 8); var0 = (void *)(((intptr_t)var0) >> 8);
sprite->pos1.y = (intptr_t)var0; sprite->y = (intptr_t)var0;
if (sprite->pos1.y < -8) if (sprite->y < -8)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
else else
--sprite->data[0]; --sprite->data[0];
@@ -828,8 +828,8 @@ static void sub_80B11E4(struct Sprite *sprite)
sprite->data[0] = pos2 - pos0; sprite->data[0] = pos2 - pos0;
sprite->data[1] = pos3 - pos1; sprite->data[1] = pos3 - pos1;
sprite->data[2] = sprite->pos1.x << 4; sprite->data[2] = sprite->x << 4;
sprite->data[3] = sprite->pos1.y << 4; sprite->data[3] = sprite->y << 4;
sprite->callback = sub_80B12A4; sprite->callback = sub_80B12A4;
} }
} }
@@ -840,10 +840,10 @@ static void sub_80B12A4(struct Sprite *sprite)
sprite->data[2] += sprite->data[0]; sprite->data[2] += sprite->data[0];
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->pos1.x = sprite->data[2] >> 4; sprite->x = sprite->data[2] >> 4;
sprite->pos1.y = sprite->data[3] >> 4; sprite->y = sprite->data[3] >> 4;
edgeX = sprite->pos1.x + 8; edgeX = sprite->x + 8;
if (edgeX > 256 || sprite->pos1.y < -8 || sprite->pos1.y > 120) if (edgeX > 256 || sprite->y < -8 || sprite->y > 120)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -853,8 +853,8 @@ static void AnimSuperpowerFireball(struct Sprite *sprite)
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattlerAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattlerAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattlerAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattlerAttacker, 3);
battler = gBattleAnimTarget; battler = gBattleAnimTarget;
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker);
} }
@@ -868,9 +868,9 @@ static void AnimSuperpowerFireball(struct Sprite *sprite)
else if (GetBattlerSide(battler) == B_SIDE_PLAYER) else if (GetBattlerSide(battler) == B_SIDE_PLAYER)
sprite->oam.matrixNum |= (ST_OAM_HFLIP | ST_OAM_VFLIP); sprite->oam.matrixNum |= (ST_OAM_HFLIP | ST_OAM_VFLIP);
sprite->data[0] = 16; sprite->data[0] = 16;
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(battler, 2); sprite->data[2] = GetBattlerSpriteCoord(battler, 2);
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(battler, 3); sprite->data[4] = GetBattlerSpriteCoord(battler, 3);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@@ -888,8 +888,8 @@ static void AnimArmThrustHit(struct Sprite *sprite)
{ {
u8 turn; u8 turn;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[0];
sprite->data[3] = gBattleAnimArgs[1]; sprite->data[3] = gBattleAnimArgs[1];
@@ -903,8 +903,8 @@ static void AnimArmThrustHit(struct Sprite *sprite)
++sprite->data[1]; ++sprite->data[1];
} }
StartSpriteAnim(sprite, sprite->data[1]); StartSpriteAnim(sprite, sprite->data[1]);
sprite->pos2.x = sprite->data[2]; sprite->x2 = sprite->data[2];
sprite->pos2.y = sprite->data[3]; sprite->y2 = sprite->data[3];
sprite->callback = sub_80B13D4; sprite->callback = sub_80B13D4;
} }
@@ -927,7 +927,7 @@ static void AnimFocusPunchFist(struct Sprite *sprite)
if (sprite->affineAnimEnded) if (sprite->affineAnimEnded)
{ {
sprite->data[1] = (sprite->data[1] + 40) & 0xFF; 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) if (++sprite->data[0] > 40)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
+75 -75
View File
@@ -472,7 +472,7 @@ static void AnimFireSpiralInward(struct Sprite *sprite)
static void AnimFireSpread(struct Sprite *sprite) static void AnimFireSpread(struct Sprite *sprite)
{ {
SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]);
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[2];
sprite->data[2] = gBattleAnimArgs[3]; sprite->data[2] = gBattleAnimArgs[3];
@@ -485,14 +485,14 @@ static void AnimFirePlume(struct Sprite *sprite)
SetSpriteCoordsToAnimAttackerCoords(sprite); SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[2] = -gBattleAnimArgs[4]; sprite->data[2] = -gBattleAnimArgs[4];
} }
else else
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[2] = gBattleAnimArgs[4]; sprite->data[2] = gBattleAnimArgs[4];
} }
sprite->data[1] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[2];
@@ -505,14 +505,14 @@ static void AnimLargeFlame(struct Sprite *sprite)
{ {
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[2] = gBattleAnimArgs[4]; sprite->data[2] = gBattleAnimArgs[4];
} }
else else
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[2] = -gBattleAnimArgs[4]; sprite->data[2] = -gBattleAnimArgs[4];
} }
sprite->data[1] = gBattleAnimArgs[2]; sprite->data[1] = gBattleAnimArgs[2];
@@ -525,8 +525,8 @@ static void sub_80ACA6C(struct Sprite *sprite)
{ {
if (++sprite->data[0] < sprite->data[4]) if (++sprite->data[0] < sprite->data[4])
{ {
sprite->pos2.x += sprite->data[2]; sprite->x2 += sprite->data[2];
sprite->pos2.y += sprite->data[3]; sprite->y2 += sprite->data[3];
} }
if (sprite->data[0] == sprite->data[1]) if (sprite->data[0] == sprite->data[1])
DestroySpriteAndMatrix(sprite); DestroySpriteAndMatrix(sprite);
@@ -537,14 +537,14 @@ static void sub_80ACAA8(struct Sprite *sprite)
SetSpriteCoordsToAnimAttackerCoords(sprite); SetSpriteCoordsToAnimAttackerCoords(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
} }
else else
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->subpriority = 8; sprite->subpriority = 8;
} }
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[4]; sprite->data[2] = gBattleAnimArgs[4];
@@ -560,8 +560,8 @@ static void sub_80ACB1C(struct Sprite *sprite)
{ {
if(sprite->data[5] > 10000) if(sprite->data[5] > 10000)
sprite->subpriority = 1; sprite->subpriority = 1;
sprite->pos2.x = Sin(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8)); sprite->x2 = 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->y2 = Cos(sprite->data[0], sprite->data[1] + (sprite->data[5] >> 8));
sprite->data[0] += sprite->data[2]; sprite->data[0] += sprite->data[2];
sprite->data[5] += sprite->data[4]; sprite->data[5] += sprite->data[4];
if (sprite->data[0] > 255) if (sprite->data[0] > 255)
@@ -579,8 +579,8 @@ static void sub_80ACB1C(struct Sprite *sprite)
//sunlight //sunlight
static void sub_80ACBB0(struct Sprite *sprite) static void sub_80ACBB0(struct Sprite *sprite)
{ {
sprite->pos1.x = 0; sprite->x = 0;
sprite->pos1.y = 0; sprite->y = 0;
sprite->data[0] = 60; sprite->data[0] = 60;
sprite->data[2] = 140; sprite->data[2] = 140;
sprite->data[4] = 80; sprite->data[4] = 80;
@@ -639,9 +639,9 @@ static void AnimFireRing_Step1(struct Sprite *sprite)
if (++sprite->data[0] == 0x12) if (++sprite->data[0] == 0x12)
{ {
sprite->data[0] = 0x19; sprite->data[0] = 0x19;
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->callback = AnimFireRing_Step2; sprite->callback = AnimFireRing_Step2;
@@ -654,16 +654,16 @@ static void AnimFireRing_Step2(struct Sprite *sprite)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
sprite->callback = AnimFireRing_Step3; sprite->callback = AnimFireRing_Step3;
sprite->callback(sprite); sprite->callback(sprite);
} }
else else
{ {
sprite->pos2.x += Sin(sprite->data[7], 28); sprite->x2 += Sin(sprite->data[7], 28);
sprite->pos2.y += Cos(sprite->data[7], 28); sprite->y2 += Cos(sprite->data[7], 28);
sprite->data[7] = (sprite->data[7] + 20) & 0xFF; sprite->data[7] = (sprite->data[7] + 20) & 0xFF;
} }
} }
@@ -677,8 +677,8 @@ static void AnimFireRing_Step3(struct Sprite *sprite)
static void UpdateFireRingCircleOffset(struct Sprite *sprite) static void UpdateFireRingCircleOffset(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[7], 28); sprite->x2 = Sin(sprite->data[7], 28);
sprite->pos2.y = Cos(sprite->data[7], 28); sprite->y2 = Cos(sprite->data[7], 28);
sprite->data[7] = (sprite->data[7] + 20) & 0xFF; sprite->data[7] = (sprite->data[7] + 20) & 0xFF;
} }
@@ -690,8 +690,8 @@ static void UpdateFireRingCircleOffset(struct Sprite *sprite)
// AnimFireCross(struct Sprite *sprite) // AnimFireCross(struct Sprite *sprite)
static void AnimFireCross(struct Sprite *sprite) static void AnimFireCross(struct Sprite *sprite)
{ {
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[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[4]; sprite->data[2] = gBattleAnimArgs[4];
@@ -720,8 +720,8 @@ static void sub_80ACE28(struct Sprite *sprite)
static void sub_80ACE50(struct Sprite *sprite) static void sub_80ACE50(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[1], sprite->data[2] >> 8); sprite->x2 = Sin(sprite->data[1], sprite->data[2] >> 8);
sprite->pos2.y = Cos(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[1] = (sprite->data[1] + 10) & 0xFF;
sprite->data[2] += 0xD0; sprite->data[2] += 0xD0;
if (--sprite->data[0] == -1) if (--sprite->data[0] == -1)
@@ -737,7 +737,7 @@ void AnimTask_EruptionLaunchRocks(u8 taskId) // initialize animation task for Mo
task->data[1] = 0; task->data[1] = 0;
task->data[2] = 0; task->data[2] = 0;
task->data[3] = 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[5] = GetBattlerSide(gBattleAnimAttacker);
task->data[6] = 0; task->data[6] = 0;
PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL); PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL);
@@ -759,22 +759,22 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) // animate Move_ERUPTIO
{ {
task->data[1] = 0; task->data[1] = 0;
if (++task->data[2] & 0x1) if (++task->data[2] & 0x1)
gSprites[task->data[15]].pos2.x = 3; gSprites[task->data[15]].x2 = 3;
else else
gSprites[task->data[15]].pos2.x = -3; gSprites[task->data[15]].x2 = -3;
} }
if (task->data[5]) if (task->data[5])
{ {
if (++task->data[3] > 4) if (++task->data[3] > 4)
{ {
task->data[3] = 0; task->data[3] = 0;
++gSprites[task->data[15]].pos1.y; ++gSprites[task->data[15]].y;
} }
} }
if(!BattleAnimHelper_RunSpriteSquash(task)) if(!BattleAnimHelper_RunSpriteSquash(task))
{ {
SetBattlerSpriteYOffsetFromYScale(task->data[15]); SetBattlerSpriteYOffsetFromYScale(task->data[15]);
gSprites[task->data[15]].pos2.x = 0; gSprites[task->data[15]].x2 = 0;
task->data[1] = 0; task->data[1] = 0;
task->data[2] = 0; task->data[2] = 0;
task->data[3] = 0; task->data[3] = 0;
@@ -804,9 +804,9 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) // animate Move_ERUPTIO
{ {
task->data[1] = 0; task->data[1] = 0;
if (++task->data[2] & 1) if (++task->data[2] & 1)
gSprites[task->data[15]].pos2.y += 3; gSprites[task->data[15]].y2 += 3;
else else
gSprites[task->data[15]].pos2.y -= 3; gSprites[task->data[15]].y2 -= 3;
} }
if (++task->data[3] > 0x18) if (++task->data[3] > 0x18)
{ {
@@ -815,7 +815,7 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) // animate Move_ERUPTIO
else else
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0x180, 0xC0, 0x100, 0x100, 0x8); BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 0x180, 0xC0, 0x100, 0x100, 0x8);
if (task->data[2] & 1) if (task->data[2] & 1)
gSprites[task->data[15]].pos2.y -= 3; gSprites[task->data[15]].y2 -= 3;
task->data[1] = 0; task->data[1] = 0;
task->data[2] = 0; task->data[2] = 0;
task->data[3] = 0; task->data[3] = 0;
@@ -824,10 +824,10 @@ static void AnimTask_EruptionLaunchRocks_Step(u8 taskId) // animate Move_ERUPTIO
break; break;
case 5: case 5:
if (task->data[5]) if (task->data[5])
--gSprites[task->data[15]].pos1.y; --gSprites[task->data[15]].y;
if (!BattleAnimHelper_RunSpriteSquash(task)) if (!BattleAnimHelper_RunSpriteSquash(task))
{ {
gSprites[task->data[15]].pos1.y = task->data[4]; gSprites[task->data[15]].y = task->data[4];
ResetSpriteRotScale(task->data[15]); ResetSpriteRotScale(task->data[15]);
task->data[2] = 0; task->data[2] = 0;
@@ -846,7 +846,7 @@ static void sub_80AD1F8(u8 spriteId, u8 taskId, u8 a3)
u16 i, j; u16 i, j;
s8 sign; s8 sign;
u16 y = sub_80AD374(spriteId); u16 y = sub_80AD374(spriteId);
u16 x = gSprites[spriteId].pos1.x; u16 x = gSprites[spriteId].x;
if(GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if(GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{ {
@@ -887,7 +887,7 @@ static void AnimEruptionLaunchRock(struct Sprite *sprite)
static u16 sub_80AD374(u8 spriteId) static u16 sub_80AD374(u8 spriteId)
{ {
u16 var1 = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y + gSprites[spriteId].centerToCornerVecY; u16 var1 = gSprites[spriteId].y + gSprites[spriteId].y2 + gSprites[spriteId].centerToCornerVecY;
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
var1 = ((var1 << 16) + 0x4A0000) >> 16; var1 = ((var1 << 16) + 0x4A0000) >> 16;
@@ -900,8 +900,8 @@ static void sub_80AD3C8(struct Sprite *sprite, s16 x, s16 y)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->data[2] = (u16)sprite->pos1.x * 8; sprite->data[2] = (u16)sprite->x * 8;
sprite->data[3] = (u16)sprite->pos1.y * 8; sprite->data[3] = (u16)sprite->y * 8;
sprite->data[4] = x * 8; sprite->data[4] = x * 8;
sprite->data[5] = y * 8; sprite->data[5] = y * 8;
} }
@@ -918,17 +918,17 @@ static void sub_80AD3E4(struct Sprite *sprite)
sprite->data[3] += var1; sprite->data[3] += var1;
} }
sprite->data[2] += sprite->data[4]; 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->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; sprite->invisible = TRUE;
} }
static void AnimEruptionFallingRock(struct Sprite *sprite) static void AnimEruptionFallingRock(struct Sprite *sprite)
{ {
sprite->pos1.x = gBattleAnimArgs[0]; sprite->x = gBattleAnimArgs[0];
sprite->pos1.y = gBattleAnimArgs[1]; sprite->y = gBattleAnimArgs[1];
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->data[2] = 0; sprite->data[2] = 0;
@@ -951,10 +951,10 @@ static void sub_80AD4A8(struct Sprite *sprite)
++sprite->data[0]; ++sprite->data[0];
// fall through // fall through
case 1: case 1:
sprite->pos1.y += 8; sprite->y += 8;
if (sprite->pos1.y >= sprite->data[7]) if (sprite->y >= sprite->data[7])
{ {
sprite->pos1.y = sprite->data[7]; sprite->y = sprite->data[7];
++sprite->data[0]; ++sprite->data[0];
} }
break; break;
@@ -963,9 +963,9 @@ static void sub_80AD4A8(struct Sprite *sprite)
{ {
sprite->data[1] = 0; sprite->data[1] = 0;
if ((++sprite->data[2] & 1) != 0) if ((++sprite->data[2] & 1) != 0)
sprite->pos2.y = -3; sprite->y2 = -3;
else else
sprite->pos2.y = 3; sprite->y2 = 3;
} }
if (++sprite->data[3] > 16) if (++sprite->data[3] > 16)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
@@ -992,10 +992,10 @@ static void AnimWillOWispOrb(struct Sprite *sprite)
case 1: case 1:
sprite->data[1] += 192; sprite->data[1] += 192;
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos2.y = -(sprite->data[1] >> 8); sprite->y2 = -(sprite->data[1] >> 8);
else 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; sprite->data[2] = (sprite->data[2] + 4) & 0xFF;
if (++sprite->data[3] == 1) if (++sprite->data[3] == 1)
{ {
@@ -1004,17 +1004,17 @@ static void AnimWillOWispOrb(struct Sprite *sprite)
} }
break; break;
case 2: 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; sprite->data[2] = (sprite->data[2] + 4) & 0xFF;
if (++sprite->data[3] == 31) if (++sprite->data[3] == 31)
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
sprite->data[0] = 256; sprite->data[0] = 256;
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
BattleAnim_InitLinearTranslationWithDuration(sprite); BattleAnim_InitLinearTranslationWithDuration(sprite);
sprite->callback = sub_80AD690; sprite->callback = sub_80AD690;
@@ -1029,7 +1029,7 @@ static void sub_80AD690(struct Sprite *sprite)
if (!AnimTranslateLinear(sprite)) if (!AnimTranslateLinear(sprite))
{ {
sprite->pos2.x += Sin(sprite->data[5], 16); sprite->x2 += Sin(sprite->data[5], 16);
initialData5 = sprite->data[5]; initialData5 = sprite->data[5];
sprite->data[5] = (sprite->data[5] + 4) & 0xFF; sprite->data[5] = (sprite->data[5] + 4) & 0xFF;
newData5 = sprite->data[5]; newData5 = sprite->data[5];
@@ -1052,8 +1052,8 @@ static void AnimWillOWispFire(struct Sprite *sprite)
} }
sprite->data[3] += 0xC0 * 2; sprite->data[3] += 0xC0 * 2;
sprite->data[4] += 0xA0; sprite->data[4] += 0xA0;
sprite->pos2.x = Sin(sprite->data[1], sprite->data[3] >> 8); sprite->x2 = Sin(sprite->data[1], sprite->data[3] >> 8);
sprite->pos2.y = Cos(sprite->data[1], sprite->data[4] >> 8); sprite->y2 = Cos(sprite->data[1], sprite->data[4] >> 8);
sprite->data[1] = (sprite->data[1] + 7) & 0xFF; sprite->data[1] = (sprite->data[1] + 7) & 0xFF;
if (!IsContest()) if (!IsContest())
{ {
@@ -1104,7 +1104,7 @@ static void sub_80AD870(u8 taskId)
task->data[11] = -2; task->data[11] = -2;
} }
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++) 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) if (++task->data[9] == 16)
{ {
task->data[9] = 0; task->data[9] = 0;
@@ -1122,7 +1122,7 @@ static void sub_80AD870(u8 taskId)
task->data[11] = -2; task->data[11] = -2;
} }
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++) 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) if (++task->data[9] == 96)
{ {
task->data[9] = 0; task->data[9] = 0;
@@ -1141,13 +1141,13 @@ static void sub_80AD870(u8 taskId)
task->data[11] = -2; task->data[11] = -2;
} }
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[3]++) 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) if (++task->data[9] == 16)
++task->data[0]; ++task->data[0];
break; break;
case 3: case 3:
for (task->data[3] = 0; task->data[3] < task->data[13]; task->data[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); DestroyAnimVisualTask(taskId);
break; break;
} }
@@ -1184,13 +1184,13 @@ void AnimTask_ShakeTargetInPattern(u8 taskId)
else else
unk = sShakeDirsPattern1[gTasks[taskId].data[0] % 10]; unk = sShakeDirsPattern1[gTasks[taskId].data[0] % 10];
if (gTasks[taskId].data[3] == 1) if (gTasks[taskId].data[3] == 1)
gSprites[spriteId].pos2.y = gBattleAnimArgs[1] * unk < 0 ? -(gBattleAnimArgs[1] * unk) : gBattleAnimArgs[1] * unk; gSprites[spriteId].y2 = gBattleAnimArgs[1] * unk < 0 ? -(gBattleAnimArgs[1] * unk) : gBattleAnimArgs[1] * unk;
else else
gSprites[spriteId].pos2.x = gBattleAnimArgs[1] * unk; gSprites[spriteId].x2 = gBattleAnimArgs[1] * unk;
if (gTasks[taskId].data[0] == gTasks[taskId].data[1]) if (gTasks[taskId].data[0] == gTasks[taskId].data[1])
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
} }
+2 -2
View File
@@ -261,8 +261,8 @@ static void SpriteCallback_CutGrass_Init(struct Sprite * sprite)
static void SpriteCallback_CutGrass_Run(struct Sprite * sprite) static void SpriteCallback_CutGrass_Run(struct Sprite * sprite)
{ {
sprite->pos2.x = Sin(sprite->data[2], sprite->data[0]); sprite->x2 = Sin(sprite->data[2], sprite->data[0]);
sprite->pos2.y = Cos(sprite->data[2], sprite->data[0]); sprite->y2 = Cos(sprite->data[2], sprite->data[0]);
sprite->data[2] += 8; sprite->data[2] += 8;
sprite->data[2] &= 0xFF; sprite->data[2] &= 0xFF;
sprite->data[0]++; sprite->data[0]++;
+84 -84
View File
@@ -363,7 +363,7 @@ const struct SpriteTemplate gSkyAttackBirdSpriteTemplate =
static void AnimEllipticalGust(struct Sprite *sprite) static void AnimEllipticalGust(struct Sprite *sprite)
{ {
InitSpritePosToAnimTarget(sprite, FALSE); InitSpritePosToAnimTarget(sprite, FALSE);
sprite->pos1.y += 20; sprite->y += 20;
sprite->data[1] = 191; sprite->data[1] = 191;
sprite->callback = sub_80B190C; sprite->callback = sub_80B190C;
sprite->callback(sprite); sprite->callback(sprite);
@@ -371,8 +371,8 @@ static void AnimEllipticalGust(struct Sprite *sprite)
static void sub_80B190C(struct Sprite *sprite) static void sub_80B190C(struct Sprite *sprite)
{ {
sprite->pos2.x = Sin(sprite->data[1], 32); sprite->x2 = Sin(sprite->data[1], 32);
sprite->pos2.y = Cos(sprite->data[1], 8); sprite->y2 = Cos(sprite->data[1], 8);
sprite->data[1] += 5; sprite->data[1] += 5;
sprite->data[1] &= 0xFF; sprite->data[1] &= 0xFF;
if (++sprite->data[0] == 71) if (++sprite->data[0] == 71)
@@ -417,9 +417,9 @@ static void AnimGustToTarget(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2]; gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[4]; 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[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]; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3];
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds; sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
@@ -446,10 +446,10 @@ static void AnimAirWaveCrescent(struct Sprite *sprite)
gBattleAnimArgs[1] = -gBattleAnimArgs[1]; gBattleAnimArgs[1] = -gBattleAnimArgs[1];
gBattleAnimArgs[3] = -gBattleAnimArgs[3]; gBattleAnimArgs[3] = -gBattleAnimArgs[3];
} }
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
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[0] = gBattleAnimArgs[4];
if (gBattleAnimArgs[6] == 0) if (gBattleAnimArgs[6] == 0)
{ {
@@ -485,9 +485,9 @@ static void sub_80B1BF8(struct Sprite *sprite)
else else
{ {
sprite->data[2] += sprite->data[1]; 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); DestroyAnimSprite(sprite);
} }
@@ -495,19 +495,19 @@ static void AnimFlyBallAttack(struct Sprite *sprite)
{ {
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x = 272; sprite->x = 272;
sprite->pos1.y = -32; sprite->y = -32;
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
} }
else else
{ {
sprite->pos1.x = -32; sprite->x = -32;
sprite->pos1.y = -32; sprite->y = -32;
} }
sprite->data[0] = gBattleAnimArgs[0]; 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[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); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->callback = sub_80B1CC0; sprite->callback = sub_80B1CC0;
@@ -519,13 +519,13 @@ static void sub_80B1CC0(struct Sprite *sprite)
AnimTranslateLinear(sprite); AnimTranslateLinear(sprite);
if (((u16)sprite->data[3] >> 8) > 200) if (((u16)sprite->data[3] >> 8) > 200)
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->data[3] &= 0xFF; sprite->data[3] &= 0xFF;
} }
if (sprite->pos1.x + sprite->pos2.x < -32 if (sprite->x + sprite->x2 < -32
|| sprite->pos1.x + sprite->pos2.x > 272 || sprite->x + sprite->x2 > 272
|| sprite->pos1.y + sprite->pos2.y > 160) || sprite->y + sprite->y2 > 160)
{ {
gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE; gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE;
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
@@ -576,10 +576,10 @@ static void AnimFallingFeather(struct Sprite *sprite)
battler = gBattleAnimTarget; battler = gBattleAnimTarget;
if (GetBattlerSide(battler) == B_SIDE_PLAYER) if (GetBattlerSide(battler) == B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; 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); 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->unkE_1 = spriteCoord + gBattleAnimArgs[6];
data->unk0_0c = 1; data->unk0_0c = 1;
data->unk2 = gBattleAnimArgs[2] & 0xFF; data->unk2 = gBattleAnimArgs[2] & 0xFF;
@@ -616,9 +616,9 @@ static void AnimFallingFeather(struct Sprite *sprite)
} }
} }
data->unk0_1 = data->unk2 >> 6; 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; matrixNum = sprite->oam.matrixNum;
sinIndex = (-sprite->pos2.x >> 1) + data->unkA; sinIndex = (-sprite->x2 >> 1) + data->unkA;
sinVal = gSineTable[sinIndex]; sinVal = gSineTable[sinIndex];
gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64]; gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64];
if (sprite) if (sprite)
@@ -858,10 +858,10 @@ static void AnimFallingFeather_Step(struct Sprite *sprite)
break; 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; matrixNum = sprite->oam.matrixNum;
sinIndex = (-sprite->pos2.x >> 1) + data->unkA; sinIndex = (-sprite->x2 >> 1) + data->unkA;
sinVal = gSineTable[sinIndex]; sinVal = gSineTable[sinIndex];
gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64]; gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[sinIndex + 64];
@@ -869,13 +869,13 @@ static void AnimFallingFeather_Step(struct Sprite *sprite)
gOamMatrices[matrixNum].c = -sinVal; gOamMatrices[matrixNum].c = -sinVal;
data->unk8 += data->unk6; data->unk8 += data->unk6;
sprite->pos1.y = data->unk8 >> 8; sprite->y = data->unk8 >> 8;
if (data->unk4 & 0x8000) if (data->unk4 & 0x8000)
data->unk2 = (data->unk2 - (data->unk4 & 0x7FFF)) & 0xFF; data->unk2 = (data->unk2 - (data->unk4 & 0x7FFF)) & 0xFF;
else else
data->unk2 = (data->unk2 + (data->unk4 & 0x7FFF)) & 0xFF; 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->data[0] = 0;
sprite->callback = DestroyAnimSpriteAfterTimer; sprite->callback = DestroyAnimSpriteAfterTimer;
@@ -886,8 +886,8 @@ static void AnimFallingFeather_Step(struct Sprite *sprite)
static void sub_80B24C0(struct Sprite *sprite) static void sub_80B24C0(struct Sprite *sprite)
{ {
sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget); sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimTarget);
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->callback = TranslateAnimSpriteToTargetMonLocation; sprite->callback = TranslateAnimSpriteToTargetMonLocation;
} }
@@ -917,8 +917,8 @@ static void sub_80B2514(struct Sprite *sprite)
sprite->data[4] = gSineTable[sprite->data[1] & 0xFF]; sprite->data[4] = gSineTable[sprite->data[1] & 0xFF];
sprite->data[5] = -gSineTable[(sprite->data[1] & 0xFF) + 64]; sprite->data[5] = -gSineTable[(sprite->data[1] & 0xFF) + 64];
sprite->data[6] = 0; sprite->data[6] = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
matrixNum = sprite->oam.matrixNum; matrixNum = sprite->oam.matrixNum;
sprite->data[1] = (u16)sprite->data[1] >> 8; sprite->data[1] = (u16)sprite->data[1] >> 8;
rn = Random(); rn = Random();
@@ -948,18 +948,18 @@ static void sub_80B268C(struct Sprite *sprite)
++sprite->data[0]; ++sprite->data[0];
if (sprite->data[0] <= 4) if (sprite->data[0] <= 4)
return; return;
sprite->pos2.x = (sprite->data[4] * sprite->data[6]) >> 8; sprite->x2 = (sprite->data[4] * sprite->data[6]) >> 8;
sprite->pos2.y = (sprite->data[5] * sprite->data[6]) >> 8; sprite->y2 = (sprite->data[5] * sprite->data[6]) >> 8;
sprite->data[6] += sprite->data[3] & 0xFF; sprite->data[6] += sprite->data[3] & 0xFF;
if (sprite->data[6] < (sprite->data[2] & 0xFF)) if (sprite->data[6] < (sprite->data[2] & 0xFF))
return; return;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
memcpy(&fData, tData, sizeof(struct FeatherDanceData)); memcpy(&fData, tData, sizeof(struct FeatherDanceData));
memset(tData, 0, sizeof(struct FeatherDanceData)); memset(tData, 0, sizeof(struct FeatherDanceData));
tData->unk8 = sprite->pos1.y << 8; tData->unk8 = sprite->y << 8;
tData->unk6 = fData.unk6 >> 8; tData->unk6 = fData.unk6 >> 8;
tData->unk2 = 0; tData->unk2 = 0;
tData->unkA = fData.unk2; tData->unkA = fData.unk2;
@@ -998,13 +998,13 @@ static void AnimWhirlwindLine(struct Sprite *sprite)
InitSpritePosToAnimTarget(sprite, FALSE); InitSpritePosToAnimTarget(sprite, FALSE);
if ((!gBattleAnimArgs[2] && GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if ((!gBattleAnimArgs[2] && GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
|| (gBattleAnimArgs[2] == 1 && GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)) || (gBattleAnimArgs[2] == 1 && GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER))
sprite->pos1.x += 8; sprite->x += 8;
SeekSpriteAnim(sprite, gBattleAnimArgs[4]); SeekSpriteAnim(sprite, gBattleAnimArgs[4]);
sprite->pos1.x -= 32; sprite->x -= 32;
sprite->data[1] = 0x0ccc; sprite->data[1] = 0x0ccc;
arg = gBattleAnimArgs[4]; arg = gBattleAnimArgs[4];
mult = 12; mult = 12;
sprite->pos2.x += mult * arg; sprite->x2 += mult * arg;
sprite->data[0] = arg; sprite->data[0] = arg;
sprite->data[7] = gBattleAnimArgs[3]; sprite->data[7] = gBattleAnimArgs[3];
sprite->callback = sub_80B2820; sprite->callback = sub_80B2820;
@@ -1012,11 +1012,11 @@ static void AnimWhirlwindLine(struct Sprite *sprite)
static void sub_80B2820(struct Sprite *sprite) static void sub_80B2820(struct Sprite *sprite)
{ {
sprite->pos2.x += sprite->data[1] >> 8; sprite->x2 += sprite->data[1] >> 8;
if (++sprite->data[0] == 6) if (++sprite->data[0] == 6)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
StartSpriteAnim(sprite, 0); StartSpriteAnim(sprite, 0);
} }
@@ -1064,18 +1064,18 @@ static void AnimBounceBallLand(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->pos2.y = -sprite->pos1.y - 32; sprite->y2 = -sprite->y - 32;
++sprite->data[0]; ++sprite->data[0];
break; break;
case 1: case 1:
sprite->pos2.y += 10; sprite->y2 += 10;
if (sprite->pos2.y >= 0) if (sprite->y2 >= 0)
++sprite->data[0]; ++sprite->data[0];
break; break;
case 2: case 2:
sprite->pos2.y -= 10; sprite->y2 -= 10;
if (sprite->pos1.y + sprite->pos2.y < -32) if (sprite->y + sprite->y2 < -32)
{ {
gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE; gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].invisible = FALSE;
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
@@ -1099,10 +1099,10 @@ static void sub_80B2A50(struct Sprite *sprite)
{ {
--sprite->data[0]; --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->data[2] += sprite->data[1];
sprite->pos2.y -= (sprite->data[2] >> 8); sprite->y2 -= (sprite->data[2] >> 8);
} }
else else
{ {
@@ -1114,10 +1114,10 @@ static void sub_80B2A50(struct Sprite *sprite)
static void sub_80B2AB0(struct Sprite *sprite) static void sub_80B2AB0(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; sprite->invisible = FALSE;
if (sprite->pos2.y > 0) if (sprite->y2 > 0)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -1131,13 +1131,13 @@ static void AnimDiveWaterSplash(struct Sprite *sprite)
case 0: case 0:
if (!gBattleAnimArgs[0]) if (!gBattleAnimArgs[0])
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
} }
sprite->data[1] = 512; sprite->data[1] = 512;
TrySetSpriteRotScale(sprite, 0, 256, sprite->data[1], 0); TrySetSpriteRotScale(sprite, 0, 256, sprite->data[1], 0);
@@ -1156,7 +1156,7 @@ static void AnimDiveWaterSplash(struct Sprite *sprite)
if (t2 > 128) if (t2 > 128)
t2 = 128; t2 = 128;
t2 = (64 - t2) / 2; t2 = (64 - t2) / 2;
sprite->pos2.y = t2; sprite->y2 = t2;
if (sprite->data[2] == 24) if (sprite->data[2] == 24)
{ {
TryResetSpriteAffineState(sprite); TryResetSpriteAffineState(sprite);
@@ -1185,13 +1185,13 @@ static void AnimSprayWaterDroplet(struct Sprite *sprite)
sprite->oam.matrixNum = ST_OAM_HFLIP; sprite->oam.matrixNum = ST_OAM_HFLIP;
if (gBattleAnimArgs[1] == 0) if (gBattleAnimArgs[1] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + 32;
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 32; sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + 32;
} }
sprite->callback = sub_80B2C88; sprite->callback = sub_80B2C88;
} }
@@ -1200,13 +1200,13 @@ static void sub_80B2C88(struct Sprite *sprite)
{ {
if (sprite->data[2] == 0) if (sprite->data[2] == 0)
{ {
sprite->pos2.x += sprite->data[0] >> 8; sprite->x2 += sprite->data[0] >> 8;
sprite->pos2.y -= sprite->data[1] >> 8; sprite->y2 -= sprite->data[1] >> 8;
} }
else else
{ {
sprite->pos2.x -= sprite->data[0] >> 8; sprite->x2 -= sprite->data[0] >> 8;
sprite->pos2.y -= sprite->data[1] >> 8; sprite->y2 -= sprite->data[1] >> 8;
} }
sprite->data[0] = sprite->data[0]; sprite->data[0] = sprite->data[0];
sprite->data[1] -= 32; sprite->data[1] -= 32;
@@ -1245,16 +1245,16 @@ static void sub_80B2CF8(struct Sprite *sprite)
static void AnimSkyAttackBird(struct Sprite *sprite) static void AnimSkyAttackBird(struct Sprite *sprite)
{ {
u16 rotation; u16 rotation;
s16 posx = sprite->pos1.x; s16 posx = sprite->x;
s16 posy = sprite->pos1.y; s16 posy = sprite->y;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->data[4] = sprite->pos1.x << 4; sprite->data[4] = sprite->x << 4;
sprite->data[5] = sprite->pos1.y << 4; sprite->data[5] = sprite->y << 4;
sprite->data[6] = ((posx - sprite->pos1.x) << 4) / 12; sprite->data[6] = ((posx - sprite->x) << 4) / 12;
sprite->data[7] = ((posy - sprite->pos1.y) << 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 += 49152; rotation += 49152;
TrySetSpriteRotScale(sprite, 1, 0x100, 0x100, rotation); TrySetSpriteRotScale(sprite, 1, 0x100, 0x100, rotation);
sprite->callback = sub_80B2E20; sprite->callback = sub_80B2E20;
@@ -1264,10 +1264,10 @@ static void sub_80B2E20(struct Sprite *sprite)
{ {
sprite->data[4] += sprite->data[6]; sprite->data[4] += sprite->data[6];
sprite->data[5] += sprite->data[7]; sprite->data[5] += sprite->data[7];
sprite->pos1.x = sprite->data[4] >> 4; sprite->x = sprite->data[4] >> 4;
sprite->pos1.y = sprite->data[5] >> 4; sprite->y = sprite->data[5] >> 4;
if (sprite->pos1.x > 285 || sprite->pos1.x < -45 if (sprite->x > 285 || sprite->x < -45
|| sprite->pos1.y > 157 || sprite->pos1.y < -45) || sprite->y > 157 || sprite->y < -45)
DestroySpriteAndMatrix(sprite); DestroySpriteAndMatrix(sprite);
} }
+49 -49
View File
@@ -222,9 +222,9 @@ static void AnimConfuseRayBallBounce(struct Sprite *sprite)
{ {
InitSpritePosToAnimAttacker(sprite, 1); InitSpritePosToAnimAttacker(sprite, 1);
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
BattleAnim_InitLinearTranslationWithDuration(sprite); BattleAnim_InitLinearTranslationWithDuration(sprite);
sprite->callback = sub_80B52D0; sprite->callback = sub_80B52D0;
@@ -243,8 +243,8 @@ static void sub_80B52D0(struct Sprite *sprite)
sprite->callback = sub_80B5344; sprite->callback = sub_80B5344;
return; return;
} }
sprite->pos2.x += Sin(sprite->data[5], 10); sprite->x2 += Sin(sprite->data[5], 10);
sprite->pos2.y += Cos(sprite->data[5], 15); sprite->y2 += Cos(sprite->data[5], 15);
r2 = sprite->data[5]; r2 = sprite->data[5];
sprite->data[5] = (sprite->data[5] + 5) & 0xFF; sprite->data[5] = (sprite->data[5] + 5) & 0xFF;
r0 = sprite->data[5]; r0 = sprite->data[5];
@@ -261,8 +261,8 @@ static void sub_80B5344(struct Sprite *sprite)
sprite->data[0] = 1; sprite->data[0] = 1;
AnimTranslateLinear(sprite); AnimTranslateLinear(sprite);
sprite->pos2.x += Sin(sprite->data[5], 10); sprite->x2 += Sin(sprite->data[5], 10);
sprite->pos2.y += Cos(sprite->data[5], 15); sprite->y2 += Cos(sprite->data[5], 15);
r2 = sprite->data[5]; r2 = sprite->data[5];
sprite->data[5] = (sprite->data[5] + 5) & 0xFF; sprite->data[5] = (sprite->data[5] + 5) & 0xFF;
r0 = sprite->data[5]; r0 = sprite->data[5];
@@ -317,8 +317,8 @@ static void sub_80B5470(struct Sprite *sprite)
{ {
u16 temp1; u16 temp1;
sprite->pos2.x = Sin(sprite->data[0], 32); sprite->x2 = Sin(sprite->data[0], 32);
sprite->pos2.y = Cos(sprite->data[0], 8); sprite->y2 = Cos(sprite->data[0], 8);
temp1 = sprite->data[0] - 65; temp1 = sprite->data[0] - 65;
if (temp1 <= 130) if (temp1 <= 130)
sprite->oam.priority = 2; sprite->oam.priority = 2;
@@ -326,7 +326,7 @@ static void sub_80B5470(struct Sprite *sprite)
sprite->oam.priority = 1; sprite->oam.priority = 1;
sprite->data[0] = (sprite->data[0] + 19) & 0xFF; sprite->data[0] = (sprite->data[0] + 19) & 0xFF;
sprite->data[2] += 80; sprite->data[2] += 80;
sprite->pos2.y += sprite->data[2] >> 8; sprite->y2 += sprite->data[2] >> 8;
sprite->data[7] += 1; sprite->data[7] += 1;
if (sprite->data[7] == 61) if (sprite->data[7] == 61)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
@@ -395,19 +395,19 @@ static void sub_80B55C8(u8 taskId)
// arg 2: duration step 3 (center -> target) // arg 2: duration step 3 (center -> target)
static void AnimShadowBall(struct Sprite *sprite) static void AnimShadowBall(struct Sprite *sprite)
{ {
s16 oldPosX = sprite->pos1.x; s16 oldPosX = sprite->x;
s16 oldPosY = sprite->pos1.y; s16 oldPosY = sprite->y;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = gBattleAnimArgs[0]; sprite->data[1] = gBattleAnimArgs[0];
sprite->data[2] = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[1];
sprite->data[3] = gBattleAnimArgs[2]; sprite->data[3] = gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.x << 4; sprite->data[4] = sprite->x << 4;
sprite->data[5] = sprite->pos1.y << 4; sprite->data[5] = sprite->y << 4;
sprite->data[6] = ((oldPosX - sprite->pos1.x) << 4) / (gBattleAnimArgs[0] << 1); sprite->data[6] = ((oldPosX - sprite->x) << 4) / (gBattleAnimArgs[0] << 1);
sprite->data[7] = ((oldPosY - sprite->pos1.y) << 4) / (gBattleAnimArgs[0] << 1); sprite->data[7] = ((oldPosY - sprite->y) << 4) / (gBattleAnimArgs[0] << 1);
sprite->callback = AnimShadowBallStep; sprite->callback = AnimShadowBallStep;
} }
@@ -418,8 +418,8 @@ static void AnimShadowBallStep(struct Sprite *sprite)
case 0: case 0:
sprite->data[4] += sprite->data[6]; sprite->data[4] += sprite->data[6];
sprite->data[5] += sprite->data[7]; sprite->data[5] += sprite->data[7];
sprite->pos1.x = sprite->data[4] >> 4; sprite->x = sprite->data[4] >> 4;
sprite->pos1.y = sprite->data[5] >> 4; sprite->y = sprite->data[5] >> 4;
sprite->data[1] -= 1; sprite->data[1] -= 1;
if (sprite->data[1] > 0) if (sprite->data[1] > 0)
break; break;
@@ -431,22 +431,22 @@ static void AnimShadowBallStep(struct Sprite *sprite)
break; break;
sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[1] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->data[4] = sprite->pos1.x << 4; sprite->data[4] = sprite->x << 4;
sprite->data[5] = sprite->pos1.y << 4; sprite->data[5] = sprite->y << 4;
sprite->data[6] = ((sprite->data[1] - sprite->pos1.x) << 4) / sprite->data[3]; sprite->data[6] = ((sprite->data[1] - sprite->x) << 4) / sprite->data[3];
sprite->data[7] = ((sprite->data[2] - sprite->pos1.y) << 4) / sprite->data[3]; sprite->data[7] = ((sprite->data[2] - sprite->y) << 4) / sprite->data[3];
sprite->data[0] += 1; sprite->data[0] += 1;
break; break;
case 2: case 2:
sprite->data[4] += sprite->data[6]; sprite->data[4] += sprite->data[6];
sprite->data[5] += sprite->data[7]; sprite->data[5] += sprite->data[7];
sprite->pos1.x = sprite->data[4] >> 4; sprite->x = sprite->data[4] >> 4;
sprite->pos1.y = sprite->data[5] >> 4; sprite->y = sprite->data[5] >> 4;
sprite->data[3] -= 1; sprite->data[3] -= 1;
if (sprite->data[3] > 0) if (sprite->data[3] > 0)
break; break;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
sprite->data[0] += 1; sprite->data[0] += 1;
break; break;
case 3: case 3:
@@ -648,7 +648,7 @@ static void sub_80B5AD4(u8 taskId)
++task->data[15]; ++task->data[15];
break; break;
case 2: 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) if (startLine < 0)
startLine = 0; startLine = 0;
if (position == 1) if (position == 1)
@@ -762,8 +762,8 @@ static void AnimDestinyBondWhiteShadow(struct Sprite *sprite)
sprite->data[6] = battler2Y; sprite->data[6] = battler2Y;
sprite->data[7] = sprite->data[4] / 2; sprite->data[7] = sprite->data[4] / 2;
sprite->oam.priority = 2; sprite->oam.priority = 2;
sprite->pos1.x = battler1X; sprite->x = battler1X;
sprite->pos1.y = battler1Y; sprite->y = battler1Y;
sprite->callback = sub_80B5FE0; sprite->callback = sub_80B5FE0;
sprite->invisible = TRUE; sprite->invisible = TRUE;
} }
@@ -774,8 +774,8 @@ static void sub_80B5FE0(struct Sprite *sprite)
{ {
sprite->data[0] += sprite->data[2]; sprite->data[0] += sprite->data[2];
sprite->data[1] += sprite->data[3]; sprite->data[1] += sprite->data[3];
sprite->pos1.x = sprite->data[0] >> 4; sprite->x = sprite->data[0] >> 4;
sprite->pos1.y = sprite->data[1] >> 4; sprite->y = sprite->data[1] >> 4;
if (--sprite->data[4] == 0) if (--sprite->data[4] == 0)
sprite->data[0] = 0; sprite->data[0] = 0;
} }
@@ -1020,7 +1020,7 @@ static void AnimCurseNail(struct Sprite *sprite)
xDelta = -24; xDelta = -24;
xDelta2 = 2; xDelta2 = 2;
} }
sprite->pos1.x += xDelta; sprite->x += xDelta;
sprite->data[1] = xDelta2; sprite->data[1] = xDelta2;
sprite->data[0] = 60; sprite->data[0] = 60;
sprite->callback = sub_80B66A8; sprite->callback = sub_80B66A8;
@@ -1036,12 +1036,12 @@ static void sub_80B66A8(struct Sprite *sprite)
} }
else else
{ {
sprite->pos2.x += sprite->data[1]; sprite->x2 += sprite->data[1];
var0 = sprite->pos2.x + 7; var0 = sprite->x2 + 7;
if (var0 > 14) if (var0 > 14)
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->oam.tileNum += 8; sprite->oam.tileNum += 8;
if (++sprite->data[2] == 3) if (++sprite->data[2] == 3)
{ {
@@ -1097,12 +1097,12 @@ static void AnimGhostStatusSprite(struct Sprite *sprite)
{ {
u16 coeffB, coeffA; u16 coeffB, coeffA;
sprite->pos2.x = Sin(sprite->data[0], 12); sprite->x2 = Sin(sprite->data[0], 12);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) 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[0] = (sprite->data[0] + 6) & 0xFF;
sprite->data[1] += 0x100; sprite->data[1] += 0x100;
sprite->pos2.y = -(sprite->data[1] >> 8); sprite->y2 = -(sprite->data[1] >> 8);
++sprite->data[7]; ++sprite->data[7];
if (sprite->data[7] == 1) if (sprite->data[7] == 1)
{ {
@@ -1244,7 +1244,7 @@ static void AnimGrudgeFlame(struct Sprite *sprite)
else else
sprite->data[2] -= 2; sprite->data[2] -= 2;
sprite->data[2] &= 0xFF; 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; index = sprite->data[2] - 65;
if (index < 127) if (index < 127)
sprite->oam.priority = gTasks[sprite->data[0]].data[5] + 1; sprite->oam.priority = gTasks[sprite->data[0]].data[5] + 1;
@@ -1252,7 +1252,7 @@ static void AnimGrudgeFlame(struct Sprite *sprite)
sprite->oam.priority = gTasks[sprite->data[0]].data[5]; sprite->oam.priority = gTasks[sprite->data[0]].data[5];
++sprite->data[5]; ++sprite->data[5];
sprite->data[6] = (sprite->data[5] * 8) & 0xFF; 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]) if (gTasks[sprite->data[0]].data[8])
{ {
--gTasks[sprite->data[0]].data[7]; --gTasks[sprite->data[0]].data[7];
@@ -1351,7 +1351,7 @@ static void sub_80B6BE4(u8 taskId)
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG2_ON); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG2_ON);
break; break;
case 6: case 6:
y = gSprites[task->data[4]].pos1.y + gSprites[task->data[4]].pos2.y - 0x20; y = gSprites[task->data[4]].y + gSprites[task->data[4]].y2 - 0x20;
if (y < 0) if (y < 0)
y = 0; y = 0;
if (rank == 1) if (rank == 1)
@@ -1456,7 +1456,7 @@ static void sub_80B7158(struct Sprite *sprite)
sprite->data[2] = gBattleAnimArgs[0]; sprite->data[2] = gBattleAnimArgs[0];
sprite->data[3] = gBattleAnimArgs[1]; sprite->data[3] = gBattleAnimArgs[1];
sprite->callback = sub_80B71B0; sprite->callback = sub_80B71B0;
gSprites[sprite->data[5]].pos1.y += 8; gSprites[sprite->data[5]].y += 8;
} }
static void sub_80B71B0(struct Sprite *sprite) static void sub_80B71B0(struct Sprite *sprite)
@@ -1464,17 +1464,17 @@ static void sub_80B71B0(struct Sprite *sprite)
if (sprite->data[3]) if (sprite->data[3])
{ {
--sprite->data[3]; --sprite->data[3];
gSprites[sprite->data[5]].pos2.x = Sin(sprite->data[0], sprite->data[1]); gSprites[sprite->data[5]].x2 = Sin(sprite->data[0], sprite->data[1]);
gSprites[sprite->data[5]].pos2.y = Cos(sprite->data[0], sprite->data[1]); gSprites[sprite->data[5]].y2 = Cos(sprite->data[0], sprite->data[1]);
sprite->data[0] += sprite->data[2]; sprite->data[0] += sprite->data[2];
if (sprite->data[0] > 255) if (sprite->data[0] > 255)
sprite->data[0] -= 256; sprite->data[0] -= 256;
} }
else else
{ {
gSprites[sprite->data[5]].pos2.x = 0; gSprites[sprite->data[5]].x2 = 0;
gSprites[sprite->data[5]].pos2.y = 0; gSprites[sprite->data[5]].y2 = 0;
gSprites[sprite->data[5]].pos1.y -= 8; gSprites[sprite->data[5]].y -= 8;
sprite->callback = DestroySpriteAndMatrix; sprite->callback = DestroySpriteAndMatrix;
} }
} }
+33 -33
View File
@@ -140,8 +140,8 @@ const struct SpriteTemplate gDirtMoundSpriteTemplate =
// a boomerang. After hitting the target mon, it comes back to the user. // a boomerang. After hitting the target mon, it comes back to the user.
static void AnimBonemerangProjectile(struct Sprite *sprite) static void AnimBonemerangProjectile(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
sprite->data[0] = 20; sprite->data[0] = 20;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
@@ -154,10 +154,10 @@ static void AnimBonemerangProjectileStep(struct Sprite *sprite)
{ {
if (TranslateAnimHorizontalArc(sprite)) if (TranslateAnimHorizontalArc(sprite))
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->data[0] = 20; sprite->data[0] = 20;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
@@ -229,16 +229,16 @@ static void AnimMudSportDirt(struct Sprite *sprite)
++sprite->oam.tileNum; ++sprite->oam.tileNum;
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[1] > 0 ? 1 : -1; sprite->data[0] = gBattleAnimArgs[1] > 0 ? 1 : -1;
sprite->callback = AnimMudSportDirtRising; sprite->callback = AnimMudSportDirtRising;
} }
else else
{ {
sprite->pos1.x = gBattleAnimArgs[1]; sprite->x = gBattleAnimArgs[1];
sprite->pos1.y = gBattleAnimArgs[2]; sprite->y = gBattleAnimArgs[2];
sprite->pos2.y = -gBattleAnimArgs[2]; sprite->y2 = -gBattleAnimArgs[2];
sprite->callback = AnimMudSportDirtFalling; sprite->callback = AnimMudSportDirtFalling;
} }
} }
@@ -248,10 +248,10 @@ static void AnimMudSportDirtRising(struct Sprite *sprite)
if (++sprite->data[1] > 1) if (++sprite->data[1] > 1)
{ {
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->pos1.x += sprite->data[0]; sprite->x += sprite->data[0];
} }
sprite->pos1.y -= 4; sprite->y -= 4;
if (sprite->pos1.y < -4) if (sprite->y < -4)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -260,10 +260,10 @@ static void AnimMudSportDirtFalling(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos2.y += 4; sprite->y2 += 4;
if (sprite->pos2.y >= 0) if (sprite->y2 >= 0)
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
++sprite->data[0]; ++sprite->data[0];
} }
break; break;
@@ -343,7 +343,7 @@ static void sub_80B8ED4(u8 taskId)
else else
gBattle_BG2_Y = task->data[13] - task->data[5]; gBattle_BG2_Y = task->data[13] - task->data[5];
gSprites[task->data[10]].pos2.x = 272 - gSprites[task->data[10]].pos1.x; gSprites[task->data[10]].x2 = 272 - gSprites[task->data[10]].x;
++task->data[0]; ++task->data[0];
} }
break; break;
@@ -363,8 +363,8 @@ static void sub_80B908C(u8 taskId)
u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER);
gSprites[spriteId].invisible = TRUE; gSprites[spriteId].invisible = TRUE;
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1) if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1)
gBattle_BG1_Y = 0; gBattle_BG1_Y = 0;
else else
@@ -393,8 +393,8 @@ static void sub_80B912C(u8 taskId)
case 0: case 0:
task->data[10] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[10] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
gSprites[task->data[10]].invisible = FALSE; gSprites[task->data[10]].invisible = FALSE;
gSprites[task->data[10]].pos2.x = 0; gSprites[task->data[10]].x2 = 0;
gSprites[task->data[10]].pos2.y = 160 - gSprites[task->data[10]].pos1.y; gSprites[task->data[10]].y2 = 160 - gSprites[task->data[10]].y;
++task->data[0]; ++task->data[0];
break; break;
case 1: case 1:
@@ -426,12 +426,12 @@ static void sub_80B91B0(u8 taskId)
++task->data[0]; ++task->data[0];
break; break;
case 2: case 2:
gSprites[task->data[10]].pos2.y = 96; gSprites[task->data[10]].y2 = 96;
++task->data[0]; ++task->data[0];
break; break;
case 3: case 3:
gSprites[task->data[10]].pos2.y -= 8; gSprites[task->data[10]].y2 -= 8;
if (gSprites[task->data[10]].pos2.y == 0) if (gSprites[task->data[10]].y2 == 0)
{ {
gScanlineEffect.state = 3; gScanlineEffect.state = 3;
++task->data[0]; ++task->data[0];
@@ -500,11 +500,11 @@ static void AnimFissureDirtPlumeParticle(struct Sprite *sprite)
xOffset *= -1; xOffset *= -1;
gBattleAnimArgs[2] *= -1; gBattleAnimArgs[2] *= -1;
} }
sprite->pos1.x = GetBattlerSpriteCoord(battler, 2) + xOffset; sprite->x = GetBattlerSpriteCoord(battler, 2) + xOffset;
sprite->pos1.y = GetBattlerYCoordWithElevation(battler) + 30; sprite->y = GetBattlerYCoordWithElevation(battler) + 30;
sprite->data[0] = gBattleAnimArgs[5]; sprite->data[0] = gBattleAnimArgs[5];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[3]; sprite->data[4] = sprite->y + gBattleAnimArgs[3];
sprite->data[5] = gBattleAnimArgs[4]; sprite->data[5] = gBattleAnimArgs[4];
InitAnimArcTranslation(sprite); InitAnimArcTranslation(sprite);
sprite->callback = AnimFissureDirtPlumeParticleStep; sprite->callback = AnimFissureDirtPlumeParticleStep;
@@ -530,8 +530,8 @@ static void AnimDigDirtMound(struct Sprite *sprite)
battler = gBattleAnimAttacker; battler = gBattleAnimAttacker;
else else
battler = gBattleAnimTarget; battler = gBattleAnimTarget;
sprite->pos1.x = GetBattlerSpriteCoord(battler, 0) - 16 + (gBattleAnimArgs[1] * 32); sprite->x = GetBattlerSpriteCoord(battler, 0) - 16 + (gBattleAnimArgs[1] * 32);
sprite->pos1.y = GetBattlerYCoordWithElevation(battler) + 32; sprite->y = GetBattlerYCoordWithElevation(battler) + 32;
sprite->oam.tileNum += gBattleAnimArgs[1] * 8; sprite->oam.tileNum += gBattleAnimArgs[1] * 8;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
@@ -665,7 +665,7 @@ static void sub_80B967C(u8 taskId)
break; break;
case 2: case 2:
for (i = 0; i < task->data[13]; ++i) for (i = 0; i < task->data[13]; ++i)
gSprites[task->data[9 + i]].pos2.x = 0; gSprites[task->data[9 + i]].x2 = 0;
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
break; break;
} }
@@ -680,7 +680,7 @@ static void sub_80B9760(struct Task *task)
else else
xOffset = -(task->data[14] / 2); xOffset = -(task->data[14] / 2);
for (i = 0; i < task->data[13]; ++i) for (i = 0; i < task->data[13]; ++i)
gSprites[task->data[9 + i]].pos2.x = xOffset; gSprites[task->data[9 + i]].x2 = xOffset;
} }
void AnimTask_IsPowerOver99(u8 taskId) void AnimTask_IsPowerOver99(u8 taskId)
+16 -16
View File
@@ -629,9 +629,9 @@ static void Task_Hof_WaitAndPrintPlayerInfo(u8 taskId)
{ {
gTasks[taskId].data[3]--; gTasks[taskId].data[3]--;
} }
else if (gSprites[gTasks[taskId].data[4]].pos1.x != 192) else if (gSprites[gTasks[taskId].data[4]].x != 192)
{ {
gSprites[gTasks[taskId].data[4]].pos1.x++; gSprites[gTasks[taskId].data[4]].x++;
} }
else else
{ {
@@ -1220,18 +1220,18 @@ static void SpriteCB_EndGetOnScreen(struct Sprite * sprite)
static void SpriteCB_GetOnScreen(struct Sprite * sprite) static void SpriteCB_GetOnScreen(struct Sprite * sprite)
{ {
if (sprite->pos1.x != sprite->data[1] if (sprite->x != sprite->data[1]
|| sprite->pos1.y != sprite->data[2]) || sprite->y != sprite->data[2])
{ {
if (sprite->pos1.x < sprite->data[1]) if (sprite->x < sprite->data[1])
sprite->pos1.x += 15; sprite->x += 15;
if (sprite->pos1.x > sprite->data[1]) if (sprite->x > sprite->data[1])
sprite->pos1.x -= 15; sprite->x -= 15;
if (sprite->pos1.y < sprite->data[2]) if (sprite->y < sprite->data[2])
sprite->pos1.y += 10; sprite->y += 10;
if (sprite->pos1.y > sprite->data[2]) if (sprite->y > sprite->data[2])
sprite->pos1.y -= 10; sprite->y -= 10;
} }
else else
{ {
@@ -1242,7 +1242,7 @@ static void SpriteCB_GetOnScreen(struct Sprite * sprite)
static void SpriteCB_Confetti(struct Sprite* sprite) static void SpriteCB_Confetti(struct Sprite* sprite)
{ {
if (sprite->pos2.y > 120) if (sprite->y2 > 120)
{ {
DestroySprite(sprite); DestroySprite(sprite);
} }
@@ -1251,12 +1251,12 @@ static void SpriteCB_Confetti(struct Sprite* sprite)
u16 rand; u16 rand;
u8 tableID; u8 tableID;
sprite->pos2.y++; sprite->y2++;
sprite->pos2.y += sprite->data[1]; sprite->y2 += sprite->data[1];
tableID = sprite->data[0]; tableID = sprite->data[0];
rand = (Random() % 4) + 8; rand = (Random() % 4) + 8;
sprite->pos2.x = rand * gSineTable[tableID] / 256; sprite->x2 = rand * gSineTable[tableID] / 256;
sprite->data[0] += 4; sprite->data[0] += 4;
} }
+89 -89
View File
@@ -541,8 +541,8 @@ static void sub_80AF108(struct Sprite *sprite)
sprite->data[2] = -sprite->data[2]; sprite->data[2] = -sprite->data[2];
for (; (attackerX >= -32 && attackerX <= 272) && (attackerY >= -32 && attackerY <= 192); attackerX += sprite->data[1], attackerY += sprite->data[2]) for (; (attackerX >= -32 && attackerX <= 272) && (attackerY >= -32 && attackerY <= 192); attackerX += sprite->data[1], attackerY += sprite->data[2])
; ;
sprite->pos1.x = attackerX; sprite->x = attackerX;
sprite->pos1.y = attackerY; sprite->y = attackerY;
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = attackerX; sprite->data[1] = attackerX;
sprite->data[2] = targetX; sprite->data[2] = targetX;
@@ -561,10 +561,10 @@ static void sub_80AF28C(struct Sprite *sprite)
{ {
sprite->data[5] += sprite->data[1]; sprite->data[5] += sprite->data[1];
sprite->data[6] += sprite->data[2]; sprite->data[6] += sprite->data[2];
sprite->pos2.x = sprite->data[5]; sprite->x2 = sprite->data[5];
sprite->pos2.y = sprite->data[6]; sprite->y2 = sprite->data[6];
sprite->pos2.x += Sin(sprite->data[7], sprite->data[3]); sprite->x2 += Sin(sprite->data[7], sprite->data[3]);
sprite->pos2.y += 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[7] = (sprite->data[7] + sprite->data[4]) & 0xFF;
--sprite->data[0]; --sprite->data[0];
} }
@@ -621,11 +621,11 @@ static void AnimIceEffectParticle(struct Sprite *sprite)
} }
else else
{ {
SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->pos1.x, &sprite->pos1.y); SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
StoreSpriteCallbackInData6(sprite, AnimFlickerIceEffectParticle); StoreSpriteCallbackInData6(sprite, AnimFlickerIceEffectParticle);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds; sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
@@ -652,8 +652,8 @@ static void AnimSwirlingSnowball_Step1(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE); InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
if (!gBattleAnimArgs[5]) if (!gBattleAnimArgs[5])
{ {
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
@@ -676,14 +676,14 @@ static void AnimSwirlingSnowball_Step1(struct Sprite *sprite)
{ {
sprite->data[0] = 1; sprite->data[0] = 1;
AnimFastTranslateLinear(sprite); AnimFastTranslateLinear(sprite);
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 if ((u32)(sprite->x + sprite->x2 + 16) > 272
|| sprite->pos1.y + sprite->pos2.y > 160 || sprite->y + sprite->y2 > 160
|| sprite->pos1.y + sprite->pos2.y < -16) || sprite->y + sprite->y2 < -16)
break; break;
} }
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
for (i = 0; i < 8; ++i) for (i = 0; i < 8; ++i)
sprite->data[i] = tempDataHolder[i]; sprite->data[i] = tempDataHolder[i];
sprite->callback = InitAndStartAnimFastLinearTranslationWithSpeed; sprite->callback = InitAndStartAnimFastLinearTranslationWithSpeed;
@@ -694,10 +694,10 @@ static void AnimSwirlingSnowball_Step2(struct Sprite *sprite)
{ {
s16 tempVar; s16 tempVar;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->data[0] = 128; sprite->data[0] = 128;
tempVar = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? 20 : -20; tempVar = GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER ? 20 : -20;
sprite->data[3] = Sin(sprite->data[0], tempVar); sprite->data[3] = Sin(sprite->data[0], tempVar);
@@ -713,16 +713,16 @@ static void AnimSwirlingSnowball_Step3(struct Sprite *sprite)
if (sprite->data[5] <= 31) if (sprite->data[5] <= 31)
{ {
sprite->pos2.x = Sin(sprite->data[0], tempVar) - sprite->data[3]; sprite->x2 = Sin(sprite->data[0], tempVar) - sprite->data[3];
sprite->pos2.y = Cos(sprite->data[0], 15) - sprite->data[4]; sprite->y2 = Cos(sprite->data[0], 15) - sprite->data[4];
sprite->data[0] = (sprite->data[0] + 16) & 0xFF; sprite->data[0] = (sprite->data[0] + 16) & 0xFF;
sprite->data[5] += 1; sprite->data[5] += 1;
} }
else else
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
sprite->data[3] = sprite->data[4] = 0; sprite->data[3] = sprite->data[4] = 0;
sprite->callback = AnimSwirlingSnowball_End; sprite->callback = AnimSwirlingSnowball_End;
} }
@@ -732,9 +732,9 @@ static void AnimSwirlingSnowball_End(struct Sprite *sprite)
{ {
sprite->data[0] = 1; sprite->data[0] = 1;
AnimFastTranslateLinear(sprite); AnimFastTranslateLinear(sprite);
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 if ((u32)(sprite->x + sprite->x2 + 16) > 272
|| sprite->pos1.y + sprite->pos2.y > 256 || sprite->y + sprite->y2 > 256
|| sprite->pos1.y + sprite->pos2.y < -16) || sprite->y + sprite->y2 < -16)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -755,8 +755,8 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE); InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
if (!gBattleAnimArgs[7]) if (!gBattleAnimArgs[7])
{ {
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2);
@@ -780,15 +780,15 @@ static void AnimMoveParticleBeyondTarget(struct Sprite *sprite)
{ {
sprite->data[0] = 1; sprite->data[0] = 1;
AnimFastTranslateLinear(sprite); AnimFastTranslateLinear(sprite);
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 if ((u32)(sprite->x + sprite->x2 + 16) > 272
|| sprite->pos1.y + sprite->pos2.y > 160 || sprite->y + sprite->y2 > 160
|| sprite->pos1.y + sprite->pos2.y < -16) || sprite->y + sprite->y2 < -16)
break; break;
} }
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
for (i = 0; i < 8; ++i) for (i = 0; i < 8; ++i)
sprite->data[i] = tempDataHolder[i]; sprite->data[i] = tempDataHolder[i];
sprite->data[5] = gBattleAnimArgs[5]; sprite->data[5] = gBattleAnimArgs[5];
@@ -802,13 +802,13 @@ static void AnimWiggleParticleTowardsTarget(struct Sprite *sprite)
AnimFastTranslateLinear(sprite); AnimFastTranslateLinear(sprite);
if (sprite->data[0] == 0) if (sprite->data[0] == 0)
sprite->data[0] = 1; 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; sprite->data[7] = (sprite->data[7] + sprite->data[6]) & 0xFF;
if (sprite->data[0] == 1) if (sprite->data[0] == 1)
{ {
if ((u32)(sprite->pos1.x + sprite->pos2.x + 16) > 272 if ((u32)(sprite->x + sprite->x2 + 16) > 272
|| sprite->pos1.y + sprite->pos2.y > 160 || sprite->y + sprite->y2 > 160
|| sprite->pos1.y + sprite->pos2.y < -16) || sprite->y + sprite->y2 < -16)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
} }
@@ -827,11 +827,11 @@ static void AnimWaveFromCenterOfTarget(struct Sprite *sprite)
} }
else else
{ {
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y); SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
++sprite->data[0]; ++sprite->data[0];
} }
@@ -862,12 +862,12 @@ static void InitSwirlingFogAnim(struct Sprite *sprite)
} }
else else
{ {
SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->pos1.x, &sprite->pos1.y); SetAverageBattlerPositions(gBattleAnimAttacker, 0, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else else
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
battler = gBattleAnimAttacker; battler = gBattleAnimAttacker;
} }
@@ -879,12 +879,12 @@ static void InitSwirlingFogAnim(struct Sprite *sprite)
} }
else else
{ {
SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->pos1.x, &sprite->pos1.y); SetAverageBattlerPositions(gBattleAnimTarget, 0, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimTarget) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimTarget) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else else
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
battler = gBattleAnimTarget; battler = gBattleAnimTarget;
} }
@@ -895,12 +895,12 @@ static void InitSwirlingFogAnim(struct Sprite *sprite)
tempVar = 0x40; tempVar = 0x40;
sprite->data[6] = tempVar; sprite->data[6] = tempVar;
if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER)
sprite->pos1.y += 8; sprite->y += 8;
sprite->data[0] = gBattleAnimArgs[3]; sprite->data[0] = gBattleAnimArgs[3];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = sprite->pos1.x; sprite->data[2] = sprite->x;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[2]; sprite->data[4] = sprite->y + gBattleAnimArgs[2];
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->data[5] = 64; sprite->data[5] = 64;
sprite->callback = AnimSwirlingFogAnim; sprite->callback = AnimSwirlingFogAnim;
@@ -912,8 +912,8 @@ static void AnimSwirlingFogAnim(struct Sprite *sprite)
{ {
if (!AnimTranslateLinear(sprite)) if (!AnimTranslateLinear(sprite))
{ {
sprite->pos2.x += Sin(sprite->data[5], sprite->data[6]); sprite->x2 += Sin(sprite->data[5], sprite->data[6]);
sprite->pos2.y += Cos(sprite->data[5], -6); sprite->y2 += Cos(sprite->data[5], -6);
if ((u16)(sprite->data[5] - 64) <= 0x7F) if ((u16)(sprite->data[5] - 64) <= 0x7F)
sprite->oam.priority = GetBattlerSpriteBGPriority(sprite->data[7]); sprite->oam.priority = GetBattlerSpriteBGPriority(sprite->data[7]);
else else
@@ -1019,8 +1019,8 @@ static void AnimTask_Haze2(u8 taskId)
// arg 5: ??? unknown (seems to vibrate target mon somehow) // arg 5: ??? unknown (seems to vibrate target mon somehow)
static void AnimThrowMistBall(struct Sprite *sprite) static void AnimThrowMistBall(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
sprite->callback = TranslateAnimSpriteToTargetMonLocation; sprite->callback = TranslateAnimSpriteToTargetMonLocation;
} }
@@ -1127,21 +1127,21 @@ static void InitPoisonGasCloudAnim(struct Sprite *sprite)
sprite->subpriority = gSprites[GetAnimBattlerSpriteId(ANIM_TARGET)].subpriority + 1; sprite->subpriority = gSprites[GetAnimBattlerSpriteId(ANIM_TARGET)].subpriority + 1;
sprite->data[6] = 1; sprite->data[6] = 1;
} }
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
if (gBattleAnimArgs[7]) 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[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[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[4];
sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8; sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8;
} }
else 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[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[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[4];
sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8; sprite->data[7] |= GetBattlerSpriteBGPriority(gBattleAnimTarget) << 8;
} }
@@ -1163,7 +1163,7 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
case 0: case 0:
AnimTranslateLinear(sprite); AnimTranslateLinear(sprite);
value = gSineTable[sprite->data[5]]; value = gSineTable[sprite->data[5]];
sprite->pos2.x += value >> 4; sprite->x2 += value >> 4;
if (sprite->data[6]) if (sprite->data[6])
sprite->data[5] = (sprite->data[5] - 8) & 0xFF; sprite->data[5] = (sprite->data[5] - 8) & 0xFF;
else else
@@ -1171,12 +1171,12 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
if (sprite->data[0] <= 0) if (sprite->data[0] <= 0)
{ {
sprite->data[0] = 80; sprite->data[0] = 80;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X);
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = sprite->pos1.x; sprite->data[2] = sprite->x;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = sprite->pos1.y + 29; sprite->data[4] = sprite->y + 29;
++sprite->data[7]; ++sprite->data[7];
if (IsContest()) if (IsContest())
sprite->data[5] = 80; sprite->data[5] = 80;
@@ -1184,9 +1184,9 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
sprite->data[5] = 204; sprite->data[5] = 204;
else else
sprite->data[5] = 80; sprite->data[5] = 80;
sprite->pos2.y = 0; sprite->y2 = 0;
value = gSineTable[sprite->data[5]]; value = gSineTable[sprite->data[5]];
sprite->pos2.x = value >> 3; sprite->x2 = value >> 3;
sprite->data[5] = (sprite->data[5] + 2) & 0xFF; sprite->data[5] = (sprite->data[5] + 2) & 0xFF;
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
} }
@@ -1194,8 +1194,8 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
case 1: case 1:
AnimTranslateLinear(sprite); AnimTranslateLinear(sprite);
value = gSineTable[sprite->data[5]]; value = gSineTable[sprite->data[5]];
sprite->pos2.x += value >> 3; sprite->x2 += value >> 3;
sprite->pos2.y += (gSineTable[sprite->data[5] + 0x40] * -3) >> 8; sprite->y2 += (gSineTable[sprite->data[5] + 0x40] * -3) >> 8;
if (!IsContest()) if (!IsContest())
{ {
u16 var0 = sprite->data[5] - 0x40; u16 var0 = sprite->data[5] - 0x40;
@@ -1219,9 +1219,9 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
if (sprite->data[0] <= 0) if (sprite->data[0] <= 0)
{ {
sprite->data[0] = 0x300; sprite->data[0] = 0x300;
sprite->data[1] = sprite->pos1.x += sprite->pos2.x; sprite->data[1] = sprite->x += sprite->x2;
sprite->data[3] = sprite->pos1.y += sprite->pos2.y; sprite->data[3] = sprite->y += sprite->y2;
sprite->data[4] = sprite->pos1.y + 4; sprite->data[4] = sprite->y + 4;
if (IsContest()) if (IsContest())
sprite->data[2] = -0x10; sprite->data[2] = -0x10;
else if (GET_BATTLER_SIDE2(gBattleAnimTarget) != B_SIDE_PLAYER) else if (GET_BATTLER_SIDE2(gBattleAnimTarget) != B_SIDE_PLAYER)
@@ -1229,7 +1229,7 @@ static void MovePoisonGasCloud(struct Sprite *sprite)
else else
sprite->data[2] = -0x10; sprite->data[2] = -0x10;
++sprite->data[7]; ++sprite->data[7];
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
BattleAnim_InitLinearTranslationWithDuration(sprite); BattleAnim_InitLinearTranslationWithDuration(sprite);
} }
break; break;
@@ -1362,9 +1362,9 @@ static void AnimHailBegin(struct Sprite *sprite)
{ {
u8 spriteId; u8 spriteId;
sprite->pos1.x += 4; sprite->x += 4;
sprite->pos1.y += 8; 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; return;
if (sprite->data[0] == 1 && sprite->data[5] == 0) if (sprite->data[0] == 1 && sprite->data[5] == 0)
{ {
@@ -1455,10 +1455,10 @@ static void AnimIceBallParticle(struct Sprite *sprite)
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
if (sprite->data[1] & 1) if (sprite->data[1] & 1)
sprite->pos2.x = -(sprite->data[3] >> 8); sprite->x2 = -(sprite->data[3] >> 8);
else 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) if (++sprite->data[0] == 21)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
+57 -57
View File
@@ -1530,14 +1530,14 @@ static void SpriteCB_Grass(struct Sprite * sprite)
switch (data[0]) switch (data[0])
{ {
case 0: case 0:
data[1] = sprite->pos1.x << 5; data[1] = sprite->x << 5;
data[2] = 160; data[2] = 160;
data[0]++; data[0]++;
// fallthrough // fallthrough
case 1: case 1:
data[1] -= data[2]; data[1] -= data[2];
sprite->pos1.x = data[1] >> 5; sprite->x = data[1] >> 5;
if (sprite->pos1.x <= 52) if (sprite->x <= 52)
{ {
FightScene3_SlowBg1Scroll(); FightScene3_SlowBg1Scroll();
data[0]++; data[0]++;
@@ -1545,8 +1545,8 @@ static void SpriteCB_Grass(struct Sprite * sprite)
break; break;
case 2: case 2:
data[1] -= 32; data[1] -= 32;
sprite->pos1.x = data[1] >> 5; sprite->x = data[1] >> 5;
if (sprite->pos1.x <= -32) if (sprite->x <= -32)
{ {
sprite->invisible = TRUE; sprite->invisible = TRUE;
sprite->data[0]++; sprite->data[0]++;
@@ -1685,8 +1685,8 @@ static void IntroCB_FightScene4(struct IntroSequenceData * this)
if (JOY_NEW(R_BUTTON)) if (JOY_NEW(R_BUTTON))
{ {
BlendPalettes(0xFFFF0064, 0, RGB_WHITE); BlendPalettes(0xFFFF0064, 0, RGB_WHITE);
this->nidorinoAnimSprite->pos2.x = 0; this->nidorinoAnimSprite->x2 = 0;
this->nidorinoAnimSprite->pos1.x = 0xB4; this->nidorinoAnimSprite->x = 0xB4;
this->state = 1; this->state = 1;
this->data[5] = 30; this->data[5] = 30;
} }
@@ -1722,8 +1722,8 @@ static void CreateGengarBackSprite(struct IntroSequenceData * this)
static void FightScene4_StartNidorinoAffineAnim(struct IntroSequenceData * this) static void FightScene4_StartNidorinoAffineAnim(struct IntroSequenceData * this)
{ {
this->nidorinoAnimSprite->pos1.x += this->nidorinoAnimSprite->pos2.x; this->nidorinoAnimSprite->x += this->nidorinoAnimSprite->x2;
this->nidorinoAnimSprite->pos1.y += this->nidorinoAnimSprite->pos2.y; this->nidorinoAnimSprite->y += this->nidorinoAnimSprite->y2;
obj_pos2_update_enable(this->nidorinoAnimSprite, 0, 0x2A); obj_pos2_update_enable(this->nidorinoAnimSprite, 0, 0x2A);
this->nidorinoAnimSprite->callback = SpriteCallbackDummy; this->nidorinoAnimSprite->callback = SpriteCallbackDummy;
StartSpriteAffineAnim(this->nidorinoAnimSprite, 1); StartSpriteAffineAnim(this->nidorinoAnimSprite, 1);
@@ -2048,9 +2048,9 @@ static void SpriteCB_LargeStar(struct Sprite * sprite)
sprite->data[0] -= sprite->data[2]; sprite->data[0] -= sprite->data[2];
sprite->data[1] += sprite->data[3]; sprite->data[1] += sprite->data[3];
sprite->data[4] += 48; sprite->data[4] += 48;
sprite->pos1.x = sprite->data[0] >> 4; sprite->x = sprite->data[0] >> 4;
sprite->pos1.y = sprite->data[1] >> 4; sprite->y = sprite->data[1] >> 4;
sprite->pos2.y = gSineTable[(sprite->data[4] >> 4) + 0x40] >> 5; sprite->y2 = gSineTable[(sprite->data[4] >> 4) + 0x40] >> 5;
sprite->data[5]++; sprite->data[5]++;
if (sprite->data[5] % sTrailingSparklesSpawnRate) if (sprite->data[5] % sTrailingSparklesSpawnRate)
{ {
@@ -2058,9 +2058,9 @@ static void SpriteCB_LargeStar(struct Sprite * sprite)
v = v * 1103515245 + 24691; v = v * 1103515245 + 24691;
StoreWordInTwoHalfwords(&sprite->data[6], v); StoreWordInTwoHalfwords(&sprite->data[6], v);
v >>= 16; v >>= 16;
GameFreakScene_TrailingSparklesGen(sprite->pos1.x, sprite->pos1.y + sprite->pos2.y, v); GameFreakScene_TrailingSparklesGen(sprite->x, sprite->y + sprite->y2, v);
} }
if (sprite->pos1.x < -8) if (sprite->x < -8)
DestroySprite(sprite); DestroySprite(sprite);
} }
@@ -2073,17 +2073,17 @@ static void SpriteCB_TrailingSparkles(struct Sprite * sprite)
sprite->data[4]++; sprite->data[4]++;
sprite->data[5] += sprite->data[4]; sprite->data[5] += sprite->data[4];
sprite->data[7]++; sprite->data[7]++;
sprite->pos1.x = (u16)sprite->data[0] >> sTrailingSparklesXprecision; sprite->x = (u16)sprite->data[0] >> sTrailingSparklesXprecision;
sprite->pos1.y = sprite->data[1] >> sTrailingSparklesYprecision; sprite->y = sprite->data[1] >> sTrailingSparklesYprecision;
if (sTrailingSparklesGravityShift && sprite->data[3] < 0) if (sTrailingSparklesGravityShift && sprite->data[3] < 0)
sprite->pos2.y = sprite->data[5] >> sTrailingSparklesGravityShift; sprite->y2 = sprite->data[5] >> sTrailingSparklesGravityShift;
if (sprite->data[7] > sTrailingSparklesFlickerStartTime) if (sprite->data[7] > sTrailingSparklesFlickerStartTime)
{ {
sprite->invisible = !sprite->invisible; sprite->invisible = !sprite->invisible;
if (sprite->data[7] > sTrailingSparklesDestroySpriteTime) if (sprite->data[7] > sTrailingSparklesDestroySpriteTime)
DestroySprite(sprite); DestroySprite(sprite);
} }
if (sprite->pos1.y + sprite->pos2.y < 0 || sprite->pos1.y + sprite->pos2.y > 160) if (sprite->y + sprite->y2 < 0 || sprite->y + sprite->y2 > 160)
DestroySprite(sprite); DestroySprite(sprite);
} }
@@ -2093,29 +2093,29 @@ static void SpriteCB_TrailingSparkles2(struct Sprite * sprite)
{ {
sprite->data[2]--; sprite->data[2]--;
sprite->data[1]++; sprite->data[1]++;
sprite->pos1.y = sprite->data[1] >> 4; sprite->y = sprite->data[1] >> 4;
if (sprite->pos1.y > 0x56) if (sprite->y > 0x56)
{ {
sprite->pos1.y = 0x4A; sprite->y = 0x4A;
sprite->data[1] = 0x4A0; sprite->data[1] = 0x4A0;
} }
if (sprite->animEnded) if (sprite->animEnded)
{ {
if (sprite->data[0] == 0) if (sprite->data[0] == 0)
{ {
sprite->pos1.x += 26; sprite->x += 26;
if (sprite->pos1.x > 188) if (sprite->x > 188)
{ {
sprite->pos1.x = 376 - sprite->pos1.x; sprite->x = 376 - sprite->x;
sprite->data[0] = 1; sprite->data[0] = 1;
} }
} }
else else
{ {
sprite->pos1.x -= 26; sprite->x -= 26;
if (sprite->pos1.x < 52) if (sprite->x < 52)
{ {
sprite->pos1.x = 104 - sprite->pos1.x; sprite->x = 104 - sprite->x;
sprite->data[0] = 0; sprite->data[0] = 0;
} }
} }
@@ -2129,7 +2129,7 @@ static void SpriteCB_TrailingSparkles2(struct Sprite * sprite)
if (sprite->animEnded) if (sprite->animEnded)
StartSpriteAnim(sprite, 0); StartSpriteAnim(sprite, 0);
sprite->data[1] += 4; sprite->data[1] += 4;
sprite->pos1.y = sprite->data[1] >> 4; sprite->y = sprite->data[1] >> 4;
sprite->data[4]++; sprite->data[4]++;
if (sprite->data[4] > 50) if (sprite->data[4] > 50)
DestroySprite(sprite); DestroySprite(sprite);
@@ -2155,8 +2155,8 @@ static void StartNidorinoAnimSpriteSlideIn(struct Sprite * sprite, s16 x0, s16 x
sprite->data[2] = speed; sprite->data[2] = speed;
sprite->data[3] = x1; sprite->data[3] = x1;
sprite->data[4] = 0; sprite->data[4] = 0;
sprite->pos1.x = x0; sprite->x = x0;
sprite->pos1.y = 100; sprite->y = 100;
sprite->callback = SpriteCB_NidorinoAnimSpriteSlideIn; sprite->callback = SpriteCB_NidorinoAnimSpriteSlideIn;
} }
@@ -2169,10 +2169,10 @@ static void SpriteCB_NidorinoAnimSpriteSlideIn(struct Sprite * sprite)
sprite->data[1]--; sprite->data[1]--;
} }
sprite->data[0] += sprite->data[1]; sprite->data[0] += sprite->data[1];
sprite->pos1.x = sprite->data[0] >> 4; sprite->x = sprite->data[0] >> 4;
if (sprite->pos1.x >= sprite->data[3]) if (sprite->x >= sprite->data[3])
{ {
sprite->pos1.x = sprite->data[3]; sprite->x = sprite->data[3];
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
} }
@@ -2187,7 +2187,7 @@ static void FightScene4_NidorinoRearsUp(struct IntroSequenceData * ptr)
StartSpriteAnim(ptr->nidorinoAnimSprite, 2); StartSpriteAnim(ptr->nidorinoAnimSprite, 2);
ptr->nidorinoAnimSprite->data[0] = 0; ptr->nidorinoAnimSprite->data[0] = 0;
ptr->nidorinoAnimSprite->data[1] = 0; ptr->nidorinoAnimSprite->data[1] = 0;
ptr->nidorinoAnimSprite->pos2.y = 3; ptr->nidorinoAnimSprite->y2 = 3;
ptr->nidorinoAnimSprite->callback = SpriteCB_NidorinoRearsUp; ptr->nidorinoAnimSprite->callback = SpriteCB_NidorinoRearsUp;
} }
@@ -2200,7 +2200,7 @@ static void SpriteCB_NidorinoRearsUp(struct Sprite * sprite)
if (sprite->data[1] > 8) if (sprite->data[1] > 8)
{ {
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->data[0]++; sprite->data[0]++;
} }
break; break;
@@ -2214,13 +2214,13 @@ static void SpriteCB_NidorinoRearsUp(struct Sprite * sprite)
if (sprite->data[2] > 1) if (sprite->data[2] > 1)
{ {
sprite->data[2] = 0; sprite->data[2] = 0;
sprite->pos2.y = sprite->pos2.y == 0 ? 1 : 0; sprite->y2 = sprite->y2 == 0 ? 1 : 0;
} }
sprite->data[1]++; sprite->data[1]++;
if (sprite->data[1] > 48) if (sprite->data[1] > 48)
{ {
StartSpriteAnim(sprite, 0); StartSpriteAnim(sprite, 0);
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
break; break;
@@ -2258,8 +2258,8 @@ static void SpriteCB_NidorinoRecoil(struct Sprite * sprite)
case 1: case 1:
sprite->data[2] += sprite->data[7]; sprite->data[2] += sprite->data[7];
sprite->data[3] += 8; sprite->data[3] += 8;
sprite->pos2.x = sprite->data[2] >> 4; sprite->x2 = sprite->data[2] >> 4;
sprite->pos2.y = -((gSineTable[sprite->data[3]] * gUnknown_203AB04) >> gUnknown_203AB08); sprite->y2 = -((gSineTable[sprite->data[3]] * gUnknown_203AB04) >> gUnknown_203AB08);
sprite->data[5]++; sprite->data[5]++;
if (sprite->data[5] > gUnknown_203AB06) if (sprite->data[5] > gUnknown_203AB06)
{ {
@@ -2278,11 +2278,11 @@ static void SpriteCB_NidorinoRecoil(struct Sprite * sprite)
break; break;
case 2: case 2:
sprite->data[2] += sprite->data[7]; sprite->data[2] += sprite->data[7];
sprite->pos2.x = sprite->data[2] >> 4; sprite->x2 = sprite->data[2] >> 4;
sprite->data[1]++; sprite->data[1]++;
if (sprite->data[1] > 6) if (sprite->data[1] > 6)
{ {
CreateNidorinoRecoilDustSprites(sprite->pos1.x + sprite->pos2.x, sprite->pos1.y + sprite->pos2.y, sprite->data[6]); CreateNidorinoRecoilDustSprites(sprite->x + sprite->x2, sprite->y + sprite->y2, sprite->data[6]);
sprite->data[6] *= 1103515245; sprite->data[6] *= 1103515245;
} }
if (sprite->data[1] > 12) if (sprite->data[1] > 12)
@@ -2296,7 +2296,7 @@ static void SpriteCB_NidorinoRecoil(struct Sprite * sprite)
sprite->data[1]++; sprite->data[1]++;
if (sprite->data[1] > 16) if (sprite->data[1] > 16)
{ {
StartSpriteHopToPosAnim(sprite, gUnknown_203AB0A, -sprite->pos2.x, 4); StartSpriteHopToPosAnim(sprite, gUnknown_203AB0A, -sprite->x2, 4);
} }
break; break;
} }
@@ -2332,15 +2332,15 @@ static void SpriteCB_NidorinoRecoilDust(struct Sprite * sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
data[1] = sprite->pos1.x << 4; data[1] = sprite->x << 4;
data[2] = sprite->pos1.y << 4; data[2] = sprite->y << 4;
sprite->data[0]++; sprite->data[0]++;
// fallthrough // fallthrough
case 1: case 1:
data[1] -= data[3]; data[1] -= data[3];
data[2] += data[4]; data[2] += data[4];
sprite->pos1.x = data[1] >> 4; sprite->x = data[1] >> 4;
sprite->pos1.y = data[2] >> 4; sprite->y = data[2] >> 4;
if (sprite->animEnded) if (sprite->animEnded)
DestroySprite(sprite); DestroySprite(sprite);
break; break;
@@ -2357,7 +2357,7 @@ static void StartSpriteHopToPosAnim(struct Sprite * sprite, u16 a1, s16 a2, u8 a
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = a1; sprite->data[1] = a1;
sprite->data[2] = sprite->pos2.x << 4; sprite->data[2] = sprite->x2 << 4;
sprite->data[3] = (a2 << 4) / a1; sprite->data[3] = (a2 << 4) / a1;
sprite->data[4] = 0; sprite->data[4] = 0;
sprite->data[5] = 0x800 / a1; sprite->data[5] = 0x800 / a1;
@@ -2386,13 +2386,13 @@ static void SpriteCB_HopToPos(struct Sprite * sprite)
{ {
sprite->data[2] += sprite->data[3]; sprite->data[2] += sprite->data[3];
sprite->data[4] += sprite->data[5]; sprite->data[4] += sprite->data[5];
sprite->pos2.x = sprite->data[2] >> 4; sprite->x2 = sprite->data[2] >> 4;
sprite->pos2.y = -(gSineTable[sprite->data[4] >> 4] >> sprite->data[7]); sprite->y2 = -(gSineTable[sprite->data[4] >> 4] >> sprite->data[7]);
} }
else else
{ {
sprite->pos2.x = (u16)sprite->data[2] >> 4; sprite->x2 = (u16)sprite->data[2] >> 4;
sprite->pos2.y = 0; sprite->y2 = 0;
StartSpriteAnim(sprite, 2); StartSpriteAnim(sprite, 2);
if (sprite->data[7] == 5) if (sprite->data[7] == 5)
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
@@ -2422,8 +2422,8 @@ static void StartNidorinoAnim_LaunchSelfAtGengarAnim(struct IntroSequenceData *
ptr->nidorinoAnimSprite->data[3] = 0; ptr->nidorinoAnimSprite->data[3] = 0;
ptr->nidorinoAnimSprite->data[4] = 0; ptr->nidorinoAnimSprite->data[4] = 0;
ptr->nidorinoAnimSprite->data[5] = 0; ptr->nidorinoAnimSprite->data[5] = 0;
ptr->nidorinoAnimSprite->pos1.x += ptr->nidorinoAnimSprite->pos2.x; ptr->nidorinoAnimSprite->x += ptr->nidorinoAnimSprite->x2;
ptr->nidorinoAnimSprite->pos2.x = 0; ptr->nidorinoAnimSprite->x2 = 0;
gUnknown_203AB0C = 0x24; gUnknown_203AB0C = 0x24;
gUnknown_203AB06 = 0x28; gUnknown_203AB06 = 0x28;
gUnknown_203AB04 = 0x03; gUnknown_203AB04 = 0x03;
@@ -2443,9 +2443,9 @@ static void SpriteCB_NidorinoAnim_LaunchSelfAtGengar(struct Sprite * sprite)
{ {
sprite->data[2]++; sprite->data[2]++;
if (sprite->data[2] & 1) if (sprite->data[2] & 1)
sprite->pos2.x++; sprite->x2++;
else else
sprite->pos2.x--; sprite->x2--;
} }
if (sprite->data[1] > 17) if (sprite->data[1] > 17)
{ {
@@ -2464,8 +2464,8 @@ static void SpriteCB_NidorinoAnim_LaunchSelfAtGengar(struct Sprite * sprite)
break; break;
case 2: case 2:
sprite->data[1] += sprite->data[7]; sprite->data[1] += sprite->data[7];
sprite->pos2.x = -(sprite->data[1] >> 4); sprite->x2 = -(sprite->data[1] >> 4);
sprite->pos2.y = -((gSineTable[sprite->data[1] >> 4] * gUnknown_203AB04) >> gUnknown_203AB08); sprite->y2 = -((gSineTable[sprite->data[1] >> 4] * gUnknown_203AB04) >> gUnknown_203AB08);
sprite->data[2]++; sprite->data[2]++;
if (sprite->data[7] > 12) if (sprite->data[7] > 12)
sprite->data[7]--; sprite->data[7]--;
+9 -9
View File
@@ -562,15 +562,15 @@ void CreateBagOrSatchelSprite(u8 animNum)
void sub_8098528(u8 animNum) void sub_8098528(u8 animNum)
{ {
struct Sprite * sprite = &gSprites[sItemMenuIconSpriteIds[0]]; struct Sprite * sprite = &gSprites[sItemMenuIconSpriteIds[0]];
sprite->pos2.y = -5; sprite->y2 = -5;
sprite->callback = sub_8098560; sprite->callback = sub_8098560;
StartSpriteAnim(sprite, animNum); StartSpriteAnim(sprite, animNum);
} }
static void sub_8098560(struct Sprite * sprite) static void sub_8098560(struct Sprite * sprite)
{ {
if (sprite->pos2.y != 0) if (sprite->y2 != 0)
sprite->pos2.y++; sprite->y2++;
else else
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
@@ -635,8 +635,8 @@ void ItemMenuIcons_MoveInsertIndicatorBar(s16 x, u16 y)
for (i = 0; i < 9; i++) for (i = 0; i < 9; i++)
{ {
gSprites[ptr[i]].pos2.x = x; gSprites[ptr[i]].x2 = x;
gSprites[ptr[i]].pos1.y = y + 7; gSprites[ptr[i]].y = y + 7;
} }
} }
@@ -743,8 +743,8 @@ void CreateItemMenuIcon(u16 itemId, u8 idx)
if (spriteId != MAX_SPRITES) if (spriteId != MAX_SPRITES)
{ {
ptr[idx] = spriteId; ptr[idx] = spriteId;
gSprites[spriteId].pos2.x = 24; gSprites[spriteId].x2 = 24;
gSprites[spriteId].pos2.y = 140; gSprites[spriteId].y2 = 140;
} }
} }
} }
@@ -780,8 +780,8 @@ void sub_80989A0(u16 itemId, u8 idx)
if (spriteId != MAX_SPRITES) if (spriteId != MAX_SPRITES)
{ {
ptr[idx] = spriteId; ptr[idx] = spriteId;
gSprites[spriteId].pos2.x = 24; gSprites[spriteId].x2 = 24;
gSprites[spriteId].pos2.y = 147; gSprites[spriteId].y2 = 147;
} }
} }
} }
+12 -12
View File
@@ -597,12 +597,12 @@ static void SpriteCallback_Arrow(struct Sprite * sprite)
s16 x, y; s16 x, y;
sprite->spCurX += sprite->spDeltaX; sprite->spCurX += sprite->spDeltaX;
sprite->spCurY += sprite->spDeltaY; sprite->spCurY += sprite->spDeltaY;
sprite->pos1.x = sprite->spCenterX + (sprite->spCurX >> 8); sprite->x = sprite->spCenterX + (sprite->spCurX >> 8);
sprite->pos1.y = sprite->spCenterY + (sprite->spCurY >> 8); sprite->y = sprite->spCenterY + (sprite->spCurY >> 8);
if (sprite->pos1.x <= 104 if (sprite->x <= 104
|| sprite->pos1.x > 132 || sprite->x > 132
|| sprite->pos1.y <= 60 || sprite->y <= 60
|| sprite->pos1.y > 88) || sprite->y > 88)
sprite->callback = SpriteCallback_DestroyArrow; sprite->callback = SpriteCallback_DestroyArrow;
} }
@@ -634,12 +634,12 @@ static void SpriteCallback_Star(struct Sprite * sprite)
s16 x, y; s16 x, y;
sprite->spCurX += sprite->spDeltaX; sprite->spCurX += sprite->spDeltaX;
sprite->spCurY += sprite->spDeltaY; sprite->spCurY += sprite->spDeltaY;
sprite->pos1.x = sprite->spCenterX + (sprite->spCurX >> 8); sprite->x = sprite->spCenterX + (sprite->spCurX >> 8);
sprite->pos1.y = sprite->spCenterY + (sprite->spCurY >> 8); sprite->y = sprite->spCenterY + (sprite->spCurY >> 8);
if (sprite->pos1.x <= 104 if (sprite->x <= 104
|| sprite->pos1.x > 132 || sprite->x > 132
|| sprite->pos1.y <= 60 || sprite->y <= 60
|| sprite->pos1.y > 88) || sprite->y > 88)
sprite->callback = SpriteCallback_DestroyStar; sprite->callback = SpriteCallback_DestroyStar;
} }
+2 -2
View File
@@ -719,10 +719,10 @@ static void SpriteCB_ListMenuScrollIndicators(struct Sprite * sprite)
case 0: case 0:
break; break;
case 1: case 1:
sprite->pos2.x = Sin(abcissa, 3) * sprite->data[2]; sprite->x2 = Sin(abcissa, 3) * sprite->data[2];
break; break;
case 2: case 2:
sprite->pos2.y = Sin(abcissa, 1) * sprite->data[2]; sprite->y2 = Sin(abcissa, 1) * sprite->data[2];
break; break;
} }
sprite->data[1]++; sprite->data[1]++;
+2 -2
View File
@@ -899,8 +899,8 @@ void UpdateWirelessStatusIndicatorSprite(void)
sprite->sFrameDelay++; sprite->sFrameDelay++;
} }
gMain.oamBuffer[125] = sWirelessStatusIndicatorOamData; gMain.oamBuffer[125] = sWirelessStatusIndicatorOamData;
gMain.oamBuffer[125].x = sprite->pos1.x + sprite->centerToCornerVecX; gMain.oamBuffer[125].x = sprite->x + sprite->centerToCornerVecX;
gMain.oamBuffer[125].y = sprite->pos1.y + sprite->centerToCornerVecY; gMain.oamBuffer[125].y = sprite->y + sprite->centerToCornerVecY;
gMain.oamBuffer[125].paletteNum = sprite->oam.paletteNum; gMain.oamBuffer[125].paletteNum = sprite->oam.paletteNum;
gMain.oamBuffer[125].tileNum = sprite->sTileStart + sprite->anims[sprite->sCurrAnimNum][sprite->sFrameIdx].frame.imageValue; 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)); CpuCopy16(gMain.oamBuffer + 125, (struct OamData *)OAM + 125, sizeof(struct OamData));
+9 -9
View File
@@ -282,11 +282,11 @@ static void SpriteCallback_ScrollIndicatorArrow(struct Sprite *sprite)
{ {
case 0: case 0:
multiplier = sprite->tMultiplier; multiplier = sprite->tMultiplier;
sprite->pos2.x = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256; sprite->x2 = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256;
break; break;
case 1: case 1:
multiplier = sprite->tMultiplier; multiplier = sprite->tMultiplier;
sprite->pos2.y = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256; sprite->y2 = (gSineTable[(u8)(sprite->tSinePos)] * multiplier) / 256;
break; break;
} }
sprite->tSinePos += sprite->tFrequency; sprite->tSinePos += sprite->tFrequency;
@@ -571,8 +571,8 @@ void ListMenuUpdateRedOutlineCursorObject(u8 taskId, u16 x, u16 y)
{ {
struct RedOutlineCursor *data = (struct RedOutlineCursor *)gTasks[taskId].data; struct RedOutlineCursor *data = (struct RedOutlineCursor *)gTasks[taskId].data;
gSprites[data->spriteId].pos1.x = x + 120; gSprites[data->spriteId].x = x + 120;
gSprites[data->spriteId].pos1.y = y + 120; gSprites[data->spriteId].y = y + 120;
} }
void ListMenuRemoveRedOutlineCursorObject(u8 taskId) void ListMenuRemoveRedOutlineCursorObject(u8 taskId)
@@ -590,7 +590,7 @@ void ListMenuRemoveRedOutlineCursorObject(u8 taskId)
static void SpriteCallback_RedArrowCursor(struct Sprite *sprite) 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; sprite->data[0] += 8;
} }
@@ -628,8 +628,8 @@ static u8 ListMenuAddRedArrowCursorObject(const struct CursorStruct *cursor)
spriteTemplate.tileTag = cursor->tileTag; spriteTemplate.tileTag = cursor->tileTag;
spriteTemplate.paletteTag = cursor->palTag; spriteTemplate.paletteTag = cursor->palTag;
data->spriteId = CreateSprite(&spriteTemplate, cursor->left, cursor->top, 0); data->spriteId = CreateSprite(&spriteTemplate, cursor->left, cursor->top, 0);
gSprites[data->spriteId].pos2.x = 8; gSprites[data->spriteId].x2 = 8;
gSprites[data->spriteId].pos2.y = 8; gSprites[data->spriteId].y2 = 8;
if (cursor->palTag == SPRITE_INVALID_TAG) if (cursor->palTag == SPRITE_INVALID_TAG)
gSprites[data->spriteId].oam.paletteNum = cursor->palNum; gSprites[data->spriteId].oam.paletteNum = cursor->palNum;
return taskId; return taskId;
@@ -639,8 +639,8 @@ static void ListMenuUpdateRedArrowCursorObject(u8 taskId, u16 x, u16 y)
{ {
struct RedArrowCursor *data = (struct RedArrowCursor *)gTasks[taskId].data; struct RedArrowCursor *data = (struct RedArrowCursor *)gTasks[taskId].data;
gSprites[data->spriteId].pos1.x = x; gSprites[data->spriteId].x = x;
gSprites[data->spriteId].pos1.y = y; gSprites[data->spriteId].y = y;
} }
static void ListMenuRemoveRedArrowCursorObject(u8 taskId) static void ListMenuRemoveRedArrowCursorObject(u8 taskId)
+10 -10
View File
@@ -107,7 +107,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId)
} }
break; break;
case 4: case 4:
sprite->pos1.y -= 4; sprite->y -= 4;
if (++sprite->data[2] >= 8) if (++sprite->data[2] >= 8)
{ {
if (sprite->data[4] < 2) if (sprite->data[4] < 2)
@@ -124,7 +124,7 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId)
} }
break; break;
case 5: case 5:
sprite->pos1.y += 4; sprite->y += 4;
if (++sprite->data[2] >= 8) if (++sprite->data[2] >= 8)
{ {
sprite->data[2] = 0; sprite->data[2] = 0;
@@ -147,8 +147,8 @@ static bool32 RunMinigameCountdownDigitsAnim(u8 spriteId)
static void StartStartGraphic(u8 spriteId1, u8 spriteId2, u8 spriteId3) static void StartStartGraphic(u8 spriteId1, u8 spriteId2, u8 spriteId3)
{ {
gSprites[spriteId2].pos2.y = -40; gSprites[spriteId2].y2 = -40;
gSprites[spriteId3].pos2.y = -40; gSprites[spriteId3].y2 = -40;
gSprites[spriteId2].invisible = FALSE; gSprites[spriteId2].invisible = FALSE;
gSprites[spriteId3].invisible = FALSE; gSprites[spriteId3].invisible = FALSE;
gSprites[spriteId2].callback = SpriteCB_Start; gSprites[spriteId2].callback = SpriteCB_Start;
@@ -169,17 +169,17 @@ static void SpriteCB_Start(struct Sprite * sprite)
{ {
case 0: case 0:
data[4] = 64; data[4] = 64;
data[5] = sprite->pos2.y << 4; data[5] = sprite->y2 << 4;
data[0]++; data[0]++;
//fallthrough //fallthrough
case 1: case 1:
data[5] += data[4]; data[5] += data[4];
data[4]++; data[4]++;
sprite->pos2.y = data[5] >> 4; sprite->y2 = data[5] >> 4;
if (sprite->pos2.y >= 0) if (sprite->y2 >= 0)
{ {
PlaySE(SE_BALL_BOUNCE_2); PlaySE(SE_BALL_BOUNCE_2);
sprite->pos2.y = 0; sprite->y2 = 0;
data[0]++; data[0]++;
} }
break; break;
@@ -192,7 +192,7 @@ static void SpriteCB_Start(struct Sprite * sprite)
data[0]++; data[0]++;
} }
y = gSineTable[data[1]]; y = gSineTable[data[1]];
sprite->pos2.y = -(y >> 4); sprite->y2 = -(y >> 4);
break; break;
case 3: case 3:
data[1] += 16; data[1] += 16;
@@ -202,7 +202,7 @@ static void SpriteCB_Start(struct Sprite * sprite)
data[1] = 0; data[1] = 0;
data[0]++; data[0]++;
} }
sprite->pos2.y = -(gSineTable[data[1]] >> 5); sprite->y2 = -(gSineTable[data[1]] >> 5);
break; break;
case 4: case 4:
if (++data[1] > 40) if (++data[1] > 40)
+4 -4
View File
@@ -392,7 +392,7 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 tilesTag, u16 palette
} }
} }
sMenu->menuWindowSprites[1]->pos1.y = y + 96; sMenu->menuWindowSprites[1]->y = y + 96;
sprTemplate.tileTag++; sprTemplate.tileTag++;
sprTemplate.paletteTag++; sprTemplate.paletteTag++;
@@ -425,8 +425,8 @@ static void CreateMonMarkingsMenuSprites(s16 x, s16 y, u16 tilesTag, u16 palette
sMenu->menuTextSprite->oam.shape = ST_OAM_SQUARE; sMenu->menuTextSprite->oam.shape = ST_OAM_SQUARE;
sMenu->menuTextSprite->oam.size = 2; sMenu->menuTextSprite->oam.size = 2;
StartSpriteAnim(sMenu->menuTextSprite, 9); StartSpriteAnim(sMenu->menuTextSprite, 9);
sMenu->menuTextSprite->pos1.x = x + 32; sMenu->menuTextSprite->x = x + 32;
sMenu->menuTextSprite->pos1.y = y + 80; sMenu->menuTextSprite->y = y + 80;
CalcCenterToCornerVec(sMenu->menuTextSprite, 1, 2, 0); CalcCenterToCornerVec(sMenu->menuTextSprite, 1, 2, 0);
} }
else else
@@ -463,7 +463,7 @@ static void SpriteCB_MarkingIcon(struct Sprite * sprite)
static void SpriteCB_Cursor(struct Sprite * sprite) static void SpriteCB_Cursor(struct Sprite * sprite)
{ {
sprite->pos1.y = 16 * sMenu->cursorPos + sprite->data[0]; sprite->y = 16 * sMenu->cursorPos + sprite->data[0];
} }
struct Sprite * CreateMonMarkingSprite_SelectCombo(u16 tileTag, u16 paletteTag, const u16 *palette) struct Sprite * CreateMonMarkingSprite_SelectCombo(u16 tileTag, u16 paletteTag, const u16 *palette)
+12 -12
View File
@@ -1015,7 +1015,7 @@ static void sub_809E7F0(struct Sprite *sprite)
sprite->data[0] = 8; sprite->data[0] = 8;
sprite->data[1] = (sprite->data[1] + 1) & 3; sprite->data[1] = (sprite->data[1] + 1) & 3;
} }
sprite->pos2.x = arr[sprite->data[1]]; sprite->x2 = arr[sprite->data[1]];
} }
static void sub_809E83C(struct Sprite *sprite) static void sub_809E83C(struct Sprite *sprite)
@@ -1026,13 +1026,13 @@ static void sub_809E83C(struct Sprite *sprite)
var = GetTextCaretPosition(); var = GetTextCaretPosition();
if (var != (u8)sprite->data[0]) if (var != (u8)sprite->data[0])
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->data[2] = 0; sprite->data[2] = 0;
} }
else else
{ {
sprite->pos2.y = arr[sprite->data[1]]; sprite->y2 = arr[sprite->data[1]];
sprite->data[2]++; sprite->data[2]++;
if (sprite->data[2] > 8) if (sprite->data[2] > 8)
{ {
@@ -1067,11 +1067,11 @@ static void SetCursorPos(s16 x, s16 y)
struct Sprite *cursorSprite = &gSprites[sNamingScreenData->cursorSpriteId]; struct Sprite *cursorSprite = &gSprites[sNamingScreenData->cursorSpriteId];
if (x < gUnknown_83E2330[sub_809DE50()]) if (x < gUnknown_83E2330[sub_809DE50()])
cursorSprite->pos1.x = gUnknown_83E2333[sub_809DE50()][x] + 38; cursorSprite->x = gUnknown_83E2333[sub_809DE50()][x] + 38;
else else
cursorSprite->pos1.x = 0; cursorSprite->x = 0;
cursorSprite->pos1.y = y * 16 + 88; cursorSprite->y = y * 16 + 88;
cursorSprite->data[2] = cursorSprite->data[0]; cursorSprite->data[2] = cursorSprite->data[0];
cursorSprite->data[3] = cursorSprite->data[1]; cursorSprite->data[3] = cursorSprite->data[1];
cursorSprite->data[0] = x; cursorSprite->data[0] = x;
@@ -1200,11 +1200,11 @@ static bool8 PageSwapSpritesCB_SwapHide(struct Sprite *sprite)
struct Sprite *sprite2 = &gSprites[sprite->data[7]]; struct Sprite *sprite2 = &gSprites[sprite->data[7]];
u8 page; u8 page;
sprite1->pos2.y++; sprite1->y2++;
if (sprite1->pos2.y > 7) if (sprite1->y2 > 7)
{ {
sprite->data[0]++; sprite->data[0]++;
sprite1->pos2.y = -4; sprite1->y2 = -4;
sprite1->invisible = TRUE; sprite1->invisible = TRUE;
page = sprite->data[1]; page = sprite->data[1];
sub_809ED88(sub_809DE20((page + 1) % 3), sprite1, sprite2); sub_809ED88(sub_809DE20((page + 1) % 3), sprite1, sprite2);
@@ -1218,10 +1218,10 @@ static bool8 PageSwapSpritesCB_SwapShow(struct Sprite *sprite)
struct Sprite *sprite2 = &gSprites[sprite->data[7]]; struct Sprite *sprite2 = &gSprites[sprite->data[7]];
sprite1->invisible = FALSE; sprite1->invisible = FALSE;
sprite1->pos2.y++; sprite1->y2++;
if (sprite1->pos2.y >= 0) if (sprite1->y2 >= 0)
{ {
sprite1->pos2.y = 0; sprite1->y2 = 0;
sprite->data[0] = 1; sprite->data[0] = 1;
} }
return FALSE; return FALSE;
+12 -12
View File
@@ -260,8 +260,8 @@ const struct SpriteTemplate gPersistHitSplatSpriteTemplate =
// arg 4: duration // arg 4: duration
static void AnimConfusionDuck(struct Sprite *sprite) static void AnimConfusionDuck(struct Sprite *sprite)
{ {
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[0] = gBattleAnimArgs[2];
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
@@ -281,8 +281,8 @@ static void AnimConfusionDuck(struct Sprite *sprite)
static void AnimConfusionDuckStep(struct Sprite *sprite) static void AnimConfusionDuckStep(struct Sprite *sprite)
{ {
sprite->pos2.x = Cos(sprite->data[0], 30); sprite->x2 = Cos(sprite->data[0], 30);
sprite->pos2.y = Sin(sprite->data[0], 10); sprite->y2 = Sin(sprite->data[0], 10);
if ((u16)sprite->data[0] < 128) if ((u16)sprite->data[0] < 128)
sprite->oam.priority = 1; sprite->oam.priority = 1;
else else
@@ -393,8 +393,8 @@ static void sub_80B9B5C(struct Sprite *sprite)
static void sub_80B9B8C(struct Sprite *sprite) static void sub_80B9B8C(struct Sprite *sprite)
{ {
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[0] = 0; sprite->data[0] = 0;
sprite->data[1] = 10; sprite->data[1] = 10;
sprite->data[2] = 8; sprite->data[2] = 8;
@@ -869,8 +869,8 @@ static void AnimHitSplatRandom(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, 0); InitSpritePosToAnimAttacker(sprite, 0);
else else
InitSpritePosToAnimTarget(sprite, FALSE); InitSpritePosToAnimTarget(sprite, FALSE);
sprite->pos2.x += (Random() % 48) - 24; sprite->x2 += (Random() % 48) - 24;
sprite->pos2.y += (Random() % 24) - 12; sprite->y2 += (Random() % 24) - 12;
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds; sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
} }
@@ -878,10 +878,10 @@ static void AnimHitSplatRandom(struct Sprite *sprite)
static void AnimHitSplatOnMonEdge(struct Sprite *sprite) static void AnimHitSplatOnMonEdge(struct Sprite *sprite)
{ {
sprite->data[0] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); sprite->data[0] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
sprite->pos1.x = gSprites[sprite->data[0]].pos1.x + gSprites[sprite->data[0]].pos2.x; sprite->x = gSprites[sprite->data[0]].x + gSprites[sprite->data[0]].x2;
sprite->pos1.y = gSprites[sprite->data[0]].pos1.y + gSprites[sprite->data[0]].pos2.y; sprite->y = gSprites[sprite->data[0]].y + gSprites[sprite->data[0]].y2;
sprite->pos2.x = gBattleAnimArgs[1]; sprite->x2 = gBattleAnimArgs[1];
sprite->pos2.y = gBattleAnimArgs[2]; sprite->y2 = gBattleAnimArgs[2];
StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]); StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]);
StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix);
sprite->callback = RunStoredCallbackWhenAffineAnimEnds; sprite->callback = RunStoredCallbackWhenAffineAnimEnds;
+2 -2
View File
@@ -1000,7 +1000,7 @@ static void Task_OakSpeech16(u8 taskId)
{ {
if (data[0] < 24) if (data[0] < 24)
{ {
gSprites[data[4]].pos1.y--; gSprites[data[4]].y--;
} }
data[0]--; data[0]--;
} }
@@ -1630,7 +1630,7 @@ static void CreateNidoranFSprite(u8 taskId)
static void SpriteCB_PikaSync(struct Sprite * sprite) static void SpriteCB_PikaSync(struct Sprite * sprite)
{ {
sprite->pos2.y = gSprites[sprite->data[0]].animCmdIndex; sprite->y2 = gSprites[sprite->data[0]].animCmdIndex;
} }
static void CreatePikaOrGrassPlatformSpriteAndLinkToCurrentTask(u8 taskId, u8 state) static void CreatePikaOrGrassPlatformSpriteAndLinkToCurrentTask(u8 taskId, u8 state)
+2 -2
View File
@@ -3536,8 +3536,8 @@ static void SpriteCB_LinkPlayer(struct Sprite *sprite)
{ {
struct LinkPlayerObjectEvent *linkPlayerObjEvent = &gLinkPlayerObjectEvents[sprite->data[0]]; struct LinkPlayerObjectEvent *linkPlayerObjEvent = &gLinkPlayerObjectEvents[sprite->data[0]];
struct ObjectEvent *objEvent = &gObjectEvents[linkPlayerObjEvent->objEventId]; struct ObjectEvent *objEvent = &gObjectEvents[linkPlayerObjEvent->objEventId];
sprite->pos1.x = objEvent->initialCoords.x; sprite->x = objEvent->initialCoords.x;
sprite->pos1.y = objEvent->initialCoords.y; sprite->y = objEvent->initialCoords.y;
SetObjectSubpriorityByZCoord(objEvent->previousElevation, sprite, 1); SetObjectSubpriorityByZCoord(objEvent->previousElevation, sprite, 1);
sprite->oam.priority = ZCoordToPriority(objEvent->previousElevation); sprite->oam.priority = ZCoordToPriority(objEvent->previousElevation);
+34 -34
View File
@@ -2722,22 +2722,22 @@ static void AnimateSelectedPartyIcon(u8 spriteId, u8 animNum)
gSprites[spriteId].data[0] = 0; gSprites[spriteId].data[0] = 0;
if (animNum == 0) if (animNum == 0)
{ {
if (gSprites[spriteId].pos1.x == 16) if (gSprites[spriteId].x == 16)
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = -4; gSprites[spriteId].y2 = -4;
} }
else else
{ {
gSprites[spriteId].pos2.x = -4; gSprites[spriteId].x2 = -4;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
} }
gSprites[spriteId].callback = SpriteCB_UpdatePartyMonIcon; gSprites[spriteId].callback = SpriteCB_UpdatePartyMonIcon;
} }
else else
{ {
gSprites[spriteId].pos2.x = 0; gSprites[spriteId].x2 = 0;
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
gSprites[spriteId].callback = SpriteCB_BouncePartyMonIcon; gSprites[spriteId].callback = SpriteCB_BouncePartyMonIcon;
} }
} }
@@ -2749,9 +2749,9 @@ static void SpriteCB_BouncePartyMonIcon(struct Sprite *sprite)
if (animCmd != 0) if (animCmd != 0)
{ {
if (animCmd & 1) // % 2 also matches if (animCmd & 1) // % 2 also matches
sprite->pos2.y = -3; sprite->y2 = -3;
else else
sprite->pos2.y = 1; sprite->y2 = 1;
} }
} }
@@ -2837,8 +2837,8 @@ static void CreateHeldItemSpriteForTrade(u8 spriteId, bool8 isMail)
u8 subpriority = gSprites[spriteId].subpriority; u8 subpriority = gSprites[spriteId].subpriority;
u8 newSpriteId = CreateSprite(&sSpriteTemplate_HeldItem, 250, 170, subpriority - 1); u8 newSpriteId = CreateSprite(&sSpriteTemplate_HeldItem, 250, 170, subpriority - 1);
gSprites[newSpriteId].pos2.x = 4; gSprites[newSpriteId].x2 = 4;
gSprites[newSpriteId].pos2.y = 10; gSprites[newSpriteId].y2 = 10;
gSprites[newSpriteId].callback = SpriteCB_HeldItem; gSprites[newSpriteId].callback = SpriteCB_HeldItem;
gSprites[newSpriteId].data[7] = spriteId; gSprites[newSpriteId].data[7] = spriteId;
StartSpriteAnim(&gSprites[newSpriteId], isMail); StartSpriteAnim(&gSprites[newSpriteId], isMail);
@@ -2856,8 +2856,8 @@ static void SpriteCB_HeldItem(struct Sprite *sprite)
else else
{ {
sprite->invisible = FALSE; sprite->invisible = FALSE;
sprite->pos1.x = gSprites[otherSpriteId].pos1.x + gSprites[otherSpriteId].pos2.x; sprite->x = gSprites[otherSpriteId].x + gSprites[otherSpriteId].x2;
sprite->pos1.y = gSprites[otherSpriteId].pos1.y + gSprites[otherSpriteId].pos2.y; sprite->y = gSprites[otherSpriteId].y + gSprites[otherSpriteId].y2;
} }
} }
@@ -2904,15 +2904,15 @@ void SpriteCB_BounceConfirmCancelButton(u8 spriteId, u8 spriteId2, u8 animNum)
{ {
StartSpriteAnim(&gSprites[spriteId], 2); StartSpriteAnim(&gSprites[spriteId], 2);
StartSpriteAnim(&gSprites[spriteId2], 4); StartSpriteAnim(&gSprites[spriteId2], 4);
gSprites[spriteId].pos2.y = 0; gSprites[spriteId].y2 = 0;
gSprites[spriteId2].pos2.y = 0; gSprites[spriteId2].y2 = 0;
} }
else else
{ {
StartSpriteAnim(&gSprites[spriteId], 3); StartSpriteAnim(&gSprites[spriteId], 3);
StartSpriteAnim(&gSprites[spriteId2], 5); StartSpriteAnim(&gSprites[spriteId2], 5);
gSprites[spriteId].pos2.y = -4; gSprites[spriteId].y2 = -4;
gSprites[spriteId2].pos2.y = 4; gSprites[spriteId2].y2 = 4;
} }
} }
@@ -3247,10 +3247,10 @@ static void MoveAndBufferPartySlot(const void *rectSrc, s16 x, s16 y, s16 width,
static void MovePartyMenuBoxSprites(struct PartyMenuBox *menuBox, s16 offset) static void MovePartyMenuBoxSprites(struct PartyMenuBox *menuBox, s16 offset)
{ {
gSprites[menuBox->pokeballSpriteId].pos2.x += offset * 8; gSprites[menuBox->pokeballSpriteId].x2 += offset * 8;
gSprites[menuBox->itemSpriteId].pos2.x += offset * 8; gSprites[menuBox->itemSpriteId].x2 += offset * 8;
gSprites[menuBox->monSpriteId].pos2.x += offset * 8; gSprites[menuBox->monSpriteId].x2 += offset * 8;
gSprites[menuBox->statusSpriteId].pos2.x += offset * 8; gSprites[menuBox->statusSpriteId].x2 += offset * 8;
} }
static void SlidePartyMenuBoxSpritesOneStep(u8 taskId) static void SlidePartyMenuBoxSpritesOneStep(u8 taskId)
@@ -3340,18 +3340,18 @@ static void SwitchMenuBoxSprites(u8 *spriteIdPtr1, u8 *spriteIdPtr2)
*spriteIdPtr1 = *spriteIdPtr2; *spriteIdPtr1 = *spriteIdPtr2;
*spriteIdPtr2 = spriteIdBuffer; *spriteIdPtr2 = spriteIdBuffer;
xBuffer1 = gSprites[*spriteIdPtr1].pos1.x; xBuffer1 = gSprites[*spriteIdPtr1].x;
yBuffer1 = gSprites[*spriteIdPtr1].pos1.y; yBuffer1 = gSprites[*spriteIdPtr1].y;
xBuffer2 = gSprites[*spriteIdPtr1].pos2.x; xBuffer2 = gSprites[*spriteIdPtr1].x2;
yBuffer2 = gSprites[*spriteIdPtr1].pos2.y; yBuffer2 = gSprites[*spriteIdPtr1].y2;
gSprites[*spriteIdPtr1].pos1.x = gSprites[*spriteIdPtr2].pos1.x; gSprites[*spriteIdPtr1].x = gSprites[*spriteIdPtr2].x;
gSprites[*spriteIdPtr1].pos1.y = gSprites[*spriteIdPtr2].pos1.y; gSprites[*spriteIdPtr1].y = gSprites[*spriteIdPtr2].y;
gSprites[*spriteIdPtr1].pos2.x = gSprites[*spriteIdPtr2].pos2.x; gSprites[*spriteIdPtr1].x2 = gSprites[*spriteIdPtr2].x2;
gSprites[*spriteIdPtr1].pos2.y = gSprites[*spriteIdPtr2].pos2.y; gSprites[*spriteIdPtr1].y2 = gSprites[*spriteIdPtr2].y2;
gSprites[*spriteIdPtr2].pos1.x = xBuffer1; gSprites[*spriteIdPtr2].x = xBuffer1;
gSprites[*spriteIdPtr2].pos1.y = yBuffer1; gSprites[*spriteIdPtr2].y = yBuffer1;
gSprites[*spriteIdPtr2].pos2.x = xBuffer2; gSprites[*spriteIdPtr2].x2 = xBuffer2;
gSprites[*spriteIdPtr2].pos2.y = yBuffer2; gSprites[*spriteIdPtr2].y2 = yBuffer2;
} }
static void SwitchPartyMon(void) static void SwitchPartyMon(void)
@@ -6320,7 +6320,7 @@ static void Task_WaitAfterMultiPartnerPartySlideIn(u8 taskId)
static void MoveMultiPartyMenuBoxSprite(u8 spriteId, s16 x) static void MoveMultiPartyMenuBoxSprite(u8 spriteId, s16 x)
{ {
if (x >= 0) if (x >= 0)
gSprites[spriteId].pos2.x = x; gSprites[spriteId].x2 = x;
} }
static void SlideMultiPartyMenuBoxSpritesOneStep(u8 taskId) static void SlideMultiPartyMenuBoxSpritesOneStep(u8 taskId)
+14 -14
View File
@@ -230,10 +230,10 @@ static void sub_80B1728(struct Sprite *sprite)
static void AnimSludgeBombHitParticle(struct Sprite *sprite) static void AnimSludgeBombHitParticle(struct Sprite *sprite)
{ {
sprite->data[0] = gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[2];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[0]; sprite->data[2] = sprite->x + gBattleAnimArgs[0];
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[1]; sprite->data[4] = sprite->y + gBattleAnimArgs[1];
InitSpriteDataForLinearTranslation(sprite); InitSpriteDataForLinearTranslation(sprite);
sprite->data[5] = sprite->data[1] / gBattleAnimArgs[2]; sprite->data[5] = sprite->data[1] / gBattleAnimArgs[2];
sprite->data[6] = sprite->data[2] / gBattleAnimArgs[2]; sprite->data[6] = sprite->data[2] / gBattleAnimArgs[2];
@@ -251,14 +251,14 @@ static void sub_80B1798(struct Sprite *sprite)
static void AnimAcidPoisonDroplet(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) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
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[0] = gBattleAnimArgs[4];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.y + sprite->data[0]; sprite->data[4] = sprite->y + sprite->data[0];
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
} }
@@ -277,12 +277,12 @@ static void AnimBubbleEffect(struct Sprite *sprite)
} }
else else
{ {
SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->pos1.x, &sprite->pos1.y); SetAverageBattlerPositions(gBattleAnimTarget, TRUE, &sprite->x, &sprite->y);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
} }
sprite->callback = AnimBubbleEffectStep; sprite->callback = AnimBubbleEffectStep;
} }
@@ -290,9 +290,9 @@ static void AnimBubbleEffect(struct Sprite *sprite)
static void AnimBubbleEffectStep(struct Sprite *sprite) static void AnimBubbleEffectStep(struct Sprite *sprite)
{ {
sprite->data[0] = (sprite->data[0] + 0xB) & 0xFF; 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->data[1] += 0x30;
sprite->pos2.y = -(sprite->data[1] >> 8); sprite->y2 = -(sprite->data[1] >> 8);
if (sprite->affineAnimEnded) if (sprite->affineAnimEnded)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
+51 -51
View File
@@ -388,13 +388,13 @@ static void Task_DoPokeballSendOutAnim(u8 taskId)
} }
gBattlerTarget = battlerId; gBattlerTarget = battlerId;
gSprites[ballSpriteId].pos1.x = x; gSprites[ballSpriteId].x = x;
gSprites[ballSpriteId].pos1.y = y; gSprites[ballSpriteId].y = y;
gSprites[ballSpriteId].callback = SpriteCB_PlayerMonSendOut_1; gSprites[ballSpriteId].callback = SpriteCB_PlayerMonSendOut_1;
break; break;
case POKEBALL_OPPONENT_SENDOUT: case POKEBALL_OPPONENT_SENDOUT:
gSprites[ballSpriteId].pos1.x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X); gSprites[ballSpriteId].x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X);
gSprites[ballSpriteId].pos1.y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24; gSprites[ballSpriteId].y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24;
gBattlerTarget = battlerId; gBattlerTarget = battlerId;
gSprites[ballSpriteId].data[0] = 0; gSprites[ballSpriteId].data[0] = 0;
gSprites[ballSpriteId].callback = SpriteCB_OpponentMonSendOut; gSprites[ballSpriteId].callback = SpriteCB_OpponentMonSendOut;
@@ -435,13 +435,13 @@ static void SpriteCB_TestBallThrow(struct Sprite *sprite)
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
sprite->affineAnimPaused = TRUE; sprite->affineAnimPaused = TRUE;
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->data[5] = 0; sprite->data[5] = 0;
ballId = ItemIdToBallId(GetBattlerPokeballItemId(opponentBattler)); ballId = ItemIdToBallId(GetBattlerPokeballItemId(opponentBattler));
LaunchBallStarsTask(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId); LaunchBallStarsTask(sprite->x, sprite->y - 5, 1, 0x1C, ballId);
sprite->data[0] = LaunchBallFadeMonTask(FALSE, opponentBattler, 14, ballId); sprite->data[0] = LaunchBallFadeMonTask(FALSE, opponentBattler, 14, ballId);
sprite->sBattler = opponentBattler; sprite->sBattler = opponentBattler;
sprite->data[7] = noOfShakes; sprite->data[7] = noOfShakes;
@@ -489,7 +489,7 @@ static void sub_804AD00(struct Sprite *sprite)
else else
{ {
gSprites[gBattlerSpriteIds[sprite->sBattler]].data[1] += 0x60; 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;
} }
} }
@@ -503,8 +503,8 @@ static void sub_804AD98(struct Sprite *sprite)
sprite->data[3] = 0; sprite->data[3] = 0;
sprite->data[4] = 32; sprite->data[4] = 32;
sprite->data[5] = 0; sprite->data[5] = 0;
sprite->pos1.y += Cos(0, 32); sprite->y += Cos(0, 32);
sprite->pos2.y = -Cos(0, sprite->data[4]); sprite->y2 = -Cos(0, sprite->data[4]);
sprite->callback = sub_804ADEC; sprite->callback = sub_804ADEC;
} }
} }
@@ -517,7 +517,7 @@ static void sub_804ADEC(struct Sprite *sprite)
switch (sprite->data[3] & 0xFF) switch (sprite->data[3] & 0xFF)
{ {
case 0: 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); sprite->data[5] += 4 + (sprite->data[3] >> 8);
if (sprite->data[5] >= 64) if (sprite->data[5] >= 64)
{ {
@@ -543,7 +543,7 @@ static void sub_804ADEC(struct Sprite *sprite)
} }
break; break;
case 1: 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); sprite->data[5] -= 4 + (sprite->data[3] >> 8);
if (sprite->data[5] <= 0) if (sprite->data[5] <= 0)
{ {
@@ -555,8 +555,8 @@ static void sub_804ADEC(struct Sprite *sprite)
if (r5) if (r5)
{ {
sprite->data[3] = 0; sprite->data[3] = 0;
sprite->pos1.y += Cos(64, 32); sprite->y += Cos(64, 32);
sprite->pos2.y = 0; sprite->y2 = 0;
if (sprite->data[7] == 0) if (sprite->data[7] == 0)
{ {
sprite->callback = SpriteCB_ReleaseMonFromBall; sprite->callback = SpriteCB_ReleaseMonFromBall;
@@ -589,7 +589,7 @@ static void sub_804AF24(struct Sprite *sprite)
{ {
case 0: case 0:
case 2: case 2:
sprite->pos2.x += sprite->data[4]; sprite->x2 += sprite->data[4];
sprite->data[5] += sprite->data[4]; sprite->data[5] += sprite->data[4];
sprite->affineAnimPaused = FALSE; sprite->affineAnimPaused = FALSE;
if (sprite->data[5] > 3 || sprite->data[5] < -3) if (sprite->data[5] > 3 || sprite->data[5] < -3)
@@ -750,7 +750,7 @@ static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite)
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
ballId = ItemIdToBallId(GetBattlerPokeballItemId(battlerId)); ballId = ItemIdToBallId(GetBattlerPokeballItemId(battlerId));
LaunchBallStarsTask(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId); LaunchBallStarsTask(sprite->x, sprite->y - 5, 1, 0x1C, ballId);
sprite->data[0] = LaunchBallFadeMonTask(1, sprite->sBattler, 14, ballId); sprite->data[0] = LaunchBallFadeMonTask(1, sprite->sBattler, 14, ballId);
sprite->callback = HandleBallAnimEnd; sprite->callback = HandleBallAnimEnd;
@@ -842,13 +842,13 @@ static void HandleBallAnimEnd(struct Sprite *sprite)
else else
{ {
gSprites[gBattlerSpriteIds[battlerId]].data[1] -= 288; 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) if (sprite->animEnded && affineAnimEnded)
{ {
s32 i, doneBattlers; s32 i, doneBattlers;
gSprites[gBattlerSpriteIds[battlerId]].pos2.y = 0; gSprites[gBattlerSpriteIds[battlerId]].y2 = 0;
gDoingBattleAnim = FALSE; gDoingBattleAnim = FALSE;
gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = FALSE; gBattleSpritesDataPtr->healthBoxesData[battlerId].ballAnimActive = FALSE;
FreeSpriteOamMatrix(sprite); FreeSpriteOamMatrix(sprite);
@@ -925,7 +925,7 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
r4 = sprite->data[0]; r4 = sprite->data[0];
AnimTranslateLinear(sprite); AnimTranslateLinear(sprite);
sprite->data[7] += sprite->sBattler / 3; 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; sprite->oam.affineParam += 0x100;
if ((sprite->oam.affineParam >> 8) % 3 != 0) if ((sprite->oam.affineParam >> 8) % 3 != 0)
sprite->data[0] = r4; sprite->data[0] = r4;
@@ -943,9 +943,9 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
{ {
if (TranslateAnimHorizontalArc(sprite)) if (TranslateAnimHorizontalArc(sprite))
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->pos2.x = sprite->pos2.y = 0; sprite->x2 = sprite->y2 = 0;
sprite->sBattler = sprite->oam.affineParam & 0xFF; sprite->sBattler = sprite->oam.affineParam & 0xFF;
sprite->data[0] = 0; sprite->data[0] = 0;
@@ -1003,10 +1003,10 @@ void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 battlerId, u8 x, u8 y,
LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[0]); LoadCompressedSpritePaletteUsingHeap(&gBallSpritePalettes[0]);
spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subpriortiy); spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subpriortiy);
gSprites[spriteId].data[0] = monSpriteId; gSprites[spriteId].data[0] = monSpriteId;
gSprites[spriteId].data[5] = gSprites[monSpriteId].pos1.x; gSprites[spriteId].data[5] = gSprites[monSpriteId].x;
gSprites[spriteId].data[6] = gSprites[monSpriteId].pos1.y; gSprites[spriteId].data[6] = gSprites[monSpriteId].y;
gSprites[monSpriteId].pos1.x = x; gSprites[monSpriteId].x = x;
gSprites[monSpriteId].pos1.y = y; gSprites[monSpriteId].y = y;
gSprites[spriteId].data[1] = g; gSprites[spriteId].data[1] = g;
gSprites[spriteId].data[2] = battlerId; gSprites[spriteId].data[2] = battlerId;
gSprites[spriteId].data[3] = h; gSprites[spriteId].data[3] = h;
@@ -1031,7 +1031,7 @@ static void sub_804B9E8(struct Sprite *sprite)
r5 = 0; r5 = 0;
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
LaunchBallStarsTaskForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r5); LaunchBallStarsTaskForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r5);
sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, r4); sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, battlerId, r4);
sprite->callback = sub_804BAA4; sprite->callback = sub_804BAA4;
gSprites[r7].invisible = FALSE; gSprites[r7].invisible = FALSE;
@@ -1063,24 +1063,24 @@ static void sub_804BAA4(struct Sprite *sprite)
r12 = TRUE; r12 = TRUE;
} }
var1 = (sprite->data[5] - sprite->pos1.x) * sprite->data[7] / 128 + sprite->pos1.x; var1 = (sprite->data[5] - sprite->x) * sprite->data[7] / 128 + sprite->x;
var2 = (sprite->data[6] - sprite->pos1.y) * sprite->data[7] / 128 + sprite->pos1.y; var2 = (sprite->data[6] - sprite->y) * sprite->data[7] / 128 + sprite->y;
gSprites[monSpriteId].pos1.x = var1; gSprites[monSpriteId].x = var1;
gSprites[monSpriteId].pos1.y = var2; gSprites[monSpriteId].y = var2;
if (sprite->data[7] < 128) if (sprite->data[7] < 128)
{ {
s16 sine = -(gSineTable[(u8)sprite->data[7]] / 8); s16 sine = -(gSineTable[(u8)sprite->data[7]] / 8);
sprite->data[7] += 4; sprite->data[7] += 4;
gSprites[monSpriteId].pos2.x = sine; gSprites[monSpriteId].x2 = sine;
gSprites[monSpriteId].pos2.y = sine; gSprites[monSpriteId].y2 = sine;
} }
else else
{ {
gSprites[monSpriteId].pos1.x = sprite->data[5]; gSprites[monSpriteId].x = sprite->data[5];
gSprites[monSpriteId].pos1.y = sprite->data[6]; gSprites[monSpriteId].y = sprite->data[6];
gSprites[monSpriteId].pos2.x = 0; gSprites[monSpriteId].x2 = 0;
gSprites[monSpriteId].pos2.y = 0; gSprites[monSpriteId].y2 = 0;
r6 = TRUE; r6 = TRUE;
} }
@@ -1120,7 +1120,7 @@ static void sub_804BC50(struct Sprite *sprite)
r6 = 0; r6 = 0;
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
LaunchBallStarsTaskForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r6); LaunchBallStarsTaskForPokeball(sprite->x, sprite->y - 5, sprite->oam.priority, r6);
sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, r8, r5); sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, r8, r5);
sprite->callback = sub_804BCF8; sprite->callback = sub_804BCF8;
StartSpriteAffineAnim(&gSprites[r7], 2); StartSpriteAffineAnim(&gSprites[r7], 2);
@@ -1152,7 +1152,7 @@ static void sub_804BCF8(struct Sprite *sprite)
else else
{ {
gSprites[r1].data[1] += 96; gSprites[r1].data[1] += 96;
gSprites[r1].pos2.y = -gSprites[r1].data[1] >> 8; gSprites[r1].y2 = -gSprites[r1].data[1] >> 8;
} }
} }
@@ -1173,15 +1173,15 @@ void StartHealthboxSlideIn(u8 battlerId)
healthboxSprite->data[0] = 5; healthboxSprite->data[0] = 5;
healthboxSprite->data[1] = 0; healthboxSprite->data[1] = 0;
healthboxSprite->pos2.x = 0x73; healthboxSprite->x2 = 0x73;
healthboxSprite->pos2.y = 0; healthboxSprite->y2 = 0;
healthboxSprite->callback = sub_804BE48; healthboxSprite->callback = sub_804BE48;
if (GetBattlerSide(battlerId) != B_SIDE_PLAYER) if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
{ {
healthboxSprite->data[0] = -healthboxSprite->data[0]; healthboxSprite->data[0] = -healthboxSprite->data[0];
healthboxSprite->data[1] = -healthboxSprite->data[1]; healthboxSprite->data[1] = -healthboxSprite->data[1];
healthboxSprite->pos2.x = -healthboxSprite->pos2.x; healthboxSprite->x2 = -healthboxSprite->x2;
healthboxSprite->pos2.y = -healthboxSprite->pos2.y; healthboxSprite->y2 = -healthboxSprite->y2;
} }
gSprites[healthboxSprite->data[5]].callback(&gSprites[healthboxSprite->data[5]]); gSprites[healthboxSprite->data[5]].callback(&gSprites[healthboxSprite->data[5]]);
@@ -1201,9 +1201,9 @@ static void sub_804BE24(struct Sprite *sprite)
static void sub_804BE48(struct Sprite *sprite) static void sub_804BE48(struct Sprite *sprite)
{ {
sprite->pos2.x -= sprite->data[0]; sprite->x2 -= sprite->data[0];
sprite->pos2.y -= sprite->data[1]; sprite->y2 -= sprite->data[1];
if (sprite->pos2.x == 0 && sprite->pos2.y == 0) if (sprite->x2 == 0 && sprite->y2 == 0)
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
@@ -1221,13 +1221,13 @@ static void SpriteCB_HitAnimHealthoxEffect(struct Sprite *sprite)
{ {
u8 r1 = sprite->data[1]; 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[0] = -sprite->data[0];
sprite->data[2]++; sprite->data[2]++;
if (sprite->data[2] == 21) if (sprite->data[2] == 21)
{ {
gSprites[r1].pos2.x = 0; gSprites[r1].x2 = 0;
gSprites[r1].pos2.y = 0; gSprites[r1].y2 = 0;
DestroySprite(sprite); DestroySprite(sprite);
} }
} }
+2 -2
View File
@@ -3105,14 +3105,14 @@ u8 DexScreen_DrawMonAreaPage(void)
gSprites[sPokedexScreenData->windowIds[14]].oam.affineMode = 1; gSprites[sPokedexScreenData->windowIds[14]].oam.affineMode = 1;
gSprites[sPokedexScreenData->windowIds[14]].oam.matrixNum = 2; gSprites[sPokedexScreenData->windowIds[14]].oam.matrixNum = 2;
gSprites[sPokedexScreenData->windowIds[14]].oam.priority = 1; gSprites[sPokedexScreenData->windowIds[14]].oam.priority = 1;
gSprites[sPokedexScreenData->windowIds[14]].pos2.y = gPokedexEntries[speciesId].pokemonOffset; gSprites[sPokedexScreenData->windowIds[14]].y2 = gPokedexEntries[speciesId].pokemonOffset;
SetOamMatrix(2, gPokedexEntries[speciesId].pokemonScale, 0, 0, gPokedexEntries[speciesId].pokemonScale); SetOamMatrix(2, gPokedexEntries[speciesId].pokemonScale, 0, 0, gPokedexEntries[speciesId].pokemonScale);
sPokedexScreenData->windowIds[15] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId_Debug(gSaveBlock2Ptr->playerGender, TRUE), 1, 80, 104, 0, 0xFFFF); sPokedexScreenData->windowIds[15] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId_Debug(gSaveBlock2Ptr->playerGender, TRUE), 1, 80, 104, 0, 0xFFFF);
gSprites[sPokedexScreenData->windowIds[15]].oam.paletteNum = 2; gSprites[sPokedexScreenData->windowIds[15]].oam.paletteNum = 2;
gSprites[sPokedexScreenData->windowIds[15]].oam.affineMode = 1; gSprites[sPokedexScreenData->windowIds[15]].oam.affineMode = 1;
gSprites[sPokedexScreenData->windowIds[15]].oam.matrixNum = 1; gSprites[sPokedexScreenData->windowIds[15]].oam.matrixNum = 1;
gSprites[sPokedexScreenData->windowIds[15]].oam.priority = 1; gSprites[sPokedexScreenData->windowIds[15]].oam.priority = 1;
gSprites[sPokedexScreenData->windowIds[15]].pos2.y = gPokedexEntries[speciesId].trainerOffset; gSprites[sPokedexScreenData->windowIds[15]].y2 = gPokedexEntries[speciesId].trainerOffset;
SetOamMatrix(1, gPokedexEntries[speciesId].trainerScale, 0, 0, gPokedexEntries[speciesId].trainerScale); SetOamMatrix(1, gPokedexEntries[speciesId].trainerScale, 0, 0, gPokedexEntries[speciesId].trainerScale);
} }
else else
+2 -2
View File
@@ -168,10 +168,10 @@ static void sub_81477C0(u8 taskId)
sub_81476E0(taskId, data); sub_81476E0(taskId, data);
StartSpriteAnim(&gSprites[data[14]], 4); StartSpriteAnim(&gSprites[data[14]], 4);
gSprites[data[14]].pos2.x = -32; gSprites[data[14]].x2 = -32;
StartSpriteAnim(&gSprites[data[15]], 5); StartSpriteAnim(&gSprites[data[15]], 5);
gSprites[data[15]].pos2.x = 32; gSprites[data[15]].x2 = 32;
} }
static void sub_814784C(u8 taskId) static void sub_814784C(u8 taskId)
+1 -1
View File
@@ -726,7 +726,7 @@ static void sub_814A8B8(void)
void sub_814A940(u32 id, s16 y) void sub_814A940(u32 id, s16 y)
{ {
gUnknown_203F3D8->unk81A8[id]->pos2.y = y; gUnknown_203F3D8->unk81A8[id]->y2 = y;
} }
void sub_814A95C(int id) void sub_814A95C(int id)
+11 -11
View File
@@ -406,7 +406,7 @@ void sub_814AF0C(struct PokemonJump2 *arg0, int multiplayerId)
sub_814ADB4(arg0->unk81BC[multiplayerId]); sub_814ADB4(arg0->unk81BC[multiplayerId]);
arg0->unk81BC[multiplayerId]->data[7] = arg0->unk81A8[multiplayerId] - gSprites; arg0->unk81BC[multiplayerId]->data[7] = arg0->unk81A8[multiplayerId] - gSprites;
arg0->unk81BC[multiplayerId]->invisible = FALSE; arg0->unk81BC[multiplayerId]->invisible = FALSE;
arg0->unk81BC[multiplayerId]->pos1.y = 96; arg0->unk81BC[multiplayerId]->y = 96;
arg0->unk81BC[multiplayerId]->callback = sub_814AF74; arg0->unk81BC[multiplayerId]->callback = sub_814AF74;
StartSpriteAnim(arg0->unk81BC[multiplayerId], 1); StartSpriteAnim(arg0->unk81BC[multiplayerId], 1);
} }
@@ -423,11 +423,11 @@ static void sub_814AF74(struct Sprite *sprite)
} }
break; break;
case 1: case 1:
sprite->pos1.y--; sprite->y--;
sprite->data[1]++; sprite->data[1]++;
if (sprite->pos1.y <= 72) if (sprite->y <= 72)
{ {
sprite->pos1.y = 72; sprite->y = 72;
sprite->data[0]++; sprite->data[0]++;
} }
break; break;
@@ -444,7 +444,7 @@ static void sub_814AF74(struct Sprite *sprite)
void sub_814AFE8(struct PokemonJump2 *arg0, int multiplayerId) void sub_814AFE8(struct PokemonJump2 *arg0, int multiplayerId)
{ {
arg0->unk81A8[multiplayerId]->callback = sub_814B038; arg0->unk81A8[multiplayerId]->callback = sub_814B038;
arg0->unk81A8[multiplayerId]->pos2.y = 0; arg0->unk81A8[multiplayerId]->y2 = 0;
sub_814ADB4(arg0->unk81A8[multiplayerId]); sub_814ADB4(arg0->unk81A8[multiplayerId]);
} }
@@ -458,16 +458,16 @@ static void sub_814B038(struct Sprite *sprite)
if (++sprite->data[1] > 1) if (++sprite->data[1] > 1)
{ {
if (++sprite->data[2] & 1) if (++sprite->data[2] & 1)
sprite->pos2.y = 2; sprite->y2 = 2;
else else
sprite->pos2.y = -2; sprite->y2 = -2;
sprite->data[1] = 0; sprite->data[1] = 0;
} }
if (sprite->data[2] > 12) if (sprite->data[2] > 12)
{ {
sprite->pos2.y = 0; sprite->y2 = 0;
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
} }
@@ -543,7 +543,7 @@ static void sub_814B1CC(struct Sprite *sprite)
if (sprite->data[1] > 0x7F) if (sprite->data[1] > 0x7F)
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->pos2.y = -(gSineTable[sprite->data[1]] >> 3); sprite->y2 = -(gSineTable[sprite->data[1]] >> 3);
if (sprite->data[1] == 0) if (sprite->data[1] == 0)
{ {
if (++sprite->data[2] < 2) if (++sprite->data[2] < 2)
@@ -608,7 +608,7 @@ void sub_814B348(struct PokemonJump2 *arg0, int arg1)
count = 0; count = 0;
for (i = 0; i < 4; i++) for (i = 0; i < 4; i++)
{ {
arg0->unk81D0[count]->pos1.y = gUnknown_846E100[i][arg1]; arg0->unk81D0[count]->y = gUnknown_846E100[i][arg1];
arg0->unk81D0[count]->oam.priority = priority; arg0->unk81D0[count]->oam.priority = priority;
arg0->unk81D0[count]->oam.paletteNum = palNum; arg0->unk81D0[count]->oam.paletteNum = palNum;
StartSpriteAnim(arg0->unk81D0[count], arg1); StartSpriteAnim(arg0->unk81D0[count], arg1);
@@ -617,7 +617,7 @@ void sub_814B348(struct PokemonJump2 *arg0, int arg1)
for (i = 3; i >= 0; i--) for (i = 3; i >= 0; i--)
{ {
arg0->unk81D0[count]->pos1.y = gUnknown_846E100[i][arg1]; arg0->unk81D0[count]->y = gUnknown_846E100[i][arg1];
arg0->unk81D0[count]->oam.priority = priority; arg0->unk81D0[count]->oam.priority = priority;
arg0->unk81D0[count]->oam.paletteNum = palNum; arg0->unk81D0[count]->oam.paletteNum = palNum;
StartSpriteAnim(arg0->unk81D0[count], arg1); StartSpriteAnim(arg0->unk81D0[count], arg1);
+29 -29
View File
@@ -785,14 +785,14 @@ static void MonSpriteZoom_UpdateYPos(struct Sprite * sprite, u8 closeness)
closeness = 3; closeness = 3;
PSA_GetSceneWork(); // return value not used PSA_GetSceneWork(); // return value not used
StartSpriteAffineAnim(sprite, closeness); StartSpriteAffineAnim(sprite, closeness);
sprite->pos1.y = GetYPosByScale(sAffineScales[closeness]); sprite->y = GetYPosByScale(sAffineScales[closeness]);
} }
static void ItemSpriteZoom_UpdateYPos(struct Sprite * sprite, u8 closeness) static void ItemSpriteZoom_UpdateYPos(struct Sprite * sprite, u8 closeness)
{ {
MonSpriteZoom_UpdateYPos(sprite, closeness); MonSpriteZoom_UpdateYPos(sprite, closeness);
sprite->pos2.x = GetSpriteOffsetByScale(sprite->data[6] - 32, closeness); sprite->x2 = GetSpriteOffsetByScale(sprite->data[6] - 32, closeness);
sprite->pos2.y = GetSpriteOffsetByScale(sprite->data[7] - 32, closeness); sprite->y2 = GetSpriteOffsetByScale(sprite->data[7] - 32, closeness);
} }
static void StartMonWiggleAnim(struct PokemonSpecialAnimScene * scene, u8 frameLen, u8 niter, u8 amplitude) static void StartMonWiggleAnim(struct PokemonSpecialAnimScene * scene, u8 frameLen, u8 niter, u8 amplitude)
@@ -807,7 +807,7 @@ static void StartMonWiggleAnim(struct PokemonSpecialAnimScene * scene, u8 frameL
static void StopMonWiggleAnim(struct PokemonSpecialAnimScene * scene) static void StopMonWiggleAnim(struct PokemonSpecialAnimScene * scene)
{ {
scene->monSprite->pos2.x = 0; scene->monSprite->x2 = 0;
scene->monSprite->callback = SpriteCallbackDummy; scene->monSprite->callback = SpriteCallbackDummy;
} }
@@ -820,13 +820,13 @@ static void SpriteCallback_MonSpriteWiggle(struct Sprite * sprite)
sprite->data[6]++; sprite->data[6]++;
if (sprite->data[1] != 0 && sprite->data[6] >= sprite->data[1]) if (sprite->data[1] != 0 && sprite->data[6] >= sprite->data[1])
{ {
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
else if (sprite->data[6] & 1) else if (sprite->data[6] & 1)
sprite->pos2.x = sprite->data[2]; sprite->x2 = sprite->data[2];
else else
sprite->pos2.x = -sprite->data[2]; sprite->x2 = -sprite->data[2];
} }
} }
@@ -989,8 +989,8 @@ static void Task_ItemUseOnMonAnim(u8 taskId)
static void CreateSprites_UseItem_OutwardSpiralDots(u8 taskId, s16 *data, struct Sprite * sprite) static void CreateSprites_UseItem_OutwardSpiralDots(u8 taskId, s16 *data, struct Sprite * sprite)
{ {
int x = sprite->pos1.x + sprite->pos2.x - 4; int x = sprite->x + sprite->x2 - 4;
int y = sprite->pos1.y + sprite->pos2.y - 4; int y = sprite->y + sprite->y2 - 4;
u8 spriteId; u8 spriteId;
int i; int i;
BlendPalettes(0x10000 << IndexOfSpritePaletteTag(5), 16, tBlendColor); BlendPalettes(0x10000 << IndexOfSpritePaletteTag(5), 16, tBlendColor);
@@ -1017,8 +1017,8 @@ static void SpriteCB_OutwardSpiralDots(struct Sprite * sprite)
data[1] += 7; data[1] += 7;
data[1] &= 0xFF; data[1] &= 0xFF;
data[2] += 4; data[2] += 4;
sprite->pos2.x = (data[2] * gSineTable[data[1] + 0x40]) >> 8; sprite->x2 = (data[2] * gSineTable[data[1] + 0x40]) >> 8;
sprite->pos2.y = (data[2] * gSineTable[data[1]]) >> 8; sprite->y2 = (data[2] * gSineTable[data[1]]) >> 8;
} }
else else
{ {
@@ -1042,16 +1042,16 @@ static void InitItemIconSpriteState(struct PokemonSpecialAnimScene * scene, stru
u32 personality; u32 personality;
if (closeness == 3) if (closeness == 3)
{ {
sprite->pos1.x = 120; sprite->x = 120;
sprite->pos1.y = scene->monSpriteY2; sprite->y = scene->monSpriteY2;
} }
else else
{ {
sprite->pos1.x = 120; sprite->x = 120;
sprite->pos1.y = scene->monSpriteY1; sprite->y = scene->monSpriteY1;
} }
sprite->pos1.x += 4; sprite->x += 4;
sprite->pos1.y += 4; sprite->y += 4;
species = PSA_GetMonSpecies(); species = PSA_GetMonSpecies();
personality = PSA_GetMonPersonality(); personality = PSA_GetMonPersonality();
switch (PSA_GetAnimType()) switch (PSA_GetAnimType())
@@ -1121,14 +1121,14 @@ static void SpriteCB_MachineSetWobble(struct Sprite * sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos1.x += 3; sprite->x += 3;
sprite->data[0]++; sprite->data[0]++;
break; break;
case 1: case 1:
sprite->data[1]++; sprite->data[1]++;
if (sprite->data[1] > 30) if (sprite->data[1] > 30)
{ {
sprite->pos1.x -= 3; sprite->x -= 3;
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
break; break;
@@ -1194,8 +1194,8 @@ static void CreateStarSprites(struct PokemonSpecialAnimScene * scene)
personality = PSA_GetMonPersonality(); personality = PSA_GetMonPersonality();
gSprites[spriteId].data[3] = sStarCoordOffsets[i][0] * 8; gSprites[spriteId].data[3] = sStarCoordOffsets[i][0] * 8;
gSprites[spriteId].data[4] = sStarCoordOffsets[i][1] * 8; gSprites[spriteId].data[4] = sStarCoordOffsets[i][1] * 8;
gSprites[spriteId].pos1.x += GetSpriteOffsetByScale(Menu2_GetMonSpriteAnchorCoordMinusx20(species, personality, 0), 3); gSprites[spriteId].x += GetSpriteOffsetByScale(Menu2_GetMonSpriteAnchorCoordMinusx20(species, personality, 0), 3);
gSprites[spriteId].pos1.y += GetSpriteOffsetByScale(Menu2_GetMonSpriteAnchorCoordMinusx20(species, personality, 1), 3); gSprites[spriteId].y += GetSpriteOffsetByScale(Menu2_GetMonSpriteAnchorCoordMinusx20(species, personality, 1), 3);
scene->field_0002++; scene->field_0002++;
} }
} }
@@ -1213,8 +1213,8 @@ static void SpriteCB_Star(struct Sprite * sprite)
{ {
sprite->data[1] += sprite->data[3]; sprite->data[1] += sprite->data[3];
sprite->data[2] += sprite->data[4]; sprite->data[2] += sprite->data[4];
sprite->pos2.x = sprite->data[1] >> 4; sprite->x2 = sprite->data[1] >> 4;
sprite->pos2.y = sprite->data[2] >> 4; sprite->y2 = sprite->data[2] >> 4;
} }
else else
{ {
@@ -1267,8 +1267,8 @@ static void Task_UseItem_OutwardSpiralDots(u8 taskId)
{ {
u32 spriteId, x, y, x2, y2, ampl; u32 spriteId, x, y, x2, y2, ampl;
struct Sprite * sprite = PSA_GetSceneWork()->itemIconSprite; struct Sprite * sprite = PSA_GetSceneWork()->itemIconSprite;
x = sprite->pos1.x + sprite->pos2.x; x = sprite->x + sprite->x2;
y = sprite->pos1.y + sprite->pos2.y; y = sprite->y + sprite->y2;
ampl = (PSAScene_RandomFromTask(taskId) % 21) + 70; ampl = (PSAScene_RandomFromTask(taskId) % 21) + 70;
x2 = x + ((u32)(gSineTable[tAngle + 0x40] * ampl) >> 8); x2 = x + ((u32)(gSineTable[tAngle + 0x40] * ampl) >> 8);
y2 = y + ((u32)(gSineTable[tAngle ] * ampl) >> 8); y2 = y + ((u32)(gSineTable[tAngle ] * ampl) >> 8);
@@ -1322,8 +1322,8 @@ static void SpriteCallback_UseItem_OutwardSpiralDots(struct Sprite * sprite)
{ {
x = (sprite->tsXorig - sprite->tsXinit) * sprite->tsRadius; x = (sprite->tsXorig - sprite->tsXinit) * sprite->tsRadius;
y = (sprite->tsYorig - sprite->tsYinit) * sprite->tsRadius; y = (sprite->tsYorig - sprite->tsYinit) * sprite->tsRadius;
sprite->pos1.x = (x >> 8) + sprite->tsXinit; sprite->x = (x >> 8) + sprite->tsXinit;
sprite->pos1.y = (y >> 8) + sprite->tsYinit; sprite->y = (y >> 8) + sprite->tsYinit;
} }
} }
@@ -1451,8 +1451,8 @@ static void CreateLevelUpVerticalSprite(u8 taskId, s16 *data)
static void SpriteCB_LevelUpVertical(struct Sprite * sprite) static void SpriteCB_LevelUpVertical(struct Sprite * sprite)
{ {
sprite->tsYsubpixel -= sprite->tsSpeed; sprite->tsYsubpixel -= sprite->tsSpeed;
sprite->pos2.y = sprite->tsYsubpixel >> 4; sprite->y2 = sprite->tsYsubpixel >> 4;
if (sprite->pos2.y < -0x40) if (sprite->y2 < -0x40)
{ {
gTasks[sprite->tsTaskId].tActiveSprCt--; gTasks[sprite->tsTaskId].tActiveSprCt--;
DestroySprite(sprite); DestroySprite(sprite);
+4 -4
View File
@@ -548,12 +548,12 @@ static void sub_808C9C4(u8 curBox)
r5 = 0; r5 = 0;
if (i & 2) if (i & 2)
{ {
sBoxSelectionPopupSpriteManager->unk_0004[i]->pos1.x = 196; sBoxSelectionPopupSpriteManager->unk_0004[i]->x = 196;
r5 = 2; r5 = 2;
} }
if (i & 1) if (i & 1)
{ {
sBoxSelectionPopupSpriteManager->unk_0004[i]->pos1.y = 112; sBoxSelectionPopupSpriteManager->unk_0004[i]->y = 112;
sBoxSelectionPopupSpriteManager->unk_0004[i]->oam.size = SPRITE_SIZE(8x16); sBoxSelectionPopupSpriteManager->unk_0004[i]->oam.size = SPRITE_SIZE(8x16);
r5++; r5++;
} }
@@ -636,11 +636,11 @@ static void sub_808CD64(struct Sprite *sprite)
if (++sprite->data[1] > 3) if (++sprite->data[1] > 3)
{ {
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->pos2.x += sprite->data[0]; sprite->x2 += sprite->data[0];
if (++sprite->data[2] > 5) if (++sprite->data[2] > 5)
{ {
sprite->data[2] = 0; sprite->data[2] = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
} }
} }
} }
+2 -2
View File
@@ -2166,8 +2166,8 @@ static void PSS_CreateMonMarkingSprite(void)
gPSSData->monMarkingSprite = CreateMonMarkingSprite_AllOff(TAG_TILE_10, TAG_PAL_DAC8, NULL); gPSSData->monMarkingSprite = CreateMonMarkingSprite_AllOff(TAG_TILE_10, TAG_PAL_DAC8, NULL);
gPSSData->monMarkingSprite->oam.priority = 1; gPSSData->monMarkingSprite->oam.priority = 1;
gPSSData->monMarkingSprite->subpriority = 1; gPSSData->monMarkingSprite->subpriority = 1;
gPSSData->monMarkingSprite->pos1.x = 40; gPSSData->monMarkingSprite->x = 40;
gPSSData->monMarkingSprite->pos1.y = 150; gPSSData->monMarkingSprite->y = 150;
gPSSData->monMarkingSpriteTileStart = (void *)OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(TAG_TILE_10); gPSSData->monMarkingSpriteTileStart = (void *)OBJ_VRAM0 + 32 * GetSpriteTileStartByTag(TAG_TILE_10);
} }
+34 -34
View File
@@ -360,12 +360,12 @@ static void sub_80902E0(struct Sprite *sprite)
if (sprite->data[1] != 0) if (sprite->data[1] != 0)
{ {
sprite->data[1]--; sprite->data[1]--;
sprite->pos1.x += sprite->data[2]; sprite->x += sprite->data[2];
} }
else else
{ {
gPSSData->field_C66--; gPSSData->field_C66--;
sprite->pos1.x = sprite->data[3]; sprite->x = sprite->data[3];
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
} }
@@ -378,8 +378,8 @@ static void sub_8090324(struct Sprite *sprite)
} }
else else
{ {
sprite->pos1.x += sprite->data[2]; sprite->x += sprite->data[2];
sprite->data[5] = sprite->pos1.x + sprite->pos2.x; sprite->data[5] = sprite->x + sprite->x2;
if (sprite->data[5] <= 68 || sprite->data[5] >= 252) if (sprite->data[5] <= 68 || sprite->data[5] >= 252)
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
@@ -586,7 +586,7 @@ void CreatePartyMonsSprites(bool8 arg0)
{ {
for (i = 0; i < count; i++) for (i = 0; i < count; i++)
{ {
gPSSData->partySprites[i]->pos1.y -= 160; gPSSData->partySprites[i]->y -= 160;
gPSSData->partySprites[i]->invisible = TRUE; gPSSData->partySprites[i]->invisible = TRUE;
} }
} }
@@ -636,8 +636,8 @@ static void sub_8090A74(struct Sprite *sprite, u16 partyId)
else else
x = 152, y = 8 * (3 * (partyId - 1)) + 16; x = 152, y = 8 * (3 * (partyId - 1)) + 16;
sprite->data[2] = (u16)(sprite->pos1.x) * 8; sprite->data[2] = (u16)(sprite->x) * 8;
sprite->data[3] = (u16)(sprite->pos1.y) * 8; sprite->data[3] = (u16)(sprite->y) * 8;
sprite->data[4] = ((x * 8) - sprite->data[2]) / 8; sprite->data[4] = ((x * 8) - sprite->data[2]) / 8;
sprite->data[5] = ((y * 8) - sprite->data[3]) / 8; sprite->data[5] = ((y * 8) - sprite->data[3]) / 8;
sprite->data[6] = 8; sprite->data[6] = 8;
@@ -650,21 +650,21 @@ static void sub_8090AE0(struct Sprite *sprite)
{ {
s16 x = sprite->data[2] += sprite->data[4]; s16 x = sprite->data[2] += sprite->data[4];
s16 y = sprite->data[3] += sprite->data[5]; s16 y = sprite->data[3] += sprite->data[5];
sprite->pos1.x = x / 8u; sprite->x = x / 8u;
sprite->pos1.y = y / 8u; sprite->y = y / 8u;
sprite->data[6]--; sprite->data[6]--;
} }
else else
{ {
if (sprite->data[1] == 0) if (sprite->data[1] == 0)
{ {
sprite->pos1.x = 104; sprite->x = 104;
sprite->pos1.y = 64; sprite->y = 64;
} }
else else
{ {
sprite->pos1.x = 152; sprite->x = 152;
sprite->pos1.y = 8 * (3 * (sprite->data[1] - 1)) + 16; sprite->y = 8 * (3 * (sprite->data[1] - 1)) + 16;
} }
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
gPSSData->partySprites[sprite->data[1]] = sprite; gPSSData->partySprites[sprite->data[1]] = sprite;
@@ -689,8 +689,8 @@ void sub_8090B98(s16 yDelta)
{ {
if (gPSSData->partySprites[i] != NULL) if (gPSSData->partySprites[i] != NULL)
{ {
gPSSData->partySprites[i]->pos1.y += yDelta; gPSSData->partySprites[i]->y += yDelta;
posY = gPSSData->partySprites[i]->pos1.y + gPSSData->partySprites[i]->pos2.y + gPSSData->partySprites[i]->centerToCornerVecY; posY = gPSSData->partySprites[i]->y + gPSSData->partySprites[i]->y2 + gPSSData->partySprites[i]->centerToCornerVecY;
posY += 16; posY += 16;
if (posY > 192) if (posY > 192)
gPSSData->partySprites[i]->invisible = TRUE; gPSSData->partySprites[i]->invisible = TRUE;
@@ -790,12 +790,12 @@ bool8 sub_8090E74(void)
gPSSData->field_C5D++; gPSSData->field_C5D++;
if (gPSSData->field_C5D & 1) if (gPSSData->field_C5D & 1)
{ {
(*gPSSData->field_B00)->pos1.y--; (*gPSSData->field_B00)->y--;
gPSSData->movingMonSprite->pos1.y++; gPSSData->movingMonSprite->y++;
} }
(*gPSSData->field_B00)->pos2.x = gSineTable[gPSSData->field_C5D * 8] / 16; (*gPSSData->field_B00)->x2 = gSineTable[gPSSData->field_C5D * 8] / 16;
gPSSData->movingMonSprite->pos2.x = -(gSineTable[gPSSData->field_C5D * 8] / 16); gPSSData->movingMonSprite->x2 = -(gSineTable[gPSSData->field_C5D * 8] / 16);
if (gPSSData->field_C5D == 8) if (gPSSData->field_C5D == 8)
{ {
gPSSData->movingMonSprite->oam.priority = (*gPSSData->field_B00)->oam.priority; gPSSData->movingMonSprite->oam.priority = (*gPSSData->field_B00)->oam.priority;
@@ -891,8 +891,8 @@ void SetMovingMonPriority(u8 priority)
static void sub_80911B0(struct Sprite *sprite) static void sub_80911B0(struct Sprite *sprite)
{ {
sprite->pos1.x = gPSSData->field_CB4->pos1.x; sprite->x = gPSSData->field_CB4->x;
sprite->pos1.y = gPSSData->field_CB4->pos1.y + gPSSData->field_CB4->pos2.y + 4; sprite->y = gPSSData->field_CB4->y + gPSSData->field_CB4->y2 + 4;
} }
static u16 sub_80911D4(u16 species) static u16 sub_80911D4(u16 species)
@@ -1316,7 +1316,7 @@ static void sub_8091E84(struct Sprite *sprite)
{ {
if (sprite->data[2] != 0) if (sprite->data[2] != 0)
sprite->data[2]--; sprite->data[2]--;
else if ((sprite->pos1.x += sprite->data[0]) == sprite->data[1]) else if ((sprite->x += sprite->data[0]) == sprite->data[1])
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
} }
@@ -1328,8 +1328,8 @@ static void sub_8091EB8(struct Sprite *sprite)
} }
else else
{ {
sprite->pos1.x += sprite->data[0]; sprite->x += sprite->data[0];
sprite->data[2] = sprite->pos1.x + sprite->pos2.x; sprite->data[2] = sprite->x + sprite->x2;
if (sprite->data[2] < 0x40 || sprite->data[2] > 0x100) if (sprite->data[2] < 0x40 || sprite->data[2] > 0x100)
DestroySprite(sprite); DestroySprite(sprite);
} }
@@ -1376,7 +1376,7 @@ static void sub_809200C(s8 direction)
for (i = 0; i < 2; i++) for (i = 0; i < 2; i++)
{ {
gPSSData->field_730[i]->pos2.x = 0; gPSSData->field_730[i]->x2 = 0;
gPSSData->field_730[i]->data[0] = 2; gPSSData->field_730[i]->data[0] = 2;
} }
if (direction < 0) if (direction < 0)
@@ -1403,8 +1403,8 @@ static void sub_80920AC(void)
for (i = 0; i < 2; i++) for (i = 0; i < 2; i++)
{ {
gPSSData->field_730[i]->pos1.x = 0x88 * i + 0x5c; gPSSData->field_730[i]->x = 0x88 * i + 0x5c;
gPSSData->field_730[i]->pos2.x = 0; gPSSData->field_730[i]->x2 = 0;
gPSSData->field_730[i]->invisible = FALSE; gPSSData->field_730[i]->invisible = FALSE;
} }
sub_80920FC(TRUE); sub_80920FC(TRUE);
@@ -1438,17 +1438,17 @@ static void sub_8092164(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos2.x = 0; sprite->x2 = 0;
break; break;
case 1: case 1:
if (++sprite->data[1] > 3) if (++sprite->data[1] > 3)
{ {
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->pos2.x += sprite->data[3]; sprite->x2 += sprite->data[3];
if (++sprite->data[2] > 5) if (++sprite->data[2] > 5)
{ {
sprite->data[2] = 0; sprite->data[2] = 0;
sprite->pos2.x = 0; sprite->x2 = 0;
} }
} }
break; break;
@@ -1456,18 +1456,18 @@ static void sub_8092164(struct Sprite *sprite)
sprite->data[0] = 3; sprite->data[0] = 3;
break; break;
case 3: case 3:
sprite->pos1.x -= gPSSData->field_2CE; sprite->x -= gPSSData->field_2CE;
if (sprite->pos1.x < 73 || sprite->pos1.x > 247) if (sprite->x < 73 || sprite->x > 247)
sprite->invisible = TRUE; sprite->invisible = TRUE;
if (--sprite->data[1] == 0) if (--sprite->data[1] == 0)
{ {
sprite->pos1.x = sprite->data[2]; sprite->x = sprite->data[2];
sprite->invisible = FALSE; sprite->invisible = FALSE;
sprite->data[0] = 4; sprite->data[0] = 4;
} }
break; break;
case 4: case 4:
sprite->pos1.x -= gPSSData->field_2CE; sprite->x -= gPSSData->field_2CE;
break; break;
} }
} }
+31 -31
View File
@@ -149,35 +149,35 @@ bool8 sub_80924A8(void)
{ {
gPSSData->field_CBC += gPSSData->field_CC4; gPSSData->field_CBC += gPSSData->field_CC4;
gPSSData->field_CC0 += gPSSData->field_CC8; gPSSData->field_CC0 += gPSSData->field_CC8;
gPSSData->field_CB4->pos1.x = gPSSData->field_CBC >> 8; gPSSData->field_CB4->x = gPSSData->field_CBC >> 8;
gPSSData->field_CB4->pos1.y = gPSSData->field_CC0 >> 8; gPSSData->field_CB4->y = gPSSData->field_CC0 >> 8;
if (gPSSData->field_CB4->pos1.x > 0x100) if (gPSSData->field_CB4->x > 0x100)
{ {
tmp = gPSSData->field_CB4->pos1.x - 0x100; tmp = gPSSData->field_CB4->x - 0x100;
gPSSData->field_CB4->pos1.x = tmp + 0x40; gPSSData->field_CB4->x = tmp + 0x40;
} }
if (gPSSData->field_CB4->pos1.x < 0x40) if (gPSSData->field_CB4->x < 0x40)
{ {
tmp = 0x40 - gPSSData->field_CB4->pos1.x; tmp = 0x40 - gPSSData->field_CB4->x;
gPSSData->field_CB4->pos1.x = 0x100 - tmp; gPSSData->field_CB4->x = 0x100 - tmp;
} }
if (gPSSData->field_CB4->pos1.y > 0xb0) if (gPSSData->field_CB4->y > 0xb0)
{ {
tmp = gPSSData->field_CB4->pos1.y - 0xb0; tmp = gPSSData->field_CB4->y - 0xb0;
gPSSData->field_CB4->pos1.y = tmp - 0x10; gPSSData->field_CB4->y = tmp - 0x10;
} }
if (gPSSData->field_CB4->pos1.y < -0x10) if (gPSSData->field_CB4->y < -0x10)
{ {
tmp = -0x10 - gPSSData->field_CB4->pos1.y; tmp = -0x10 - gPSSData->field_CB4->y;
gPSSData->field_CB4->pos1.y = 0xb0 - tmp; gPSSData->field_CB4->y = 0xb0 - tmp;
} }
if (gPSSData->field_CD7 && --gPSSData->field_CD7 == 0) if (gPSSData->field_CD7 && --gPSSData->field_CD7 == 0)
gPSSData->field_CB4->vFlip = (gPSSData->field_CB4->vFlip == FALSE); gPSSData->field_CB4->vFlip = (gPSSData->field_CB4->vFlip == FALSE);
} }
else else
{ {
gPSSData->field_CB4->pos1.x = gPSSData->field_CCC; gPSSData->field_CB4->x = gPSSData->field_CCC;
gPSSData->field_CB4->pos1.y = gPSSData->field_CCE; gPSSData->field_CB4->y = gPSSData->field_CCE;
sub_80929B0(); sub_80929B0();
} }
@@ -210,26 +210,26 @@ static void sub_8092660(void)
switch (gPSSData->field_CD2) switch (gPSSData->field_CD2)
{ {
default: default:
r7 = gPSSData->field_CCE - gPSSData->field_CB4->pos1.y; r7 = gPSSData->field_CCE - gPSSData->field_CB4->y;
break; break;
case -1: case -1:
r7 = gPSSData->field_CCE - 0xc0 - gPSSData->field_CB4->pos1.y; r7 = gPSSData->field_CCE - 0xc0 - gPSSData->field_CB4->y;
break; break;
case 1: case 1:
r7 = gPSSData->field_CCE + 0xc0 - gPSSData->field_CB4->pos1.y; r7 = gPSSData->field_CCE + 0xc0 - gPSSData->field_CB4->y;
break; break;
} }
switch (gPSSData->field_CD3) switch (gPSSData->field_CD3)
{ {
default: default:
r0 = gPSSData->field_CCC - gPSSData->field_CB4->pos1.x; r0 = gPSSData->field_CCC - gPSSData->field_CB4->x;
break; break;
case -1: case -1:
r0 = gPSSData->field_CCC - 0xc0 - gPSSData->field_CB4->pos1.x; r0 = gPSSData->field_CCC - 0xc0 - gPSSData->field_CB4->x;
break; break;
case 1: case 1:
r0 = gPSSData->field_CCC + 0xc0 - gPSSData->field_CB4->pos1.x; r0 = gPSSData->field_CCC + 0xc0 - gPSSData->field_CB4->x;
break; break;
} }
@@ -237,8 +237,8 @@ static void sub_8092660(void)
r0 <<= 8; r0 <<= 8;
gPSSData->field_CC4 = r0 / gPSSData->field_CD0; gPSSData->field_CC4 = r0 / gPSSData->field_CD0;
gPSSData->field_CC8 = r7 / gPSSData->field_CD0; gPSSData->field_CC8 = r7 / gPSSData->field_CD0;
gPSSData->field_CBC = gPSSData->field_CB4->pos1.x << 8; gPSSData->field_CBC = gPSSData->field_CB4->x << 8;
gPSSData->field_CC0 = gPSSData->field_CB4->pos1.y << 8; gPSSData->field_CC0 = gPSSData->field_CB4->y << 8;
} }
static void sub_80927E8(u8 newCurosrArea, u8 newCursorPosition) static void sub_80927E8(u8 newCurosrArea, u8 newCursorPosition)
@@ -509,13 +509,13 @@ static bool8 sub_8092E10(void)
static bool8 sub_8092E20(void) static bool8 sub_8092E20(void)
{ {
switch (gPSSData->field_CB4->pos2.y) switch (gPSSData->field_CB4->y2)
{ {
default: default:
gPSSData->field_CB4->pos2.y++; gPSSData->field_CB4->y2++;
break; break;
case 0: case 0:
gPSSData->field_CB4->pos2.y++; gPSSData->field_CB4->y2++;
break; break;
case 8: case 8:
return FALSE; return FALSE;
@@ -526,12 +526,12 @@ static bool8 sub_8092E20(void)
static bool8 sub_8092E54(void) static bool8 sub_8092E54(void)
{ {
switch (gPSSData->field_CB4->pos2.y) switch (gPSSData->field_CB4->y2)
{ {
case 0: case 0:
return FALSE; return FALSE;
default: default:
gPSSData->field_CB4->pos2.y--; gPSSData->field_CB4->y2--;
break; break;
} }
@@ -1862,8 +1862,8 @@ static bool8 sub_8094A0C(void)
static void sub_8094AB8(struct Sprite *sprite) static void sub_8094AB8(struct Sprite *sprite)
{ {
sprite->pos1.x = gPSSData->field_CB4->pos1.x; sprite->x = gPSSData->field_CB4->x;
sprite->pos1.y = gPSSData->field_CB4->pos1.y + 20; sprite->y = gPSSData->field_CB4->y + 20;
} }
static void sub_8094AD8(void) static void sub_8094AD8(void)
+30 -30
View File
@@ -447,20 +447,20 @@ static void sub_80962F0(u8 id, u8 cursorArea, u8 cursorPos)
case CURSOR_AREA_IN_BOX: case CURSOR_AREA_IN_BOX:
row = cursorPos % IN_BOX_ROWS; row = cursorPos % IN_BOX_ROWS;
column = cursorPos / IN_BOX_ROWS; column = cursorPos / IN_BOX_ROWS;
gPSSData->itemIconSprites[id].sprite->pos1.x = (24 * row) + 112; gPSSData->itemIconSprites[id].sprite->x = (24 * row) + 112;
gPSSData->itemIconSprites[id].sprite->pos1.y = (24 * column) + 56; gPSSData->itemIconSprites[id].sprite->y = (24 * column) + 56;
gPSSData->itemIconSprites[id].sprite->oam.priority = 2; gPSSData->itemIconSprites[id].sprite->oam.priority = 2;
break; break;
case CURSOR_AREA_IN_PARTY: case CURSOR_AREA_IN_PARTY:
if (cursorPos == 0) if (cursorPos == 0)
{ {
gPSSData->itemIconSprites[id].sprite->pos1.x = 116; gPSSData->itemIconSprites[id].sprite->x = 116;
gPSSData->itemIconSprites[id].sprite->pos1.y = 76; gPSSData->itemIconSprites[id].sprite->y = 76;
} }
else else
{ {
gPSSData->itemIconSprites[id].sprite->pos1.x = 164; gPSSData->itemIconSprites[id].sprite->x = 164;
gPSSData->itemIconSprites[id].sprite->pos1.y = 24 * (cursorPos - 1) + 28; gPSSData->itemIconSprites[id].sprite->y = 24 * (cursorPos - 1) + 28;
} }
gPSSData->itemIconSprites[id].sprite->oam.priority = 1; gPSSData->itemIconSprites[id].sprite->oam.priority = 1;
break; break;
@@ -641,8 +641,8 @@ static void sub_8096958(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->data[1] = sprite->pos1.x << 4; sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->pos1.y << 4; sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10; sprite->data[3] = 10;
sprite->data[4] = 21; sprite->data[4] = 21;
sprite->data[5] = 0; sprite->data[5] = 0;
@@ -650,8 +650,8 @@ static void sub_8096958(struct Sprite *sprite)
case 1: case 1:
sprite->data[1] -= sprite->data[3]; sprite->data[1] -= sprite->data[3];
sprite->data[2] -= sprite->data[4]; sprite->data[2] -= sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4; sprite->x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4; sprite->y = sprite->data[2] >> 4;
if (++sprite->data[5] > 11) if (++sprite->data[5] > 11)
sprite->callback = sub_80969BC; sprite->callback = sub_80969BC;
break; break;
@@ -660,8 +660,8 @@ static void sub_8096958(struct Sprite *sprite)
static void sub_80969BC(struct Sprite *sprite) static void sub_80969BC(struct Sprite *sprite)
{ {
sprite->pos1.x = gPSSData->field_CB4->pos1.x + 4; sprite->x = gPSSData->field_CB4->x + 4;
sprite->pos1.y = gPSSData->field_CB4->pos1.y + gPSSData->field_CB4->pos2.y + 8; sprite->y = gPSSData->field_CB4->y + gPSSData->field_CB4->y2 + 8;
sprite->oam.priority = gPSSData->field_CB4->oam.priority; sprite->oam.priority = gPSSData->field_CB4->oam.priority;
} }
@@ -670,8 +670,8 @@ static void sub_80969F4(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->data[1] = sprite->pos1.x << 4; sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->pos1.y << 4; sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10; sprite->data[3] = 10;
sprite->data[4] = 21; sprite->data[4] = 21;
sprite->data[5] = 0; sprite->data[5] = 0;
@@ -679,8 +679,8 @@ static void sub_80969F4(struct Sprite *sprite)
case 1: case 1:
sprite->data[1] += sprite->data[3]; sprite->data[1] += sprite->data[3];
sprite->data[2] += sprite->data[4]; sprite->data[2] += sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4; sprite->x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4; sprite->y = sprite->data[2] >> 4;
if (++sprite->data[5] > 11) if (++sprite->data[5] > 11)
{ {
sub_80962F0(sub_80962A8(sprite), sprite->data[6], sprite->data[7]); sub_80962F0(sub_80962A8(sprite), sprite->data[6], sprite->data[7]);
@@ -695,8 +695,8 @@ static void sub_8096A74(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->data[1] = sprite->pos1.x << 4; sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->pos1.y << 4; sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10; sprite->data[3] = 10;
sprite->data[4] = 21; sprite->data[4] = 21;
sprite->data[5] = 0; sprite->data[5] = 0;
@@ -704,13 +704,13 @@ static void sub_8096A74(struct Sprite *sprite)
case 1: case 1:
sprite->data[1] -= sprite->data[3]; sprite->data[1] -= sprite->data[3];
sprite->data[2] -= sprite->data[4]; sprite->data[2] -= sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4; sprite->x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4; sprite->y = sprite->data[2] >> 4;
sprite->pos2.x = gSineTable[sprite->data[5] * 8] >> 4; sprite->x2 = gSineTable[sprite->data[5] * 8] >> 4;
if (++sprite->data[5] > 11) if (++sprite->data[5] > 11)
{ {
sub_80962F0(sub_80962A8(sprite), sprite->data[6], sprite->data[7]); sub_80962F0(sub_80962A8(sprite), sprite->data[6], sprite->data[7]);
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->callback = sub_80969BC; sprite->callback = sub_80969BC;
} }
break; break;
@@ -722,8 +722,8 @@ static void sub_8096B10(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->data[1] = sprite->pos1.x << 4; sprite->data[1] = sprite->x << 4;
sprite->data[2] = sprite->pos1.y << 4; sprite->data[2] = sprite->y << 4;
sprite->data[3] = 10; sprite->data[3] = 10;
sprite->data[4] = 21; sprite->data[4] = 21;
sprite->data[5] = 0; sprite->data[5] = 0;
@@ -731,14 +731,14 @@ static void sub_8096B10(struct Sprite *sprite)
case 1: case 1:
sprite->data[1] += sprite->data[3]; sprite->data[1] += sprite->data[3];
sprite->data[2] += sprite->data[4]; sprite->data[2] += sprite->data[4];
sprite->pos1.x = sprite->data[1] >> 4; sprite->x = sprite->data[1] >> 4;
sprite->pos1.y = sprite->data[2] >> 4; sprite->y = sprite->data[2] >> 4;
sprite->pos2.x = -(gSineTable[sprite->data[5] * 8] >> 4); sprite->x2 = -(gSineTable[sprite->data[5] * 8] >> 4);
if (++sprite->data[5] > 11) if (++sprite->data[5] > 11)
{ {
sub_80962F0(sub_80962A8(sprite), sprite->data[6], sprite->data[7]); sub_80962F0(sub_80962A8(sprite), sprite->data[6], sprite->data[7]);
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
sprite->pos2.x = 0; sprite->x2 = 0;
} }
break; break;
} }
@@ -746,8 +746,8 @@ static void sub_8096B10(struct Sprite *sprite)
static void sub_8096BAC(struct Sprite *sprite) static void sub_8096BAC(struct Sprite *sprite)
{ {
sprite->pos1.y -= 8; sprite->y -= 8;
if (sprite->pos1.y + sprite->pos2.y < -16) if (sprite->y + sprite->y2 < -16)
{ {
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
sub_8096624(sub_80962A8(sprite), FALSE); sub_8096624(sub_80962A8(sprite), FALSE);
+32 -32
View File
@@ -1532,12 +1532,12 @@ static void PokeSum_SetHpExpBarCoordsFullRight(void)
for (i = 0; i < 11; i++) for (i = 0; i < 11; i++)
{ {
sExpBarObjs->xpos[i] = (8 * i) + 396; sExpBarObjs->xpos[i] = (8 * i) + 396;
sExpBarObjs->sprites[i]->pos1.x = sExpBarObjs->xpos[i]; sExpBarObjs->sprites[i]->x = sExpBarObjs->xpos[i];
if (i >= 9) if (i >= 9)
continue; continue;
sHpBarObjs->xpos[i] = (8 * i) + 412; sHpBarObjs->xpos[i] = (8 * i) + 412;
sHpBarObjs->sprites[i]->pos1.x = sHpBarObjs->xpos[i]; sHpBarObjs->sprites[i]->x = sHpBarObjs->xpos[i];
} }
} }
@@ -1547,11 +1547,11 @@ static void PokeSum_SetHpExpBarCoordsFullLeft(void)
for (i = 0; i < 11; i++) for (i = 0; i < 11; i++)
{ {
sExpBarObjs->xpos[i] = (8 * i) + 156; sExpBarObjs->xpos[i] = (8 * i) + 156;
sExpBarObjs->sprites[i]->pos1.x = sExpBarObjs->xpos[i]; sExpBarObjs->sprites[i]->x = sExpBarObjs->xpos[i];
if (i >= 9) if (i >= 9)
continue; continue;
sHpBarObjs->xpos[i] = (8 * i) + 172; sHpBarObjs->xpos[i] = (8 * i) + 172;
sHpBarObjs->sprites[i]->pos1.x = sHpBarObjs->xpos[i]; sHpBarObjs->sprites[i]->x = sHpBarObjs->xpos[i];
} }
} }
@@ -3010,7 +3010,7 @@ static void PokeSum_FlipPages_SlideHpExpBarsOut(void)
if (sExpBarObjs->xpos[i] < 240) if (sExpBarObjs->xpos[i] < 240)
{ {
sExpBarObjs->xpos[i] += 60; sExpBarObjs->xpos[i] += 60;
sExpBarObjs->sprites[i]->pos1.x = sExpBarObjs->xpos[i] + 60; sExpBarObjs->sprites[i]->x = sExpBarObjs->xpos[i] + 60;
} }
if (i >= 9) if (i >= 9)
@@ -3019,7 +3019,7 @@ static void PokeSum_FlipPages_SlideHpExpBarsOut(void)
if (sHpBarObjs->xpos[i] < 240) if (sHpBarObjs->xpos[i] < 240)
{ {
sHpBarObjs->xpos[i] += 60; sHpBarObjs->xpos[i] += 60;
sHpBarObjs->sprites[i]->pos1.x = sHpBarObjs->xpos[i] + 60; sHpBarObjs->sprites[i]->x = sHpBarObjs->xpos[i] + 60;
} }
} }
} }
@@ -3037,7 +3037,7 @@ static void PokeSum_FlipPages_SlideHpExpBarsIn(void)
if (sExpBarObjs->xpos[i] < 156 + (8 * i)) if (sExpBarObjs->xpos[i] < 156 + (8 * i))
sExpBarObjs->xpos[i] = 156 + (8 * i); sExpBarObjs->xpos[i] = 156 + (8 * i);
sExpBarObjs->sprites[i]->pos1.x = sExpBarObjs->xpos[i]; sExpBarObjs->sprites[i]->x = sExpBarObjs->xpos[i];
} }
if (i >= 9) if (i >= 9)
@@ -3050,7 +3050,7 @@ static void PokeSum_FlipPages_SlideHpExpBarsIn(void)
if (sHpBarObjs->xpos[i] < 172 + (8 * i)) if (sHpBarObjs->xpos[i] < 172 + (8 * i))
sHpBarObjs->xpos[i] = 172 + (8 * i); sHpBarObjs->xpos[i] = 172 + (8 * i);
sHpBarObjs->sprites[i]->pos1.x = sHpBarObjs->xpos[i]; sHpBarObjs->sprites[i]->x = sHpBarObjs->xpos[i];
} }
} }
} }
@@ -3925,20 +3925,20 @@ static void SpriteCB_PokeSum_MonPicSprite(struct Sprite * sprite)
switch (sMonPicBounceState->vigor) switch (sMonPicBounceState->vigor)
{ {
case 0: case 0:
sprite->pos1.y += sMonPicBounceYDelta_Under60[sMonPicBounceState->animFrame++]; sprite->y += sMonPicBounceYDelta_Under60[sMonPicBounceState->animFrame++];
arrayLen = NELEMS(sMonPicBounceYDelta_Under60); arrayLen = NELEMS(sMonPicBounceYDelta_Under60);
break; break;
case 1: case 1:
sprite->pos1.y += sMonPicBounceYDelta_60to80[sMonPicBounceState->animFrame++]; sprite->y += sMonPicBounceYDelta_60to80[sMonPicBounceState->animFrame++];
arrayLen = NELEMS(sMonPicBounceYDelta_60to80); arrayLen = NELEMS(sMonPicBounceYDelta_60to80);
break; break;
case 2: case 2:
sprite->pos1.y += sMonPicBounceYDelta_80to99[sMonPicBounceState->animFrame++]; sprite->y += sMonPicBounceYDelta_80to99[sMonPicBounceState->animFrame++];
arrayLen = NELEMS(sMonPicBounceYDelta_80to99); arrayLen = NELEMS(sMonPicBounceYDelta_80to99);
break; break;
case 3: case 3:
default: default:
sprite->pos1.y += sMonPicBounceYDelta_Full[sMonPicBounceState->animFrame++]; sprite->y += sMonPicBounceYDelta_Full[sMonPicBounceState->animFrame++];
arrayLen = NELEMS(sMonPicBounceYDelta_Full); arrayLen = NELEMS(sMonPicBounceYDelta_Full);
break; break;
} }
@@ -3964,7 +3964,7 @@ static void SpriteCB_PokeSum_EggPicShake(struct Sprite * sprite)
default: default:
if (sMonPicBounceState->initDelay++ >= 120) if (sMonPicBounceState->initDelay++ >= 120)
{ {
sprite->pos1.x += sEggPicShakeXDelta_ItWillTakeSomeTime[sMonPicBounceState->animFrame]; sprite->x += sEggPicShakeXDelta_ItWillTakeSomeTime[sMonPicBounceState->animFrame];
if (++sMonPicBounceState->animFrame >= NELEMS(sEggPicShakeXDelta_ItWillTakeSomeTime)) if (++sMonPicBounceState->animFrame >= NELEMS(sEggPicShakeXDelta_ItWillTakeSomeTime))
{ {
sMonPicBounceState->animFrame = 0; sMonPicBounceState->animFrame = 0;
@@ -3976,7 +3976,7 @@ static void SpriteCB_PokeSum_EggPicShake(struct Sprite * sprite)
case 1: case 1:
if (sMonPicBounceState->initDelay++ >= 90) if (sMonPicBounceState->initDelay++ >= 90)
{ {
sprite->pos1.x += sEggPicShakeXDelta_OccasionallyMoves[sMonPicBounceState->animFrame]; sprite->x += sEggPicShakeXDelta_OccasionallyMoves[sMonPicBounceState->animFrame];
if (++sMonPicBounceState->animFrame >= NELEMS(sEggPicShakeXDelta_OccasionallyMoves)) if (++sMonPicBounceState->animFrame >= NELEMS(sEggPicShakeXDelta_OccasionallyMoves))
{ {
sMonPicBounceState->animFrame = 0; sMonPicBounceState->animFrame = 0;
@@ -3988,7 +3988,7 @@ static void SpriteCB_PokeSum_EggPicShake(struct Sprite * sprite)
case 2: case 2:
if (sMonPicBounceState->initDelay++ >= 60) if (sMonPicBounceState->initDelay++ >= 60)
{ {
sprite->pos1.x += sEggPicShakeXDelta_AlmostReadyToHatch[sMonPicBounceState->animFrame]; sprite->x += sEggPicShakeXDelta_AlmostReadyToHatch[sMonPicBounceState->animFrame];
if (++sMonPicBounceState->animFrame >= NELEMS(sEggPicShakeXDelta_AlmostReadyToHatch)) if (++sMonPicBounceState->animFrame >= NELEMS(sEggPicShakeXDelta_AlmostReadyToHatch))
{ {
sMonPicBounceState->animFrame = 0; sMonPicBounceState->animFrame = 0;
@@ -4252,7 +4252,7 @@ static void SpriteCB_MoveSelectionCursor(struct Sprite * sprite)
if (sMonSummaryScreen->isSwappingMoves == TRUE && i > 1) if (sMonSummaryScreen->isSwappingMoves == TRUE && i > 1)
continue; continue;
sMoveSelectionCursorObjs[i]->sprite->pos1.y = sMoveSelectionCursorPos * 28 + 34; sMoveSelectionCursorObjs[i]->sprite->y = sMoveSelectionCursorPos * 28 + 34;
} }
if (sMonSummaryScreen->isSwappingMoves != TRUE) if (sMonSummaryScreen->isSwappingMoves != TRUE)
@@ -4373,17 +4373,17 @@ static void ShowOrHideStatusIcon(u8 invisible)
if (sMonSummaryScreen->curPageIndex == PSS_PAGE_MOVES_INFO) if (sMonSummaryScreen->curPageIndex == PSS_PAGE_MOVES_INFO)
{ {
if (sStatusIcon->sprite->pos1.y != 45) if (sStatusIcon->sprite->y != 45)
{ {
sStatusIcon->sprite->pos1.x = 16; sStatusIcon->sprite->x = 16;
sStatusIcon->sprite->pos1.y = 45; sStatusIcon->sprite->y = 45;
return; return;
} }
} }
else if (sStatusIcon->sprite->pos1.y != 38) else if (sStatusIcon->sprite->y != 38)
{ {
sStatusIcon->sprite->pos1.x = 16; sStatusIcon->sprite->x = 16;
sStatusIcon->sprite->pos1.y = 38; sStatusIcon->sprite->y = 38;
return; return;
} }
} }
@@ -4755,13 +4755,13 @@ static void HideShowPokerusIcon(bool8 invisible)
if (sMonSummaryScreen->curPageIndex == PSS_PAGE_MOVES_INFO) if (sMonSummaryScreen->curPageIndex == PSS_PAGE_MOVES_INFO)
{ {
sPokerusIconObj->sprite->invisible = TRUE; sPokerusIconObj->sprite->invisible = TRUE;
sPokerusIconObj->sprite->pos1.x = 16; sPokerusIconObj->sprite->x = 16;
sPokerusIconObj->sprite->pos1.y = 44; sPokerusIconObj->sprite->y = 44;
} }
else else
{ {
sPokerusIconObj->sprite->pos1.x = 114; sPokerusIconObj->sprite->x = 114;
sPokerusIconObj->sprite->pos1.y = 92; sPokerusIconObj->sprite->y = 92;
} }
} }
@@ -4826,13 +4826,13 @@ static void HideShowShinyStar(bool8 invisible)
if (sMonSummaryScreen->curPageIndex == PSS_PAGE_MOVES_INFO) if (sMonSummaryScreen->curPageIndex == PSS_PAGE_MOVES_INFO)
{ {
sShinyStarObjData->sprite->pos1.x = 8; sShinyStarObjData->sprite->x = 8;
sShinyStarObjData->sprite->pos1.y = 24; sShinyStarObjData->sprite->y = 24;
} }
else else
{ {
sShinyStarObjData->sprite->pos1.x = 106; sShinyStarObjData->sprite->x = 106;
sShinyStarObjData->sprite->pos1.y = 40; sShinyStarObjData->sprite->y = 40;
} }
} }
@@ -4884,8 +4884,8 @@ static void PokeSum_CreateMonMarkingsSprite(void)
if (sMonSummaryScreen->markingSprite != NULL) if (sMonSummaryScreen->markingSprite != NULL)
{ {
StartSpriteAnim(sMonSummaryScreen->markingSprite, markings); StartSpriteAnim(sMonSummaryScreen->markingSprite, markings);
sMonSummaryScreen->markingSprite->pos1.x = 20; sMonSummaryScreen->markingSprite->x = 20;
sMonSummaryScreen->markingSprite->pos1.y = 91; sMonSummaryScreen->markingSprite->y = 91;
} }
PokeSum_ShowOrHideMonMarkingsSprite(TRUE); PokeSum_ShowOrHideMonMarkingsSprite(TRUE);
+37 -37
View File
@@ -440,24 +440,24 @@ static void AnimDefensiveWall(struct Sprite *sprite)
{ {
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{ {
sprite->pos1.x = 72; sprite->x = 72;
sprite->pos1.y = 80; sprite->y = 80;
} }
else else
{ {
sprite->pos1.x = 176; sprite->x = 176;
sprite->pos1.y = 40; sprite->y = 40;
} }
} }
else else
{ {
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0]; gBattleAnimArgs[0] = -gBattleAnimArgs[0];
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1];
} }
if (IsContest()) if (IsContest())
sprite->pos1.y += 9; sprite->y += 9;
sprite->data[0] = 256 + IndexOfSpritePaletteTag(gBattleAnimArgs[2]) * 16; sprite->data[0] = 256 + IndexOfSpritePaletteTag(gBattleAnimArgs[2]) * 16;
sprite->callback = sub_80B300C; sprite->callback = sub_80B300C;
sub_80B300C(sprite); sub_80B300C(sprite);
@@ -543,13 +543,13 @@ static void AnimWallSparkle(struct Sprite *sprite)
{ {
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{ {
sprite->pos1.x = 72 - gBattleAnimArgs[0]; sprite->x = 72 - gBattleAnimArgs[0];
sprite->pos1.y = gBattleAnimArgs[1] + 80; sprite->y = gBattleAnimArgs[1] + 80;
} }
else else
{ {
sprite->pos1.x = gBattleAnimArgs[0] + 176; sprite->x = gBattleAnimArgs[0] + 176;
sprite->pos1.y = gBattleAnimArgs[1] + 40; sprite->y = gBattleAnimArgs[1] + 40;
} }
} }
else else
@@ -570,19 +570,19 @@ static void AnimWallSparkle(struct Sprite *sprite)
static void AnimBentSpoon(struct Sprite *sprite) static void AnimBentSpoon(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
sprite->pos1.x -= 40; sprite->x -= 40;
sprite->pos1.y += 10; sprite->y += 10;
sprite->data[1] = -1; sprite->data[1] = -1;
} }
else else
{ {
sprite->pos1.x += 40; sprite->x += 40;
sprite->pos1.y -= 10; sprite->y -= 10;
sprite->data[1] = 1; sprite->data[1] = 1;
} }
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
@@ -596,10 +596,10 @@ static void AnimQuestionMark(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT)
x = -x; x = -x;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + x; sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + x;
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + y; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + y;
if (sprite->pos1.y < 16) if (sprite->y < 16)
sprite->pos1.y = 16; sprite->y = 16;
StoreSpriteCallbackInData6(sprite, sub_80B3384); StoreSpriteCallbackInData6(sprite, sub_80B3384);
sprite->callback = RunStoredCallbackWhenAnimEnds; sprite->callback = RunStoredCallbackWhenAnimEnds;
} }
@@ -676,13 +676,13 @@ static void sub_80B34DC(u8 taskId)
case 1: case 1:
if (task->data[3] != 0) if (task->data[3] != 0)
{ {
gSprites[task->data[0]].pos2.y -= 8; gSprites[task->data[0]].y2 -= 8;
--task->data[3]; --task->data[3];
} }
else else
{ {
gSprites[task->data[0]].invisible = TRUE; gSprites[task->data[0]].invisible = TRUE;
gSprites[task->data[0]].pos1.x = 272; gSprites[task->data[0]].x = 272;
ResetSpriteRotScale(task->data[0]); ResetSpriteRotScale(task->data[0]);
DestroyAnimVisualTask(taskId); DestroyAnimVisualTask(taskId);
} }
@@ -726,20 +726,20 @@ static void sub_80B3618(u8 taskId)
switch (task->data[2]) switch (task->data[2])
{ {
case 0: case 0:
gSprites[spriteId].pos2.x = task->data[12]; gSprites[spriteId].x2 = task->data[12];
gSprites[spriteId].pos2.y = -task->data[12]; gSprites[spriteId].y2 = -task->data[12];
break; break;
case 1: case 1:
gSprites[spriteId].pos2.x = -task->data[12]; gSprites[spriteId].x2 = -task->data[12];
gSprites[spriteId].pos2.y = task->data[12]; gSprites[spriteId].y2 = task->data[12];
break; break;
case 2: case 2:
gSprites[spriteId].pos2.x = task->data[12]; gSprites[spriteId].x2 = task->data[12];
gSprites[spriteId].pos2.y = task->data[12]; gSprites[spriteId].y2 = task->data[12];
break; break;
case 3: case 3:
gSprites[spriteId].pos2.x = -task->data[12]; gSprites[spriteId].x2 = -task->data[12];
gSprites[spriteId].pos2.y = -task->data[12]; gSprites[spriteId].y2 = -task->data[12];
break; break;
} }
} }
@@ -786,8 +786,8 @@ static void AnimRedX(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[0] == 0) if (gBattleAnimArgs[0] == 0)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET);
} }
sprite->data[0] = gBattleAnimArgs[1]; sprite->data[0] = gBattleAnimArgs[1];
sprite->callback = sub_80B37A4; sprite->callback = sub_80B37A4;
@@ -1039,10 +1039,10 @@ static void AnimPsychoBoost(struct Sprite *sprite)
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y);
if (IsContest()) if (IsContest())
sprite->pos1.y += 12; sprite->y += 12;
sprite->data[1] = 8; sprite->data[1] = 8;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND);
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(sprite->data[1], 16 - sprite->data[1])); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(sprite->data[1], 16 - sprite->data[1]));
@@ -1069,7 +1069,7 @@ static void AnimPsychoBoost(struct Sprite *sprite)
} }
} }
sprite->data[3] += 0x380; sprite->data[3] += 0x380;
sprite->pos2.y -= sprite->data[3] >> 8; sprite->y2 -= sprite->data[3] >> 8;
sprite->data[3] &= 0xFF; sprite->data[3] &= 0xFF;
break; break;
case 3: case 3:
+2 -2
View File
@@ -127,8 +127,8 @@ static void Task_QLFishMovement(u8 taskId)
else else
QL_SetObjectGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_GFX_RIDE)); QL_SetObjectGraphicsId(objectEvent, GetPlayerAvatarGraphicsIdByStateId(PLAYER_AVATAR_GFX_RIDE));
ObjectEventTurn(objectEvent, objectEvent->movementDirection); ObjectEventTurn(objectEvent, objectEvent->movementDirection);
sprite->pos2.x = 0; sprite->x2 = 0;
sprite->pos2.y = 0; sprite->y2 = 0;
ScriptContext2_Disable(); ScriptContext2_Disable();
DestroyTask(taskId); DestroyTask(taskId);
} }
+73 -73
View File
@@ -2279,7 +2279,7 @@ static bool8 HandleSwitchMapInput(void)
static void SpriteCB_SwitchMapCursor(struct Sprite * sprite) static void SpriteCB_SwitchMapCursor(struct Sprite * sprite)
{ {
sprite->pos1.y = sSwitchMapMenu->highlight.top + 16; sprite->y = sSwitchMapMenu->highlight.top + 16;
} }
static bool8 CreateSwitchMapCursor(void) static bool8 CreateSwitchMapCursor(void)
@@ -2781,8 +2781,8 @@ static void FreeMapEdgeSprites(void)
u8 i; u8 i;
for (i = 0; i < NELEMS(sMapOpenCloseAnim->mapEdges); i++) for (i = 0; i < NELEMS(sMapOpenCloseAnim->mapEdges); i++)
{ {
sMapOpenCloseAnim->mapEdges[i]->x = sMapOpenCloseAnim->mapEdges[i]->sprite->pos1.x; sMapOpenCloseAnim->mapEdges[i]->x = sMapOpenCloseAnim->mapEdges[i]->sprite->x;
sMapOpenCloseAnim->mapEdges[i]->y = sMapOpenCloseAnim->mapEdges[i]->sprite->pos1.y; sMapOpenCloseAnim->mapEdges[i]->y = sMapOpenCloseAnim->mapEdges[i]->sprite->y;
if (sMapOpenCloseAnim->mapEdges[i]->sprite != NULL) if (sMapOpenCloseAnim->mapEdges[i]->sprite != NULL)
{ {
DestroySprite(sMapOpenCloseAnim->mapEdges[i]->sprite); DestroySprite(sMapOpenCloseAnim->mapEdges[i]->sprite);
@@ -2903,54 +2903,54 @@ static void Task_MapOpenAnim(u8 taskId)
static bool8 MoveMapEdgesOutward(void) static bool8 MoveMapEdgesOutward(void)
{ {
sub_80C2B48(); sub_80C2B48();
if (sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x == 0) if (sMapOpenCloseAnim->mapEdges[0]->sprite->x == 0)
{ {
return TRUE; return TRUE;
} }
else if (sMapOpenCloseAnim->moveState > 17) else if (sMapOpenCloseAnim->moveState > 17)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x -= 1; sMapOpenCloseAnim->mapEdges[0]->sprite->x -= 1;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x -= 1; sMapOpenCloseAnim->mapEdges[1]->sprite->x -= 1;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x -= 1; sMapOpenCloseAnim->mapEdges[2]->sprite->x -= 1;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x += 1; sMapOpenCloseAnim->mapEdges[3]->sprite->x += 1;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x += 1; sMapOpenCloseAnim->mapEdges[4]->sprite->x += 1;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x += 1; sMapOpenCloseAnim->mapEdges[5]->sprite->x += 1;
} }
else if (sMapOpenCloseAnim->moveState > 14) else if (sMapOpenCloseAnim->moveState > 14)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x -= 2; sMapOpenCloseAnim->mapEdges[0]->sprite->x -= 2;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x -= 2; sMapOpenCloseAnim->mapEdges[1]->sprite->x -= 2;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x -= 2; sMapOpenCloseAnim->mapEdges[2]->sprite->x -= 2;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x += 2; sMapOpenCloseAnim->mapEdges[3]->sprite->x += 2;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x += 2; sMapOpenCloseAnim->mapEdges[4]->sprite->x += 2;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x += 2; sMapOpenCloseAnim->mapEdges[5]->sprite->x += 2;
} }
else if (sMapOpenCloseAnim->moveState > 10) else if (sMapOpenCloseAnim->moveState > 10)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x -= 3; sMapOpenCloseAnim->mapEdges[0]->sprite->x -= 3;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x -= 3; sMapOpenCloseAnim->mapEdges[1]->sprite->x -= 3;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x -= 3; sMapOpenCloseAnim->mapEdges[2]->sprite->x -= 3;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x += 3; sMapOpenCloseAnim->mapEdges[3]->sprite->x += 3;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x += 3; sMapOpenCloseAnim->mapEdges[4]->sprite->x += 3;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x += 3; sMapOpenCloseAnim->mapEdges[5]->sprite->x += 3;
} }
else if (sMapOpenCloseAnim->moveState > 6) else if (sMapOpenCloseAnim->moveState > 6)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x -= 5; sMapOpenCloseAnim->mapEdges[0]->sprite->x -= 5;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x -= 5; sMapOpenCloseAnim->mapEdges[1]->sprite->x -= 5;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x -= 5; sMapOpenCloseAnim->mapEdges[2]->sprite->x -= 5;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x += 5; sMapOpenCloseAnim->mapEdges[3]->sprite->x += 5;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x += 5; sMapOpenCloseAnim->mapEdges[4]->sprite->x += 5;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x += 5; sMapOpenCloseAnim->mapEdges[5]->sprite->x += 5;
} }
else else
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x -= 8; sMapOpenCloseAnim->mapEdges[0]->sprite->x -= 8;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x -= 8; sMapOpenCloseAnim->mapEdges[1]->sprite->x -= 8;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x -= 8; sMapOpenCloseAnim->mapEdges[2]->sprite->x -= 8;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x += 8; sMapOpenCloseAnim->mapEdges[3]->sprite->x += 8;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x += 8; sMapOpenCloseAnim->mapEdges[4]->sprite->x += 8;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x += 8; sMapOpenCloseAnim->mapEdges[5]->sprite->x += 8;
} }
sMapOpenCloseAnim->moveState++; sMapOpenCloseAnim->moveState++;
return FALSE; return FALSE;
@@ -2959,9 +2959,9 @@ static bool8 MoveMapEdgesOutward(void)
static void sub_80C2B48(void) static void sub_80C2B48(void)
{ {
struct GpuWindowParams data; struct GpuWindowParams data;
data.left = sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x; data.left = sMapOpenCloseAnim->mapEdges[0]->sprite->x;
data.top = 16; data.top = 16;
data.right = sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x; data.right = sMapOpenCloseAnim->mapEdges[3]->sprite->x;
data.bottom = 160; data.bottom = 160;
SetGpuWindowDims(0, &data); SetGpuWindowDims(0, &data);
} }
@@ -3059,54 +3059,54 @@ static void Task_MapCloseAnim(u8 taskId)
static bool8 MoveMapEdgesInward(void) static bool8 MoveMapEdgesInward(void)
{ {
sub_80C2B48(); sub_80C2B48();
if (sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x == 104) if (sMapOpenCloseAnim->mapEdges[0]->sprite->x == 104)
{ {
return TRUE; return TRUE;
} }
else if (sMapOpenCloseAnim->moveState > 17) else if (sMapOpenCloseAnim->moveState > 17)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x += 1; sMapOpenCloseAnim->mapEdges[0]->sprite->x += 1;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x += 1; sMapOpenCloseAnim->mapEdges[1]->sprite->x += 1;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x += 1; sMapOpenCloseAnim->mapEdges[2]->sprite->x += 1;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x -= 1; sMapOpenCloseAnim->mapEdges[3]->sprite->x -= 1;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x -= 1; sMapOpenCloseAnim->mapEdges[4]->sprite->x -= 1;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x -= 1; sMapOpenCloseAnim->mapEdges[5]->sprite->x -= 1;
} }
else if (sMapOpenCloseAnim->moveState > 14) else if (sMapOpenCloseAnim->moveState > 14)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x += 2; sMapOpenCloseAnim->mapEdges[0]->sprite->x += 2;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x += 2; sMapOpenCloseAnim->mapEdges[1]->sprite->x += 2;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x += 2; sMapOpenCloseAnim->mapEdges[2]->sprite->x += 2;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x -= 2; sMapOpenCloseAnim->mapEdges[3]->sprite->x -= 2;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x -= 2; sMapOpenCloseAnim->mapEdges[4]->sprite->x -= 2;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x -= 2; sMapOpenCloseAnim->mapEdges[5]->sprite->x -= 2;
} }
else if (sMapOpenCloseAnim->moveState > 10) else if (sMapOpenCloseAnim->moveState > 10)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x += 3; sMapOpenCloseAnim->mapEdges[0]->sprite->x += 3;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x += 3; sMapOpenCloseAnim->mapEdges[1]->sprite->x += 3;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x += 3; sMapOpenCloseAnim->mapEdges[2]->sprite->x += 3;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x -= 3; sMapOpenCloseAnim->mapEdges[3]->sprite->x -= 3;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x -= 3; sMapOpenCloseAnim->mapEdges[4]->sprite->x -= 3;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x -= 3; sMapOpenCloseAnim->mapEdges[5]->sprite->x -= 3;
} }
else if (sMapOpenCloseAnim->moveState > 6) else if (sMapOpenCloseAnim->moveState > 6)
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x += 5; sMapOpenCloseAnim->mapEdges[0]->sprite->x += 5;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x += 5; sMapOpenCloseAnim->mapEdges[1]->sprite->x += 5;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x += 5; sMapOpenCloseAnim->mapEdges[2]->sprite->x += 5;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x -= 5; sMapOpenCloseAnim->mapEdges[3]->sprite->x -= 5;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x -= 5; sMapOpenCloseAnim->mapEdges[4]->sprite->x -= 5;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x -= 5; sMapOpenCloseAnim->mapEdges[5]->sprite->x -= 5;
} }
else else
{ {
sMapOpenCloseAnim->mapEdges[0]->sprite->pos1.x += 8; sMapOpenCloseAnim->mapEdges[0]->sprite->x += 8;
sMapOpenCloseAnim->mapEdges[1]->sprite->pos1.x += 8; sMapOpenCloseAnim->mapEdges[1]->sprite->x += 8;
sMapOpenCloseAnim->mapEdges[2]->sprite->pos1.x += 8; sMapOpenCloseAnim->mapEdges[2]->sprite->x += 8;
sMapOpenCloseAnim->mapEdges[3]->sprite->pos1.x -= 8; sMapOpenCloseAnim->mapEdges[3]->sprite->x -= 8;
sMapOpenCloseAnim->mapEdges[4]->sprite->pos1.x -= 8; sMapOpenCloseAnim->mapEdges[4]->sprite->x -= 8;
sMapOpenCloseAnim->mapEdges[5]->sprite->pos1.x -= 8; sMapOpenCloseAnim->mapEdges[5]->sprite->x -= 8;
} }
sMapOpenCloseAnim->moveState++; sMapOpenCloseAnim->moveState++;
return FALSE; return FALSE;
@@ -3116,14 +3116,14 @@ static void SpriteCB_MapCursor(struct Sprite * sprite)
{ {
if (sMapCursor->moveCounter != 0) if (sMapCursor->moveCounter != 0)
{ {
sprite->pos1.x += sMapCursor->horizontalMove; sprite->x += sMapCursor->horizontalMove;
sprite->pos1.y += sMapCursor->verticalMove; sprite->y += sMapCursor->verticalMove;
sMapCursor->moveCounter--; sMapCursor->moveCounter--;
} }
else else
{ {
sMapCursor->sprite->pos1.x = 8 * sMapCursor->x + 36; sMapCursor->sprite->x = 8 * sMapCursor->x + 36;
sMapCursor->sprite->pos1.y = 8 * sMapCursor->y + 36; sMapCursor->sprite->y = 8 * sMapCursor->y + 36;
} }
} }
@@ -3345,8 +3345,8 @@ static void SnapToIconOrButton(void)
break; break;
} }
} }
sMapCursor->sprite->pos1.x = 8 * sMapCursor->x + 36; sMapCursor->sprite->x = 8 * sMapCursor->x + 36;
sMapCursor->sprite->pos1.y = 8 * sMapCursor->y + 36; sMapCursor->sprite->y = 8 * sMapCursor->y + 36;
sMapCursor->selectedMapsec = GetSelectedMapSection(GetSelectedRegionMap(), LAYER_MAP, sMapCursor->y, sMapCursor->x); sMapCursor->selectedMapsec = GetSelectedMapSection(GetSelectedRegionMap(), LAYER_MAP, sMapCursor->y, sMapCursor->x);
} }
+34 -34
View File
@@ -316,9 +316,9 @@ const struct SpriteTemplate gWeatherBallRockDownSpriteTemplate =
static void AnimFallingRock(struct Sprite *sprite) static void AnimFallingRock(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[3] != 0) 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->x += gBattleAnimArgs[0];
sprite->pos1.y += 14; sprite->y += 14;
StartSpriteAnim(sprite, gBattleAnimArgs[1]); StartSpriteAnim(sprite, gBattleAnimArgs[1]);
AnimateSprite(sprite); AnimateSprite(sprite);
sprite->data[0] = 0; sprite->data[0] = 0;
@@ -334,7 +334,7 @@ static void AnimFallingRock(struct Sprite *sprite)
static void sub_80B46B4(struct Sprite *sprite) static void sub_80B46B4(struct Sprite *sprite)
{ {
sprite->pos1.x += sprite->data[5]; sprite->x += sprite->data[5];
sprite->data[0] = 192; sprite->data[0] = 192;
sprite->data[1] = sprite->data[5]; sprite->data[1] = sprite->data[5];
sprite->data[2] = 4; sprite->data[2] = 4;
@@ -350,15 +350,15 @@ static void AnimRockFragment(struct Sprite *sprite)
StartSpriteAnim(sprite, gBattleAnimArgs[5]); StartSpriteAnim(sprite, gBattleAnimArgs[5]);
AnimateSprite(sprite); AnimateSprite(sprite);
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
sprite->pos1.x -= gBattleAnimArgs[0]; sprite->x -= gBattleAnimArgs[0];
else 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[0] = gBattleAnimArgs[4];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[3]; sprite->data[4] = sprite->y + gBattleAnimArgs[3];
InitSpriteDataForLinearTranslation(sprite); InitSpriteDataForLinearTranslation(sprite);
sprite->data[3] = 0; sprite->data[3] = 0;
sprite->data[4] = 0; sprite->data[4] = 0;
@@ -382,8 +382,8 @@ static void AnimParticleInVortex(struct Sprite *sprite)
static void sub_80B47C4(struct Sprite *sprite) static void sub_80B47C4(struct Sprite *sprite)
{ {
sprite->data[4] += sprite->data[1]; sprite->data[4] += sprite->data[1];
sprite->pos2.y = -(sprite->data[4] >> 8); sprite->y2 = -(sprite->data[4] >> 8);
sprite->pos2.x = Sin(sprite->data[5], sprite->data[3]); sprite->x2 = Sin(sprite->data[5], sprite->data[3]);
sprite->data[5] = (sprite->data[5] + sprite->data[2]) & 0xFF; sprite->data[5] = (sprite->data[5] + sprite->data[2]) & 0xFF;
if (--sprite->data[0] == -1) if (--sprite->data[0] == -1)
{ {
@@ -493,16 +493,16 @@ static void AnimDirtParticleAcrossScreen(struct Sprite *sprite)
{ {
if (gBattleAnimArgs[3] != 0 && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (gBattleAnimArgs[3] != 0 && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x = 304; sprite->x = 304;
gBattleAnimArgs[1] = -gBattleAnimArgs[1]; gBattleAnimArgs[1] = -gBattleAnimArgs[1];
sprite->data[5] = 1; sprite->data[5] = 1;
sprite->oam.matrixNum = ST_OAM_HFLIP; sprite->oam.matrixNum = ST_OAM_HFLIP;
} }
else else
{ {
sprite->pos1.x = -64; sprite->x = -64;
} }
sprite->pos1.y = gBattleAnimArgs[0]; sprite->y = gBattleAnimArgs[0];
SetSubspriteTables(sprite, sFlyingSandSubspriteTable); SetSubspriteTables(sprite, sFlyingSandSubspriteTable);
sprite->data[1] = gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[1];
sprite->data[2] = gBattleAnimArgs[2]; sprite->data[2] = gBattleAnimArgs[2];
@@ -512,18 +512,18 @@ static void AnimDirtParticleAcrossScreen(struct Sprite *sprite)
{ {
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
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);
sprite->data[3] &= 0xFF; sprite->data[3] &= 0xFF;
sprite->data[4] &= 0xFF; sprite->data[4] &= 0xFF;
if (sprite->data[5] == 0) if (sprite->data[5] == 0)
{ {
if (sprite->pos1.x + sprite->pos2.x > 272) if (sprite->x + sprite->x2 > 272)
{ {
sprite->callback = DestroyAnimSprite; sprite->callback = DestroyAnimSprite;
} }
} }
else if (sprite->pos1.x + sprite->pos2.x < -32) else if (sprite->x + sprite->x2 < -32)
{ {
sprite->callback = DestroyAnimSprite; sprite->callback = DestroyAnimSprite;
} }
@@ -541,8 +541,8 @@ static void AnimRaiseSprite(struct Sprite *sprite)
StartSpriteAnim(sprite, gBattleAnimArgs[4]); StartSpriteAnim(sprite, gBattleAnimArgs[4]);
InitSpritePosToAnimAttacker(sprite, 0); InitSpritePosToAnimAttacker(sprite, 0);
sprite->data[0] = gBattleAnimArgs[3]; sprite->data[0] = gBattleAnimArgs[3];
sprite->data[2] = sprite->pos1.x; sprite->data[2] = sprite->x;
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[2]; sprite->data[4] = sprite->y + gBattleAnimArgs[2];
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
} }
@@ -600,8 +600,8 @@ static void sub_80B4D00(u8 taskId)
case 0: case 0:
task->data[6] -= task->data[4]; task->data[6] -= task->data[4];
task->data[7] -= task->data[5]; task->data[7] -= task->data[5];
gSprites[task->data[15]].pos2.x = task->data[6] >> 3; gSprites[task->data[15]].x2 = task->data[6] >> 3;
gSprites[task->data[15]].pos2.y = task->data[7] >> 3; gSprites[task->data[15]].y2 = task->data[7] >> 3;
if (++task->data[9] == 10) if (++task->data[9] == 10)
{ {
task->data[11] = 20; task->data[11] = 20;
@@ -625,8 +625,8 @@ static void sub_80B4D00(u8 taskId)
task->data[7] = 0; task->data[7] = 0;
++task->data[0]; ++task->data[0];
} }
gSprites[task->data[15]].pos2.x = task->data[6] >> 3; gSprites[task->data[15]].x2 = task->data[6] >> 3;
gSprites[task->data[15]].pos2.y = task->data[7] >> 3; gSprites[task->data[15]].y2 = task->data[7] >> 3;
break; break;
case 3: case 3:
task->data[2] += task->data[4]; task->data[2] += task->data[4];
@@ -721,7 +721,7 @@ static u8 sub_80B4FB8(void)
static void AnimRockTomb(struct Sprite *sprite) static void AnimRockTomb(struct Sprite *sprite)
{ {
StartSpriteAnim(sprite, gBattleAnimArgs[4]); StartSpriteAnim(sprite, gBattleAnimArgs[4]);
sprite->pos2.x = gBattleAnimArgs[0]; sprite->x2 = gBattleAnimArgs[0];
sprite->data[2] = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[1];
sprite->data[3] -= gBattleAnimArgs[2]; sprite->data[3] -= gBattleAnimArgs[2];
sprite->data[0] = 3; sprite->data[0] = 3;
@@ -735,7 +735,7 @@ static void sub_80B5024(struct Sprite *sprite)
sprite->invisible = FALSE; sprite->invisible = FALSE;
if (sprite->data[3] != 0) 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[3] += sprite->data[0];
++sprite->data[0]; ++sprite->data[0];
if (sprite->data[3] > 0) if (sprite->data[3] > 0)
@@ -758,10 +758,10 @@ static void AnimRockBlastRock(struct Sprite *sprite)
static void AnimRockScatter(struct Sprite *sprite) static void AnimRockScatter(struct Sprite *sprite)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1);
sprite->pos1.x += gBattleAnimArgs[0]; sprite->x += gBattleAnimArgs[0];
sprite->pos1.y += gBattleAnimArgs[1]; sprite->y += gBattleAnimArgs[1];
sprite->data[1] = gBattleAnimArgs[0]; sprite->data[1] = gBattleAnimArgs[0];
sprite->data[2] = gBattleAnimArgs[1]; sprite->data[2] = gBattleAnimArgs[1];
sprite->data[5] = gBattleAnimArgs[2]; sprite->data[5] = gBattleAnimArgs[2];
@@ -774,8 +774,8 @@ static void sub_80B50F8(struct Sprite *sprite)
sprite->data[0] += 8; sprite->data[0] += 8;
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
sprite->pos2.x += sprite->data[3] / 40; sprite->x2 += sprite->data[3] / 40;
sprite->pos2.y -= Sin(sprite->data[0], sprite->data[5]); sprite->y2 -= Sin(sprite->data[0], sprite->data[5]);
if (sprite->data[0] > 140) if (sprite->data[0] > 140)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
+4 -4
View File
@@ -405,7 +405,7 @@ static void CreateFerrySprite(void)
} }
else else
{ {
gSprites[spriteId].pos1.x = 240; gSprites[spriteId].x = 240;
gSprites[spriteId].data[0] *= -1; gSprites[spriteId].data[0] *= -1;
} }
} }
@@ -413,13 +413,13 @@ static void CreateFerrySprite(void)
static void SpriteCB_Ferry(struct Sprite * sprite) static void SpriteCB_Ferry(struct Sprite * sprite)
{ {
sprite->data[1] += sprite->data[0]; sprite->data[1] += sprite->data[0];
sprite->pos2.x = sprite->data[1] >> 4; sprite->x2 = sprite->data[1] >> 4;
if (sprite->data[2] % 5 == 0) if (sprite->data[2] % 5 == 0)
{ {
CreateWakeSprite(sprite->pos1.x + sprite->pos2.x); CreateWakeSprite(sprite->x + sprite->x2);
} }
sprite->data[2]++; sprite->data[2]++;
if ((u16)(300 + sprite->pos2.x) > 600) if ((u16)(300 + sprite->x2) > 600)
{ {
DestroySprite(sprite); DestroySprite(sprite);
} }
+1 -1
View File
@@ -1778,7 +1778,7 @@ static void UpdateReelIconSprites(const s16 * reelPosPtr, const s16 * yposPtr)
ypos = *yposPtr * 8; ypos = *yposPtr * 8;
for (j = 0; j < 5; j++) for (j = 0; j < 5; j++)
{ {
sSlotMachineGfxManager->reelIconSprites[i][j]->pos2.y = ypos; sSlotMachineGfxManager->reelIconSprites[i][j]->y2 = ypos;
{ {
s32 animId = sReelIconAnimByReelAndPos[i][reelPos]; s32 animId = sReelIconAnimByReelAndPos[i][reelPos];
struct Sprite * sprite = sSlotMachineGfxManager->reelIconSprites[i][j]; struct Sprite * sprite = sSlotMachineGfxManager->reelIconSprites[i][j];
+10 -10
View File
@@ -166,8 +166,8 @@ static const struct Sprite sDummySprite =
.template = &gDummySpriteTemplate, .template = &gDummySpriteTemplate,
.subspriteTables = NULL, .subspriteTables = NULL,
.callback = SpriteCallbackDummy, .callback = SpriteCallbackDummy,
.pos1 = { 304, 160 }, .x = 304, .y = 160,
.pos2 = { 0, 0 }, .x2 = 0, .y2 = 0,
.centerToCornerVecX = 0, .centerToCornerVecX = 0,
.centerToCornerVecY = 0, .centerToCornerVecY = 0,
.animNum = 0, .animNum = 0,
@@ -369,13 +369,13 @@ void UpdateOamCoords(void)
{ {
if (sprite->coordOffsetEnabled) if (sprite->coordOffsetEnabled)
{ {
sprite->oam.x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX + gSpriteCoordOffsetX; sprite->oam.x = sprite->x + sprite->x2 + sprite->centerToCornerVecX + gSpriteCoordOffsetX;
sprite->oam.y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY + gSpriteCoordOffsetY; sprite->oam.y = sprite->y + sprite->y2 + sprite->centerToCornerVecY + gSpriteCoordOffsetY;
} }
else else
{ {
sprite->oam.x = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; sprite->oam.x = sprite->x + sprite->x2 + sprite->centerToCornerVecX;
sprite->oam.y = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; sprite->oam.y = sprite->y + sprite->y2 + sprite->centerToCornerVecY;
} }
} }
} }
@@ -573,8 +573,8 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y,
sprite->affineAnims = template->affineAnims; sprite->affineAnims = template->affineAnims;
sprite->template = template; sprite->template = template;
sprite->callback = template->callback; sprite->callback = template->callback;
sprite->pos1.x = x; sprite->x = x;
sprite->pos1.y = y; sprite->y = y;
CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode); CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode);
@@ -1249,14 +1249,14 @@ static void obj_update_pos2(struct Sprite *sprite, s32 xmod, s32 ymod)
dim = sOamDimensionsCopy[sprite->oam.shape][sprite->oam.size][0]; dim = sOamDimensionsCopy[sprite->oam.shape][sprite->oam.size][0];
baseDim = dim << 8; baseDim = dim << 8;
xFormed = (dim << 16) / gOamMatrices[matrixNum].a; xFormed = (dim << 16) / gOamMatrices[matrixNum].a;
sprite->pos2.x = affine_get_new_pos2(baseDim, xFormed, xmod); sprite->x2 = affine_get_new_pos2(baseDim, xFormed, xmod);
} }
if (ymod != 0x800) if (ymod != 0x800)
{ {
dim = sOamDimensionsCopy[sprite->oam.shape][sprite->oam.size][1]; dim = sOamDimensionsCopy[sprite->oam.shape][sprite->oam.size][1];
baseDim = dim << 8; baseDim = dim << 8;
xFormed = (dim << 16) / gOamMatrices[matrixNum].d; xFormed = (dim << 16) / gOamMatrices[matrixNum].d;
sprite->pos2.y = affine_get_new_pos2(baseDim, xFormed, ymod); sprite->y2 = affine_get_new_pos2(baseDim, xFormed, ymod);
} }
} }
+9 -9
View File
@@ -116,7 +116,7 @@ static void Task_SSAnneRun(u8 taskId)
} }
TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId);
boatObject = &gObjectEvents[objectEventId]; boatObject = &gObjectEvents[objectEventId];
if (gSprites[boatObject->spriteId].pos1.x + gSprites[boatObject->spriteId].pos2.x < -120) if (gSprites[boatObject->spriteId].x + gSprites[boatObject->spriteId].x2 < -120)
{ {
PlaySE(SE_SS_ANNE_HORN); PlaySE(SE_SS_ANNE_HORN);
gTasks[taskId].func = Task_SSAnneFinish; gTasks[taskId].func = Task_SSAnneFinish;
@@ -124,7 +124,7 @@ static void Task_SSAnneRun(u8 taskId)
else else
{ {
x = data[2] / 5; x = data[2] / 5;
gSprites[boatObject->spriteId].pos2.x = -x; gSprites[boatObject->spriteId].x2 = -x;
} }
} }
@@ -150,7 +150,7 @@ static void CreateWakeBehindBoat(void)
TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId);
boatObject = &gObjectEvents[objectEventId]; boatObject = &gObjectEvents[objectEventId];
x = gSprites[boatObject->spriteId].pos1.x + gSprites[boatObject->spriteId].pos2.x + 80; x = gSprites[boatObject->spriteId].x + gSprites[boatObject->spriteId].x2 + 80;
spriteId = CreateSprite(&sWakeSpriteTemplate, x, 109, 0xFF); spriteId = CreateSprite(&sWakeSpriteTemplate, x, 109, 0xFF);
gSprites[spriteId].oam.priority = 2; gSprites[spriteId].oam.priority = 2;
gSprites[spriteId].oam.paletteNum = 10; gSprites[spriteId].oam.paletteNum = 10;
@@ -164,12 +164,12 @@ static void WakeSpriteCallback(struct Sprite * sprite)
TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId);
boatObject = &gObjectEvents[objectEventId]; boatObject = &gObjectEvents[objectEventId];
x = gSprites[boatObject->spriteId].pos1.x + gSprites[boatObject->spriteId].pos2.x + 80; x = gSprites[boatObject->spriteId].x + gSprites[boatObject->spriteId].x2 + 80;
sprite->pos1.x = x; sprite->x = x;
if (sprite->data[0] / 6 < 22) if (sprite->data[0] / 6 < 22)
sprite->data[0]++; sprite->data[0]++;
sprite->pos2.x = sprite->data[0] / 6; sprite->x2 = sprite->data[0] / 6;
if (sprite->pos1.x + sprite->pos2.x < -18) if (sprite->x + sprite->x2 < -18)
DestroySprite(sprite); DestroySprite(sprite);
} }
@@ -182,7 +182,7 @@ static void CreateSmokeSprite(void)
TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId); TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &objectEventId);
boatObject = &gObjectEvents[objectEventId]; boatObject = &gObjectEvents[objectEventId];
x = gSprites[boatObject->spriteId].pos1.x + gSprites[boatObject->spriteId].pos2.x + 49; x = gSprites[boatObject->spriteId].x + gSprites[boatObject->spriteId].x2 + 49;
if ((s16)x >= -32) if ((s16)x >= -32)
{ {
spriteId = CreateSprite(&sSmokeSpriteTemplate, x, 78, 8); spriteId = CreateSprite(&sSmokeSpriteTemplate, x, 78, 8);
@@ -194,7 +194,7 @@ static void CreateSmokeSprite(void)
static void SmokeSpriteCallback(struct Sprite * sprite) static void SmokeSpriteCallback(struct Sprite * sprite)
{ {
sprite->data[0]++; sprite->data[0]++;
sprite->pos2.x = sprite->data[0] / 4; sprite->x2 = sprite->data[0] / 4;
if (sprite->animEnded) if (sprite->animEnded)
DestroySprite(sprite); DestroySprite(sprite);
} }
+18 -18
View File
@@ -610,8 +610,8 @@ static u8 TeachyTvSetupObjEventAndOam(void)
static void TeachyTvSetSpriteCoordsAndSwitchFrame(u8 objId, u16 x, u16 y, u8 frame) static void TeachyTvSetSpriteCoordsAndSwitchFrame(u8 objId, u16 x, u16 y, u8 frame)
{ {
gSprites[objId].pos2.x = x; gSprites[objId].x2 = x;
gSprites[objId].pos2.y = y; gSprites[objId].y2 = y;
gSprites[objId].invisible = 0; gSprites[objId].invisible = 0;
StartSpriteAnim(&gSprites[objId], frame); StartSpriteAnim(&gSprites[objId], frame);
} }
@@ -669,7 +669,7 @@ static void TeachyTvSetupPostBattleWindowAndObj(u8 taskId)
data[4] = 0; data[4] = 0;
data[5] = 0; data[5] = 0;
TeachyTvGrassAnimationMain(taskId, objAddr->pos2.x, objAddr->pos2.y, 0, 1); TeachyTvGrassAnimationMain(taskId, objAddr->x2, objAddr->y2, 0, 1);
} }
static void TeachyTvInitTextPrinter(const u8 *text) static void TeachyTvInitTextPrinter(const u8 *text)
@@ -785,7 +785,7 @@ static void TTVcmd_NpcMoveAndSetupTextPrinter(u8 taskId)
if (data[2] != 35) if (data[2] != 35)
++data[2]; ++data[2];
else { else {
if (spriteAddr->pos2.x == 0x78) if (spriteAddr->x2 == 0x78)
{ {
StartSpriteAnim(&gSprites[data[1]], 0); StartSpriteAnim(&gSprites[data[1]], 0);
TeachyTvInitTextPrinter(gTeachyTvText_PokedudeSaysHello); TeachyTvInitTextPrinter(gTeachyTvText_PokedudeSaysHello);
@@ -793,7 +793,7 @@ static void TTVcmd_NpcMoveAndSetupTextPrinter(u8 taskId)
++data[3]; ++data[3];
} }
else else
++spriteAddr->pos2.x; ++spriteAddr->x2;
} }
} }
@@ -961,7 +961,7 @@ static void TTVcmd_DudeMoveUp(u8 taskId)
if (!(++data[2] & 0xF)) if (!(++data[2] & 0xF))
{ {
--sResources->grassAnimCounterHi; --sResources->grassAnimCounterHi;
TeachyTvGrassAnimationMain(taskId, obj->pos2.x, obj->pos2.y, 0, 0); TeachyTvGrassAnimationMain(taskId, obj->x2, obj->y2, 0, 0);
} }
if (data[2] == 48) if (data[2] == 48)
{ {
@@ -981,7 +981,7 @@ static void TTVcmd_DudeMoveRight(u8 taskId)
if (!(++data[2] & 0xF)) if (!(++data[2] & 0xF))
++sResources->grassAnimCounterLo; ++sResources->grassAnimCounterLo;
if (!((data[2] + 8) & 0xF)) if (!((data[2] + 8) & 0xF))
TeachyTvGrassAnimationMain(taskId, obj->pos2.x + 8, obj->pos2.y, 0, 0); TeachyTvGrassAnimationMain(taskId, obj->x2 + 8, obj->y2, 0, 0);
if (data[2] == 0x30) if (data[2] == 0x30)
{ {
data[2] = 0; data[2] = 0;
@@ -1001,7 +1001,7 @@ static void TTVcmd_DudeTurnLeft(u8 taskId)
++data[3]; ++data[3];
data[4] = 0; data[4] = 0;
data[5] = 0; data[5] = 0;
TeachyTvGrassAnimationMain(taskId, objAddr->pos2.x, objAddr->pos2.y, 0, 0); TeachyTvGrassAnimationMain(taskId, objAddr->x2, objAddr->y2, 0, 0);
} }
static void TTVcmd_DudeMoveLeft(u8 taskId) static void TTVcmd_DudeMoveLeft(u8 taskId)
@@ -1009,12 +1009,12 @@ static void TTVcmd_DudeMoveLeft(u8 taskId)
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
struct Sprite *objAddr = &gSprites[data[1]]; struct Sprite *objAddr = &gSprites[data[1]];
if (!(objAddr->pos2.x & 0xF)) if (!(objAddr->x2 & 0xF))
TeachyTvGrassAnimationMain(taskId, objAddr->pos2.x - 8, objAddr->pos2.y, 0, 0); TeachyTvGrassAnimationMain(taskId, objAddr->x2 - 8, objAddr->y2, 0, 0);
if (objAddr->pos2.x == 8) if (objAddr->x2 == 8)
++data[3]; ++data[3];
else else
--objAddr->pos2.x; --objAddr->x2;
} }
static void TTVcmd_RenderAndRemoveBg1EndGraphic(u8 taskId) static void TTVcmd_RenderAndRemoveBg1EndGraphic(u8 taskId)
@@ -1110,8 +1110,8 @@ static void TeachyTvGrassAnimationMain(u8 taskId, s16 x, s16 y, u8 subpriority,
{ {
spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_TALL_GRASS], 0, 0, subpriority); spriteId = CreateSprite(gFieldEffectObjectTemplatePointers[FLDEFFOBJ_TALL_GRASS], 0, 0, subpriority);
obj = &gSprites[spriteId]; obj = &gSprites[spriteId];
obj->pos2.x = x; obj->x2 = x;
obj->pos2.y = y + 8; obj->y2 = y + 8;
obj->callback = TeachyTvGrassAnimationObjCallback; obj->callback = TeachyTvGrassAnimationObjCallback;
obj->data[0] = taskId; obj->data[0] = taskId;
if (mode == 1) if (mode == 1)
@@ -1142,13 +1142,13 @@ static void TeachyTvGrassAnimationObjCallback(struct Sprite *sprite)
sprite->subspriteTableNum = 1; sprite->subspriteTableNum = 1;
else else
sprite->subspriteTableNum = 0; sprite->subspriteTableNum = 0;
sprite->pos2.x += data[4]; sprite->x2 += data[4];
sprite->pos2.y += data[5]; sprite->y2 += data[5];
if (sprite->animEnded) if (sprite->animEnded)
{ {
sprite->subpriority = 0; sprite->subpriority = 0;
diff1 = sprite->pos2.x - objAddr->pos2.x; diff1 = sprite->x2 - objAddr->x2;
diff2 = sprite->pos2.y - objAddr->pos2.y; diff2 = sprite->y2 - objAddr->y2;
if (diff1 <= -16 || diff1 >= 16 || diff2 <= -16 || diff2 >= 24) if (diff1 <= -16 || diff1 >= 16 || diff2 <= -16 || diff2 >= 24)
DestroySprite(sprite); DestroySprite(sprite);
} }
+4 -4
View File
@@ -1276,16 +1276,16 @@ void sub_80062B0(struct Sprite *sprite)
switch(sprite->data[1]) switch(sprite->data[1])
{ {
case 0: case 0:
sprite->pos2.y = 0; sprite->y2 = 0;
break; break;
case 1: case 1:
sprite->pos2.y = 1; sprite->y2 = 1;
break; break;
case 2: case 2:
sprite->pos2.y = 2; sprite->y2 = 2;
break; break;
case 3: case 3:
sprite->pos2.y = 1; sprite->y2 = 1;
sprite->data[1] = 0; sprite->data[1] = 0;
return; return;
} }
+15 -15
View File
@@ -913,15 +913,15 @@ static void SpriteCallback_TitleScreenFlameOrLeaf(struct Sprite * sprite)
{ {
s16 * data = sprite->data; s16 * data = sprite->data;
sprite->data[0] -= data[1]; sprite->data[0] -= data[1];
sprite->pos1.x = sprite->data[0] >> 4; sprite->x = sprite->data[0] >> 4;
if (sprite->pos1.x < -8) if (sprite->x < -8)
{ {
DestroySprite(sprite); DestroySprite(sprite);
return; return;
} }
data[2] += data[3]; data[2] += data[3];
sprite->pos1.y = data[2] >> 4; sprite->y = data[2] >> 4;
if (sprite->pos1.y < 0x10 || sprite->pos1.y > 0xc8) if (sprite->y < 0x10 || sprite->y > 0xc8)
{ {
DestroySprite(sprite); DestroySprite(sprite);
return; return;
@@ -1046,14 +1046,14 @@ static void CreateFlameOrLeafSprite(s32 y0, s32 x1, s32 y1)
static void SpriteCallback_LG_8079800(struct Sprite * sprite) static void SpriteCallback_LG_8079800(struct Sprite * sprite)
{ {
sprite->pos1.x -= 7; sprite->x -= 7;
if (sprite->pos1.x < -16) if (sprite->x < -16)
{ {
sprite->pos1.x = 0x100; sprite->x = 0x100;
sprite->data[7]++; sprite->data[7]++;
if (sprite->data[7] >= NELEMS(gUnknown_LG_83BFA10)) if (sprite->data[7] >= NELEMS(gUnknown_LG_83BFA10))
sprite->data[7] = 0; sprite->data[7] = 0;
sprite->pos1.y = gUnknown_LG_83BFA10[sprite->data[7]]; sprite->y = gUnknown_LG_83BFA10[sprite->data[7]];
} }
} }
@@ -1188,23 +1188,23 @@ static void SpriteCallback_Slash(struct Sprite * sprite)
} }
break; break;
case 1: case 1:
sprite->pos1.x += 9; sprite->x += 9;
if (sprite->pos1.x == 67) if (sprite->x == 67)
{ {
sprite->pos1.y -= 7; sprite->y -= 7;
} }
if (sprite->pos1.x == 148) if (sprite->x == 148)
{ {
sprite->pos1.y += 7; sprite->y += 7;
} }
if (sprite->pos1.x > 272) if (sprite->x > 272)
{ {
sprite->invisible = TRUE; sprite->invisible = TRUE;
if (sprite->data[2]) if (sprite->data[2])
sprite->data[0] = 2; sprite->data[0] = 2;
else else
{ {
sprite->pos1.x = -0x20; sprite->x = -0x20;
sprite->data[1] = 540; sprite->data[1] = 540;
sprite->data[0] = 0; sprite->data[0] = 0;
} }
+7 -7
View File
@@ -1464,7 +1464,7 @@ static void UpdateTMSpritePosition(struct Sprite * sprite, u8 var)
{ {
x = 0x1B; x = 0x1B;
y = 0x36; y = 0x36;
sprite->pos2.y = 0x14; sprite->y2 = 0x14;
} }
else else
{ {
@@ -1475,8 +1475,8 @@ static void UpdateTMSpritePosition(struct Sprite * sprite, u8 var)
x = 0x29 - (((0xE00 * var) / 58) >> 8); x = 0x29 - (((0xE00 * var) / 58) >> 8);
y = 0x2E + (((0x800 * var) / 58) >> 8); y = 0x2E + (((0x800 * var) / 58) >> 8);
} }
sprite->pos1.x = x; sprite->x = x;
sprite->pos1.y = y; sprite->y = y;
} }
static void InitSelectedTMSpriteData(u8 spriteId, u16 itemId) static void InitSelectedTMSpriteData(u8 spriteId, u16 itemId)
@@ -1491,7 +1491,7 @@ static void SpriteCB_MoveTMSpriteInCase(struct Sprite * sprite)
switch (sprite->data[1]) switch (sprite->data[1])
{ {
case 0: case 0:
if (sprite->pos2.y >= 20) if (sprite->y2 >= 20)
{ {
if (sprite->data[0] != ITEM_NONE) if (sprite->data[0] != ITEM_NONE)
{ {
@@ -1506,14 +1506,14 @@ static void SpriteCB_MoveTMSpriteInCase(struct Sprite * sprite)
} }
else else
{ {
sprite->pos2.y += 10; sprite->y2 += 10;
} }
break; break;
case 1: case 1:
if (sprite->pos2.y <= 0) if (sprite->y2 <= 0)
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
else else
sprite->pos2.y -= 10; sprite->y2 -= 10;
} }
} }
+12 -12
View File
@@ -1665,14 +1665,14 @@ static void TradeMenuMoveCursor(u8 *tradeMenuCursorPosition, u8 direction)
if (newPosition == 12) // CANCEL if (newPosition == 12) // CANCEL
{ {
StartSpriteAnim(&gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx], 1); StartSpriteAnim(&gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx], 1);
gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].pos1.x = 224; gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].x = 224;
gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].pos1.y = 160; gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].y = 160;
} }
else else
{ {
StartSpriteAnim(&gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx], 0); StartSpriteAnim(&gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx], 0);
gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].pos1.x = sTradeMonSpriteCoords[newPosition][0] * 8 + 32; gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].x = sTradeMonSpriteCoords[newPosition][0] * 8 + 32;
gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].pos1.y = sTradeMonSpriteCoords[newPosition][1] * 8; gSprites[sTradeMenuResourcesPtr->tradeMenuCursorSpriteIdx].y = sTradeMonSpriteCoords[newPosition][1] * 8;
} }
if (*tradeMenuCursorPosition != newPosition) if (*tradeMenuCursorPosition != newPosition)
@@ -2155,10 +2155,10 @@ static void HandleRedrawTradeMenuOnSide(u8 side)
case 3: case 3:
CopyToBgTilemapBufferRect_ChangePalette(1, sTradeMovesBoxTilemap, whichParty * 15, 0, 15, 17, 0); CopyToBgTilemapBufferRect_ChangePalette(1, sTradeMovesBoxTilemap, whichParty * 15, 0, 15, 17, 0);
CopyBgTilemapBufferToVram(1); CopyBgTilemapBufferToVram(1);
gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].pos1.x = (sTradeMonSpriteCoords[whichParty * PARTY_SIZE][0] + sTradeMonSpriteCoords[whichParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14; gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].x = (sTradeMonSpriteCoords[whichParty * PARTY_SIZE][0] + sTradeMonSpriteCoords[whichParty * PARTY_SIZE + 1][0]) / 2 * 8 + 14;
gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].pos1.y = (sTradeMonSpriteCoords[whichParty * PARTY_SIZE][1] * 8) - 12; gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].y = (sTradeMonSpriteCoords[whichParty * PARTY_SIZE][1] * 8) - 12;
gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].pos2.x = 0; gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].x2 = 0;
gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].pos2.y = 0; gSprites[sTradeMenuResourcesPtr->partyIcons[0][partyIdx + (whichParty * PARTY_SIZE)]].y2 = 0;
nameStringWidth = GetNicknameStringWidthByPartyAndMonIdx(nickname, whichParty, partyIdx); nameStringWidth = GetNicknameStringWidthByPartyAndMonIdx(nickname, whichParty, partyIdx);
AddTextPrinterParameterized3((side * 2) + 14, 0, (80 - nameStringWidth) / 2, 4, sTextColor_PartyMonNickname, 0, nickname); AddTextPrinterParameterized3((side * 2) + 14, 0, (80 - nameStringWidth) / 2, 4, sTextColor_PartyMonNickname, 0, nickname);
BuildMovesString(movesString, whichParty, partyIdx); BuildMovesString(movesString, whichParty, partyIdx);
@@ -2342,10 +2342,10 @@ static void ShowTradePartyMonIcons(u8 whichParty)
for (i = 0; i < sTradeMenuResourcesPtr->partyCounts[whichParty]; i++) for (i = 0; i < sTradeMenuResourcesPtr->partyCounts[whichParty]; i++)
{ {
gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].invisible = FALSE; gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].invisible = FALSE;
gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].pos1.x = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][0] * 8 + 14; gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].x = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][0] * 8 + 14;
gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].pos1.y = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][1] * 8 - 12; gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].y = sTradeMonSpriteCoords[(whichParty * PARTY_SIZE) + i][1] * 8 - 12;
gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].pos2.x = 0; gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].x2 = 0;
gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].pos2.y = 0; gSprites[sTradeMenuResourcesPtr->partyIcons[whichParty][i]].y2 = 0;
} }
} }
+72 -72
View File
@@ -631,7 +631,7 @@ static void SpriteCB_TradeGlowCore(struct Sprite * sprite)
static void SpriteCB_GameLinkCableEnd_Outbound(struct Sprite * sprite) static void SpriteCB_GameLinkCableEnd_Outbound(struct Sprite * sprite)
{ {
sprite->data[0]++; sprite->data[0]++;
sprite->pos2.y++; sprite->y2++;
if (sprite->data[0] == 10) if (sprite->data[0] == 10)
DestroySprite(sprite); DestroySprite(sprite);
} }
@@ -640,7 +640,7 @@ static void SpriteCB_GameLinkCableEnd_Outbound(struct Sprite * sprite)
static void SpriteCB_GameLinkCableEnd_Inbound(struct Sprite * sprite) static void SpriteCB_GameLinkCableEnd_Inbound(struct Sprite * sprite)
{ {
sprite->data[0]++; sprite->data[0]++;
sprite->pos2.y--; sprite->y2--;
if (sprite->data[0] == 10) if (sprite->data[0] == 10)
DestroySprite(sprite); DestroySprite(sprite);
} }
@@ -1269,8 +1269,8 @@ static bool8 DoTradeAnim_Cable(void)
{ {
case 0: case 0:
gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE; gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE;
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.x = -180; gSprites[sTradeData->pokePicSpriteIdxs[0]].x2 = -180;
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y = gMonFrontPicCoords[sTradeData->tradeSpecies[0]].y_offset; gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 = gMonFrontPicCoords[sTradeData->tradeSpecies[0]].y_offset;
sTradeData->state++; sTradeData->state++;
sTradeData->cachedMapMusic = GetCurrentMapMusic(); sTradeData->cachedMapMusic = GetCurrentMapMusic();
PlayNewMapMusic(MUS_EVOLUTION); PlayNewMapMusic(MUS_EVOLUTION);
@@ -1278,12 +1278,12 @@ static bool8 DoTradeAnim_Cable(void)
case 1: case 1:
if (sTradeData->bg2hofs > 0) if (sTradeData->bg2hofs > 0)
{ {
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.x += 3; gSprites[sTradeData->pokePicSpriteIdxs[0]].x2 += 3;
sTradeData->bg2hofs -= 3; sTradeData->bg2hofs -= 3;
} }
else else
{ {
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.x = 0; gSprites[sTradeData->pokePicSpriteIdxs[0]].x2 = 0;
sTradeData->bg2hofs = 0; sTradeData->bg2hofs = 0;
sTradeData->state = 10; sTradeData->state = 10;
} }
@@ -1404,9 +1404,9 @@ static bool8 DoTradeAnim_Cable(void)
DISPCNT_OBJ_ON); DISPCNT_OBJ_ON);
break; break;
case 200: case 200:
gSprites[sTradeData->tradeGlow1SpriteId].pos1.y -= 2; gSprites[sTradeData->tradeGlow1SpriteId].y -= 2;
gSprites[sTradeData->gbaScreenSpriteId].pos1.y -= 2; gSprites[sTradeData->gbaScreenSpriteId].y -= 2;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos1.y < -8) if (gSprites[sTradeData->tradeGlow1SpriteId].y < -8)
{ {
sTradeData->state = 29; sTradeData->state = 29;
} }
@@ -1436,13 +1436,13 @@ static bool8 DoTradeAnim_Cable(void)
PlaySE(SE_WARP_OUT); PlaySE(SE_WARP_OUT);
sTradeData->state++; sTradeData->state++;
} }
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y -= 3; gSprites[sTradeData->tradeGlow1SpriteId].y2 -= 3;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 3; gSprites[sTradeData->gbaScreenSpriteId].y2 += 3;
break; break;
case 33: case 33:
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y -= 3; gSprites[sTradeData->tradeGlow1SpriteId].y2 -= 3;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 3; gSprites[sTradeData->gbaScreenSpriteId].y2 += 3;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos2.y <= -90) if (gSprites[sTradeData->tradeGlow1SpriteId].y2 <= -90)
{ {
gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 1; gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 1;
gSprites[sTradeData->gbaScreenSpriteId].data[1] = 1; gSprites[sTradeData->gbaScreenSpriteId].data[1] = 1;
@@ -1474,22 +1474,22 @@ static bool8 DoTradeAnim_Cable(void)
StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[0]], 0); StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[0]], 0);
} }
StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0); StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0);
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos1.x = 60; gSprites[sTradeData->pokePicSpriteIdxs[0]].x = 60;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.x = 180; gSprites[sTradeData->pokePicSpriteIdxs[1]].x = 180;
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos1.y = 192; gSprites[sTradeData->pokePicSpriteIdxs[0]].y = 192;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.y = -32; gSprites[sTradeData->pokePicSpriteIdxs[1]].y = -32;
gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE; gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE;
gSprites[sTradeData->pokePicSpriteIdxs[1]].invisible = FALSE; gSprites[sTradeData->pokePicSpriteIdxs[1]].invisible = FALSE;
sTradeData->state++; sTradeData->state++;
break; break;
case 38: case 38:
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y -= 3; gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 -= 3;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos2.y += 3; gSprites[sTradeData->pokePicSpriteIdxs[1]].y2 += 3;
if (gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y < -160 && gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y >= -163) if (gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 < -160 && gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 >= -163)
{ {
PlaySE(SE_WARP_IN); PlaySE(SE_WARP_IN);
} }
if (gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y < -222) if (gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 < -222)
{ {
gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 0; gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 0;
gSprites[sTradeData->gbaScreenSpriteId].data[1] = 0; gSprites[sTradeData->gbaScreenSpriteId].data[1] = 0;
@@ -1500,9 +1500,9 @@ static bool8 DoTradeAnim_Cable(void)
} }
break; break;
case 39: case 39:
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y -= 3; gSprites[sTradeData->tradeGlow1SpriteId].y2 -= 3;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 3; gSprites[sTradeData->gbaScreenSpriteId].y2 += 3;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos2.y <= -222) if (gSprites[sTradeData->tradeGlow1SpriteId].y2 <= -222)
{ {
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 16, RGB_BLACK); BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 16, RGB_BLACK);
sTradeData->state++; sTradeData->state++;
@@ -1536,9 +1536,9 @@ static bool8 DoTradeAnim_Cable(void)
} }
break; break;
case 43: case 43:
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y += 3; gSprites[sTradeData->tradeGlow1SpriteId].y2 += 3;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 3; gSprites[sTradeData->gbaScreenSpriteId].y2 += 3;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos2.y + gSprites[sTradeData->tradeGlow1SpriteId].pos1.y == 64) if (gSprites[sTradeData->tradeGlow1SpriteId].y2 + gSprites[sTradeData->tradeGlow1SpriteId].y == 64)
{ {
sTradeData->state++; sTradeData->state++;
} }
@@ -1650,10 +1650,10 @@ static bool8 DoTradeAnim_Cable(void)
} }
break; break;
case 66: case 66:
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.x = 120; gSprites[sTradeData->pokePicSpriteIdxs[1]].x = 120;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.y = gMonFrontPicCoords[sTradeData->tradeSpecies[1]].y_offset + 60; gSprites[sTradeData->pokePicSpriteIdxs[1]].y = gMonFrontPicCoords[sTradeData->tradeSpecies[1]].y_offset + 60;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos2.x = 0; gSprites[sTradeData->pokePicSpriteIdxs[1]].x2 = 0;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos2.y = 0; gSprites[sTradeData->pokePicSpriteIdxs[1]].y2 = 0;
StartSpriteAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0); StartSpriteAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0);
CreatePokeballSpriteToReleaseMon(sTradeData->pokePicSpriteIdxs[1], gSprites[sTradeData->pokePicSpriteIdxs[1]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF); CreatePokeballSpriteToReleaseMon(sTradeData->pokePicSpriteIdxs[1], gSprites[sTradeData->pokePicSpriteIdxs[1]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF);
FreeSpriteOamMatrix(&gSprites[sTradeData->pokeballSpriteId2]); FreeSpriteOamMatrix(&gSprites[sTradeData->pokeballSpriteId2]);
@@ -1766,8 +1766,8 @@ static bool8 DoTradeAnim_Wireless(void)
{ {
case 0: case 0:
gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE; gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE;
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.x = -180; gSprites[sTradeData->pokePicSpriteIdxs[0]].x2 = -180;
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y = gMonFrontPicCoords[sTradeData->tradeSpecies[0]].y_offset; gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 = gMonFrontPicCoords[sTradeData->tradeSpecies[0]].y_offset;
sTradeData->state++; sTradeData->state++;
sTradeData->cachedMapMusic = GetCurrentMapMusic(); sTradeData->cachedMapMusic = GetCurrentMapMusic();
PlayNewMapMusic(MUS_EVOLUTION); PlayNewMapMusic(MUS_EVOLUTION);
@@ -1775,12 +1775,12 @@ static bool8 DoTradeAnim_Wireless(void)
case 1: case 1:
if (sTradeData->bg2hofs > 0) if (sTradeData->bg2hofs > 0)
{ {
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.x += 3; gSprites[sTradeData->pokePicSpriteIdxs[0]].x2 += 3;
sTradeData->bg2hofs -= 3; sTradeData->bg2hofs -= 3;
} }
else else
{ {
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.x = 0; gSprites[sTradeData->pokePicSpriteIdxs[0]].x2 = 0;
sTradeData->bg2hofs = 0; sTradeData->bg2hofs = 0;
sTradeData->state = 10; sTradeData->state = 10;
} }
@@ -1906,9 +1906,9 @@ static bool8 DoTradeAnim_Wireless(void)
DISPCNT_OBJ_ON); DISPCNT_OBJ_ON);
break; break;
case 200: case 200:
gSprites[sTradeData->tradeGlow1SpriteId].pos1.y -= 2; gSprites[sTradeData->tradeGlow1SpriteId].y -= 2;
gSprites[sTradeData->gbaScreenSpriteId].pos1.y -= 2; gSprites[sTradeData->gbaScreenSpriteId].y -= 2;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos1.y < -8) if (gSprites[sTradeData->tradeGlow1SpriteId].y < -8)
{ {
sTradeData->state = 29; sTradeData->state = 29;
} }
@@ -1938,13 +1938,13 @@ static bool8 DoTradeAnim_Wireless(void)
PlaySE(SE_WARP_OUT); PlaySE(SE_WARP_OUT);
sTradeData->state++; sTradeData->state++;
} }
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y -= 3; gSprites[sTradeData->tradeGlow1SpriteId].y2 -= 3;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 3; gSprites[sTradeData->gbaScreenSpriteId].y2 += 3;
break; break;
case 33: case 33:
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y -= 3; gSprites[sTradeData->tradeGlow1SpriteId].y2 -= 3;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 3; gSprites[sTradeData->gbaScreenSpriteId].y2 += 3;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos2.y <= -90) if (gSprites[sTradeData->tradeGlow1SpriteId].y2 <= -90)
{ {
gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 1; gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 1;
gSprites[sTradeData->gbaScreenSpriteId].data[1] = 1; gSprites[sTradeData->gbaScreenSpriteId].data[1] = 1;
@@ -1977,22 +1977,22 @@ static bool8 DoTradeAnim_Wireless(void)
StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[0]], 0); StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[0]], 0);
} }
StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0); StartSpriteAffineAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0);
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos1.x = 40; gSprites[sTradeData->pokePicSpriteIdxs[0]].x = 40;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.x = 200; gSprites[sTradeData->pokePicSpriteIdxs[1]].x = 200;
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos1.y = 192; gSprites[sTradeData->pokePicSpriteIdxs[0]].y = 192;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.y = -32; gSprites[sTradeData->pokePicSpriteIdxs[1]].y = -32;
gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE; gSprites[sTradeData->pokePicSpriteIdxs[0]].invisible = FALSE;
gSprites[sTradeData->pokePicSpriteIdxs[1]].invisible = FALSE; gSprites[sTradeData->pokePicSpriteIdxs[1]].invisible = FALSE;
sTradeData->state++; sTradeData->state++;
break; break;
case 38: case 38:
gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y -= 3; gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 -= 3;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos2.y += 3; gSprites[sTradeData->pokePicSpriteIdxs[1]].y2 += 3;
if (gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y < -160 && gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y >= -163) if (gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 < -160 && gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 >= -163)
{ {
PlaySE(SE_WARP_IN); PlaySE(SE_WARP_IN);
} }
if (gSprites[sTradeData->pokePicSpriteIdxs[0]].pos2.y < -222) if (gSprites[sTradeData->pokePicSpriteIdxs[0]].y2 < -222)
{ {
gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 0; gSprites[sTradeData->tradeGlow1SpriteId].data[1] = 0;
gSprites[sTradeData->gbaScreenSpriteId].data[1] = 0; gSprites[sTradeData->gbaScreenSpriteId].data[1] = 0;
@@ -2003,9 +2003,9 @@ static bool8 DoTradeAnim_Wireless(void)
} }
break; break;
case 39: case 39:
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y -= 3; gSprites[sTradeData->tradeGlow1SpriteId].y2 -= 3;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 3; gSprites[sTradeData->gbaScreenSpriteId].y2 += 3;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos2.y <= -222) if (gSprites[sTradeData->tradeGlow1SpriteId].y2 <= -222)
{ {
BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 16, RGB_BLACK); BeginNormalPaletteFade(0xFFFFFFFF, -1, 0, 16, RGB_BLACK);
sTradeData->state++; sTradeData->state++;
@@ -2042,9 +2042,9 @@ static bool8 DoTradeAnim_Wireless(void)
} }
break; break;
case 43: case 43:
gSprites[sTradeData->tradeGlow1SpriteId].pos2.y += 4; gSprites[sTradeData->tradeGlow1SpriteId].y2 += 4;
gSprites[sTradeData->gbaScreenSpriteId].pos2.y += 4; gSprites[sTradeData->gbaScreenSpriteId].y2 += 4;
if (gSprites[sTradeData->tradeGlow1SpriteId].pos2.y + gSprites[sTradeData->tradeGlow1SpriteId].pos1.y == 64) if (gSprites[sTradeData->tradeGlow1SpriteId].y2 + gSprites[sTradeData->tradeGlow1SpriteId].y == 64)
{ {
sTradeData->state = 144; sTradeData->state = 144;
sTradeData->timer = 0; sTradeData->timer = 0;
@@ -2171,10 +2171,10 @@ static bool8 DoTradeAnim_Wireless(void)
} }
break; break;
case 66: case 66:
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.x = 120; gSprites[sTradeData->pokePicSpriteIdxs[1]].x = 120;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos1.y = gMonFrontPicCoords[sTradeData->tradeSpecies[1]].y_offset + 60; gSprites[sTradeData->pokePicSpriteIdxs[1]].y = gMonFrontPicCoords[sTradeData->tradeSpecies[1]].y_offset + 60;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos2.x = 0; gSprites[sTradeData->pokePicSpriteIdxs[1]].x2 = 0;
gSprites[sTradeData->pokePicSpriteIdxs[1]].pos2.y = 0; gSprites[sTradeData->pokePicSpriteIdxs[1]].y2 = 0;
StartSpriteAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0); StartSpriteAnim(&gSprites[sTradeData->pokePicSpriteIdxs[1]], 0);
CreatePokeballSpriteToReleaseMon(sTradeData->pokePicSpriteIdxs[1], gSprites[sTradeData->pokePicSpriteIdxs[1]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF); CreatePokeballSpriteToReleaseMon(sTradeData->pokePicSpriteIdxs[1], gSprites[sTradeData->pokePicSpriteIdxs[1]].oam.paletteNum, 120, 84, 2, 1, 20, 0xFFFFF);
FreeSpriteOamMatrix(&gSprites[sTradeData->pokeballSpriteId2]); FreeSpriteOamMatrix(&gSprites[sTradeData->pokeballSpriteId2]);
@@ -2328,16 +2328,16 @@ static void HandleLinkDataReceive(void)
static void SpriteCB_TradePokeball_Default(struct Sprite * sprite) static void SpriteCB_TradePokeball_Default(struct Sprite * sprite)
{ {
sprite->pos1.y += sprite->data[0] / 10; sprite->y += sprite->data[0] / 10;
sprite->data[5] += sprite->data[1]; sprite->data[5] += sprite->data[1];
sprite->pos1.x = sprite->data[5] / 10; sprite->x = sprite->data[5] / 10;
if (sprite->pos1.y > 76) if (sprite->y > 76)
{ {
sprite->pos1.y = 76; sprite->y = 76;
sprite->data[0] = -(sprite->data[0] * sprite->data[2]) / 100; sprite->data[0] = -(sprite->data[0] * sprite->data[2]) / 100;
sprite->data[3]++; sprite->data[3]++;
} }
if (sprite->pos1.x == 120) if (sprite->x == 120)
sprite->data[1] = 0; sprite->data[1] = 0;
sprite->data[0] += sprite->data[4]; sprite->data[0] += sprite->data[4];
if (sprite->data[3] == 4) if (sprite->data[3] == 4)
@@ -2349,7 +2349,7 @@ static void SpriteCB_TradePokeball_Default(struct Sprite * sprite)
static void SpriteCB_TradePokeball_Outbound(struct Sprite * sprite) static void SpriteCB_TradePokeball_Outbound(struct Sprite * sprite)
{ {
sprite->pos2.y += sTradeBallVerticalVelocityTable[sprite->data[0]]; sprite->y2 += sTradeBallVerticalVelocityTable[sprite->data[0]];
if (sprite->data[0] == 22) if (sprite->data[0] == 22)
PlaySE(SE_BALL_BOUNCE_1); PlaySE(SE_BALL_BOUNCE_1);
sprite->data[0]++; sprite->data[0]++;
@@ -2369,7 +2369,7 @@ static void SpriteCB_TradePokeball_Outbound2(struct Sprite * sprite)
sprite->data[1]++; sprite->data[1]++;
if (sprite->data[1] > 20) if (sprite->data[1] > 20)
{ {
sprite->pos2.y -= sTradeBallVerticalVelocityTable[sprite->data[0]]; sprite->y2 -= sTradeBallVerticalVelocityTable[sprite->data[0]];
sprite->data[0]++; sprite->data[0]++;
if (sprite->data[0] == 23) if (sprite->data[0] == 23)
{ {
@@ -2383,8 +2383,8 @@ static void SpriteCB_TradePokeball_Inbound(struct Sprite * sprite)
{ {
if (sprite->data[2] == 0) if (sprite->data[2] == 0)
{ {
sprite->pos1.y += 4; sprite->y += 4;
if (sprite->pos1.y > sprite->data[3]) if (sprite->y > sprite->data[3])
{ {
sprite->data[2]++; sprite->data[2]++;
sprite->data[0] = 22; sprite->data[0] = 22;
@@ -2399,7 +2399,7 @@ static void SpriteCB_TradePokeball_Inbound(struct Sprite * sprite)
PlaySE(SE_BALL_BOUNCE_3); PlaySE(SE_BALL_BOUNCE_3);
if (sprite->data[0] == 107) if (sprite->data[0] == 107)
PlaySE(SE_BALL_BOUNCE_4); PlaySE(SE_BALL_BOUNCE_4);
sprite->pos2.y += sTradeBallVerticalVelocityTable[sprite->data[0]]; sprite->y2 += sTradeBallVerticalVelocityTable[sprite->data[0]];
sprite->data[0]++; sprite->data[0]++;
if (sprite->data[0] == 108) if (sprite->data[0] == 108)
sprite->callback = SpriteCallbackDummy; sprite->callback = SpriteCallbackDummy;
+4 -4
View File
@@ -732,10 +732,10 @@ static void SpriteCB_TrainerIcons(struct Sprite *sprite)
{ {
struct Sprite *objEventSprite = &gSprites[gObjectEvents[objEventId].spriteId]; struct Sprite *objEventSprite = &gSprites[gObjectEvents[objEventId].spriteId];
sprite->sData4 += sprite->sData3; sprite->sData4 += sprite->sData3;
sprite->pos1.x = objEventSprite->pos1.x; sprite->x = objEventSprite->x;
sprite->pos1.y = objEventSprite->pos1.y - 16; sprite->y = objEventSprite->y - 16;
sprite->pos2.x = objEventSprite->pos2.x; sprite->x2 = objEventSprite->x2;
sprite->pos2.y = objEventSprite->pos2.y + sprite->sData4; sprite->y2 = objEventSprite->y2 + sprite->sData4;
if (sprite->sData4) if (sprite->sData4)
sprite->sData3++; sprite->sData3++;
else else
+7 -7
View File
@@ -199,14 +199,14 @@ void UnionRoomChat_MoveSelectorCursorObj(void)
if (page != UNION_ROOM_KB_PAGE_COUNT) if (page != UNION_ROOM_KB_PAGE_COUNT)
{ {
StartSpriteAnim(sWork->selectorCursorSprite, 0); StartSpriteAnim(sWork->selectorCursorSprite, 0);
sWork->selectorCursorSprite->pos1.x = x * 8 + 10; sWork->selectorCursorSprite->x = x * 8 + 10;
sWork->selectorCursorSprite->pos1.y = y * 12 + 24; sWork->selectorCursorSprite->y = y * 12 + 24;
} }
else else
{ {
StartSpriteAnim(sWork->selectorCursorSprite, 2); StartSpriteAnim(sWork->selectorCursorSprite, 2);
sWork->selectorCursorSprite->pos1.x = 24; sWork->selectorCursorSprite->x = 24;
sWork->selectorCursorSprite->pos1.y = y * 12 + 24; sWork->selectorCursorSprite->y = y * 12 + 24;
} }
} }
@@ -263,7 +263,7 @@ static void SpriteCB_TextEntryCursor(struct Sprite *sprite)
else else
{ {
sprite->invisible = FALSE; sprite->invisible = FALSE;
sprite->pos1.x = var0 * 8 + 76; sprite->x = var0 * 8 + 76;
} }
} }
@@ -272,8 +272,8 @@ static void SpriteCB_CharacterSelectCursor(struct Sprite *sprite)
if (++sprite->data[0] > 4) if (++sprite->data[0] > 4)
{ {
sprite->data[0] = 0; sprite->data[0] = 0;
if (++sprite->pos2.x > 4) if (++sprite->x2 > 4)
sprite->pos2.x = 0; sprite->x2 = 0;
} }
} }
+2 -2
View File
@@ -708,8 +708,8 @@ static void ResetMovementOfRematchableTrainers(void)
u8 movementType = GetRandomFaceDirectionMovementType(); u8 movementType = GetRandomFaceDirectionMovementType();
if (objectEvent->active && gSprites[objectEvent->spriteId].data[0] == i) if (objectEvent->active && gSprites[objectEvent->spriteId].data[0] == i)
{ {
gSprites[objectEvent->spriteId].pos2.x = 0; gSprites[objectEvent->spriteId].x2 = 0;
gSprites[objectEvent->spriteId].pos2.y = 0; gSprites[objectEvent->spriteId].y2 = 0;
SetTrainerMovementType(objectEvent, movementType); SetTrainerMovementType(objectEvent, movementType);
} }
} }
+61 -61
View File
@@ -505,8 +505,8 @@ static void AnimRainDrop_Step(struct Sprite *sprite)
{ {
if (++sprite->data[0] < 14) // Was 13 in emerald if (++sprite->data[0] < 14) // Was 13 in emerald
{ {
sprite->pos2.x += 1; sprite->x2 += 1;
sprite->pos2.y += 4; sprite->y2 += 4;
} }
if (sprite->animEnded) if (sprite->animEnded)
{ {
@@ -521,28 +521,28 @@ static void AnimWaterBubbleProjectile(struct Sprite *sprite)
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) - gBattleAnimArgs[0]; sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) - gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1];
sprite->animPaused = TRUE; sprite->animPaused = TRUE;
} }
else else
{ {
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0];
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1]; sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[1];
sprite->animPaused = TRUE; sprite->animPaused = TRUE;
} }
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
gBattleAnimArgs[2] = -gBattleAnimArgs[2]; gBattleAnimArgs[2] = -gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[6]; sprite->data[0] = gBattleAnimArgs[6];
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
spriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy); spriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy);
sprite->data[5] = spriteId; sprite->data[5] = spriteId;
sprite->pos1.x -= Sin((u8)gBattleAnimArgs[4], gBattleAnimArgs[2]); sprite->x -= Sin((u8)gBattleAnimArgs[4], gBattleAnimArgs[2]);
sprite->pos1.y -= Cos((u8)gBattleAnimArgs[4], gBattleAnimArgs[3]); sprite->y -= Cos((u8)gBattleAnimArgs[4], gBattleAnimArgs[3]);
gSprites[spriteId].data[0] = gBattleAnimArgs[2]; gSprites[spriteId].data[0] = gBattleAnimArgs[2];
gSprites[spriteId].data[1] = gBattleAnimArgs[3]; gSprites[spriteId].data[1] = gBattleAnimArgs[3];
gSprites[spriteId].data[2] = gBattleAnimArgs[5]; gSprites[spriteId].data[2] = gBattleAnimArgs[5];
@@ -560,8 +560,8 @@ static void AnimWaterBubbleProjectile_Step1(struct Sprite *sprite)
sprite->data[0] = 1; sprite->data[0] = 1;
AnimTranslateLinear(sprite); AnimTranslateLinear(sprite);
sprite->pos2.x += Sin(trigIndex >> 8, gSprites[otherSpriteId].data[0]); sprite->x2 += Sin(trigIndex >> 8, gSprites[otherSpriteId].data[0]);
sprite->pos2.y += Cos(trigIndex >> 8, gSprites[otherSpriteId].data[1]); sprite->y2 += Cos(trigIndex >> 8, gSprites[otherSpriteId].data[1]);
gSprites[otherSpriteId].data[3] = trigIndex + gSprites[otherSpriteId].data[2]; gSprites[otherSpriteId].data[3] = trigIndex + gSprites[otherSpriteId].data[2];
if (--timer != 0) if (--timer != 0)
{ {
@@ -598,9 +598,9 @@ static void AnimAuroraBeamRings(struct Sprite *sprite)
else else
unkArg = gBattleAnimArgs[2]; unkArg = gBattleAnimArgs[2];
sprite->data[0] = gBattleAnimArgs[4]; 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[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + unkArg;
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3]; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->callback = AnimAuroraBeamRings_Step; sprite->callback = AnimAuroraBeamRings_Step;
@@ -652,9 +652,9 @@ static void AnimToTargetInSinWave(struct Sprite *sprite)
InitSpritePosToAnimAttacker(sprite, TRUE); InitSpritePosToAnimAttacker(sprite, TRUE);
sprite->data[0] = 30; sprite->data[0] = 30;
sprite->data[1] = sprite->pos1.x; sprite->data[1] = sprite->x;
sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
sprite->data[3] = sprite->pos1.y; sprite->data[3] = sprite->y;
sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
InitAnimLinearTranslation(sprite); InitAnimLinearTranslation(sprite);
sprite->data[5] = 0xD200 / sprite->data[0]; sprite->data[5] = 0xD200 / sprite->data[0];
@@ -677,7 +677,7 @@ static void AnimToTargetInSinWave_Step(struct Sprite *sprite)
{ {
if (AnimTranslateLinear(sprite)) if (AnimTranslateLinear(sprite))
DestroyAnimSprite(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) if ((sprite->data[6] + sprite->data[5]) >> 8 > 127)
{ {
sprite->data[6] = 0; sprite->data[6] = 0;
@@ -708,26 +708,26 @@ static void AnimHydroCannonCharge(struct Sprite *sprite)
{ {
u8 priority; u8 priority;
sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0); sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1); sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1);
sprite->pos2.y = -10; sprite->y2 = -10;
priority = GetBattlerSpriteSubpriority(gBattleAnimAttacker); priority = GetBattlerSpriteSubpriority(gBattleAnimAttacker);
if (!IsContest()) if (!IsContest())
{ {
if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER)
{ {
sprite->pos2.x = 10; sprite->x2 = 10;
sprite->subpriority = priority + 2; sprite->subpriority = priority + 2;
} }
else else
{ {
sprite->pos2.x = -10; sprite->x2 = -10;
sprite->subpriority = priority - 2; sprite->subpriority = priority - 2;
} }
} }
else else
{ {
sprite->pos2.x = -10; sprite->x2 = -10;
sprite->subpriority = priority + 2; sprite->subpriority = priority + 2;
} }
sprite->callback = AnimHydroCannonCharge_Step; sprite->callback = AnimHydroCannonCharge_Step;
@@ -773,8 +773,8 @@ static void AnimWaterGunDroplet(struct Sprite *sprite)
{ {
InitSpritePosToAnimTarget(sprite, TRUE); InitSpritePosToAnimTarget(sprite, TRUE);
sprite->data[0] = gBattleAnimArgs[4]; sprite->data[0] = gBattleAnimArgs[4];
sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; sprite->data[2] = sprite->x + gBattleAnimArgs[2];
sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[4]; sprite->data[4] = sprite->y + gBattleAnimArgs[4];
sprite->callback = StartAnimLinearTranslation; sprite->callback = StartAnimLinearTranslation;
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
} }
@@ -792,9 +792,9 @@ static void AnimSmallBubblePair(struct Sprite *sprite)
static void AnimSmallBubblePair_Step(struct Sprite *sprite) static void AnimSmallBubblePair_Step(struct Sprite *sprite)
{ {
sprite->data[0] = (sprite->data[0] + 11) & 0xFF; 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->data[1] += 48;
sprite->pos2.y = -(sprite->data[1] >> 8); sprite->y2 = -(sprite->data[1] >> 8);
if (sprite->data[7]-- == 0) if (sprite->data[7]-- == 0)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -1032,10 +1032,10 @@ static void AnimSmallDriftingBubbles_Step(struct Sprite *sprite)
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
if (sprite->data[1] & 1) if (sprite->data[1] & 1)
sprite->pos2.x = -(sprite->data[3] >> 8); sprite->x2 = -(sprite->data[3] >> 8);
else 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) if (++sprite->data[0] == 21)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -1045,7 +1045,7 @@ void AnimTask_WaterSpoutLaunch(u8 taskId)
struct Task *task = &gTasks[taskId]; struct Task *task = &gTasks[taskId];
task->data[15] = GetAnimBattlerSpriteId(ANIM_ATTACKER); 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(); task->data[1] = GetWaterSpoutPowerForAnim();
PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL); PrepareBattlerSpriteForRotScale(task->data[15], ST_OAM_OBJ_NORMAL);
task->func = AnimTask_WaterSpoutLaunch_Step; task->func = AnimTask_WaterSpoutLaunch_Step;
@@ -1066,18 +1066,18 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
task->data[3] = 0; task->data[3] = 0;
if (++task->data[4] & 1) if (++task->data[4] & 1)
{ {
gSprites[task->data[15]].pos2.x = 3; gSprites[task->data[15]].x2 = 3;
gSprites[task->data[15]].pos1.y++; gSprites[task->data[15]].y++;
} }
else else
{ {
gSprites[task->data[15]].pos2.x = -3; gSprites[task->data[15]].x2 = -3;
} }
} }
if (BattleAnimHelper_RunSpriteSquash(task) == 0) if (BattleAnimHelper_RunSpriteSquash(task) == 0)
{ {
SetBattlerSpriteYOffsetFromYScale(task->data[15]); SetBattlerSpriteYOffsetFromYScale(task->data[15]);
gSprites[task->data[15]].pos2.x = 0; gSprites[task->data[15]].x2 = 0;
task->data[3] = 0; task->data[3] = 0;
task->data[4] = 0; task->data[4] = 0;
task->data[0]++; task->data[0]++;
@@ -1107,9 +1107,9 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
{ {
task->data[3] = 0; task->data[3] = 0;
if (++task->data[4] & 1) if (++task->data[4] & 1)
gSprites[task->data[15]].pos2.y += 2; gSprites[task->data[15]].y2 += 2;
else else
gSprites[task->data[15]].pos2.y -= 2; gSprites[task->data[15]].y2 -= 2;
if (task->data[4] == 10) if (task->data[4] == 10)
{ {
BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 384, 224, 0x100, 0x100, 8); BattleAnimHelper_SetSpriteSquashParams(task, task->data[15], 384, 224, 0x100, 0x100, 8);
@@ -1120,11 +1120,11 @@ static void AnimTask_WaterSpoutLaunch_Step(u8 taskId)
} }
break; break;
case 6: case 6:
gSprites[task->data[15]].pos1.y--; gSprites[task->data[15]].y--;
if (BattleAnimHelper_RunSpriteSquash(task) == 0) if (BattleAnimHelper_RunSpriteSquash(task) == 0)
{ {
ResetSpriteRotScale(task->data[15]); 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[4] = 0;
task->data[0]++; task->data[0]++;
} }
@@ -1214,9 +1214,9 @@ static void AnimSmallWaterOrb(struct Sprite *sprite)
case 1: case 1:
sprite->data[2] += sprite->data[4]; sprite->data[2] += sprite->data[4];
sprite->data[3] += sprite->data[5]; sprite->data[3] += sprite->data[5];
sprite->pos1.x = sprite->data[2] >> 4; sprite->x = sprite->data[2] >> 4;
sprite->pos1.y = sprite->data[3] >> 4; sprite->y = sprite->data[3] >> 4;
if (sprite->pos1.x < -8 || sprite->pos1.x > 248 || sprite->pos1.y < -8 || sprite->pos1.y > 120) if (sprite->x < -8 || sprite->x > 248 || sprite->y < -8 || sprite->y > 120)
{ {
gTasks[sprite->data[6]].data[sprite->data[7]]--; gTasks[sprite->data[6]].data[sprite->data[7]]--;
DestroySprite(sprite); DestroySprite(sprite);
@@ -1311,11 +1311,11 @@ static void AnimWaterSpoutRain(struct Sprite *sprite)
{ {
if (sprite->data[0] == 0) if (sprite->data[0] == 0)
{ {
sprite->pos1.y += 8; sprite->y += 8;
if (sprite->pos1.y >= sprite->data[5]) if (sprite->y >= sprite->data[5])
{ {
gTasks[sprite->data[6]].data[10] = 1; 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) if (sprite->data[1] != MAX_SPRITES)
{ {
StartSpriteAffineAnim(&gSprites[sprite->data[1]], 3); StartSpriteAffineAnim(&gSprites[sprite->data[1]], 3);
@@ -1454,11 +1454,11 @@ static void AnimWaterSportDroplet(struct Sprite *sprite)
{ {
if (TranslateAnimHorizontalArc(sprite)) if (TranslateAnimHorizontalArc(sprite))
{ {
sprite->pos1.x += sprite->pos2.x; sprite->x += sprite->x2;
sprite->pos1.y += sprite->pos2.y; sprite->y += sprite->y2;
sprite->data[0] = 6; sprite->data[0] = 6;
sprite->data[2] = (Random() & 0x1F) - 16 + sprite->pos1.x; sprite->data[2] = (Random() & 0x1F) - 16 + sprite->x;
sprite->data[4] = (Random() & 0x1F) - 16 + sprite->pos1.y; sprite->data[4] = (Random() & 0x1F) - 16 + sprite->y;
sprite->data[5] = ~(Random() & 7); sprite->data[5] = ~(Random() & 7);
InitAnimArcTranslation(sprite); InitAnimArcTranslation(sprite);
sprite->callback = AnimWaterSportDroplet_Step; sprite->callback = AnimWaterSportDroplet_Step;
@@ -1485,8 +1485,8 @@ static void AnimWaterSportDroplet_Step(struct Sprite *sprite)
static void AnimWaterPulseBubble(struct Sprite *sprite) static void AnimWaterPulseBubble(struct Sprite *sprite)
{ {
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[0] = gBattleAnimArgs[2];
sprite->data[1] = gBattleAnimArgs[3]; sprite->data[1] = gBattleAnimArgs[3];
sprite->data[2] = gBattleAnimArgs[4]; sprite->data[2] = gBattleAnimArgs[4];
@@ -1497,9 +1497,9 @@ static void AnimWaterPulseBubble(struct Sprite *sprite)
static void AnimWaterPulseBubble_Step(struct Sprite *sprite) static void AnimWaterPulseBubble_Step(struct Sprite *sprite)
{ {
sprite->data[4] -= sprite->data[0]; 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->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) if (--sprite->data[3] == 0)
DestroyAnimSprite(sprite); DestroyAnimSprite(sprite);
} }
@@ -1508,8 +1508,8 @@ static void AnimWaterPulseRingBubble(struct Sprite *sprite)
{ {
sprite->data[3] += sprite->data[1]; sprite->data[3] += sprite->data[1];
sprite->data[4] += sprite->data[2]; sprite->data[4] += sprite->data[2];
sprite->pos2.x = sprite->data[3] >> 7; sprite->x2 = sprite->data[3] >> 7;
sprite->pos2.y = sprite->data[4] >> 7; sprite->y2 = sprite->data[4] >> 7;
if (--sprite->data[0] == 0) if (--sprite->data[0] == 0)
{ {
FreeSpriteOamMatrix(sprite); FreeSpriteOamMatrix(sprite);
@@ -1529,11 +1529,11 @@ void AnimWaterPulseRing(struct Sprite *sprite)
static void AnimWaterPulseRing_Step(struct Sprite *sprite) static void AnimWaterPulseRing_Step(struct Sprite *sprite)
{ {
int xDiff = sprite->data[1] - sprite->pos1.x; int xDiff = sprite->data[1] - sprite->x;
int yDiff = sprite->data[2] - sprite->pos1.y; int yDiff = sprite->data[2] - sprite->y;
sprite->pos2.x = (sprite->data[0] * xDiff) / sprite->data[3]; sprite->x2 = (sprite->data[0] * xDiff) / sprite->data[3];
sprite->pos2.y = (sprite->data[0] * yDiff) / sprite->data[3]; sprite->y2 = (sprite->data[0] * yDiff) / sprite->data[3];
if (++sprite->data[5] == sprite->data[4]) if (++sprite->data[5] == sprite->data[4])
{ {
sprite->data[5] = 0; sprite->data[5] = 0;
@@ -1553,8 +1553,8 @@ static void CreateWaterPulseRingBubbles(struct Sprite *sprite, s32 xDiff, s32 yD
u8 spriteId; u8 spriteId;
something = sprite->data[0] / 2; something = sprite->data[0] / 2;
combinedX = sprite->pos1.x + sprite->pos2.x; combinedX = sprite->x + sprite->x2;
combinedY = sprite->pos1.y + sprite->pos2.y; combinedY = sprite->y + sprite->y2;
if (yDiff < 0) if (yDiff < 0)
unusedVar *= -1; //Needed to Match unusedVar *= -1; //Needed to Match
somethingRandomY = yDiff + (Random() % 10) - 5; somethingRandomY = yDiff + (Random() % 10) - 5;