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