summaryrefslogtreecommitdiff
path: root/src/scene/intro.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/scene/intro.c')
-rw-r--r--src/scene/intro.c686
1 files changed, 343 insertions, 343 deletions
diff --git a/src/scene/intro.c b/src/scene/intro.c
index 03a573c90..b52fbb3a9 100644
--- a/src/scene/intro.c
+++ b/src/scene/intro.c
@@ -995,11 +995,11 @@ static void Task_IntroWaterDrops(u8 taskId)
{
//start moving rock
if (gIntroFrameCounter == 76)
- gSprites[gTasks[taskId].data[0]].data0 = 1;
+ gSprites[gTasks[taskId].data[0]].data[0] = 1;
//drop rock
if (gIntroFrameCounter == 251)
- gSprites[gTasks[taskId].data[0]].data0 = 2;
+ gSprites[gTasks[taskId].data[0]].data[0] = 2;
if (gIntroFrameCounter == 368)
CreateWaterDrop(48, 0, 0x400, 5, 0x70, TRUE);
@@ -1134,17 +1134,17 @@ static void Task_IntroHandleBikeAndEonMovement(u8 taskId)
gTasks[taskId].func = Task_IntroWaitToSetupPart3;
}
if (gIntroFrameCounter == 1109)
- gSprites[gTasks[taskId].data[1]].data0 = 1;
+ gSprites[gTasks[taskId].data[1]].data[0] = 1;
if (gIntroFrameCounter == 1214)
- gSprites[gTasks[taskId].data[1]].data0 = 0;
+ gSprites[gTasks[taskId].data[1]].data[0] = 0;
if (gIntroFrameCounter == 1394)
- gSprites[gTasks[taskId].data[2]].data0 = 1;
+ gSprites[gTasks[taskId].data[2]].data[0] = 1;
if (gIntroFrameCounter == 1398)
- gSprites[gTasks[taskId].data[1]].data0 = 2;
+ gSprites[gTasks[taskId].data[1]].data[0] = 2;
if (gIntroFrameCounter == 1586)
- gSprites[gTasks[taskId].data[1]].data0 = 3;
+ gSprites[gTasks[taskId].data[1]].data[0] = 3;
if (gIntroFrameCounter == 1727)
- gSprites[gTasks[taskId].data[1]].data0 = 4;
+ gSprites[gTasks[taskId].data[1]].data[0] = 4;
//TODO: Clean this up
a = (((u16)gTasks[taskId].data[3] << 16) >> 18) & 0x7F;
@@ -1314,15 +1314,15 @@ static void Task_IntroPokemonBattle(u8 taskId)
{
spriteId = sub_813CE88(SPECIES_SHARPEDO, 0xF0, 0xA0, 5, 1);
gSprites[spriteId].callback = sub_813DB9C;
- gSprites[spriteId].data1 = 1;
- gSprites[spriteId].data2 = 0;
+ gSprites[spriteId].data[1] = 1;
+ gSprites[spriteId].data[2] = 0;
}
if (gIntroFrameCounter == 152)
{
spriteId = sub_813CE88(SPECIES_DUSKULL, 0, 0xA0, 4, 1);
gSprites[spriteId].callback = sub_813DB9C;
- gSprites[spriteId].data1 = 2;
- gSprites[spriteId].data2 = 1;
+ gSprites[spriteId].data[1] = 2;
+ gSprites[spriteId].data[2] = 1;
}
if (gIntroFrameCounter == 219)
{
@@ -1334,12 +1334,12 @@ static void Task_IntroPokemonBattle(u8 taskId)
if (gIntroFrameCounter == 304)
{
gTasks[gTasks[taskId].data[15]].data[0] = 4;
- gSprites[gTasks[taskId].data[1]].data0 = 2;
+ gSprites[gTasks[taskId].data[1]].data[0] = 2;
}
if (gIntroFrameCounter == 384)
{
gTasks[gTasks[taskId].data[15]].data[0] = 0;
- gSprites[gTasks[taskId].data[1]].data0 = 4;
+ gSprites[gTasks[taskId].data[1]].data[0] = 4;
}
if (gIntroFrameCounter == 400)
{
@@ -1347,11 +1347,11 @@ static void Task_IntroPokemonBattle(u8 taskId)
}
if (gIntroFrameCounter == 432)
{
- gSprites[gTasks[taskId].data[1]].data0 = 5;
+ gSprites[gTasks[taskId].data[1]].data[0] = 5;
}
if (gIntroFrameCounter == 462)
{
- gSprites[gTasks[taskId].data[1]].data0 = 6;
+ gSprites[gTasks[taskId].data[1]].data[0] = 6;
gTasks[gTasks[taskId].data[15]].data[0] = 2;
}
if (gIntroFrameCounter == 463)
@@ -1371,8 +1371,8 @@ static void Task_IntroPokemonBattle(u8 taskId)
}
if (gIntroFrameCounter == 623)
{
- gSprites[gTasks[taskId].data[2]].data0 = 2;
- gSprites[gTasks[taskId].data[3]].data0 = 2;
+ gSprites[gTasks[taskId].data[2]].data[0] = 2;
+ gSprites[gTasks[taskId].data[3]].data[0] = 2;
gTasks[gTasks[taskId].data[15]].data[0] = 3;
}
if (gIntroFrameCounter == 624)
@@ -1393,17 +1393,17 @@ static void Task_IntroPokemonBattle(u8 taskId)
if (gIntroFrameCounter == 776)
{
gUnknown_0203931A = 1;
- gSprites[gTasks[taskId].data[4]].data0 = 2;
- gSprites[gTasks[taskId].data[5]].data0 = 2;
+ gSprites[gTasks[taskId].data[4]].data[0] = 2;
+ gSprites[gTasks[taskId].data[5]].data[0] = 2;
gTasks[gTasks[taskId].data[15]].data[0] = 0;
}
if (gIntroFrameCounter == 781)
{
sub_813D084(2);
- gSprites[gTasks[taskId].data[2]].data0 = 3;
- gSprites[gTasks[taskId].data[3]].data0 = 3;
- gSprites[gTasks[taskId].data[4]].data0 = 3;
- gSprites[gTasks[taskId].data[5]].data0 = 3;
+ gSprites[gTasks[taskId].data[2]].data[0] = 3;
+ gSprites[gTasks[taskId].data[3]].data[0] = 3;
+ gSprites[gTasks[taskId].data[4]].data[0] = 3;
+ gSprites[gTasks[taskId].data[5]].data[0] = 3;
spriteId = CreateSprite(&gSpriteTemplate_840B1F4, 0x78, 0x50, 15);
gSprites[spriteId].invisible = 1;
}
@@ -1838,18 +1838,18 @@ static void sub_813D0CC(struct Sprite *sprite)
{
u8 r0;
- if (sprite->data2 >= 192)
+ if (sprite->data[2] >= 192)
{
- if (sprite->data3 != 0)
+ if (sprite->data[3] != 0)
{
- sprite->data3--;
+ sprite->data[3]--;
}
else
{
sprite->invisible = FALSE;
- SetOamMatrix(sprite->data1, sprite->data2, 0, 0, sprite->data2);
- sprite->data2 = (sprite->data2 * 95) / 100;
- r0 = (sprite->data2 - 192) / 128 + 9;
+ SetOamMatrix(sprite->data[1], sprite->data[2], 0, 0, sprite->data[2]);
+ sprite->data[2] = (sprite->data[2] * 95) / 100;
+ r0 = (sprite->data[2] - 192) / 128 + 9;
if (r0 > 15)
r0 = 15;
sprite->oam.paletteNum = r0;
@@ -1863,14 +1863,14 @@ static void sub_813D0CC(struct Sprite *sprite)
static void sub_813D158(struct Sprite *sprite)
{
- if (gSprites[sprite->data7].data7 != 0)
+ if (gSprites[sprite->data[7]].data[7] != 0)
{
sprite->invisible = TRUE;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
StartSpriteAnim(sprite, 3);
- sprite->data2 = 1024;
- sprite->data3 = 8 * (sprite->data1 & 3);
+ sprite->data[2] = 1024;
+ sprite->data[3] = 8 * (sprite->data[1] & 3);
sprite->callback = sub_813D0CC;
sprite->oam.shape = 1;
sprite->oam.size = 3;
@@ -1878,16 +1878,16 @@ static void sub_813D158(struct Sprite *sprite)
}
else
{
- sprite->pos2.x = gSprites[sprite->data7].pos2.x;
- sprite->pos2.y = gSprites[sprite->data7].pos2.y;
- sprite->pos1.x = gSprites[sprite->data7].pos1.x;
- sprite->pos1.y = gSprites[sprite->data7].pos1.y;
+ sprite->pos2.x = gSprites[sprite->data[7]].pos2.x;
+ sprite->pos2.y = gSprites[sprite->data[7]].pos2.y;
+ sprite->pos1.x = gSprites[sprite->data[7]].pos1.x;
+ sprite->pos1.y = gSprites[sprite->data[7]].pos1.y;
}
}
static void sub_813D208(struct Sprite *sprite)
{
- if (sprite->data0 != 0)
+ if (sprite->data[0] != 0)
sprite->callback = sub_813D220;
}
@@ -1899,7 +1899,7 @@ static void sub_813D220(struct Sprite *sprite)
sprite->pos2.y = 0;
sprite->pos1.x += 4;
sprite->pos2.x = -4;
- sprite->data4 = 128;
+ sprite->data[4] = 128;
sprite->callback = sub_813D368;
}
else
@@ -1917,58 +1917,58 @@ static void sub_813D220(struct Sprite *sprite)
s16 var4;
s16 temp;
- data4 = sprite->data4;
+ data4 = sprite->data[4];
sin1 = gSineTable[(u8)data4];
sin2 = gSineTable[(u8)(data4 + 64)];
- sprite->data4 += 2;
+ sprite->data[4] += 2;
sprite->pos2.y = sin1 / 32;
sprite->pos1.x--;
if (sprite->pos1.x & 1)
sprite->pos1.y++;
temp = -sin2 / 16;
- data2 = sprite->data2;
- data3 = sprite->data3;
+ data2 = sprite->data[2];
+ data3 = sprite->data[3];
sin3 = gSineTable[(u8)(temp - 16)];
sin4 = gSineTable[(u8)(temp + 48)];
var1 = sin4 * data2 / 256;
var2 = -sin3 * data3 / 256;
var3 = sin3 * data2 / 256;
var4 = sin4 * data3 / 256;
- SetOamMatrix(sprite->data1, data2, 0, 0, data3);
- SetOamMatrix(sprite->data1 + 1, var1, var3, var2, var4);
- SetOamMatrix(sprite->data1 + 2, var1, var3, var2 * 2, var4 * 2);
+ SetOamMatrix(sprite->data[1], data2, 0, 0, data3);
+ SetOamMatrix(sprite->data[1] + 1, var1, var3, var2, var4);
+ SetOamMatrix(sprite->data[1] + 2, var1, var3, var2 * 2, var4 * 2);
}
}
static void sub_813D368(struct Sprite *sprite)
{
- SetOamMatrix(sprite->data1, sprite->data6 + 64, 0, 0, sprite->data6 + 64);
- SetOamMatrix(sprite->data1 + 1, sprite->data6 + 64, 0, 0, sprite->data6 + 64);
- SetOamMatrix(sprite->data1 + 2, sprite->data6 + 64, 0, 0, sprite->data6 + 64);
- if (sprite->data4 != 64)
+ SetOamMatrix(sprite->data[1], sprite->data[6] + 64, 0, 0, sprite->data[6] + 64);
+ SetOamMatrix(sprite->data[1] + 1, sprite->data[6] + 64, 0, 0, sprite->data[6] + 64);
+ SetOamMatrix(sprite->data[1] + 2, sprite->data[6] + 64, 0, 0, sprite->data[6] + 64);
+ if (sprite->data[4] != 64)
{
u16 data4;
- sprite->data4 -= 8;
- data4 = sprite->data4;
+ sprite->data[4] -= 8;
+ data4 = sprite->data[4];
sprite->pos2.x = gSineTable[(u8)(data4 + 64)] / 64;
sprite->pos2.y = gSineTable[(u8)data4] / 64;
}
else
{
- sprite->data4 = 0;
+ sprite->data[4] = 0;
sprite->callback = sub_813D414;
}
}
static void sub_813D414(struct Sprite *sprite)
{
- if (sprite->data0 != 2)
+ if (sprite->data[0] != 2)
{
s16 r2;
- sprite->data4 += 8;
- r2 = gSineTable[(u8)sprite->data4] / 16 + 64;
+ sprite->data[4] += 8;
+ r2 = gSineTable[(u8)sprite->data[4]] / 16 + 64;
sprite->pos2.x = gSineTable[(u8)(r2 + 64)] / 64;
sprite->pos2.y = gSineTable[(u8)r2] / 64;
}
@@ -1980,19 +1980,19 @@ static void sub_813D414(struct Sprite *sprite)
static void SpriteCB_WaterDropFall(struct Sprite *sprite)
{
- if (sprite->pos1.y < sprite->data5)
+ if (sprite->pos1.y < sprite->data[5])
{
sprite->pos1.y += 4;
}
else
{
- sprite->data7 = 1;
+ sprite->data[7] = 1;
sprite->invisible = TRUE;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
StartSpriteAnim(sprite, 3);
- sprite->data2 = 1024;
- sprite->data3 = 8 * (sprite->data1 & 3);
+ sprite->data[2] = 1024;
+ sprite->data[3] = 8 * (sprite->data[1] & 3);
sprite->callback = sub_813D0CC;
sprite->oam.shape = 1;
sprite->oam.size = 3;
@@ -2003,19 +2003,19 @@ static void SpriteCB_WaterDropFall(struct Sprite *sprite)
//Duplicate function
static void SpriteCB_WaterDropFall_2(struct Sprite *sprite)
{
- if (sprite->pos1.y < sprite->data5)
+ if (sprite->pos1.y < sprite->data[5])
{
sprite->pos1.y += 4;
}
else
{
- sprite->data7 = 1;
+ sprite->data[7] = 1;
sprite->invisible = TRUE;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
StartSpriteAnim(sprite, 3);
- sprite->data2 = 1024;
- sprite->data3 = 8 * (sprite->data1 & 3);
+ sprite->data[2] = 1024;
+ sprite->data[3] = 8 * (sprite->data[1] & 3);
sprite->callback = sub_813D0CC;
sprite->oam.shape = 1;
sprite->oam.size = 3;
@@ -2029,13 +2029,13 @@ static u8 CreateWaterDrop(s16 x, s16 y, u16 c, u16 d, u16 e, u8 fallImmediately)
u8 oldSpriteId;
spriteId = CreateSprite(&gSpriteTemplate_840AE20, x, y, 0);
- gSprites[spriteId].data0 = 0;
- gSprites[spriteId].data7 = 0;
- gSprites[spriteId].data1 = d;
- gSprites[spriteId].data2 = c;
- gSprites[spriteId].data3 = c;
- gSprites[spriteId].data5 = e;
- gSprites[spriteId].data6 = c;
+ gSprites[spriteId].data[0] = 0;
+ gSprites[spriteId].data[7] = 0;
+ gSprites[spriteId].data[1] = d;
+ gSprites[spriteId].data[2] = c;
+ gSprites[spriteId].data[3] = c;
+ gSprites[spriteId].data[5] = e;
+ gSprites[spriteId].data[6] = c;
gSprites[spriteId].oam.affineMode = 3;
gSprites[spriteId].oam.matrixNum = d;
CalcCenterToCornerVec(&gSprites[spriteId], 0, 2, 2);
@@ -2047,16 +2047,16 @@ static u8 CreateWaterDrop(s16 x, s16 y, u16 c, u16 d, u16 e, u8 fallImmediately)
oldSpriteId = spriteId;
spriteId = CreateSprite(&gSpriteTemplate_840AE20, x, y, 0);
- gSprites[spriteId].data7 = oldSpriteId;
- gSprites[spriteId].data1 = d + 1;
+ gSprites[spriteId].data[7] = oldSpriteId;
+ gSprites[spriteId].data[1] = d + 1;
gSprites[spriteId].oam.affineMode = 3;
gSprites[spriteId].oam.matrixNum = d + 1;
CalcCenterToCornerVec(&gSprites[spriteId], 0, 2, 2);
gSprites[spriteId].callback = sub_813D158;
spriteId = CreateSprite(&gSpriteTemplate_840AE20, x, y, 0);
- gSprites[spriteId].data7 = oldSpriteId;
- gSprites[spriteId].data1 = d + 2;
+ gSprites[spriteId].data[7] = oldSpriteId;
+ gSprites[spriteId].data[1] = d + 2;
StartSpriteAnim(&gSprites[spriteId], 1);
gSprites[spriteId].oam.affineMode = 3;
gSprites[spriteId].oam.matrixNum = d + 2;
@@ -2072,7 +2072,7 @@ static u8 CreateWaterDrop(s16 x, s16 y, u16 c, u16 d, u16 e, u8 fallImmediately)
static void sub_813D788(struct Sprite *sprite)
{
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
StartSpriteAnimIfDifferent(sprite, 0);
@@ -2124,7 +2124,7 @@ static void sub_813D788(struct Sprite *sprite)
static void sub_813D880(struct Sprite *sprite)
{
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
break;
@@ -2132,30 +2132,30 @@ static void sub_813D880(struct Sprite *sprite)
if (sprite->pos2.x + sprite->pos1.x < 304)
sprite->pos2.x += 8;
else
- sprite->data0 = 2;
+ sprite->data[0] = 2;
break;
case 2:
if (sprite->pos2.x + sprite->pos1.x > 120)
sprite->pos2.x -= 1;
else
- sprite->data0 = 3;
+ sprite->data[0] = 3;
break;
case 3:
if (sprite->pos2.x > 0)
sprite->pos2.x -= 2;
break;
}
- sprite->pos2.y = Sin((u8)sprite->data1, 8) - gUnknown_0203935A;
- sprite->data1 += 4;
+ sprite->pos2.y = Sin((u8)sprite->data[1], 8) - gUnknown_0203935A;
+ sprite->data[1] += 4;
}
static void sub_813D908(struct Sprite *sprite)
{
- if (gTasks[sprite->data0].data[0] == 0)
+ if (gTasks[sprite->data[0]].data[0] == 0)
{
sprite->invisible = TRUE;
}
- else if (gTasks[sprite->data0].data[0] != 4)
+ else if (gTasks[sprite->data[0]].data[0] != 4)
{
sprite->invisible = FALSE;
}
@@ -2173,17 +2173,17 @@ static u8 CreateGameFreakLogo(s16 a, s16 b, u8 c)
for (i = 0; i < 9; i++)
{
spriteId = CreateSprite(&gSpriteTemplate_840AF94, gUnknown_0840AF50[i][1] + a, b - 4, 0);
- gSprites[spriteId].data0 = c;
+ gSprites[spriteId].data[0] = c;
StartSpriteAnim(&gSprites[spriteId], gUnknown_0840AF50[i][0]);
}
for (i = 0; i < 8; i++)
{
spriteId = CreateSprite(&gSpriteTemplate_840AFAC, gUnknown_0840AF74[i][1] + a, b + 12, 0);
- gSprites[spriteId].data0 = c;
+ gSprites[spriteId].data[0] = c;
StartSpriteAnim(&gSprites[spriteId], gUnknown_0840AF74[i][0]);
}
spriteId = CreateSprite(&gSpriteTemplate_840AFC4, 120, b - 4, 0);
- gSprites[spriteId].data0 = c;
+ gSprites[spriteId].data[0] = c;
return spriteId;
}
@@ -2191,9 +2191,9 @@ static u8 CreateGameFreakLogo(s16 a, s16 b, u8 c)
#ifdef NONMATCHING
static void sub_813DA64(struct Sprite *sprite)
{
- sprite->data7++;
+ sprite->data[7]++;
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
default:
@@ -2201,10 +2201,10 @@ static void sub_813DA64(struct Sprite *sprite)
sprite->oam.matrixNum = 1;
CalcCenterToCornerVec(sprite, 1, 3, 3);
sprite->invisible = FALSE;
- sprite->data0 = 1;
- sprite->data1 = 128;
- sprite->data2 = -24;
- sprite->data3 = 0;
+ sprite->data[0] = 1;
+ sprite->data[1] = 128;
+ sprite->data[2] = -24;
+ sprite->data[3] = 0;
break;
case 1:
{
@@ -2216,33 +2216,33 @@ static void sub_813DA64(struct Sprite *sprite)
s16 r2;
//_0813DAC0
- if (sprite->data3 < 0x50)
+ if (sprite->data[3] < 0x50)
{
- sprite->pos2.y = -Sin((u8)sprite->data3, 0x78);
- sprite->pos2.x = -Sin((u8)sprite->data3, 0x8C);
- if (sprite->data3 > 64)
+ sprite->pos2.y = -Sin((u8)sprite->data[3], 0x78);
+ sprite->pos2.x = -Sin((u8)sprite->data[3], 0x8C);
+ if (sprite->data[3] > 64)
sprite->oam.priority = 3;
}
//_0813DAF8
- r3 = gSineTable[(u8)sprite->data2];
- sin1 = gSineTable[(u8)(sprite->data2 + 64)];
- r6 = sin1 * sprite->data1 / 256;
- foo = sin1 * sprite->data1 / 256;
- r5 = -r3 * sprite->data1 / 256;
- r2 = r3 * sprite->data1 / 256;
+ r3 = gSineTable[(u8)sprite->data[2]];
+ sin1 = gSineTable[(u8)(sprite->data[2] + 64)];
+ r6 = sin1 * sprite->data[1] / 256;
+ foo = sin1 * sprite->data[1] / 256;
+ r5 = -r3 * sprite->data[1] / 256;
+ r2 = r3 * sprite->data[1] / 256;
SetOamMatrix(1, r6, r2, r5, foo);
- if (sprite->data1 < 0x100)
- sprite->data1 += 8;
+ if (sprite->data[1] < 0x100)
+ sprite->data[1] += 8;
else
- sprite->data1 += 32;
- if (sprite->data2 < 0x18)
- sprite->data2 += 1;
- if (sprite->data3 < 64)
- sprite->data3 += 2;
- else if (!(sprite->data7 & 3))
- sprite->data3 += 1;
+ sprite->data[1] += 32;
+ if (sprite->data[2] < 0x18)
+ sprite->data[2] += 1;
+ if (sprite->data[3] < 64)
+ sprite->data[3] += 2;
+ else if (!(sprite->data[7] & 3))
+ sprite->data[3] += 1;
break;
}
}
@@ -2423,72 +2423,72 @@ _0813DB94:\n\
static void sub_813DB9C(struct Sprite *sprite)
{
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
default:
- if (sprite->data2 != 0)
+ if (sprite->data[2] != 0)
sprite->hFlip = TRUE;
else
sprite->hFlip = FALSE;
- sprite->data0 = 1;
+ sprite->data[0] = 1;
//fall through
case 1:
if (sprite->pos1.y > 96)
{
sprite->pos1.y -= 4;
- if (sprite->data2 != 0)
+ if (sprite->data[2] != 0)
sprite->pos1.x += 2;
else
sprite->pos1.x -= 2;
}
else
{
- sprite->data0++;
- sprite->data3 = 8;
+ sprite->data[0]++;
+ sprite->data[3] = 8;
}
break;
case 2:
- if (sprite->data3 != 0)
+ if (sprite->data[3] != 0)
{
- sprite->data3--;
+ sprite->data[3]--;
}
else
{
- sprite->data0++;
- sprite->data3 = 0; //redundant?
+ sprite->data[0]++;
+ sprite->data[3] = 0; //redundant?
}
break;
case 3:
sprite->oam.affineMode = 3;
- sprite->oam.matrixNum = sprite->data1;
+ sprite->oam.matrixNum = sprite->data[1];
CalcCenterToCornerVec(sprite, 0, 3, 3);
- if (sprite->data2 != 0)
- SetOamMatrix(sprite->data1, -256, 0, 0, 256);
+ if (sprite->data[2] != 0)
+ SetOamMatrix(sprite->data[1], -256, 0, 0, 256);
else
- SetOamMatrix(sprite->data1, 256, 0, 0, 256);
- sprite->data0++;
- sprite->data4 = 0;
+ SetOamMatrix(sprite->data[1], 256, 0, 0, 256);
+ sprite->data[0]++;
+ sprite->data[4] = 0;
break;
case 4:
- sprite->data4++;
+ sprite->data[4]++;
if (sprite->pos1.y + sprite->pos2.y > -32
&& sprite->pos1.x + sprite->pos2.x > -64)
{
u16 r2;
- sprite->pos2.y = -(sprite->data4 * sprite->data4) / 8;
- if (sprite->data2 != 0)
- sprite->pos2.x += sprite->data4;
+ sprite->pos2.y = -(sprite->data[4] * sprite->data[4]) / 8;
+ if (sprite->data[2] != 0)
+ sprite->pos2.x += sprite->data[4];
else
- sprite->pos2.x -= sprite->data4;
- if (sprite->data3 < 128)
- sprite->data3 += 8;
- r2 = 256 - sprite->data3;
- if (sprite->data2 != 0)
- SetOamMatrix(sprite->data1, -r2, 0, 0, r2);
+ sprite->pos2.x -= sprite->data[4];
+ if (sprite->data[3] < 128)
+ sprite->data[3] += 8;
+ r2 = 256 - sprite->data[3];
+ if (sprite->data[2] != 0)
+ SetOamMatrix(sprite->data[1], -r2, 0, 0, r2);
else
- SetOamMatrix(sprite->data1, r2, 0, 0, r2);
+ SetOamMatrix(sprite->data[1], r2, 0, 0, r2);
}
else
{
@@ -2499,50 +2499,50 @@ static void sub_813DB9C(struct Sprite *sprite)
static void sub_813DD58(struct Sprite *sprite)
{
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
default:
sprite->invisible = FALSE;
sprite->oam.affineMode = 1;
- sprite->oam.matrixNum = sprite->data1;
- sprite->data3 = 2048;
- sprite->data0 = 1;
+ sprite->oam.matrixNum = sprite->data[1];
+ sprite->data[3] = 2048;
+ sprite->data[0] = 1;
//fall through
case 1:
- if (sprite->data3 > 256)
+ if (sprite->data[3] > 256)
{
- sprite->data3 -= 128;
- if (sprite->data2 != 0)
- SetOamMatrix(sprite->data1, -sprite->data3, 0, 0, sprite->data3);
+ sprite->data[3] -= 128;
+ if (sprite->data[2] != 0)
+ SetOamMatrix(sprite->data[1], -sprite->data[3], 0, 0, sprite->data[3]);
else
- SetOamMatrix(sprite->data1, sprite->data3, 0, 0, sprite->data3);
+ SetOamMatrix(sprite->data[1], sprite->data[3], 0, 0, sprite->data[3]);
}
else
{
- if (sprite->data2 != 0)
- SetOamMatrix(sprite->data1, -256, 0, 0, 256);
+ if (sprite->data[2] != 0)
+ SetOamMatrix(sprite->data[1], -256, 0, 0, 256);
else
- SetOamMatrix(sprite->data1, 256, 0, 0, 256);
- sprite->data0++;
+ SetOamMatrix(sprite->data[1], 256, 0, 0, 256);
+ sprite->data[0]++;
}
break;
case 2:
break;
case 3:
- sprite->data4++;
- sprite->pos2.y = sprite->data4 * sprite->data4 / 32;
- if (sprite->data2 != 0)
- sprite->pos2.x = sprite->data4 / 4;
+ sprite->data[4]++;
+ sprite->pos2.y = sprite->data[4] * sprite->data[4] / 32;
+ if (sprite->data[2] != 0)
+ sprite->pos2.x = sprite->data[4] / 4;
else
- sprite->pos2.x = -(sprite->data4 / 4);
+ sprite->pos2.x = -(sprite->data[4] / 4);
break;
}
}
static void sub_813DE70(struct Sprite *sprite)
{
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
default:
@@ -2553,24 +2553,24 @@ static void sub_813DE70(struct Sprite *sprite)
else
{
StartSpriteAnim(sprite, 1);
- sprite->data6 = CreateSprite(&gSpriteTemplate_840B084, 16, 104, 100);
- sprite->data7 = CreateSprite(&gSpriteTemplate_840B084, 12, 106, 101);
- sprite->data0 = 1;
+ sprite->data[6] = CreateSprite(&gSpriteTemplate_840B084, 16, 104, 100);
+ sprite->data[7] = CreateSprite(&gSpriteTemplate_840B084, 12, 106, 101);
+ sprite->data[0] = 1;
}
break;
case 1:
break;
case 2:
StartSpriteAnim(sprite, 2);
- gSprites[sprite->data6].data0 = 1;
- gSprites[sprite->data7].data0 = 2;
- sprite->data0++;
+ gSprites[sprite->data[6]].data[0] = 1;
+ gSprites[sprite->data[7]].data[0] = 2;
+ sprite->data[0]++;
break;
case 3:
if (sprite->pos1.y > 160)
{
sprite->invisible = 1;
- sprite->data0 = 1;
+ sprite->data[0] = 1;
}
else
{
@@ -2582,37 +2582,37 @@ static void sub_813DE70(struct Sprite *sprite)
{
s16 r4, r5;
- r5 = gSprites[sprite->data6].pos1.x + gSprites[sprite->data6].pos2.x;
- r4 = gSprites[sprite->data6].pos1.y + gSprites[sprite->data6].pos2.y;
- DestroySprite(&gSprites[sprite->data6]);
- sprite->data6 = sub_813CE88(SPECIES_TORCHIC, r5, r4, 2, 1);
- gSprites[sprite->data6].callback = sub_813DD58;
- gSprites[sprite->data6].invisible = TRUE;
- gSprites[sprite->data6].data1 = 1;
- gSprites[sprite->data6].data2 = 1;
+ r5 = gSprites[sprite->data[6]].pos1.x + gSprites[sprite->data[6]].pos2.x;
+ r4 = gSprites[sprite->data[6]].pos1.y + gSprites[sprite->data[6]].pos2.y;
+ DestroySprite(&gSprites[sprite->data[6]]);
+ sprite->data[6] = sub_813CE88(SPECIES_TORCHIC, r5, r4, 2, 1);
+ gSprites[sprite->data[6]].callback = sub_813DD58;
+ gSprites[sprite->data[6]].invisible = TRUE;
+ gSprites[sprite->data[6]].data[1] = 1;
+ gSprites[sprite->data[6]].data[2] = 1;
sub_813E580(r5, r4);
- r5 = gSprites[sprite->data7].pos1.x + gSprites[sprite->data7].pos2.x;
- r4 = gSprites[sprite->data7].pos1.y + gSprites[sprite->data7].pos2.y;
- DestroySprite(&gSprites[sprite->data7]);
- sprite->data7 = sub_813CE88(SPECIES_MUDKIP, r5, r4, 3, 1);
- gSprites[sprite->data7].callback = sub_813DD58;
- gSprites[sprite->data7].invisible = TRUE;
- gSprites[sprite->data7].data1 = 2;
- gSprites[sprite->data7].data2 = 0;
+ r5 = gSprites[sprite->data[7]].pos1.x + gSprites[sprite->data[7]].pos2.x;
+ r4 = gSprites[sprite->data[7]].pos1.y + gSprites[sprite->data[7]].pos2.y;
+ DestroySprite(&gSprites[sprite->data[7]]);
+ sprite->data[7] = sub_813CE88(SPECIES_MUDKIP, r5, r4, 3, 1);
+ gSprites[sprite->data[7]].callback = sub_813DD58;
+ gSprites[sprite->data[7]].invisible = TRUE;
+ gSprites[sprite->data[7]].data[1] = 2;
+ gSprites[sprite->data[7]].data[2] = 0;
sub_813E580(r5, r4);
BeginNormalPaletteFade(0xFF0000, 0, 16, 16, RGB(31, 23, 31));
- sprite->data0 = 1;
+ sprite->data[0] = 1;
break;
}
case 5:
- gSprites[sprite->data6].data0 = 3;
- gSprites[sprite->data7].data0 = 3;
+ gSprites[sprite->data[6]].data[0] = 3;
+ gSprites[sprite->data[7]].data[0] = 3;
break;
case 6:
- DestroySprite(&gSprites[sprite->data6]);
- DestroySprite(&gSprites[sprite->data7]);
+ DestroySprite(&gSprites[sprite->data[6]]);
+ DestroySprite(&gSprites[sprite->data[7]]);
DestroySprite(sprite);
break;
}
@@ -2620,7 +2620,7 @@ static void sub_813DE70(struct Sprite *sprite)
static void sub_813E10C(struct Sprite *sprite)
{
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
default:
@@ -2631,20 +2631,20 @@ static void sub_813E10C(struct Sprite *sprite)
}
else
{
- sprite->data6 = sprite->pos1.x;
- sprite->data7 = sprite->pos1.y;
+ sprite->data[6] = sprite->pos1.x;
+ sprite->data[7] = sprite->pos1.y;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
- sprite->data0 = 1;
- sprite->data1 = 0;
+ sprite->data[0] = 1;
+ sprite->data[1] = 0;
}
break;
case 1:
- if (!(sprite->data1 & 1))
+ if (!(sprite->data[1] & 1))
{
- if (sprite->data1 & 2)
+ if (sprite->data[1] & 2)
{
sprite->pos2.x = -1;
sprite->pos2.y = 1;
@@ -2655,18 +2655,18 @@ static void sub_813E10C(struct Sprite *sprite)
sprite->pos2.y = 0;
}
}
- sprite->data1++;
+ sprite->data[1]++;
break;
case 2:
sprite->invisible = TRUE;
- sprite->pos1.x = sprite->data6;
- sprite->pos1.y = sprite->data7;
+ sprite->pos1.x = sprite->data[6];
+ sprite->pos1.y = sprite->data[7];
sprite->pos2.x = 0;
sprite->pos2.y = 0;
break;
case 3:
sprite->invisible = FALSE;
- sprite->data1++;
+ sprite->data[1]++;
//fall through
case 4:
if (sprite->pos2.x > -56)
@@ -2680,7 +2680,7 @@ static void sub_813E10C(struct Sprite *sprite)
sprite->pos1.y += sprite->pos2.y;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
- sprite->data0 = 1;
+ sprite->data[0] = 1;
}
break;
}
@@ -2688,7 +2688,7 @@ static void sub_813E10C(struct Sprite *sprite)
static void sub_813E210(struct Sprite *sprite)
{
- switch (sprite->data0)
+ switch (sprite->data[0])
{
case 0:
default:
@@ -2699,20 +2699,20 @@ static void sub_813E210(struct Sprite *sprite)
}
else
{
- sprite->data6 = sprite->pos1.x;
- sprite->data7 = sprite->pos1.y;
+ sprite->data[6] = sprite->pos1.x;
+ sprite->data[7] = sprite->pos1.y;
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
- sprite->data0 = 1;
- sprite->data1 = 0;
+ sprite->data[0] = 1;
+ sprite->data[1] = 0;
}
break;
case 1:
- if (!(sprite->data1 & 1))
+ if (!(sprite->data[1] & 1))
{
- if (sprite->data1 & 2)
+ if (sprite->data[1] & 2)
{
sprite->pos2.x = 1;
sprite->pos2.y = -1;
@@ -2723,18 +2723,18 @@ static void sub_813E210(struct Sprite *sprite)
sprite->pos2.y = 0;
}
}
- sprite->data1++;
+ sprite->data[1]++;
break;
case 2:
sprite->invisible = TRUE;
- sprite->pos1.x = sprite->data6;
- sprite->pos1.y = sprite->data7;
+ sprite->pos1.x = sprite->data[6];
+ sprite->pos1.y = sprite->data[7];
sprite->pos2.x = 0;
sprite->pos2.y = 0;
break;
case 3:
sprite->invisible = FALSE;
- sprite->data1++;
+ sprite->data[1]++;
//fall through
case 4:
if (sprite->pos2.x < 56)
@@ -2748,7 +2748,7 @@ static void sub_813E210(struct Sprite *sprite)
sprite->pos1.y += sprite->pos2.y;
sprite->pos2.x = 0;
sprite->pos2.y = 0;
- sprite->data0 = 1;
+ sprite->data[0] = 1;
}
break;
}
@@ -2758,8 +2758,8 @@ static void sub_813E30C(struct Sprite *sprite)
{
u16 r4, r1;
- sprite->data7++;
- switch (sprite->data0)
+ sprite->data[7]++;
+ switch (sprite->data[0])
{
case 0:
default:
@@ -2767,43 +2767,43 @@ static void sub_813E30C(struct Sprite *sprite)
case 1:
sprite->oam.affineMode = 1;
sprite->oam.matrixNum = 1;
- sprite->data0 = 10;
- sprite->data4 = 36;
+ sprite->data[0] = 10;
+ sprite->data[4] = 36;
//fall through
case 10:
if (sprite->pos1.x <= 144)
{
sprite->pos1.x += 4;
sprite->pos1.y -= 1;
- sprite->pos2.y = -Sin((u8)sprite->data2, 24);
- sprite->data2 += 4;
+ sprite->pos2.y = -Sin((u8)sprite->data[2], 24);
+ sprite->data[2] += 4;
}
- sprite->data3 -= sprite->data4;
- if ((sprite->data7 & 1) && sprite->data4 != 0)
- sprite->data4--;
- r4 = gSineTable[(u8)sprite->data3];
- r1 = gSineTable[(u8)(sprite->data3 + 64)];
+ sprite->data[3] -= sprite->data[4];
+ if ((sprite->data[7] & 1) && sprite->data[4] != 0)
+ sprite->data[4]--;
+ r4 = gSineTable[(u8)sprite->data[3]];
+ r1 = gSineTable[(u8)(sprite->data[3] + 64)];
SetOamMatrix(1, r1, r4, -r4, r1);
break;
case 2:
sprite->oam.affineMode = 1;
sprite->oam.matrixNum = 2;
- sprite->data0 = 20;
- sprite->data4 = 36;
+ sprite->data[0] = 20;
+ sprite->data[4] = 36;
//fall through
case 20:
if (sprite->pos1.x <= 96)
{
sprite->pos1.x += 3;
sprite->pos1.y -= 1;
- sprite->pos2.y = -Sin((u8)sprite->data2, 24);
- sprite->data2 += 4;
+ sprite->pos2.y = -Sin((u8)sprite->data[2], 24);
+ sprite->data[2] += 4;
}
- sprite->data3 -= sprite->data4;
- if ((sprite->data7 & 1) && sprite->data4 != 0)
- sprite->data4--;
- r4 = gSineTable[(u8)sprite->data3];
- r1 = gSineTable[(u8)(sprite->data3 + 64)];
+ sprite->data[3] -= sprite->data[4];
+ if ((sprite->data[7] & 1) && sprite->data[4] != 0)
+ sprite->data[4]--;
+ r4 = gSineTable[(u8)sprite->data[3]];
+ r1 = gSineTable[(u8)(sprite->data[3] + 64)];
SetOamMatrix(2, r1, r4, -r4, r1);
break;
}
@@ -2815,27 +2815,27 @@ static void sub_813E4B8(struct Sprite *sprite)
u16 r2;
u16 r1;
- sprite->data7++;
- if (sprite->data7 & 1)
+ sprite->data[7]++;
+ if (sprite->data[7] & 1)
sprite->invisible = FALSE;
else
sprite->invisible = TRUE;
- if (sprite->data2 >= 64)
+ if (sprite->data[2] >= 64)
{
DestroySprite(sprite);
return;
}
- sprite->data2 += 2;
- r4 = Sin((u8)sprite->data2, 40);
- sprite->pos2.x = Cos((u8)(sprite->data0 * 32), r4);
- sprite->pos2.y = Sin((u8)(sprite->data0 * 32), r4);
- if (sprite->data0 == 0)
- {
- sprite->data3 -= sprite->data1;
- if ((sprite->data7 & 1) && sprite->data1 != 0)
- sprite->data1--;
- r2 = gSineTable[(u8)sprite->data3];
- r1 = gSineTable[(u8)(sprite->data3 + 64)];
+ sprite->data[2] += 2;
+ r4 = Sin((u8)sprite->data[2], 40);
+ sprite->pos2.x = Cos((u8)(sprite->data[0] * 32), r4);
+ sprite->pos2.y = Sin((u8)(sprite->data[0] * 32), r4);
+ if (sprite->data[0] == 0)
+ {
+ sprite->data[3] -= sprite->data[1];
+ if ((sprite->data[7] & 1) && sprite->data[1] != 0)
+ sprite->data[1]--;
+ r2 = gSineTable[(u8)sprite->data[3]];
+ r1 = gSineTable[(u8)(sprite->data[3] + 64)];
SetOamMatrix(16, r1, r2, -r2, r1);
}
}
@@ -2850,8 +2850,8 @@ static void sub_813E580(u16 x, u16 y)
spriteId = CreateSprite(&gSpriteTemplate_840B0B0, x, y, 0);
gSprites[spriteId].oam.affineMode = 1;
gSprites[spriteId].oam.matrixNum = 16;
- gSprites[spriteId].data0 = i;
- gSprites[spriteId].data1 = 32;
+ gSprites[spriteId].data[0] = i;
+ gSprites[spriteId].data[1] = 32;
}
}
@@ -2863,16 +2863,16 @@ static void sub_813E5E0(struct Sprite *sprite)
}
else
{
- sprite->invisible = gSprites[sprite->data0].invisible;
- if (sprite->data7 < 12)
- sprite->data7++;
- sprite->data6 += 4;
- sprite->pos1.x = sprite->data4 + gSineTable[(u8)(sprite->data3 + 64)] * sprite->data6 / 256;
+ sprite->invisible = gSprites[sprite->data[0]].invisible;
+ if (sprite->data[7] < 12)
+ sprite->data[7]++;
+ sprite->data[6] += 4;
+ sprite->pos1.x = sprite->data[4] + gSineTable[(u8)(sprite->data[3] + 64)] * sprite->data[6] / 256;
//This useless '+ 0' is needed to make the asm match
- sprite->pos1.y = sprite->data5 + gSineTable[(u8)(sprite->data3 + 0)] * sprite->data6 / 256;
- sprite->pos2.y = gSineTable[(u8)(sprite->data1 + 0)] * sprite->data7 / 256;
- sprite->data1 += 16;
- if (sprite->pos1.y > sprite->data2)
+ sprite->pos1.y = sprite->data[5] + gSineTable[(u8)(sprite->data[3] + 0)] * sprite->data[6] / 256;
+ sprite->pos2.y = gSineTable[(u8)(sprite->data[1] + 0)] * sprite->data[7] / 256;
+ sprite->data[1] += 16;
+ if (sprite->pos1.y > sprite->data[2])
DestroySprite(sprite);
}
}
@@ -2890,15 +2890,15 @@ static void sub_813E6C0(struct Sprite *sprite)
}
else
{
- sprite->data7++;
+ sprite->data[7]++;
sprite->invisible = TRUE;
- if (gSprites[sprite->data0].data0 == 1 && !(sprite->data7 & 3))
+ if (gSprites[sprite->data[0]].data[0] == 1 && !(sprite->data[7] & 3))
{
- var1 = sprite->data1 + gSprites[sprite->data0].pos1.x;
- var2 = sprite->data2 + gSprites[sprite->data0].pos1.y;
+ var1 = sprite->data[1] + gSprites[sprite->data[0]].pos1.x;
+ var2 = sprite->data[2] + gSprites[sprite->data[0]].pos1.y;
for (i = 0; i < 3; i++)
{
- u8 r3 = gSprites[sprite->data0].subpriority - 1;
+ u8 r3 = gSprites[sprite->data[0]].subpriority - 1;
//Make redundant copies of these variables to get the asm to match
s16 _var1 = var1;
s16 _var2 = var2;
@@ -2906,13 +2906,13 @@ static void sub_813E6C0(struct Sprite *sprite)
spriteId = CreateSprite(&gSpriteTemplate_840B0DC, _var1, _var2, r3);
if (spriteId != 64)
{
- gSprites[spriteId].data0 = sprite->data0;
- gSprites[spriteId].data1 = (((sprite->data7 >> 2) & 7) << 5) + i * 85;
- gSprites[spriteId].data2 = sprite->data3;
- gSprites[spriteId].data3 = 104;
- gSprites[spriteId].data4 = var1;
- gSprites[spriteId].data5 = var2;
- gSprites[spriteId].data6 = 0;
+ gSprites[spriteId].data[0] = sprite->data[0];
+ gSprites[spriteId].data[1] = (((sprite->data[7] >> 2) & 7) << 5) + i * 85;
+ gSprites[spriteId].data[2] = sprite->data[3];
+ gSprites[spriteId].data[3] = 104;
+ gSprites[spriteId].data[4] = var1;
+ gSprites[spriteId].data[5] = var2;
+ gSprites[spriteId].data[6] = 0;
}
}
}
@@ -2926,10 +2926,10 @@ static void sub_813E7C0(u8 a)
spriteId = CreateSprite(&gSpriteTemplate_840B0F4, 0, 0, 0);
if (spriteId != 64)
{
- gSprites[spriteId].data0 = a;
- gSprites[spriteId].data1 = -12;
- gSprites[spriteId].data2 = 0;
- gSprites[spriteId].data3 = 136;
+ gSprites[spriteId].data[0] = a;
+ gSprites[spriteId].data[1] = -12;
+ gSprites[spriteId].data[2] = 0;
+ gSprites[spriteId].data[3] = 136;
}
}
@@ -2941,20 +2941,20 @@ static void sub_813E804(struct Sprite *sprite)
}
else
{
- sprite->invisible = gSprites[sprite->data0].invisible;
- sprite->data7++;
- if (sprite->data3 < 40)
- sprite->data3 += 2;
+ sprite->invisible = gSprites[sprite->data[0]].invisible;
+ sprite->data[7]++;
+ if (sprite->data[3] < 40)
+ sprite->data[3] += 2;
//This useless '+ 0' is needed to make the asm match
- sprite->pos1.x = gSprites[sprite->data0].pos1.x + gSprites[sprite->data0].pos2.x + gSineTable[(u8)(sprite->data1 + 64)] * sprite->data3 / 256;
- sprite->pos1.y = gSprites[sprite->data0].pos1.y + gSprites[sprite->data0].pos2.y + gSineTable[(u8)(sprite->data1 + 0)] * sprite->data3 / 512;
- sprite->data1 += 2;
- sprite->pos2.y = gSineTable[(u8)(sprite->data2 + 0)] / 32;
- sprite->data2 += 8;
- if ((sprite->data1 & 0xFF) < 128)
- sprite->subpriority = gSprites[sprite->data0].subpriority - 1;
+ sprite->pos1.x = gSprites[sprite->data[0]].pos1.x + gSprites[sprite->data[0]].pos2.x + gSineTable[(u8)(sprite->data[1] + 64)] * sprite->data[3] / 256;
+ sprite->pos1.y = gSprites[sprite->data[0]].pos1.y + gSprites[sprite->data[0]].pos2.y + gSineTable[(u8)(sprite->data[1] + 0)] * sprite->data[3] / 512;
+ sprite->data[1] += 2;
+ sprite->pos2.y = gSineTable[(u8)(sprite->data[2] + 0)] / 32;
+ sprite->data[2] += 8;
+ if ((sprite->data[1] & 0xFF) < 128)
+ sprite->subpriority = gSprites[sprite->data[0]].subpriority - 1;
else
- sprite->subpriority = gSprites[sprite->data0].subpriority + 1;
+ sprite->subpriority = gSprites[sprite->data[0]].subpriority + 1;
}
}
@@ -2968,8 +2968,8 @@ static void sub_813E930(u8 a)
spriteId = CreateSprite(&gSpriteTemplate_840B124, gSprites[a].pos1.x, gSprites[a].pos1.y, 0);
if (spriteId != 64)
{
- gSprites[spriteId].data0 = a;
- gSprites[spriteId].data1 = i * 32;
+ gSprites[spriteId].data[0] = a;
+ gSprites[spriteId].data[1] = i * 32;
}
}
}
@@ -2985,17 +2985,17 @@ static void sub_813E980(struct Sprite *sprite)
u8 r0;
u16 matrixNum;
- sprite->invisible = gSprites[sprite->data0].invisible;
- sprite->data7++;
- sprite->data6 += 8;
- sprite->pos1.x = sprite->data4 + gSineTable[(u8)(sprite->data3 + 64)] * sprite->data6 / 256;
- sprite->pos1.y = sprite->data5 + gSineTable[(u8)(sprite->data3 + 0)] * sprite->data6 / 256;
- r0 = sprite->data6 / 16;
+ sprite->invisible = gSprites[sprite->data[0]].invisible;
+ sprite->data[7]++;
+ sprite->data[6] += 8;
+ sprite->pos1.x = sprite->data[4] + gSineTable[(u8)(sprite->data[3] + 64)] * sprite->data[6] / 256;
+ sprite->pos1.y = sprite->data[5] + gSineTable[(u8)(sprite->data[3] + 0)] * sprite->data[6] / 256;
+ r0 = sprite->data[6] / 16;
if (r0 > 9)
r0 = 9;
matrixNum = (r0 + 18) & 31;
sprite->oam.matrixNum = matrixNum;
- if (sprite->data6 > 160)
+ if (sprite->data[6] > 160)
DestroySprite(sprite);
}
}
@@ -3012,26 +3012,26 @@ static void sub_813EA60(struct Sprite *sprite)
}
else
{
- sprite->data7++;
+ sprite->data[7]++;
sprite->invisible = TRUE;
- if (gSprites[sprite->data0].data0 == 1)
+ if (gSprites[sprite->data[0]].data[0] == 1)
{
- r6 = (sprite->data7 & 1);
+ r6 = (sprite->data[7] & 1);
if (!r6)
{
- r1 = sprite->data1 + gSprites[sprite->data0].pos1.x;
- r2 = sprite->data2 + gSprites[sprite->data0].pos1.y;
- spriteId = CreateSprite(&gSpriteTemplate_840B150, r1, r2, gSprites[sprite->data0].subpriority + 1);
+ r1 = sprite->data[1] + gSprites[sprite->data[0]].pos1.x;
+ r2 = sprite->data[2] + gSprites[sprite->data[0]].pos1.y;
+ spriteId = CreateSprite(&gSpriteTemplate_840B150, r1, r2, gSprites[sprite->data[0]].subpriority + 1);
if (spriteId != 64)
{
gSprites[spriteId].oam.affineMode = 3;
gSprites[spriteId].oam.matrixNum = 18;
CalcCenterToCornerVec(&gSprites[spriteId], 0, 1, 3);
- gSprites[spriteId].data0 = sprite->data0;
- gSprites[spriteId].data3 = gUnknown_0840B168[(sprite->data7 >> 1) & 7];
- gSprites[spriteId].data4 = r1;
- gSprites[spriteId].data5 = r2;
- gSprites[spriteId].data6 = r6;
+ gSprites[spriteId].data[0] = sprite->data[0];
+ gSprites[spriteId].data[3] = gUnknown_0840B168[(sprite->data[7] >> 1) & 7];
+ gSprites[spriteId].data[4] = r1;
+ gSprites[spriteId].data[5] = r2;
+ gSprites[spriteId].data[6] = r6;
}
}
}
@@ -3046,10 +3046,10 @@ static void InitIntroTorchicAttackAnim(u8 a)
spriteId = CreateSprite(&gSpriteTemplate_840B170, 0, 0, 0);
if (spriteId != 64)
{
- gSprites[spriteId].data0 = a;
- gSprites[spriteId].data1 = 0;
- gSprites[spriteId].data2 = 8;
- gSprites[spriteId].data3 = 24;
+ gSprites[spriteId].data[0] = a;
+ gSprites[spriteId].data[1] = 0;
+ gSprites[spriteId].data[2] = 8;
+ gSprites[spriteId].data[3] = 24;
}
for (i = 0; i < 10; i++)
{
@@ -3065,14 +3065,14 @@ static void sub_813EBBC(struct Sprite *sprite)
}
else
{
- sprite->invisible = gSprites[sprite->data0].invisible;
- sprite->data7 += 1;
- sprite->data6 += 8;
- sprite->pos1.x = sprite->data4 + gSineTable[(u8)(sprite->data3 + 64)] * sprite->data6 / 256;
- sprite->pos1.y = sprite->data5 + gSineTable[(u8)(sprite->data3 + 0)] * sprite->data6 / 256;
- sprite->pos2.y = gSineTable[(u8)(sprite->data1 + 0)] / 64;
- sprite->data1 += 16;
- if (sprite->pos1.y < sprite->data2)
+ sprite->invisible = gSprites[sprite->data[0]].invisible;
+ sprite->data[7] += 1;
+ sprite->data[6] += 8;
+ sprite->pos1.x = sprite->data[4] + gSineTable[(u8)(sprite->data[3] + 64)] * sprite->data[6] / 256;
+ sprite->pos1.y = sprite->data[5] + gSineTable[(u8)(sprite->data[3] + 0)] * sprite->data[6] / 256;
+ sprite->pos2.y = gSineTable[(u8)(sprite->data[1] + 0)] / 64;
+ sprite->data[1] += 16;
+ if (sprite->pos1.y < sprite->data[2])
DestroySprite(sprite);
}
}
@@ -3090,34 +3090,34 @@ static void sub_813EC90(struct Sprite *sprite)
}
else
{
- sprite->data7++;
+ sprite->data[7]++;
sprite->invisible = TRUE;
- if (gSprites[sprite->data0].data0 == 1)
+ if (gSprites[sprite->data[0]].data[0] == 1)
{
- r6 = sprite->data7 & 1;
+ r6 = sprite->data[7] & 1;
if (!r6)
{
- r1 = sprite->data1 + gSprites[sprite->data0].pos1.x;
- r2 = sprite->data2 + gSprites[sprite->data0].pos1.y;
- spriteId = CreateSprite(&gSpriteTemplate_840B1B0, r1, r2, gSprites[sprite->data0].subpriority + 1);
+ r1 = sprite->data[1] + gSprites[sprite->data[0]].pos1.x;
+ r2 = sprite->data[2] + gSprites[sprite->data[0]].pos1.y;
+ spriteId = CreateSprite(&gSpriteTemplate_840B1B0, r1, r2, gSprites[sprite->data[0]].subpriority + 1);
if (spriteId != 64)
{
gSprites[spriteId].oam.affineMode = 3;
gSprites[spriteId].oam.matrixNum = 17;
CalcCenterToCornerVec(&gSprites[spriteId], 0, 1, 3);
- gSprites[spriteId].data0 = sprite->data0;
- gSprites[spriteId].data1 = ((sprite->data7 >> 2) & 7) << 5;
- gSprites[spriteId].data2 = sprite->data3;
- gSprites[spriteId].data3 = 232;
- gSprites[spriteId].data4 = r1;
- gSprites[spriteId].data5 = r2;
- gSprites[spriteId].data6 = r6;
+ gSprites[spriteId].data[0] = sprite->data[0];
+ gSprites[spriteId].data[1] = ((sprite->data[7] >> 2) & 7) << 5;
+ gSprites[spriteId].data[2] = sprite->data[3];
+ gSprites[spriteId].data[3] = 232;
+ gSprites[spriteId].data[4] = r1;
+ gSprites[spriteId].data[5] = r2;
+ gSprites[spriteId].data[6] = r6;
}
}
- if (sprite->data6 < 112)
- sprite->data6 += 4;
+ if (sprite->data[6] < 112)
+ sprite->data[6] += 4;
}
- foo = 256 - gSineTable[(u8)sprite->data6] / 2;
+ foo = 256 - gSineTable[(u8)sprite->data[6]] / 2;
SetOamMatrix(17, foo, 0, 0, foo);
}
}
@@ -3129,10 +3129,10 @@ static void InitIntroMudkipAttackAnim(u8 a)
spriteId = CreateSprite(&gSpriteTemplate_840B1C8, 0, 0, 0);
if (spriteId != 64)
{
- gSprites[spriteId].data0 = a;
- gSprites[spriteId].data1 = 0;
- gSprites[spriteId].data2 = 12;
- gSprites[spriteId].data3 = 24;
+ gSprites[spriteId].data[0] = a;
+ gSprites[spriteId].data[1] = 0;
+ gSprites[spriteId].data[2] = 12;
+ gSprites[spriteId].data[3] = 24;
}
}
@@ -3141,8 +3141,8 @@ static void sub_813EDFC(struct Sprite *sprite)
u16 foo;
//I'm not sure why a switch statement was used here.
- //if (sprite->data0 != 1) would have been more appropriate.
- switch (sprite->data0)
+ //if (sprite->data[0] != 1) would have been more appropriate.
+ switch (sprite->data[0])
{
case 0:
default:
@@ -3150,23 +3150,23 @@ static void sub_813EDFC(struct Sprite *sprite)
sprite->oam.affineMode = 3;
sprite->oam.matrixNum = 18;
CalcCenterToCornerVec(sprite, 0, 3, 3);
- sprite->data1 = 0;
- sprite->data0 = 1;
+ sprite->data[1] = 0;
+ sprite->data[0] = 1;
//fall through
case 1:
break;
}
- sprite->data7++;
- if (sprite->data7 & 1)
+ sprite->data[7]++;
+ if (sprite->data[7] & 1)
{
sprite->invisible = TRUE;
}
else
{
sprite->invisible = FALSE;
- if (sprite->data1 < 64)
- sprite->data1++;
+ if (sprite->data[1] < 64)
+ sprite->data[1]++;
}
- foo = 256 - gSineTable[(u8)sprite->data1] / 2;
+ foo = 256 - gSineTable[(u8)sprite->data[1]] / 2;
SetOamMatrix(18, foo, 0, 0, foo);
}