diff --git a/graphics/rayquaza_scene/scene_1/kyogre.png b/graphics/rayquaza_scene/scene_1/kyogre.png index 0f2e27e4e..7ed02a134 100644 Binary files a/graphics/rayquaza_scene/scene_1/kyogre.png and b/graphics/rayquaza_scene/scene_1/kyogre.png differ diff --git a/graphics/rayquaza_scene/scene_1/kyogre_fin.png b/graphics/rayquaza_scene/scene_1/kyogre_dorsal_fin.png similarity index 100% rename from graphics/rayquaza_scene/scene_1/kyogre_fin.png rename to graphics/rayquaza_scene/scene_1/kyogre_dorsal_fin.png diff --git a/graphics/rayquaza_scene/scene_1/kyogre_shoulder.png b/graphics/rayquaza_scene/scene_1/kyogre_pectoral_fin.png similarity index 100% rename from graphics/rayquaza_scene/scene_1/kyogre_shoulder.png rename to graphics/rayquaza_scene/scene_1/kyogre_pectoral_fin.png diff --git a/graphics/rayquaza_scene/scene_4/rayquaza2.bin b/graphics/rayquaza_scene/scene_4/orbs.bin similarity index 100% rename from graphics/rayquaza_scene/scene_4/rayquaza2.bin rename to graphics/rayquaza_scene/scene_4/orbs.bin diff --git a/graphics/rayquaza_scene/scene_5/bg.bin b/graphics/rayquaza_scene/scene_5/bg.bin index b9e86b907..22f5530ba 100644 Binary files a/graphics/rayquaza_scene/scene_5/bg.bin and b/graphics/rayquaza_scene/scene_5/bg.bin differ diff --git a/graphics/rayquaza_scene/scene_5/light.bin b/graphics/rayquaza_scene/scene_5/light.bin new file mode 100644 index 000000000..b9e86b907 Binary files /dev/null and b/graphics/rayquaza_scene/scene_5/light.bin differ diff --git a/graphics/rayquaza_scene/scene_5/bg.png b/graphics/rayquaza_scene/scene_5/light.png similarity index 100% rename from graphics/rayquaza_scene/scene_5/bg.png rename to graphics/rayquaza_scene/scene_5/light.png diff --git a/graphics/rayquaza_scene/scene_5/ring.bin b/graphics/rayquaza_scene/scene_5/ring.bin index 22f5530ba..812fda11d 100644 Binary files a/graphics/rayquaza_scene/scene_5/ring.bin and b/graphics/rayquaza_scene/scene_5/ring.bin differ diff --git a/graphics/rayquaza_scene/scene_5/ring_map.bin b/graphics/rayquaza_scene/scene_5/ring_map.bin deleted file mode 100644 index 812fda11d..000000000 Binary files a/graphics/rayquaza_scene/scene_5/ring_map.bin and /dev/null differ diff --git a/include/graphics.h b/include/graphics.h index b6662cbf7..d4e4581c9 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -3313,34 +3313,24 @@ extern const u32 gRaySceneDuoFight_Groudon_Gfx[]; extern const u32 gRaySceneDuoFight_GroudonShoulder_Gfx[]; extern const u32 gRaySceneDuoFight_GroudonClaw_Gfx[]; extern const u32 gRaySceneDuoFight_Kyogre_Gfx[]; -extern const u32 gRaySceneDuoFight_KyogreShoulder_Gfx[]; -extern const u32 gRaySceneDuoFight_KyogreFin_Gfx[]; +extern const u32 gRaySceneDuoFight_KyogrePectoralFin_Gfx[]; +extern const u32 gRaySceneDuoFight_KyogreDorsalFin_Gfx[]; extern const u32 gRaySceneDuoFight_Groudon_Pal[]; extern const u32 gRaySceneDuoFight_Kyogre_Pal[]; +extern const u32 gRaySceneDuoFight_Clouds_Gfx[]; +extern const u32 gRaySceneDuoFight_Clouds_Pal[]; +extern const u32 gRaySceneDuoFight_Clouds1_Tilemap[]; +extern const u32 gRaySceneDuoFight_Clouds2_Tilemap[]; +extern const u32 gRaySceneDuoFight_Clouds3_Tilemap[]; extern const u32 gRaySceneTakesFlight_Smoke_Gfx[]; extern const u32 gRaySceneTakesFlight_Smoke_Pal[]; extern const u32 gRaySceneTakesFlight_Rayquaza_Pal[]; -extern const u32 gRaySceneDescends_Rayquaza_Gfx[]; -extern const u32 gRaySceneDescends_RayquazaTail_Gfx[]; -extern const u32 gRaySceneChasesAway_Groudon_Gfx[]; -extern const u32 gRaySceneChasesAway_GroudonTail_Gfx[]; -extern const u32 gRaySceneChasesAway_Kyogre_Gfx[]; -extern const u32 gRaySceneChasesAway_Rayquaza_Gfx[]; -extern const u32 gRaySceneChasesAway_RayquazaTail_Gfx[]; extern const u32 gRaySceneTakesFlight_Bg_Gfx[]; extern const u32 gRaySceneTakesFlight_Bg_Tilemap[]; extern const u32 gRaySceneTakesFlight_Rayquaza_Gfx[]; extern const u32 gRaySceneTakesFlight_Rayquaza_Tilemap[]; -extern const u32 gRaySceneChasesAway_KyogreSplash_Gfx[]; -extern const u32 gRaySceneChasesAway_Groudon_Pal[]; -extern const u32 gRaySceneChasesAway_Kyogre_Pal[]; -extern const u32 gRaySceneChasesAway_Rayquaza_Pal[]; -extern const u32 gRaySceneChasesAway_KyogreSplash_Pal[]; -extern const u32 gRaySceneDuoFight_Clouds_Gfx[]; -extern const u32 gRaySceneDuoFight_Clouds_Pal[]; -extern const u32 gRaySceneDuoFight_Clouds2_Tilemap[]; -extern const u32 gRaySceneDuoFight_Clouds1_Tilemap[]; -extern const u32 gRaySceneDuoFight_Clouds3_Tilemap[]; +extern const u32 gRaySceneDescends_Rayquaza_Gfx[]; +extern const u32 gRaySceneDescends_RayquazaTail_Gfx[]; extern const u32 gRaySceneDescends_Light_Gfx[]; extern const u32 gRaySceneDescends_Light_Tilemap[]; extern const u32 gRaySceneDescends_Bg_Gfx[]; @@ -3349,16 +3339,26 @@ extern const u32 gRaySceneDescends_Bg_Pal[]; extern const u32 gRaySceneCharges_Rayquaza_Gfx[]; extern const u32 gRaySceneCharges_Streaks_Gfx[]; extern const u32 gRaySceneCharges_Bg_Gfx[]; -extern const u32 gRaySceneCharges_Rayquaza2_Tilemap[]; +extern const u32 gRaySceneCharges_Orbs_Tilemap[]; extern const u32 gRaySceneCharges_Rayquaza_Tilemap[]; extern const u32 gRaySceneCharges_Streaks_Tilemap[]; extern const u32 gRaySceneCharges_Bg_Tilemap[]; extern const u32 gRaySceneCharges_Bg_Pal[]; -extern const u32 gRaySceneChasesAway_Ring_Tilemap[]; +extern const u32 gRaySceneChasesAway_Groudon_Gfx[]; +extern const u32 gRaySceneChasesAway_GroudonTail_Gfx[]; +extern const u32 gRaySceneChasesAway_Kyogre_Gfx[]; +extern const u32 gRaySceneChasesAway_Rayquaza_Gfx[]; +extern const u32 gRaySceneChasesAway_RayquazaTail_Gfx[]; +extern const u32 gRaySceneChasesAway_KyogreSplash_Gfx[]; +extern const u32 gRaySceneChasesAway_Groudon_Pal[]; +extern const u32 gRaySceneChasesAway_Kyogre_Pal[]; +extern const u32 gRaySceneChasesAway_Rayquaza_Pal[]; +extern const u32 gRaySceneChasesAway_KyogreSplash_Pal[]; extern const u32 gRaySceneChasesAway_Bg_Tilemap[]; -extern const u32 gRaySceneChasesAway_Ring_Map[]; +extern const u32 gRaySceneChasesAway_Light_Tilemap[]; +extern const u32 gRaySceneChasesAway_Ring_Tilemap[]; extern const u32 gRaySceneChasesAway_Bg_Pal[]; -extern const u32 gRaySceneChasesAway_Bg_Gfx[]; +extern const u32 gRaySceneChasesAway_Light_Gfx[]; extern const u32 gRaySceneChasesAway_Ring_Gfx[]; // Pokeballs diff --git a/src/data/graphics/rayquaza_scene.h b/src/data/graphics/rayquaza_scene.h index 190fb4b3b..633213db8 100644 --- a/src/data/graphics/rayquaza_scene.h +++ b/src/data/graphics/rayquaza_scene.h @@ -1,17 +1,17 @@ // Scene 1 (RAY_ANIM_DUO_FIGHT / RAY_ANIM_DUO_FIGHT_PRE) -const u32 gRaySceneDuoFight_Groudon_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon.4bpp.lz"); -const u32 gRaySceneDuoFight_GroudonShoulder_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon_shoulder.4bpp.lz"); -const u32 gRaySceneDuoFight_GroudonClaw_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon_claw.4bpp.lz"); -const u32 gRaySceneDuoFight_Kyogre_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre.4bpp.lz"); -const u32 gRaySceneDuoFight_KyogreShoulder_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre_shoulder.4bpp.lz"); -const u32 gRaySceneDuoFight_KyogreFin_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre_fin.4bpp.lz"); -const u32 gRaySceneDuoFight_Groudon_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon.gbapal.lz"); -const u32 gRaySceneDuoFight_Kyogre_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre.gbapal.lz"); -const u32 gRaySceneDuoFight_Clouds_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds.4bpp.lz"); -const u32 gRaySceneDuoFight_Clouds_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds.gbapal.lz"); // pal 1 clouds, pal 2 rain -const u32 gRaySceneDuoFight_Clouds1_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds1.bin.lz"); -const u32 gRaySceneDuoFight_Clouds2_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds2.bin.lz"); -const u32 gRaySceneDuoFight_Clouds3_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds3.bin.lz"); +const u32 gRaySceneDuoFight_Groudon_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon.4bpp.lz"); +const u32 gRaySceneDuoFight_GroudonShoulder_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon_shoulder.4bpp.lz"); +const u32 gRaySceneDuoFight_GroudonClaw_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon_claw.4bpp.lz"); +const u32 gRaySceneDuoFight_Kyogre_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre.4bpp.lz"); +const u32 gRaySceneDuoFight_KyogrePectoralFin_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre_pectoral_fin.4bpp.lz"); +const u32 gRaySceneDuoFight_KyogreDorsalFin_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre_dorsal_fin.4bpp.lz"); +const u32 gRaySceneDuoFight_Groudon_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon.gbapal.lz"); +const u32 gRaySceneDuoFight_Kyogre_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre.gbapal.lz"); +const u32 gRaySceneDuoFight_Clouds_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds.4bpp.lz"); +const u32 gRaySceneDuoFight_Clouds_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds.gbapal.lz"); // pal 1 clouds, pal 2 rain +const u32 gRaySceneDuoFight_Clouds1_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds1.bin.lz"); +const u32 gRaySceneDuoFight_Clouds2_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds2.bin.lz"); +const u32 gRaySceneDuoFight_Clouds3_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds3.bin.lz"); // Scene 2 (RAY_ANIM_TAKES_FLIGHT) const u32 gRaySceneTakesFlight_Smoke_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/smoke.4bpp.lz"); @@ -34,14 +34,14 @@ const u32 gRaySceneDescends_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_s const u32 gRaySceneDescends_Light_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/light.bin.lz"); // Scene 4 (RAY_ANIM_CHARGES) -const u32 gRaySceneCharges_Bg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.4bpp.lz"); -const u32 gRaySceneCharges_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.bin.lz"); -const u32 gRaySceneCharges_Streaks_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/streaks.4bpp.lz"); -const u32 gRaySceneCharges_Streaks_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/streaks.bin.lz"); -const u32 gRaySceneCharges_Rayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/rayquaza.4bpp.lz"); -const u32 gRaySceneCharges_Rayquaza_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/rayquaza.bin.lz"); -const u32 gRaySceneCharges_Rayquaza2_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/rayquaza2.bin.lz"); // TODO: Clarify -const u32 gRaySceneCharges_Bg_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.gbapal.lz"); +const u32 gRaySceneCharges_Bg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.4bpp.lz"); +const u32 gRaySceneCharges_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.bin.lz"); +const u32 gRaySceneCharges_Streaks_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/streaks.4bpp.lz"); +const u32 gRaySceneCharges_Streaks_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/streaks.bin.lz"); +const u32 gRaySceneCharges_Rayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/rayquaza.4bpp.lz"); +const u32 gRaySceneCharges_Rayquaza_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/rayquaza.bin.lz"); +const u32 gRaySceneCharges_Orbs_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/orbs.bin.lz"); +const u32 gRaySceneCharges_Bg_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.gbapal.lz"); // Scene 5 (RAY_ANIM_CHASES_AWAY) const u32 gRaySceneChasesAway_Groudon_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/groudon.4bpp.lz"); @@ -54,9 +54,9 @@ const u32 gRaySceneChasesAway_Groudon_Pal[] = INCBIN_U32("graphics/rayquaza const u32 gRaySceneChasesAway_Kyogre_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/kyogre.gbapal.lz"); const u32 gRaySceneChasesAway_Rayquaza_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/rayquaza.gbapal.lz"); const u32 gRaySceneChasesAway_KyogreSplash_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/kyogre_splash.gbapal.lz"); -const u32 gRaySceneChasesAway_Bg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/bg.4bpp.lz"); +const u32 gRaySceneChasesAway_Light_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/light.4bpp.lz"); const u32 gRaySceneChasesAway_Ring_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/ring.8bpp.lz"); +const u32 gRaySceneChasesAway_Light_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/light.bin.lz"); const u32 gRaySceneChasesAway_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/bg.bin.lz"); const u32 gRaySceneChasesAway_Ring_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/ring.bin.lz"); -const u32 gRaySceneChasesAway_Ring_Map[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/ring_map.bin.lz"); // TODO: Clarify const u32 gRaySceneChasesAway_Bg_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/bg.gbapal.lz"); diff --git a/src/palette.c b/src/palette.c index 5d605494c..320e11ecc 100644 --- a/src/palette.c +++ b/src/palette.c @@ -52,7 +52,7 @@ static u8 UpdateFastPaletteFade(void); static u8 UpdateHardwarePaletteFade(void); static void UpdateBlendRegisters(void); static bool8 IsSoftwarePaletteFadeFinishing(void); -static void sub_80A2D54(u8 taskId); +static void Task_BlendPalettesGradually(u8 taskId); // palette buffers require alignment with agbcc because // unaligned word reads are issued in BlendPalette otherwise @@ -956,7 +956,7 @@ void BlendPalettesGradually(u32 selectedPalettes, s8 delay, u8 coeff, u8 coeffTa { u8 taskId; - taskId = CreateTask((void *)sub_80A2D54, priority); + taskId = CreateTask((void *)Task_BlendPalettesGradually, priority); gTasks[taskId].tCoeff = coeff; gTasks[taskId].tCoeffTarget = coeffTarget; @@ -981,13 +981,13 @@ void BlendPalettesGradually(u32 selectedPalettes, s8 delay, u8 coeff, u8 coeffTa } // Unused -static bool32 sub_80A2CF8(u8 id) +static bool32 IsBlendPalettesGraduallyTaskActive(u8 id) { int i; for (i = 0; i < NUM_TASKS; i++) if ((gTasks[i].isActive == TRUE) - && (gTasks[i].func == sub_80A2D54) + && (gTasks[i].func == Task_BlendPalettesGradually) && (gTasks[i].tId == id)) return TRUE; @@ -995,20 +995,20 @@ static bool32 sub_80A2CF8(u8 id) } // Unused -static void sub_80A2D34(void) +static void DestroyBlendPalettesGraduallyTask(void) { u8 taskId; while (1) { - taskId = FindTaskIdByFunc(sub_80A2D54); + taskId = FindTaskIdByFunc(Task_BlendPalettesGradually); if (taskId == 0xFF) break; DestroyTask(taskId); } } -static void sub_80A2D54(u8 taskId) +static void Task_BlendPalettesGradually(u8 taskId) { u32 palettes; s16 *data; diff --git a/src/rayquaza_scene.c b/src/rayquaza_scene.c index bd31ec6ef..75dc3f716 100644 --- a/src/rayquaza_scene.c +++ b/src/rayquaza_scene.c @@ -43,21 +43,21 @@ enum RAY_ANIM_END }; -#define TAG_DUOFIGHT_GROUDON 30505 -#define TAG_DUOFIGHT_GROUDON_SHOULDER 30506 -#define TAG_DUOFIGHT_GROUDON_CLAW 30507 -#define TAG_DUOFIGHT_KYOGRE 30508 -#define TAG_DUOFIGHT_KYOGRE_SHOULDER 30509 -#define TAG_DUOFIGHT_KYOGRE_FIN 30510 -#define TAG_FLIGHT_SMOKE 30555 -#define TAG_DESCENDS_RAYQUAZA 30556 -#define TAG_DESCENDS_RAYQUAZA_TAIL 30557 -#define TAG_CHASE_GROUDON 30565 -#define TAG_CHASE_GROUDON_TAIL 30566 -#define TAG_CHASE_KYOGRE 30568 -#define TAG_CHASE_RAYQUAZA 30569 -#define TAG_CHASE_RAYQUAZA_TAIL 30570 -#define TAG_CHASE_SPLASH 30571 +#define TAG_DUOFIGHT_GROUDON 30505 +#define TAG_DUOFIGHT_GROUDON_SHOULDER 30506 +#define TAG_DUOFIGHT_GROUDON_CLAW 30507 +#define TAG_DUOFIGHT_KYOGRE 30508 +#define TAG_DUOFIGHT_KYOGRE_PECTORAL_FIN 30509 +#define TAG_DUOFIGHT_KYOGRE_DORSAL_FIN 30510 +#define TAG_FLIGHT_SMOKE 30555 +#define TAG_DESCENDS_RAYQUAZA 30556 +#define TAG_DESCENDS_RAYQUAZA_TAIL 30557 +#define TAG_CHASE_GROUDON 30565 +#define TAG_CHASE_GROUDON_TAIL 30566 +#define TAG_CHASE_KYOGRE 30568 +#define TAG_CHASE_RAYQUAZA 30569 +#define TAG_CHASE_RAYQUAZA_TAIL 30570 +#define TAG_CHASE_SPLASH 30571 #define MAX_SMOKE 10 @@ -286,7 +286,7 @@ static const struct OamData sOam_32x8 = .affineParam = 0 }; -static const union AnimCmd sSpriteAnim_862A6FC[] = +static const union AnimCmd sAnim_DuoFightPre_Groudon_Head[] = { ANIMCMD_FRAME(0, 30), ANIMCMD_FRAME(64, 30), @@ -295,7 +295,7 @@ static const union AnimCmd sSpriteAnim_862A6FC[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd sSpriteAnim_862A710[] = +static const union AnimCmd sAnim_DuoFightPre_Groudon_Body[] = { ANIMCMD_FRAME(192, 30), ANIMCMD_FRAME(256, 30), @@ -306,8 +306,8 @@ static const union AnimCmd sSpriteAnim_862A710[] = static const union AnimCmd *const sAnims_DuoFightPre_Groudon[] = { - sSpriteAnim_862A6FC, - sSpriteAnim_862A710 + sAnim_DuoFightPre_Groudon_Head, + sAnim_DuoFightPre_Groudon_Body }; static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_Groudon = @@ -321,15 +321,15 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_Groudon = .callback = SpriteCallbackDummy, }; -static const union AnimCmd sAnim_DuoFightPre_GroudonShoulderKyogreFin[] = +static const union AnimCmd sAnim_DuoFightPre_GroudonShoulderKyogreDorsalFin[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd *const sAnims_DuoFightPre_GroudonShoulderKyogreFin[] = +static const union AnimCmd *const sAnims_DuoFightPre_GroudonShoulderKyogreDorsalFin[] = { - sAnim_DuoFightPre_GroudonShoulderKyogreFin + sAnim_DuoFightPre_GroudonShoulderKyogreDorsalFin }; static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_GroudonShoulder = @@ -337,7 +337,7 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_GroudonShoulder = .tileTag = TAG_DUOFIGHT_GROUDON_SHOULDER, .paletteTag = TAG_DUOFIGHT_GROUDON, .oam = &sOam_32x32, - .anims = sAnims_DuoFightPre_GroudonShoulderKyogreFin, + .anims = sAnims_DuoFightPre_GroudonShoulderKyogreDorsalFin, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -365,43 +365,43 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_GroudonClaw = .callback = SpriteCallbackDummy, }; -static const union AnimCmd sSpriteAnim_862A78C[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_TopLeft[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A794[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_TopRight[] = { ANIMCMD_FRAME(8, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A79C[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_FaceLeft[] = { ANIMCMD_FRAME(16, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A7A4[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_FaceRight[] = { ANIMCMD_FRAME(24, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A7AC[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_ChinLeft[] = { ANIMCMD_FRAME(32, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A7B4[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_ChinRight[] = { ANIMCMD_FRAME(40, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A7BC[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_LeftPectoralFin[] = { ANIMCMD_FRAME(48, 36), ANIMCMD_FRAME(64, 36), @@ -410,7 +410,7 @@ static const union AnimCmd sSpriteAnim_862A7BC[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd sSpriteAnim_862A7D0[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_LeftShoulder[] = { ANIMCMD_FRAME(56, 36), ANIMCMD_FRAME(72, 36), @@ -419,7 +419,7 @@ static const union AnimCmd sSpriteAnim_862A7D0[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd sSpriteAnim_862A7E4[] = +static const union AnimCmd sAnim_DuoFightPre_Kyogre_RightShoulder[] = { ANIMCMD_FRAME(96, 36), ANIMCMD_FRAME(104, 36), @@ -428,17 +428,18 @@ static const union AnimCmd sSpriteAnim_862A7E4[] = ANIMCMD_JUMP(0), }; +// Edge of the right pectoral fin is its own sprite (see KyogrePectoralFin) static const union AnimCmd *const sAnims_DuoFightPre_Kyogre[] = { - sSpriteAnim_862A78C, - sSpriteAnim_862A794, - sSpriteAnim_862A79C, - sSpriteAnim_862A7A4, - sSpriteAnim_862A7AC, - sSpriteAnim_862A7B4, - sSpriteAnim_862A7BC, - sSpriteAnim_862A7D0, - sSpriteAnim_862A7E4 + sAnim_DuoFightPre_Kyogre_TopLeft, + sAnim_DuoFightPre_Kyogre_TopRight, + sAnim_DuoFightPre_Kyogre_FaceLeft, + sAnim_DuoFightPre_Kyogre_FaceRight, + sAnim_DuoFightPre_Kyogre_ChinLeft, + sAnim_DuoFightPre_Kyogre_ChinRight, + sAnim_DuoFightPre_Kyogre_LeftPectoralFin, + sAnim_DuoFightPre_Kyogre_LeftShoulder, + sAnim_DuoFightPre_Kyogre_RightShoulder }; static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_Kyogre = @@ -452,7 +453,7 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_Kyogre = .callback = SpriteCallbackDummy, }; -static const union AnimCmd sAnim_DuoFightPre_KyogreShoulder[] = +static const union AnimCmd sAnim_DuoFightPre_KyogrePectoralFin[] = { ANIMCMD_FRAME(0, 36), ANIMCMD_FRAME(2, 36), @@ -461,28 +462,28 @@ static const union AnimCmd sAnim_DuoFightPre_KyogreShoulder[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sAnims_DuoFightPre_KyogreShoulder[] = +static const union AnimCmd *const sAnims_DuoFightPre_KyogrePectoralFin[] = { - sAnim_DuoFightPre_KyogreShoulder + sAnim_DuoFightPre_KyogrePectoralFin }; -static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_KyogreShoulder = +static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_KyogrePectoralFin = { - .tileTag = TAG_DUOFIGHT_KYOGRE_SHOULDER, + .tileTag = TAG_DUOFIGHT_KYOGRE_PECTORAL_FIN, .paletteTag = TAG_DUOFIGHT_KYOGRE, .oam = &sOam_16x8, - .anims = sAnims_DuoFightPre_KyogreShoulder, + .anims = sAnims_DuoFightPre_KyogrePectoralFin, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, }; -static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_KyogreFin = +static const struct SpriteTemplate sSpriteTemplate_DuoFightPre_KyogreDorsalFin = { - .tileTag = TAG_DUOFIGHT_KYOGRE_FIN, + .tileTag = TAG_DUOFIGHT_KYOGRE_DORSAL_FIN, .paletteTag = TAG_DUOFIGHT_KYOGRE, .oam = &sOam_32x32, - .anims = sAnims_DuoFightPre_GroudonShoulderKyogreFin, + .anims = sAnims_DuoFightPre_GroudonShoulderKyogreDorsalFin, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -526,7 +527,7 @@ static const struct BgTemplate sBgTemplates_DuoFight[] = }, }; -static const union AnimCmd sSpriteAnim_862A894[] = +static const union AnimCmd sAnim_DuoFight_Groudon_Head[] = { ANIMCMD_FRAME(0, 20), ANIMCMD_FRAME(64, 20), @@ -535,7 +536,7 @@ static const union AnimCmd sSpriteAnim_862A894[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd sSpriteAnim_862A8A8[] = +static const union AnimCmd sAnim_DuoFight_Groudon_Body[] = { ANIMCMD_FRAME(192, 20), ANIMCMD_FRAME(256, 20), @@ -546,8 +547,8 @@ static const union AnimCmd sSpriteAnim_862A8A8[] = static const union AnimCmd *const sAnims_DuoFight_Groudon[] = { - sSpriteAnim_862A894, - sSpriteAnim_862A8A8 + sAnim_DuoFight_Groudon_Head, + sAnim_DuoFight_Groudon_Body }; static const struct CompressedSpriteSheet sSpriteSheet_DuoFight_Groudon = @@ -571,15 +572,15 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFight_Groudon = .callback = SpriteCallbackDummy, }; -static const union AnimCmd sAnim_DuoFight_GroudonShoulderKyogreFin[] = +static const union AnimCmd sAnim_DuoFight_GroudonShoulderKyogreDorsalFin[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd *const sAnims_DuoFight_GroudonShoulderKyogreFin[] = +static const union AnimCmd *const sAnims_DuoFight_GroudonShoulderKyogreDorsalFin[] = { - sAnim_DuoFight_GroudonShoulderKyogreFin + sAnim_DuoFight_GroudonShoulderKyogreDorsalFin }; static const struct CompressedSpriteSheet sSpriteSheet_DuoFight_GroudonShoulder = @@ -592,7 +593,7 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFight_GroudonShoulder = .tileTag = TAG_DUOFIGHT_GROUDON_SHOULDER, .paletteTag = TAG_DUOFIGHT_GROUDON, .oam = &sOam_32x32, - .anims = sAnims_DuoFight_GroudonShoulderKyogreFin, + .anims = sAnims_DuoFight_GroudonShoulderKyogreDorsalFin, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -625,43 +626,43 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFight_GroudonClaw = .callback = SpriteCallbackDummy, }; -static const union AnimCmd sSpriteAnim_862A944[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_TopLeft[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A94C[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_TopRight[] = { ANIMCMD_FRAME(8, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A954[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_FaceLeft[] = { ANIMCMD_FRAME(16, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A95C[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_FaceRight[] = { ANIMCMD_FRAME(24, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A964[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_ChinLeft[] = { ANIMCMD_FRAME(32, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A96C[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_ChinRight[] = { ANIMCMD_FRAME(40, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862A974[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_LeftPectoralFin[] = { ANIMCMD_FRAME(48, 24), ANIMCMD_FRAME(64, 24), @@ -670,7 +671,7 @@ static const union AnimCmd sSpriteAnim_862A974[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd sSpriteAnim_862A988[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_LeftShoulder[] = { ANIMCMD_FRAME(56, 24), ANIMCMD_FRAME(72, 24), @@ -679,7 +680,7 @@ static const union AnimCmd sSpriteAnim_862A988[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd sSpriteAnim_862A99C[] = +static const union AnimCmd sAnim_DuoFight_Kyogre_RightShoulder[] = { ANIMCMD_FRAME(96, 24), ANIMCMD_FRAME(104, 24), @@ -690,15 +691,15 @@ static const union AnimCmd sSpriteAnim_862A99C[] = static const union AnimCmd *const sAnims_DuoFight_Kyogre[] = { - sSpriteAnim_862A944, - sSpriteAnim_862A94C, - sSpriteAnim_862A954, - sSpriteAnim_862A95C, - sSpriteAnim_862A964, - sSpriteAnim_862A96C, - sSpriteAnim_862A974, - sSpriteAnim_862A988, - sSpriteAnim_862A99C + sAnim_DuoFight_Kyogre_TopLeft, + sAnim_DuoFight_Kyogre_TopRight, + sAnim_DuoFight_Kyogre_FaceLeft, + sAnim_DuoFight_Kyogre_FaceRight, + sAnim_DuoFight_Kyogre_ChinLeft, + sAnim_DuoFight_Kyogre_ChinRight, + sAnim_DuoFight_Kyogre_LeftPectoralFin, + sAnim_DuoFight_Kyogre_LeftShoulder, + sAnim_DuoFight_Kyogre_RightShoulder }; static const struct CompressedSpriteSheet sSpriteSheet_DuoFight_Kyogre = @@ -722,7 +723,7 @@ static const struct SpriteTemplate sSpriteTemplate_DuoFight_Kyogre = .callback = SpriteCallbackDummy, }; -static const union AnimCmd sAnim_DuoFight_KyogreShoulder[] = +static const union AnimCmd sAnim_DuoFight_KyogrePectoralFin[] = { ANIMCMD_FRAME(0, 24), ANIMCMD_FRAME(2, 24), @@ -731,38 +732,38 @@ static const union AnimCmd sAnim_DuoFight_KyogreShoulder[] = ANIMCMD_JUMP(0), }; -static const union AnimCmd *const sAnims_DuoFight_KyogreShoulder[] = +static const union AnimCmd *const sAnims_DuoFight_KyogrePectoralFin[] = { - sAnim_DuoFight_KyogreShoulder + sAnim_DuoFight_KyogrePectoralFin }; -static const struct CompressedSpriteSheet sSpriteSheet_DuoFight_KyogreShoulder = +static const struct CompressedSpriteSheet sSpriteSheet_DuoFight_KyogrePectoralFin = { - gRaySceneDuoFight_KyogreShoulder_Gfx, 0xC0, TAG_DUOFIGHT_KYOGRE_SHOULDER + gRaySceneDuoFight_KyogrePectoralFin_Gfx, 0xC0, TAG_DUOFIGHT_KYOGRE_PECTORAL_FIN }; -static const struct SpriteTemplate sSpriteTemplate_DuoFight_KyogreShoulder = +static const struct SpriteTemplate sSpriteTemplate_DuoFight_KyogrePectoralFin = { - .tileTag = TAG_DUOFIGHT_KYOGRE_SHOULDER, + .tileTag = TAG_DUOFIGHT_KYOGRE_PECTORAL_FIN, .paletteTag = TAG_DUOFIGHT_KYOGRE, .oam = &sOam_16x8, - .anims = sAnims_DuoFight_KyogreShoulder, + .anims = sAnims_DuoFight_KyogrePectoralFin, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, }; -static const struct CompressedSpriteSheet sSpriteSheet_DuoFight_KyogreFin = +static const struct CompressedSpriteSheet sSpriteSheet_DuoFight_KyogreDorsalFin = { - gRaySceneDuoFight_KyogreFin_Gfx, 0x200, TAG_DUOFIGHT_KYOGRE_FIN + gRaySceneDuoFight_KyogreDorsalFin_Gfx, 0x200, TAG_DUOFIGHT_KYOGRE_DORSAL_FIN }; -static const struct SpriteTemplate sSpriteTemplate_DuoFight_KyogreFin = +static const struct SpriteTemplate sSpriteTemplate_DuoFight_KyogreDorsalFin = { - .tileTag = TAG_DUOFIGHT_KYOGRE_FIN, + .tileTag = TAG_DUOFIGHT_KYOGRE_DORSAL_FIN, .paletteTag = TAG_DUOFIGHT_KYOGRE, .oam = &sOam_32x32, - .anims = sAnims_DuoFight_GroudonShoulderKyogreFin, + .anims = sAnims_DuoFight_GroudonShoulderKyogreDorsalFin, .images = NULL, .affineAnims = gDummySpriteAffineAnimTable, .callback = SpriteCallbackDummy, @@ -999,13 +1000,13 @@ static const struct BgTemplate sBgTemplates_Charges[] = } }; -static const union AnimCmd sSpriteAnim_862AB54[] = +static const union AnimCmd sAnim_ChasesAway_Groudon_Still[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862AB5C[] = +static const union AnimCmd sAnim_ChasesAway_Groudon_Moving[] = { ANIMCMD_FRAME(0, 48), ANIMCMD_FRAME(64, 32), @@ -1016,8 +1017,8 @@ static const union AnimCmd sSpriteAnim_862AB5C[] = static const union AnimCmd *const sAnims_ChasesAway_Groudon[] = { - sSpriteAnim_862AB54, - sSpriteAnim_862AB5C + sAnim_ChasesAway_Groudon_Still, + sAnim_ChasesAway_Groudon_Moving }; static const union AnimCmd sAnim_ChasesAway_GroudonTail[] = @@ -1031,19 +1032,19 @@ static const union AnimCmd *const sAnims_ChasesAway_GroudonTail[] = sAnim_ChasesAway_GroudonTail, }; -static const union AnimCmd sSpriteAnim_862AB84[] = +static const union AnimCmd sAnim_ChasesAway_Kyogre_Front[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862AB8C[] = +static const union AnimCmd sAnim_ChasesAway_Kyogre_Back[] = { ANIMCMD_FRAME(16, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862AB94[] = +static const union AnimCmd sAnim_ChasesAway_Kyogre_Tail[] = { ANIMCMD_FRAME(32, 1), ANIMCMD_END @@ -1051,30 +1052,30 @@ static const union AnimCmd sSpriteAnim_862AB94[] = static const union AnimCmd *const sAnims_ChasesAway_Kyogre[] = { - sSpriteAnim_862AB84, - sSpriteAnim_862AB8C, - sSpriteAnim_862AB94 + sAnim_ChasesAway_Kyogre_Front, + sAnim_ChasesAway_Kyogre_Back, + sAnim_ChasesAway_Kyogre_Tail }; -static const union AnimCmd sSpriteAnim_862ABA8[] = +static const union AnimCmd sAnim_ChasesAway_Rayquaza_FlyingDown[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862ABB0[] = +static const union AnimCmd sAnim_ChasesAway_Rayquaza_Arriving[] = { ANIMCMD_FRAME(64, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862ABB8[] = +static const union AnimCmd sAnim_ChasesAway_Rayquaza_Floating[] = { ANIMCMD_FRAME(128, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862ABC0[] = +static const union AnimCmd sAnim_ChasesAway_Rayquaza_Shouting[] = { ANIMCMD_FRAME(192, 1), ANIMCMD_END @@ -1082,31 +1083,31 @@ static const union AnimCmd sSpriteAnim_862ABC0[] = static const union AnimCmd *const sAnims_ChasesAway_Rayquaza[] = { - sSpriteAnim_862ABA8, - sSpriteAnim_862ABB0, - sSpriteAnim_862ABB8, - sSpriteAnim_862ABC0 + sAnim_ChasesAway_Rayquaza_FlyingDown, + sAnim_ChasesAway_Rayquaza_Arriving, + sAnim_ChasesAway_Rayquaza_Floating, + sAnim_ChasesAway_Rayquaza_Shouting }; -static const union AnimCmd sSpriteAnim_862ABD8[] = +static const union AnimCmd sAnim_ChasesAway_RayquazaTail_FlyingDown[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862ABE0[] = +static const union AnimCmd sAnim_ChasesAway_RayquazaTail_Arriving[] = { ANIMCMD_FRAME(16, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862ABE8[] = +static const union AnimCmd sAnim_ChasesAway_RayquazaTail_Floating[] = { ANIMCMD_FRAME(32, 1), ANIMCMD_END }; -static const union AnimCmd sSpriteAnim_862ABF0[] = +static const union AnimCmd sAnim_ChasesAway_RayquazaTail_Shouting[] = { ANIMCMD_FRAME(48, 1), ANIMCMD_END @@ -1114,10 +1115,10 @@ static const union AnimCmd sSpriteAnim_862ABF0[] = static const union AnimCmd *const sAnims_ChasesAway_RayquazaTail[] = { - sSpriteAnim_862ABD8, - sSpriteAnim_862ABE0, - sSpriteAnim_862ABE8, - sSpriteAnim_862ABF0 + sAnim_ChasesAway_RayquazaTail_FlyingDown, + sAnim_ChasesAway_RayquazaTail_Arriving, + sAnim_ChasesAway_RayquazaTail_Floating, + sAnim_ChasesAway_RayquazaTail_Shouting }; static const union AnimCmd sAnim_ChasesAway_KyogreSplash[] = @@ -1369,7 +1370,10 @@ static void ResetWindowDimensions(void) SetGpuReg(REG_OFFSET_WINOUT, WINOUT_WIN01_ALL); } -#define tCounter data[0] + +// RAY_ANIM_DUO_FIGHT / RAY_ANIM_DUO_FIGHT_PRE + +#define tTimer data[0] #define tHelperTaskId data[1] #define tGroudonSpriteId data[2] #define tKyogreSpriteId data[3] @@ -1384,18 +1388,18 @@ static void Task_HandleDuoFightPre(u8 taskId) DuoFight_AnimateRain(); if (!gPaletteFade.active) { - s16 counter = tCounter; - if (counter == 64) + s16 frame = tTimer; + if (frame == 64) { DuoFight_Lightning1(); } - else if (counter == 144) + else if (frame == 144) { DuoFight_Lightning2(); } else { - switch (counter) + switch (frame) { case 328: DuoFightEnd(taskId, 0); @@ -1406,7 +1410,7 @@ static void Task_HandleDuoFightPre(u8 taskId) } } - tCounter++; + tTimer++; } } @@ -1479,8 +1483,8 @@ static u8 DuoFightPre_CreateKyogreSprites(void) data[2] |= CreateSprite(&sSpriteTemplate_DuoFightPre_Kyogre, 104, 128, 2); data[3] = CreateSprite(&sSpriteTemplate_DuoFightPre_Kyogre, 136, 128, 2) << 8; data[3] |= CreateSprite(&sSpriteTemplate_DuoFightPre_Kyogre, 184, 128, 0); - data[4] = CreateSprite(&sSpriteTemplate_DuoFightPre_KyogreShoulder, 208, 132, 0) << 8; - data[4] |= CreateSprite(&sSpriteTemplate_DuoFightPre_KyogreFin, 200, 120, 1); + data[4] = CreateSprite(&sSpriteTemplate_DuoFightPre_KyogrePectoralFin, 208, 132, 0) << 8; + data[4] |= CreateSprite(&sSpriteTemplate_DuoFightPre_KyogreDorsalFin, 200, 120, 1); StartSpriteAnim(&gSprites[data[0] >> 8], 1); StartSpriteAnim(&gSprites[data[0] & 0xFF], 2); @@ -1594,8 +1598,8 @@ static void LoadDuoFightSceneGfx(void) LoadCompressedSpriteSheet(&sSpriteSheet_DuoFight_GroudonShoulder); LoadCompressedSpriteSheet(&sSpriteSheet_DuoFight_GroudonClaw); LoadCompressedSpriteSheet(&sSpriteSheet_DuoFight_Kyogre); - LoadCompressedSpriteSheet(&sSpriteSheet_DuoFight_KyogreShoulder); - LoadCompressedSpriteSheet(&sSpriteSheet_DuoFight_KyogreFin); + LoadCompressedSpriteSheet(&sSpriteSheet_DuoFight_KyogrePectoralFin); + LoadCompressedSpriteSheet(&sSpriteSheet_DuoFight_KyogreDorsalFin); LoadCompressedSpritePalette(&sSpritePal_DuoFight_Groudon); LoadCompressedSpritePalette(&sSpritePal_DuoFight_Kyogre); } @@ -1608,7 +1612,7 @@ static void Task_DuoFightAnim(u8 taskId) LoadDuoFightSceneGfx(); CpuFastFill16(0, gScanlineEffectRegBuffers, sizeof(gScanlineEffectRegBuffers)); ScanlineEffect_SetParams(sScanlineParams_DuoFight_Clouds); - tCounter = 0; + tTimer = 0; tHelperTaskId = CreateTask(Task_DuoFight_AnimateClouds, 0); if (sRayScene->animId == RAY_ANIM_DUO_FIGHT_PRE) { @@ -1695,22 +1699,22 @@ static void Task_HandleDuoFight(u8 taskId) DuoFight_AnimateRain(); if (!gPaletteFade.active) { - s16 counter = tCounter; - if (counter == 32 || counter == 112) + s16 frame = tTimer; + if (frame == 32 || frame == 112) { DuoFight_Lightning1(); } - else if (counter == 216) + else if (frame == 216) { DuoFight_Lightning2(); } - else if (counter == 220) + else if (frame == 220) { DuoFight_LightningLong(); } else { - switch (counter) + switch (frame) { case 412: DuoFightEnd(taskId, 2); @@ -1726,7 +1730,7 @@ static void Task_HandleDuoFight(u8 taskId) } } - tCounter++; + tTimer++; } } @@ -1771,10 +1775,10 @@ static void DuoFight_PanOffScene(u8 taskId) if (GetBgY(1) == 0 || bgY > 0x8000) ChangeBgY(1, 0x400, 2); - if (tCounter != 16) + if (tTimer != 16) { - tCounter++; - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16 - tCounter, tCounter)); + tTimer++; + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16 - tTimer, tTimer)); } } @@ -1797,7 +1801,7 @@ static void Task_DuoFightEnd(u8 taskId) ScanlineEffect_Stop(); ResetSpriteData(); FreeAllSpritePalettes(); - tCounter = 0; + tTimer = 0; gTasks[taskId].func = Task_SetNextAnim; } } @@ -1883,8 +1887,8 @@ static u8 DuoFight_CreateKyogreSprites(void) data[2] |= CreateSprite(&sSpriteTemplate_DuoFight_Kyogre, 94, 128, 2); data[3] = CreateSprite(&sSpriteTemplate_DuoFight_Kyogre, 126, 128, 2) << 8; data[3] |= CreateSprite(&sSpriteTemplate_DuoFight_Kyogre, 174, 128, 0); - data[4] = CreateSprite(&sSpriteTemplate_DuoFight_KyogreShoulder, 198, 132, 0) << 8; - data[4] |= CreateSprite(&sSpriteTemplate_DuoFight_KyogreFin, 190, 120, 1); + data[4] = CreateSprite(&sSpriteTemplate_DuoFight_KyogrePectoralFin, 198, 132, 0) << 8; + data[4] |= CreateSprite(&sSpriteTemplate_DuoFight_KyogreDorsalFin, 190, 120, 1); StartSpriteAnim(&gSprites[data[0] >> 8], 1); StartSpriteAnim(&gSprites[data[0] & 0xFF], 2); @@ -1978,7 +1982,7 @@ static void DuoFight_SlideKyogreDown(struct Sprite *sprite) } } -#undef tCounter +#undef tTimer #undef tHelperTaskId #undef tGroudonSpriteId #undef tKyogreSpriteId @@ -1987,6 +1991,9 @@ static void DuoFight_SlideKyogreDown(struct Sprite *sprite) #undef sGroudonShoulderSpriteId #undef sGroudonClawSpriteId + +// RAY_ANIM_TAKES_FLIGHT + #define tState data[0] #define tTimer data[1] #define tScale data[2] @@ -2194,6 +2201,9 @@ static void SpriteCB_TakesFlight_Smoke(struct Sprite *sprite) #undef sSmokeId #undef sTimer + +// RAY_ANIM_DESCENDS + static void InitDescendsSceneBgs(void) { ResetVramOamAndBgCntRegs(); @@ -2441,6 +2451,9 @@ static void SpriteCB_Descends_Rayquaza(struct Sprite *sprite) #undef sXMovePeriod #undef sYMovePeriod + +// RAY_ANIM_CHARGES + static void InitChargesSceneBgs(void) { ResetVramOamAndBgCntRegs(); @@ -2471,7 +2484,7 @@ static void LoadChargesSceneGfx(void) DecompressAndCopyTileDataToVram(3, gRaySceneCharges_Bg_Gfx, 0, 0, 0); while (FreeTempTileDataBuffersIfPossible()) ; - LZDecompressWram(gRaySceneCharges_Rayquaza2_Tilemap, sRayScene->tilemapBuffers[0]); + LZDecompressWram(gRaySceneCharges_Orbs_Tilemap, sRayScene->tilemapBuffers[0]); LZDecompressWram(gRaySceneCharges_Rayquaza_Tilemap, sRayScene->tilemapBuffers[1]); LZDecompressWram(gRaySceneCharges_Streaks_Tilemap, sRayScene->tilemapBuffers[2]); LZDecompressWram(gRaySceneCharges_Bg_Tilemap, sRayScene->tilemapBuffers[3]); @@ -2627,6 +2640,9 @@ static void Task_RayChargesEnd(u8 taskId) #undef tRayquazaTaskId + +// RAY_ANIM_CHASES_AWAY + static void InitChasesAwaySceneBgs(void) { ResetVramOamAndBgCntRegs(); @@ -2650,12 +2666,12 @@ static void LoadChasesAwaySceneGfx(void) { ResetTempTileDataBuffers(); DecompressAndCopyTileDataToVram(2, gRaySceneChasesAway_Ring_Gfx, 0, 0, 0); - DecompressAndCopyTileDataToVram(0, gRaySceneChasesAway_Bg_Gfx, 0, 0, 0); + DecompressAndCopyTileDataToVram(0, gRaySceneChasesAway_Light_Gfx, 0, 0, 0); while (FreeTempTileDataBuffersIfPossible()) ; - LZDecompressWram(gRaySceneChasesAway_Ring_Tilemap, sRayScene->tilemapBuffers[1]); - LZDecompressWram(gRaySceneChasesAway_Bg_Tilemap, sRayScene->tilemapBuffers[0]); - LZDecompressWram(gRaySceneChasesAway_Ring_Map, sRayScene->tilemapBuffers[2]); + LZDecompressWram(gRaySceneChasesAway_Bg_Tilemap, sRayScene->tilemapBuffers[1]); + LZDecompressWram(gRaySceneChasesAway_Light_Tilemap, sRayScene->tilemapBuffers[0]); + LZDecompressWram(gRaySceneChasesAway_Ring_Tilemap, sRayScene->tilemapBuffers[2]); LoadCompressedPalette(gRaySceneChasesAway_Bg_Pal, 0, 0x60); LoadCompressedSpriteSheet(&sSpriteSheet_ChasesAway_Groudon); LoadCompressedSpriteSheet(&sSpriteSheet_ChasesAway_GroudonTail);