summaryrefslogtreecommitdiff
path: root/src/battle_transition_frontier.c
diff options
context:
space:
mode:
authorGriffinR <griffin.g.richards@gmail.com>2021-11-03 11:26:20 -0400
committerGitHub <noreply@github.com>2021-11-03 11:26:20 -0400
commit0ba22ca1124bf5cf37ba2934fda4ec1a9cca02a6 (patch)
treea28f1cc1680b1368eb36f39327ca669fe5625a13 /src/battle_transition_frontier.c
parentb16b91826665c500500fe1b2bf4db386ce01152a (diff)
parent886551f655ee0651b47ad81e55404059f3e2673b (diff)
Merge pull request #1534 from GriffinRichards/doc-btrans
Document battle transition
Diffstat (limited to 'src/battle_transition_frontier.c')
-rw-r--r--src/battle_transition_frontier.c296
1 files changed, 160 insertions, 136 deletions
diff --git a/src/battle_transition_frontier.c b/src/battle_transition_frontier.c
index 2d34c9f86..e1cb03d8d 100644
--- a/src/battle_transition_frontier.c
+++ b/src/battle_transition_frontier.c
@@ -21,7 +21,6 @@
typedef bool8 (*TransitionStateFunc)(struct Task *task);
-// this file's functions
static void SpriteCB_LogoCircleSlide(struct Sprite *sprite);
static void SpriteCB_LogoCircleSpiral(struct Sprite *sprite);
static bool8 WaitForLogoCirclesAnim(struct Task *task);
@@ -46,7 +45,6 @@ static bool8 CirclesSymmetricSpiralInSeq_End(struct Task *task);
#define PALTAG_LOGO_CIRCLES 0x2E90
-// const rom data
static const u32 sLogoCenter_Gfx[] = INCBIN_U32("graphics/battle_transitions/frontier_logo_center.4bpp.lz");
static const u32 sLogoCenter_Tilemap[] = INCBIN_U32("graphics/battle_transitions/frontier_logo_center.bin");
static const u32 sLogoCircles_Gfx[] = INCBIN_U32("graphics/battle_transitions/frontier_logo_circles.4bpp.lz");
@@ -121,7 +119,7 @@ static const struct SpriteTemplate sSpriteTemplate_LogoCircles =
.callback = SpriteCallbackDummy,
};
-static const TransitionStateFunc sPhase2_FrontierCirclesMeet_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesMeet_Funcs[] =
{
Circles_Init,
CirclesMeet_CreateSprites,
@@ -130,7 +128,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesMeet_Funcs[] =
CirclesMeet_End
};
-static const TransitionStateFunc sPhase2_FrontierCirclesCross_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesCross_Funcs[] =
{
Circles_Init,
CirclesCross_CreateSprites,
@@ -139,7 +137,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesCross_Funcs[] =
CirclesCross_End
};
-static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiral_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesAsymmetricSpiral_Funcs[] =
{
Circles_Init,
CirclesAsymmetricSpiral_CreateSprites,
@@ -148,7 +146,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiral_Funcs[]
CirclesAsymmetricSpiral_End
};
-static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiral_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesSymmetricSpiral_Funcs[] =
{
Circles_Init,
CirclesSymmetricSpiral_CreateSprites,
@@ -157,7 +155,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiral_Funcs[]
CirclesSymmetricSpiral_End
};
-static const TransitionStateFunc sPhase2_FrontierCirclesMeetInSeq_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesMeetInSeq_Funcs[] =
{
Circles_Init,
CirclesMeetInSeq_CreateSprites,
@@ -166,7 +164,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesMeetInSeq_Funcs[] =
CirclesMeetInSeq_End
};
-static const TransitionStateFunc sPhase2_FrontierCirclesCrossInSeq_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesCrossInSeq_Funcs[] =
{
Circles_Init,
CirclesCrossInSeq_CreateSprites,
@@ -175,7 +173,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesCrossInSeq_Funcs[] =
CirclesCrossInSeq_End
};
-static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiralInSeq_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesAsymmetricSpiralInSeq_Funcs[] =
{
Circles_Init,
CirclesAsymmetricSpiralInSeq_CreateSprites,
@@ -184,7 +182,7 @@ static const TransitionStateFunc sPhase2_FrontierCirclesAsymmetricSpiralInSeq_Fu
CirclesAsymmetricSpiralInSeq_End
};
-static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiralInSeq_Funcs[] =
+static const TransitionStateFunc sFrontierCirclesSymmetricSpiralInSeq_Funcs[] =
{
Circles_Init,
CirclesSymmetricSpiralInSeq_CreateSprites,
@@ -193,45 +191,72 @@ static const TransitionStateFunc sPhase2_FrontierCirclesSymmetricSpiralInSeq_Fun
CirclesSymmetricSpiralInSeq_End
};
-// code
+// Task data
+#define tState data[0]
+#define tTimer data[1]
+#define tBlend data[2]
+#define tFadeTimer data[3]
+#define tCircle1SpriteId data[4]
+#define tCircle2SpriteId data[5]
+#define tCircle3SpriteId data[6]
+
+#define sTargetX data[0]
+#define sTargetY data[1]
+
+// Sprite data for CreateSlidingLogoCircleSprite
+#define sSpeedX data[2]
+#define sSpeedY data[3]
+#define sTimerX data[4]
+#define sTimerY data[5]
+#define sDelayX data[6]
+#define sDelayY data[7]
+
+// Sprite data for CreateSpiralingLogoCircleSprite
+#define sAngle data[2]
+#define sRotateSpeed data[3]
+#define sRadius data[4]
+#define sTargetRadius data[5]
+#define sRadiusDelta data[6]
+
+
static void LoadLogoGfx(void)
{
- u16 *dst1, *dst2;
+ u16 *tilemap, *tileset;
- GetBg0TilesDst(&dst1, &dst2);
- LZ77UnCompVram(sLogoCenter_Gfx, dst2);
- LZ77UnCompVram(sLogoCenter_Tilemap, dst1);
- LoadPalette(sLogo_Pal, 0xF0, 0x20);
+ GetBg0TilesDst(&tilemap, &tileset);
+ LZ77UnCompVram(sLogoCenter_Gfx, tileset);
+ LZ77UnCompVram(sLogoCenter_Tilemap, tilemap);
+ LoadPalette(sLogo_Pal, 0xF0, sizeof(sLogo_Pal));
LoadCompressedSpriteSheet(&sSpriteSheet_LogoCircles);
LoadSpritePalette(&sSpritePalette_LogoCircles);
}
-static u8 CreateSlidingLogoCircleSprite(s16 x, s16 y, u8 arg2, u8 arg3, s8 arg4, s8 arg5, u8 spriteAnimNum)
+static u8 CreateSlidingLogoCircleSprite(s16 x, s16 y, u8 delayX, u8 delayY, s8 speedX, s8 speedY, u8 spriteAnimNum)
{
u8 spriteId = CreateSprite(&sSpriteTemplate_LogoCircles, x, y, 0);
switch (spriteAnimNum)
{
case 0:
- gSprites[spriteId].data[0] = 120;
- gSprites[spriteId].data[1] = 45;
+ gSprites[spriteId].sTargetX = 120;
+ gSprites[spriteId].sTargetY = 45;
break;
case 1:
- gSprites[spriteId].data[0] = 89;
- gSprites[spriteId].data[1] = 97;
+ gSprites[spriteId].sTargetX = 89;
+ gSprites[spriteId].sTargetY = 97;
break;
case 2:
- gSprites[spriteId].data[0] = 151;
- gSprites[spriteId].data[1] = 97;
+ gSprites[spriteId].sTargetX = 151;
+ gSprites[spriteId].sTargetY = 97;
break;
}
- gSprites[spriteId].data[2] = arg4;
- gSprites[spriteId].data[3] = arg5;
- gSprites[spriteId].data[6] = arg2;
- gSprites[spriteId].data[7] = arg3;
- gSprites[spriteId].data[4] = 0;
- gSprites[spriteId].data[5] = 0;
+ gSprites[spriteId].sSpeedX = speedX;
+ gSprites[spriteId].sSpeedY = speedY;
+ gSprites[spriteId].sDelayX = delayX;
+ gSprites[spriteId].sDelayY = delayY;
+ gSprites[spriteId].sTimerX = 0;
+ gSprites[spriteId].sTimerY = 0;
StartSpriteAnim(&gSprites[spriteId], spriteAnimNum);
gSprites[spriteId].callback = SpriteCB_LogoCircleSlide;
@@ -243,59 +268,60 @@ static void SpriteCB_LogoCircleSlide(struct Sprite *sprite)
{
s16 *data = sprite->data;
- if (sprite->x == data[0] && sprite->y == data[1])
+ if (sprite->x == sTargetX && sprite->y == sTargetY)
{
sprite->callback = SpriteCallbackDummy;
}
else
{
- if (data[4] == data[6])
+ if (sTimerX == sDelayX)
{
- sprite->x += data[2];
- data[4] = 0;
+ sprite->x += sSpeedX;
+ sTimerX = 0;
}
else
{
- data[4]++;
+ sTimerX++;
}
- if (data[5] == data[7])
+ if (sTimerY == sDelayY)
{
- sprite->y += data[3];
- data[5] = 0;
+ sprite->y += sSpeedY;
+ sTimerY = 0;
}
else
{
- data[5]++;
+ sTimerY++;
}
}
}
-static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 arg2, s16 arg3, s16 arg4, s16 arg5, s16 arg6, u8 spriteAnimNum)
+static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 angle, s16 rotateSpeed, s16 radiusStart, s16 radiusEnd, s16 radiusDelta, u8 spriteAnimNum)
{
u8 spriteId = CreateSprite(&sSpriteTemplate_LogoCircles, x, y, 0);
+ // Target coords are set but irrelevant
switch (spriteAnimNum)
{
case 0:
- gSprites[spriteId].data[0] = 120;
- gSprites[spriteId].data[1] = 45;
+ gSprites[spriteId].sTargetX = 120;
+ gSprites[spriteId].sTargetY = 45;
break;
case 1:
- gSprites[spriteId].data[0] = 89;
- gSprites[spriteId].data[1] = 97;
+ gSprites[spriteId].sTargetX = 89;
+ gSprites[spriteId].sTargetY = 97;
break;
case 2:
- gSprites[spriteId].data[0] = 151;
- gSprites[spriteId].data[1] = 97;
+ gSprites[spriteId].sTargetX = 151;
+ gSprites[spriteId].sTargetY = 97;
break;
}
- gSprites[spriteId].data[2] = arg2;
- gSprites[spriteId].data[3] = arg3;
- gSprites[spriteId].data[4] = arg4;
- gSprites[spriteId].data[5] = arg5;
- gSprites[spriteId].data[6] = arg6;
+ gSprites[spriteId].sAngle = angle;
+ gSprites[spriteId].sRotateSpeed = rotateSpeed;
+ gSprites[spriteId].sRadius = radiusStart;
+ gSprites[spriteId].sTargetRadius = radiusEnd;
+ gSprites[spriteId].sRadiusDelta = radiusDelta;
StartSpriteAnim(&gSprites[spriteId], spriteAnimNum);
gSprites[spriteId].callback = SpriteCB_LogoCircleSpiral;
@@ -305,34 +331,32 @@ static u8 CreateSpiralingLogoCircleSprite(s16 x, s16 y, s16 arg2, s16 arg3, s16
static void SpriteCB_LogoCircleSpiral(struct Sprite *sprite)
{
- sprite->x2 = (Sin2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096
- sprite->y2 = (Cos2(sprite->data[2]) * sprite->data[4]) >> 12; // div by 4096
+ sprite->x2 = (Sin2(sprite->sAngle) * sprite->sRadius) >> 12; // div by 4096
+ sprite->y2 = (Cos2(sprite->sAngle) * sprite->sRadius) >> 12; // div by 4096
- sprite->data[2] = (sprite->data[2] + sprite->data[3]) % 360;
+ sprite->sAngle = (sprite->sAngle + sprite->sRotateSpeed) % 360;
- if (sprite->data[4] != sprite->data[5])
- sprite->data[4] += sprite->data[6];
+ if (sprite->sRadius != sprite->sTargetRadius)
+ sprite->sRadius += sprite->sRadiusDelta;
else
sprite->callback = SpriteCallbackDummy;
}
-#define tState data[0]
-
static void DestroyLogoCirclesGfx(struct Task *task)
{
FreeSpriteTilesByTag(PALTAG_LOGO_CIRCLES);
FreeSpritePaletteByTag(PALTAG_LOGO_CIRCLES);
- DestroySprite(&gSprites[task->data[4]]);
- DestroySprite(&gSprites[task->data[5]]);
- DestroySprite(&gSprites[task->data[6]]);
+ DestroySprite(&gSprites[task->tCircle1SpriteId]);
+ DestroySprite(&gSprites[task->tCircle2SpriteId]);
+ DestroySprite(&gSprites[task->tCircle3SpriteId]);
}
static bool8 IsLogoCirclesAnimFinished(struct Task *task)
{
- if (gSprites[task->data[4]].callback == SpriteCallbackDummy
- && gSprites[task->data[5]].callback == SpriteCallbackDummy
- && gSprites[task->data[6]].callback == SpriteCallbackDummy)
+ if (gSprites[task->tCircle1SpriteId].callback == SpriteCallbackDummy
+ && gSprites[task->tCircle2SpriteId].callback == SpriteCallbackDummy
+ && gSprites[task->tCircle3SpriteId].callback == SpriteCallbackDummy)
return TRUE;
else
return FALSE;
@@ -340,13 +364,13 @@ static bool8 IsLogoCirclesAnimFinished(struct Task *task)
static bool8 Circles_Init(struct Task *task)
{
- if (task->data[1] == 0)
+ if (task->tTimer == 0)
{
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON);
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN1_ON);
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG0_ON);
- task->data[1]++;
+ task->tTimer++;
return FALSE;
}
else
@@ -358,7 +382,7 @@ static bool8 Circles_Init(struct Task *task)
ChangeBgY(0, 0, 0);
ChangeBgY(0, 0x500, 2);
- task->data[1] = 0;
+ task->tTimer = 0;
task->tState++;
return TRUE;
}
@@ -366,27 +390,27 @@ static bool8 Circles_Init(struct Task *task)
static bool8 FadeInCenterLogoCircle(struct Task *task)
{
- if (task->data[2] == 0)
+ if (task->tBlend == 0)
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_BG0_ON);
- if (task->data[2] == 16)
+ if (task->tBlend == 16)
{
- if (task->data[3] == 31)
+ if (task->tFadeTimer == 31)
{
BeginNormalPaletteFade(PALETTES_ALL, -1, 0, 0x10, RGB_BLACK);
task->tState++;
}
else
{
- task->data[3]++;
+ task->tFadeTimer++;
}
}
else
{
u16 blnd;
- task->data[2]++;
- blnd = task->data[2];
+ task->tBlend++;
+ blnd = task->tBlend;
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(blnd, 16 - blnd));
}
@@ -401,16 +425,16 @@ static bool8 WaitForLogoCirclesAnim(struct Task *task)
return FALSE;
}
-void Phase2Task_FrontierCirclesMeet(u8 taskId)
+void Task_FrontierCirclesMeet(u8 taskId)
{
- while (sPhase2_FrontierCirclesMeet_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesMeet_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesMeet_CreateSprites(struct Task *task)
{
- task->data[4] = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 2, 0);
- task->data[5] = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 2, -2, 1);
- task->data[6] = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -2, -2, 2);
+ task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 2, 0);
+ task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 2, -2, 1);
+ task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -2, -2, 2);
task->tState++;
return FALSE;
@@ -421,22 +445,22 @@ static bool8 CirclesMeet_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesMeet));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesMeet));
}
return FALSE;
}
-void Phase2Task_FrontierCirclesCross(u8 taskId)
+void Task_FrontierCirclesCross(u8 taskId)
{
- while (sPhase2_FrontierCirclesCross_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesCross_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesCross_CreateSprites(struct Task *task)
{
- task->data[4] = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -4, 0);
- task->data[5] = CreateSlidingLogoCircleSprite(241, 59, 0, 1, -4, 2, 1);
- task->data[6] = CreateSlidingLogoCircleSprite(-1, 59, 0, 1, 4, 2, 2);
+ task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -4, 0);
+ task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(241, 59, 0, 1, -4, 2, 1);
+ task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(-1, 59, 0, 1, 4, 2, 2);
task->tState++;
return FALSE;
@@ -447,22 +471,22 @@ static bool8 CirclesCross_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesCross));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesCross));
}
return FALSE;
}
-void Phase2Task_FrontierCirclesAsymmetricSpiral(u8 taskId)
+void Task_FrontierCirclesAsymmetricSpiral(u8 taskId)
{
- while (sPhase2_FrontierCirclesAsymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesAsymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesAsymmetricSpiral_CreateSprites(struct Task *task)
{
- task->data[4] = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0);
- task->data[5] = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1);
- task->data[6] = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2);
+ task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0);
+ task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1);
+ task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2);
task->tState++;
return FALSE;
@@ -473,22 +497,22 @@ static bool8 CirclesAsymmetricSpiral_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesAsymmetricSpiral));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesAsymmetricSpiral));
}
return FALSE;
}
-void Phase2Task_FrontierCirclesSymmetricSpiral(u8 taskId)
+void Task_FrontierCirclesSymmetricSpiral(u8 taskId)
{
- while (sPhase2_FrontierCirclesSymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesSymmetricSpiral_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesSymmetricSpiral_CreateSprites(struct Task *task)
{
- task->data[4] = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0);
- task->data[5] = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1);
- task->data[6] = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2);
+ task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0);
+ task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1);
+ task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2);
task->tState++;
return FALSE;
@@ -499,34 +523,34 @@ static bool8 CirclesSymmetricSpiral_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesSymmetricSpiral));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesSymmetricSpiral));
}
return FALSE;
}
-void Phase2Task_FrontierCirclesMeetInSeq(u8 taskId)
+void Task_FrontierCirclesMeetInSeq(u8 taskId)
{
- while (sPhase2_FrontierCirclesMeetInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesMeetInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesMeetInSeq_CreateSprites(struct Task *task)
{
- if (task->data[1] == 0)
+ if (task->tTimer == 0)
{
- task->data[4] = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 4, 0);
+ task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, -51, 0, 0, 0, 4, 0);
}
- else if (task->data[1] == 16)
+ else if (task->tTimer == 16)
{
- task->data[5] = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 4, -4, 1);
+ task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(-7, 193, 0, 0, 4, -4, 1);
}
- else if (task->data[1] == 32)
+ else if (task->tTimer == 32)
{
- task->data[6] = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -4, -4, 2);
+ task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(247, 193, 0, 0, -4, -4, 2);
task->tState++;
}
- task->data[1]++;
+ task->tTimer++;
return FALSE;
}
@@ -535,34 +559,34 @@ static bool8 CirclesMeetInSeq_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesMeetInSeq));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesMeetInSeq));
}
return FALSE;
}
-void Phase2Task_FrontierCirclesCrossInSeq(u8 taskId)
+void Task_FrontierCirclesCrossInSeq(u8 taskId)
{
- while (sPhase2_FrontierCirclesCrossInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesCrossInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesCrossInSeq_CreateSprites(struct Task *task)
{
- if (task->data[1] == 0)
+ if (task->tTimer == 0)
{
- task->data[4] = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -8, 0);
+ task->tCircle1SpriteId = CreateSlidingLogoCircleSprite(120, 197, 0, 0, 0, -8, 0);
}
- else if (task->data[1] == 16)
+ else if (task->tTimer == 16)
{
- task->data[5] = CreateSlidingLogoCircleSprite(241, 78, 0, 0, -8, 1, 1);
+ task->tCircle2SpriteId = CreateSlidingLogoCircleSprite(241, 78, 0, 0, -8, 1, 1);
}
- else if (task->data[1] == 32)
+ else if (task->tTimer == 32)
{
- task->data[6] = CreateSlidingLogoCircleSprite(-1, 78, 0, 0, 8, 1, 2);
+ task->tCircle3SpriteId = CreateSlidingLogoCircleSprite(-1, 78, 0, 0, 8, 1, 2);
task->tState++;
}
- task->data[1]++;
+ task->tTimer++;
return FALSE;
}
@@ -571,34 +595,34 @@ static bool8 CirclesCrossInSeq_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesCrossInSeq));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesCrossInSeq));
}
return FALSE;
}
-void Phase2Task_FrontierCirclesAsymmetricSpiralInSeq(u8 taskId)
+void Task_FrontierCirclesAsymmetricSpiralInSeq(u8 taskId)
{
- while (sPhase2_FrontierCirclesAsymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesAsymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesAsymmetricSpiralInSeq_CreateSprites(struct Task *task)
{
- if (task->data[1] == 0)
+ if (task->tTimer == 0)
{
- task->data[4] = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0);
+ task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 45, 12, 4, 128, 0, -4, 0);
}
- else if (task->data[1] == 16)
+ else if (task->tTimer == 16)
{
- task->data[5] = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1);
+ task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(89, 97, 252, 4, 128, 0, -4, 1);
}
- else if (task->data[1] == 32)
+ else if (task->tTimer == 32)
{
- task->data[6] = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2);
+ task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(151, 97, 132, 4, 128, 0, -4, 2);
task->tState++;
}
- task->data[1]++;
+ task->tTimer++;
return FALSE;
}
@@ -607,34 +631,34 @@ static bool8 CirclesAsymmetricSpiralInSeq_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesAsymmetricSpiralInSeq));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesAsymmetricSpiralInSeq));
}
return FALSE;
}
-void Phase2Task_FrontierCirclesSymmetricSpiralInSeq(u8 taskId)
+void Task_FrontierCirclesSymmetricSpiralInSeq(u8 taskId)
{
- while (sPhase2_FrontierCirclesSymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
+ while (sFrontierCirclesSymmetricSpiralInSeq_Funcs[gTasks[taskId].tState](&gTasks[taskId]));
}
static bool8 CirclesSymmetricSpiralInSeq_CreateSprites(struct Task *task)
{
- if (task->data[1] == 0)
+ if (task->tTimer == 0)
{
- task->data[4] = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0);
+ task->tCircle1SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 284, 8, 131, 35, -3, 0);
}
- else if (task->data[1] == 16)
+ else if (task->tTimer == 16)
{
- task->data[5] = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1);
+ task->tCircle2SpriteId = CreateSpiralingLogoCircleSprite(120, 80, 44, 8, 131, 35, -3, 1);
}
- else if (task->data[1] == 32)
+ else if (task->tTimer == 32)
{
- task->data[6] = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2);
+ task->tCircle3SpriteId = CreateSpiralingLogoCircleSprite(121, 80, 164, 8, 131, 35, -3, 2);
task->tState++;
}
- task->data[1]++;
+ task->tTimer++;
return FALSE;
}
@@ -643,7 +667,7 @@ static bool8 CirclesSymmetricSpiralInSeq_End(struct Task *task)
if (!gPaletteFade.active)
{
DestroyLogoCirclesGfx(task);
- DestroyTask(FindTaskIdByFunc(Phase2Task_FrontierCirclesSymmetricSpiralInSeq));
+ DestroyTask(FindTaskIdByFunc(Task_FrontierCirclesSymmetricSpiralInSeq));
}
return FALSE;