summaryrefslogtreecommitdiff
path: root/src/field_effect_helpers.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/field_effect_helpers.c')
-rwxr-xr-xsrc/field_effect_helpers.c160
1 files changed, 80 insertions, 80 deletions
diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c
index 67a151aaa..bcc02efe9 100755
--- a/src/field_effect_helpers.c
+++ b/src/field_effect_helpers.c
@@ -37,14 +37,14 @@ static u32 ShowDisguiseFieldEffect(u8, u8, u8);
#define sReflectionObjEventId data[0]
#define sReflectionObjEventLocalId data[1]
-#define sReflectionVerticalOffset data[2]
+#define sReflectionVerticalOffset data[2]
#define sIsStillReflection data[7]
void SetUpReflection(struct ObjectEvent *objectEvent, struct Sprite *sprite, bool8 stillReflection)
{
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)
@@ -337,8 +337,8 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite)
mapGroup = sprite->sMapGroup;
metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->sX, sprite->sY);
- if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)
- || !MetatileBehavior_IsTallGrass(metatileBehavior)
+ if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)
+ || !MetatileBehavior_IsTallGrass(metatileBehavior)
|| (sprite->sObjectMoved && sprite->animEnded))
{
FieldEffectStop(sprite, FLDEFF_TALL_GRASS);
@@ -347,8 +347,8 @@ void UpdateTallGrassFieldEffect(struct Sprite *sprite)
{
// Check if the object that triggered the effect has moved away
objectEvent = &gObjectEvents[objectEventId];
- if ((objectEvent->currentCoords.x != sprite->sX
- || objectEvent->currentCoords.y != sprite->sY)
+ if ((objectEvent->currentCoords.x != sprite->sX
+ || objectEvent->currentCoords.y != sprite->sY)
&& (objectEvent->previousCoords.x != sprite->sX
|| objectEvent->previousCoords.y != sprite->sY))
sprite->sObjectMoved = TRUE;
@@ -391,10 +391,10 @@ u8 FindTallGrassFieldEffectSpriteId(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s
if (gSprites[i].inUse)
{
sprite = &gSprites[i];
- if (sprite->callback == UpdateTallGrassFieldEffect
- && (x == sprite->sX && y == sprite->sY)
- && localId == (u8)(sprite->sLocalId)
- && mapNum == (sprite->sMapNum & 0xFF)
+ if (sprite->callback == UpdateTallGrassFieldEffect
+ && (x == sprite->sX && y == sprite->sY)
+ && localId == (u8)(sprite->sLocalId)
+ && mapNum == (sprite->sMapNum & 0xFF)
&& mapGroup == sprite->sMapGroup)
return i;
}
@@ -452,8 +452,8 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite)
mapNum = sprite->sMapNum;
mapGroup = sprite->sMapGroup;
metatileBehavior = MapGridGetMetatileBehaviorAt(sprite->data[1], sprite->data[2]);
- if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)
- || !MetatileBehavior_IsLongGrass(metatileBehavior)
+ if (TryGetObjectEventIdByLocalIdAndMap(localId, mapNum, mapGroup, &objectEventId)
+ || !MetatileBehavior_IsLongGrass(metatileBehavior)
|| (sprite->sObjectMoved && sprite->animEnded))
{
FieldEffectStop(sprite, FLDEFF_LONG_GRASS);
@@ -462,9 +462,9 @@ void UpdateLongGrassFieldEffect(struct Sprite *sprite)
{
// Check if the object that triggered the effect has moved away
objectEvent = &gObjectEvents[objectEventId];
- if ((objectEvent->currentCoords.x != sprite->data[1]
- || objectEvent->currentCoords.y != sprite->data[2])
- && (objectEvent->previousCoords.x != sprite->data[1]
+ if ((objectEvent->currentCoords.x != sprite->data[1]
+ || objectEvent->currentCoords.y != sprite->data[2])
+ && (objectEvent->previousCoords.x != sprite->data[1]
|| objectEvent->previousCoords.y != sprite->data[2]))
sprite->sObjectMoved = TRUE;
@@ -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)
{