Credits overworld pan sequence doc
This commit is contained in:
@@ -3,4 +3,20 @@
|
|||||||
|
|
||||||
extern bool8 gHasHallOfFameRecords;
|
extern bool8 gHasHallOfFameRecords;
|
||||||
|
|
||||||
|
#define CREDITSOVWLDCMD_FB 0xFB
|
||||||
|
#define CREDITSOVWLDCMD_FC 0xFC
|
||||||
|
#define CREDITSOVWLDCMD_END 0xFD
|
||||||
|
#define CREDITSOVWLDCMD_LOADMAP 0xFE
|
||||||
|
#define CREDITSOVWLDCMD_FF 0xFF
|
||||||
|
|
||||||
|
#define CREDITSOVWLDLOADMAP(_map, _x, _y, _delay) \
|
||||||
|
{ CREDITSOVWLDCMD_LOADMAP, MAP_GROUP(_map), MAP_NUM(_map) }, \
|
||||||
|
{ _x, _y, _delay }
|
||||||
|
|
||||||
|
#define CREDITSOVWLDSCROLL(_xspeed, _yspeed, _length) \
|
||||||
|
{ _xspeed, _yspeed, _length }
|
||||||
|
|
||||||
|
#define CREDITSOVWLDEND \
|
||||||
|
{ CREDITSOVWLDCMD_END, CREDITSOVWLDCMD_END, CREDITSOVWLDCMD_END }
|
||||||
|
|
||||||
#endif //GUARD_CREDITS_H
|
#endif //GUARD_CREDITS_H
|
||||||
|
|||||||
+40
-52
@@ -1,6 +1,7 @@
|
|||||||
#include "global.h"
|
#include "global.h"
|
||||||
#include "malloc.h"
|
#include "malloc.h"
|
||||||
#include "bg.h"
|
#include "bg.h"
|
||||||
|
#include "credits.h"
|
||||||
#include "palette.h"
|
#include "palette.h"
|
||||||
#include "gpu_regs.h"
|
#include "gpu_regs.h"
|
||||||
#include "task.h"
|
#include "task.h"
|
||||||
@@ -563,94 +564,81 @@ static const struct SpriteTemplate sGroundSpriteTemplate_Static = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_Route23[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_Route23[] = {
|
||||||
{ 0x00fe, MAP_GROUP(ROUTE23), MAP_NUM(ROUTE23) },
|
CREDITSOVWLDLOADMAP(ROUTE23, 11, 107, 1),
|
||||||
{ 0x000b, 0x006b, 0x0001 },
|
CREDITSOVWLDSCROLL(0, 1, 0x0500), // Scroll down
|
||||||
{ 0x0000, 0x0001, 0x0500 }, // Scroll down
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_ViridianCity[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_ViridianCity[] = {
|
||||||
{ 0x00fe, MAP_GROUP(VIRIDIAN_CITY), MAP_NUM(VIRIDIAN_CITY) },
|
CREDITSOVWLDLOADMAP(VIRIDIAN_CITY, 30, 34, 1),
|
||||||
{ 0x001e, 0x0022, 0x0001 },
|
CREDITSOVWLDSCROLL(0, -1, 0x0500), // Scroll up
|
||||||
{ 0x0000, 0xffff, 0x0500 }, // Scroll up
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_PewterCity[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_PewterCity[] = {
|
||||||
{ 0x00fe, MAP_GROUP(PEWTER_CITY), MAP_NUM(PEWTER_CITY) },
|
CREDITSOVWLDLOADMAP(PEWTER_CITY, 20, 26, 1),
|
||||||
{ 0x0014, 0x001a, 0x0001 },
|
CREDITSOVWLDSCROLL(0, -1, 0x0500), // Scroll up
|
||||||
{ 0x0000, 0xffff, 0x0500 }, // Scroll up
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_CeruleanCity[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_CeruleanCity[] = {
|
||||||
{ 0x00fe, MAP_GROUP(CERULEAN_CITY), MAP_NUM(CERULEAN_CITY) },
|
CREDITSOVWLDLOADMAP(CERULEAN_CITY, 8, 6, 1),
|
||||||
{ 0x0008, 0x0006, 0x0001 },
|
CREDITSOVWLDSCROLL(1, 1, 0x0500), // Scroll right and down
|
||||||
{ 0x0001, 0x0001, 0x0500 }, // Scroll right and down
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_Route25[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_Route25[] = {
|
||||||
{ 0x00fe, MAP_GROUP(ROUTE25), MAP_NUM(ROUTE25) },
|
CREDITSOVWLDLOADMAP(ROUTE25, 25, 6, 1),
|
||||||
{ 0x0019, 0x0006, 0x0001 },
|
CREDITSOVWLDSCROLL(1, 0, 0x0500), // Scroll right
|
||||||
{ 0x0001, 0x0000, 0x0500 }, // Scroll right
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_VermilionCity[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_VermilionCity[] = {
|
||||||
{ 0x00fe, MAP_GROUP(VERMILION_CITY), MAP_NUM(VERMILION_CITY) },
|
CREDITSOVWLDLOADMAP(VERMILION_CITY, 9, 7, 1),
|
||||||
{ 0x0009, 0x0007, 0x0001 },
|
CREDITSOVWLDSCROLL(1, 1, 0x0500), // Scroll right and down
|
||||||
{ 0x0001, 0x0001, 0x0500 }, // Scroll right and down
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_Route10[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_Route10[] = {
|
||||||
{ 0x00fe, MAP_GROUP(ROUTE10), MAP_NUM(ROUTE10) },
|
CREDITSOVWLDLOADMAP(ROUTE10, 11, 68, 1),
|
||||||
{ 0x000b, 0x0044, 0x0001 },
|
CREDITSOVWLDSCROLL(0, 1, 0x0500), // Scroll down
|
||||||
{ 0x0000, 0x0001, 0x0500 }, // Scroll down
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_CeladonCity[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_CeladonCity[] = {
|
||||||
{ 0x00fe, MAP_GROUP(CELADON_CITY), MAP_NUM(CELADON_CITY) },
|
CREDITSOVWLDLOADMAP(CELADON_CITY, 48, 16, 1),
|
||||||
{ 0x0030, 0x0010, 0x0001 },
|
CREDITSOVWLDSCROLL(-1, 0, 0x0500), // Scroll left
|
||||||
{ 0xffff, 0x0000, 0x0500 }, // Scroll left
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_SaffronCity[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_SaffronCity[] = {
|
||||||
{ 0x00fe, MAP_GROUP(SAFFRON_CITY), MAP_NUM(SAFFRON_CITY) },
|
CREDITSOVWLDLOADMAP(SAFFRON_CITY, 39, 5, 1),
|
||||||
{ 0x0027, 0x0005, 0x0001 },
|
CREDITSOVWLDSCROLL(0, 1, 0x0500), // Scroll down
|
||||||
{ 0x0000, 0x0001, 0x0500 }, // Scroll down
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_Route17[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_Route17[] = {
|
||||||
{ 0x00fe, MAP_GROUP(ROUTE17), MAP_NUM(ROUTE17) },
|
CREDITSOVWLDLOADMAP(ROUTE17, 7, 43, 1),
|
||||||
{ 0x0007, 0x002b, 0x0001 },
|
CREDITSOVWLDSCROLL(0, 1, 0x0500), // Scroll down
|
||||||
{ 0x0000, 0x0001, 0x0500 }, // Scroll down
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_FuchsiaCity[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_FuchsiaCity[] = {
|
||||||
{ 0x00fe, MAP_GROUP(FUCHSIA_CITY), MAP_NUM(FUCHSIA_CITY) },
|
CREDITSOVWLDLOADMAP(FUCHSIA_CITY, 28, 5, 1),
|
||||||
{ 0x001c, 0x0005, 0x0001 },
|
CREDITSOVWLDSCROLL(0, 1, 0x0500), // Scroll down
|
||||||
{ 0x0000, 0x0001, 0x0500 }, // Scroll down
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_CinnabarIsland[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_CinnabarIsland[] = {
|
||||||
{ 0x00fe, MAP_GROUP(CINNABAR_ISLAND), MAP_NUM(CINNABAR_ISLAND) },
|
CREDITSOVWLDLOADMAP(CINNABAR_ISLAND, 13, 17, 1),
|
||||||
{ 0x000d, 0x0011, 0x0001 },
|
CREDITSOVWLDSCROLL(0, -1, 0x0500), // Scroll up
|
||||||
{ 0x0000, 0xffff, 0x0500 }, // Scroll up
|
CREDITSOVWLDEND
|
||||||
{ 0x00fd, 0x00fd, 0x00fd }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd sOverworldCmd_Route21[] = {
|
static const struct CreditsOverworldCmd sOverworldCmd_Route21[] = {
|
||||||
{ 0x00fe, MAP_GROUP(ROUTE21_NORTH), MAP_NUM(ROUTE21_NORTH) },
|
CREDITSOVWLDLOADMAP(ROUTE21_NORTH, 8, 20, 1),
|
||||||
{ 0x0008, 0x0014, 0x0001 },
|
CREDITSOVWLDSCROLL(0, -1, 0x0500), // Scroll up
|
||||||
{ 0x0000, 0xffff, 0x0500 }, // Scroll up
|
CREDITSOVWLDEND,
|
||||||
{ 0x00fd, 0x00fd, 0x00fd },
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct CreditsOverworldCmd *const sOverworldMapScenes[] = {
|
static const struct CreditsOverworldCmd *const sOverworldMapScenes[] = {
|
||||||
|
|||||||
+48
-45
@@ -2,6 +2,7 @@
|
|||||||
#include "gflib.h"
|
#include "gflib.h"
|
||||||
#include "bg_regs.h"
|
#include "bg_regs.h"
|
||||||
#include "cable_club.h"
|
#include "cable_club.h"
|
||||||
|
#include "credits.h"
|
||||||
#include "event_data.h"
|
#include "event_data.h"
|
||||||
#include "event_object_movement.h"
|
#include "event_object_movement.h"
|
||||||
#include "event_scripts.h"
|
#include "event_scripts.h"
|
||||||
@@ -101,9 +102,9 @@ static EWRAM_DATA bool8 sIsAmbientCryWaterMon = FALSE;
|
|||||||
|
|
||||||
// File boundary perhaps?
|
// File boundary perhaps?
|
||||||
ALIGNED(4) EWRAM_DATA bool8 gUnknown_2031DE0 = FALSE;
|
ALIGNED(4) EWRAM_DATA bool8 gUnknown_2031DE0 = FALSE;
|
||||||
static EWRAM_DATA const struct CreditsOverworldCmd *gUnknown_2031DE4 = NULL;
|
static EWRAM_DATA const struct CreditsOverworldCmd *sCreditsOverworld_Script = NULL;
|
||||||
static EWRAM_DATA s16 gUnknown_2031DE8 = 0;
|
static EWRAM_DATA s16 sCreditsOverworld_CmdLength = 0;
|
||||||
static EWRAM_DATA s16 gUnknown_2031DEA = 0;
|
static EWRAM_DATA s16 sCreditsOverworld_CmdIndex = 0;
|
||||||
|
|
||||||
// File boundary perhaps?
|
// File boundary perhaps?
|
||||||
EWRAM_DATA struct LinkPlayerObjectEvent gLinkPlayerObjectEvents[4] = {};
|
EWRAM_DATA struct LinkPlayerObjectEvent gLinkPlayerObjectEvents[4] = {};
|
||||||
@@ -162,11 +163,11 @@ static void CreateLinkPlayerSprites(void);
|
|||||||
static void sub_80572D8(void);
|
static void sub_80572D8(void);
|
||||||
static void sub_8057300(u8 *state);
|
static void sub_8057300(u8 *state);
|
||||||
static bool32 sub_8057314(u8 *state);
|
static bool32 sub_8057314(u8 *state);
|
||||||
static bool32 sub_8057528(u8 *state, u8 unused);
|
static bool32 SetUpScrollSceneForCredits(u8 *state, u8 unused);
|
||||||
static bool8 sub_8057650(void);
|
static bool8 MapLdr_Credits(void);
|
||||||
static void sub_8057748(struct CameraObject * camera);
|
static void CameraCB_CreditsPan(struct CameraObject * camera);
|
||||||
static void sub_805781C(u8 taskId);
|
static void Task_OvwldCredits_FadeOut(u8 taskId);
|
||||||
static void sub_8057854(u8 taskId);
|
static void Task_OvwldCredits_WaitFade(u8 taskId);
|
||||||
|
|
||||||
static void CB1_UpdateLinkState(void);
|
static void CB1_UpdateLinkState(void);
|
||||||
static void ResetAllMultiplayerState(void);
|
static void ResetAllMultiplayerState(void);
|
||||||
@@ -2202,7 +2203,7 @@ static void CreateLinkPlayerSprites(void)
|
|||||||
CreateLinkPlayerSprite(i, gLinkPlayers[i].version);
|
CreateLinkPlayerSprite(i, gLinkPlayers[i].version);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Credits
|
// Quest Log
|
||||||
|
|
||||||
void sub_805726C(void)
|
void sub_805726C(void)
|
||||||
{
|
{
|
||||||
@@ -2252,12 +2253,12 @@ static bool32 sub_8057314(u8 *state)
|
|||||||
sub_8111438();
|
sub_8111438();
|
||||||
if (sub_8110AC8() == 2)
|
if (sub_8110AC8() == 2)
|
||||||
{
|
{
|
||||||
gUnknown_2031DE0 = 0;
|
gUnknown_2031DE0 = FALSE;
|
||||||
mli0_load_map(FALSE);
|
mli0_load_map(FALSE);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gUnknown_2031DE0 = 1;
|
gUnknown_2031DE0 = TRUE;
|
||||||
sub_80559A8();
|
sub_80559A8();
|
||||||
}
|
}
|
||||||
(*state)++;
|
(*state)++;
|
||||||
@@ -2344,6 +2345,8 @@ void sub_8057430(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Credits
|
||||||
|
|
||||||
void Overworld_CreditsMainCB(void)
|
void Overworld_CreditsMainCB(void)
|
||||||
{
|
{
|
||||||
bool8 fading = !!gPaletteFade.active;
|
bool8 fading = !!gPaletteFade.active;
|
||||||
@@ -2361,7 +2364,7 @@ void Overworld_CreditsMainCB(void)
|
|||||||
SetFieldVBlankCallback();
|
SetFieldVBlankCallback();
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool8 sub_80574EC(void)
|
static bool8 FieldCB2_Credits_WaitFade(void)
|
||||||
{
|
{
|
||||||
if (gPaletteFade.active)
|
if (gPaletteFade.active)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -2371,48 +2374,48 @@ static bool8 sub_80574EC(void)
|
|||||||
|
|
||||||
bool32 Overworld_DoScrollSceneForCredits(u8 *state_p, const struct CreditsOverworldCmd * script, u8 a2)
|
bool32 Overworld_DoScrollSceneForCredits(u8 *state_p, const struct CreditsOverworldCmd * script, u8 a2)
|
||||||
{
|
{
|
||||||
gUnknown_2031DE4 = script;
|
sCreditsOverworld_Script = script;
|
||||||
gUnknown_2036E28 = a2;
|
gUnknown_2036E28 = a2;
|
||||||
return sub_8057528(state_p, 0);
|
return SetUpScrollSceneForCredits(state_p, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool32 sub_8057528(u8 *state, u8 unused)
|
static bool32 SetUpScrollSceneForCredits(u8 *state, u8 unused)
|
||||||
{
|
{
|
||||||
struct WarpData warp;
|
struct WarpData warp;
|
||||||
switch (*state)
|
switch (*state)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
gUnknown_2031DEA = 0;
|
sCreditsOverworld_CmdIndex = 0;
|
||||||
gUnknown_2031DE8 = 0;
|
sCreditsOverworld_CmdLength = 0;
|
||||||
(*state)++;
|
(*state)++;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
case 1:
|
case 1:
|
||||||
warp.mapGroup = gUnknown_2031DE4[gUnknown_2031DEA].unk_2;
|
warp.mapGroup = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_2;
|
||||||
warp.mapNum = gUnknown_2031DE4[gUnknown_2031DEA].unk_4;
|
warp.mapNum = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_4;
|
||||||
warp.warpId = -1;
|
warp.warpId = -1;
|
||||||
gUnknown_2031DEA++;
|
sCreditsOverworld_CmdIndex++;
|
||||||
warp.x = gUnknown_2031DE4[gUnknown_2031DEA].unk_0;
|
warp.x = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_0;
|
||||||
warp.y = gUnknown_2031DE4[gUnknown_2031DEA].unk_2;
|
warp.y = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_2;
|
||||||
sWarpDestination = warp;
|
sWarpDestination = warp;
|
||||||
gUnknown_2031DE8 = gUnknown_2031DE4[gUnknown_2031DEA].unk_4;
|
sCreditsOverworld_CmdLength = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_4;
|
||||||
WarpIntoMap();
|
WarpIntoMap();
|
||||||
gPaletteFade.bufferTransferDisabled = TRUE;
|
gPaletteFade.bufferTransferDisabled = TRUE;
|
||||||
ScriptContext1_Init();
|
ScriptContext1_Init();
|
||||||
ScriptContext2_Disable();
|
ScriptContext2_Disable();
|
||||||
SetMainCallback1(NULL);
|
SetMainCallback1(NULL);
|
||||||
gFieldCallback2 = sub_80574EC;
|
gFieldCallback2 = FieldCB2_Credits_WaitFade;
|
||||||
gMain.state = 0;
|
gMain.state = 0;
|
||||||
(*state)++;
|
(*state)++;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
case 2:
|
case 2:
|
||||||
if (sub_8057650())
|
if (MapLdr_Credits())
|
||||||
{
|
{
|
||||||
(*state)++;
|
(*state)++;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
gFieldCamera.callback = sub_8057748;
|
gFieldCamera.callback = CameraCB_CreditsPan;
|
||||||
SetFieldVBlankCallback();
|
SetFieldVBlankCallback();
|
||||||
*state = 0;
|
*state = 0;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -2420,7 +2423,7 @@ static bool32 sub_8057528(u8 *state, u8 unused)
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool8 sub_8057650(void)
|
static bool8 MapLdr_Credits(void)
|
||||||
{
|
{
|
||||||
u8 *state = &gMain.state;
|
u8 *state = &gMain.state;
|
||||||
switch (*state)
|
switch (*state)
|
||||||
@@ -2482,55 +2485,55 @@ static bool8 sub_8057650(void)
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_8057748(struct CameraObject * camera)
|
static void CameraCB_CreditsPan(struct CameraObject * camera)
|
||||||
{
|
{
|
||||||
if (gUnknown_2031DE8 == 0)
|
if (sCreditsOverworld_CmdLength == 0)
|
||||||
{
|
{
|
||||||
gUnknown_2031DEA++;
|
sCreditsOverworld_CmdIndex++;
|
||||||
switch (gUnknown_2031DE4[gUnknown_2031DEA].unk_0)
|
switch (sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_0)
|
||||||
{
|
{
|
||||||
case 0xFC:
|
case CREDITSOVWLDCMD_FC:
|
||||||
case 0xFE:
|
case CREDITSOVWLDCMD_LOADMAP:
|
||||||
return;
|
return;
|
||||||
case 0xFF:
|
case CREDITSOVWLDCMD_FF:
|
||||||
camera->movementSpeedX = 0;
|
camera->movementSpeedX = 0;
|
||||||
camera->movementSpeedY = 0;
|
camera->movementSpeedY = 0;
|
||||||
camera->callback = NULL;
|
camera->callback = NULL;
|
||||||
CreateTask(sub_805781C, 0);
|
CreateTask(Task_OvwldCredits_FadeOut, 0);
|
||||||
return;
|
return;
|
||||||
case 0xFB:
|
case CREDITSOVWLDCMD_FB:
|
||||||
camera->movementSpeedX = 0;
|
camera->movementSpeedX = 0;
|
||||||
camera->movementSpeedY = 0;
|
camera->movementSpeedY = 0;
|
||||||
camera->callback = NULL;
|
camera->callback = NULL;
|
||||||
break;
|
break;
|
||||||
case 0xFD:
|
case CREDITSOVWLDCMD_END:
|
||||||
camera->movementSpeedX = 0;
|
camera->movementSpeedX = 0;
|
||||||
camera->movementSpeedY = 0;
|
camera->movementSpeedY = 0;
|
||||||
camera->callback = NULL;
|
camera->callback = NULL;
|
||||||
return;
|
return;
|
||||||
default:
|
default:
|
||||||
gUnknown_2031DE8 = gUnknown_2031DE4[gUnknown_2031DEA].unk_4;
|
sCreditsOverworld_CmdLength = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_4;
|
||||||
camera->movementSpeedX = gUnknown_2031DE4[gUnknown_2031DEA].unk_0;
|
camera->movementSpeedX = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_0;
|
||||||
camera->movementSpeedY = gUnknown_2031DE4[gUnknown_2031DEA].unk_2;
|
camera->movementSpeedY = sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_2;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (gUnknown_2031DE4[gUnknown_2031DEA].unk_0 == 0xFF)
|
if (sCreditsOverworld_Script[sCreditsOverworld_CmdIndex].unk_0 == 0xFF)
|
||||||
{
|
{
|
||||||
camera->movementSpeedX = 0;
|
camera->movementSpeedX = 0;
|
||||||
camera->movementSpeedY = 0;
|
camera->movementSpeedY = 0;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
gUnknown_2031DE8--;
|
sCreditsOverworld_CmdLength--;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_805781C(u8 taskId)
|
static void Task_OvwldCredits_FadeOut(u8 taskId)
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = sub_8057854;
|
gTasks[taskId].func = Task_OvwldCredits_WaitFade;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_8057854(u8 taskId)
|
static void Task_OvwldCredits_WaitFade(u8 taskId)
|
||||||
{
|
{
|
||||||
if (!gPaletteFade.active)
|
if (!gPaletteFade.active)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user