Add fade flags enum

This commit is contained in:
Tal Hayon 2022-04-05 22:56:37 +03:00
parent 55213bc9a4
commit d3c5ce50f0
30 changed files with 176 additions and 168 deletions

View File

@ -3,6 +3,14 @@
#include "global.h" #include "global.h"
typedef enum {
FADE_IN_OUT = 0x1,
FADE_BLACK_WHITE = 0x2,
FADE_INSTANT = 0x4,
FADE_MOSAIC = 0x8,
FADE_IRIS = 0x10,
} FadeFlags;
/** /**
* @struct FadeControl * @struct FadeControl
* @brief Controls screen fading effects. * @brief Controls screen fading effects.

View File

@ -25,7 +25,7 @@ typedef struct {
/*0x4*/ u16 commandIndex; /*0x4*/ u16 commandIndex;
/*0x6*/ u8 commandSize; /*0x6*/ u8 commandSize;
/*0x7*/ u8 flags; /*0x7*/ u8 flags;
/*0x8*/ u8 unk_08; /*0x8*/ u8 fadeSpeed;
} ActiveScriptInfo; } ActiveScriptInfo;
extern ActiveScriptInfo gActiveScriptInfo; extern ActiveScriptInfo gActiveScriptInfo;

View File

@ -69,7 +69,7 @@ void sub_08019698(void) {
FlushSprites(); FlushSprites();
DrawEntities(); DrawEntities();
CopyOAM(); CopyOAM();
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
gUnk_02018EB0.unk_0++; gUnk_02018EB0.unk_0++;
} }

View File

@ -75,7 +75,7 @@ void sub_080A2E40(void) {
sub_080A3198(0, 0); sub_080A3198(0, 0);
gMain.state = GAMETASK_INIT; gMain.state = GAMETASK_INIT;
SoundReq(BGM_FILE_SELECT); SoundReq(BGM_FILE_SELECT);
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
void sub_080A2F8C(void) { void sub_080A2F8C(void) {
@ -90,7 +90,7 @@ void sub_080A2F8C(void) {
*(u8*)(addr + 6) = 1; *(u8*)(addr + 6) = 1;
} }
gMain.state = GAMETASK_MAIN; gMain.state = GAMETASK_MAIN;
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
break; break;
case GAMEMAIN_CHANGEROOM: case GAMEMAIN_CHANGEROOM:
SetTask(TASK_GAME); SetTask(TASK_GAME);

View File

@ -358,7 +358,7 @@ void Enemy64_Action4_SubAction4(Enemy64Entity* this) {
sub_08049998(this, ((0x100 - super->direction) & 0xff) << 8); sub_08049998(this, ((0x100 - super->direction) & 0xff) << 8);
if (--super->timer == 0) { if (--super->timer == 0) {
super->subAction = 5; super->subAction = 5;
SetFade(5, 0x10); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x10);
} }
} }
@ -382,7 +382,7 @@ void Enemy64_Action4_SubAction5(Enemy64Entity* this) {
entity->y.HALF.HI = gRoomControls.origin_y + 0x80; entity->y.HALF.HI = gRoomControls.origin_y + 0x80;
entity->animationState = 0; entity->animationState = 0;
sub_080809D4(); sub_080809D4();
SetFade(4, 4); SetFade(FADE_INSTANT, 4);
} }
} }

View File

@ -126,7 +126,7 @@ void Gleerok_OnDeath(GleerokEntity* this) {
void sub_0802D158(GleerokEntity* this) { void sub_0802D158(GleerokEntity* this) {
super->action = 1; super->action = 1;
gPauseMenuOptions.disabled = 1; gPauseMenuOptions.disabled = 1;
SetFade(7, 8); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 8);
} }
void sub_0802D170(GleerokEntity* this) { void sub_0802D170(GleerokEntity* this) {
@ -143,7 +143,7 @@ void sub_0802D170(GleerokEntity* this) {
gPlayerEntity.animationState = 0; gPlayerEntity.animationState = 0;
RestorePrevTileEntity(COORD_TO_TILE(&gPlayerEntity), 2); RestorePrevTileEntity(COORD_TO_TILE(&gPlayerEntity), 2);
gRoomControls.camera_target = super; gRoomControls.camera_target = super;
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
} }
} else { } else {
super->action = 3; super->action = 3;

View File

@ -666,7 +666,7 @@ void sub_08041D84(Entity* this) {
ChangeObjPalette(this->child, gUnk_080D0E80[(this->subtimer - 0xb8) >> 3]); ChangeObjPalette(this->child, gUnk_080D0E80[(this->subtimer - 0xb8) >> 3]);
} }
if (this->subtimer == 0xe6) { if (this->subtimer == 0xe6) {
SetFade(7, 4); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 4);
} }
} else { } else {
this->subAction = 4; this->subAction = 4;

View File

@ -101,7 +101,7 @@ void sub_0804AB70(void) {
LoadRoomEntityList((EntityData*)gUnk_080D4110[portalId]); LoadRoomEntityList((EntityData*)gUnk_080D4110[portalId]);
ResetSystemPriority(); ResetSystemPriority();
gArea.filler3[0]++; gArea.filler3[0]++;
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
void sub_0804AC1C(void) { void sub_0804AC1C(void) {
@ -127,7 +127,7 @@ void sub_0804AC1C(void) {
CopyOAM(); CopyOAM();
if ((gUnk_02018EB0.unk_1b != 0) || sub_0804ACA8()) { if ((gUnk_02018EB0.unk_1b != 0) || sub_0804ACA8()) {
gArea.filler3[0]++; gArea.filler3[0]++;
SetFade(7, 0x10); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
} }
} }

View File

@ -55,11 +55,11 @@ void ResetFadeMask(void) {
static void sub_08050024(void) { static void sub_08050024(void) {
sub_0801E104(); sub_0801E104();
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
} }
void SetFadeProgress(u32 arg0) { void SetFadeProgress(u32 arg0) {
if ((gFadeControl.type & 1) != 0) { if ((gFadeControl.type & FADE_IN_OUT) != 0) {
gFadeControl.sustain = arg0; gFadeControl.sustain = arg0;
} else { } else {
gFadeControl.progress = arg0; gFadeControl.progress = arg0;
@ -72,22 +72,22 @@ void SetFade(u32 type, u32 speed) {
gFadeControl.active = 1; gFadeControl.active = 1;
gFadeControl.progress = 0x100; gFadeControl.progress = 0x100;
gFadeControl.sustain = 0; gFadeControl.sustain = 0;
if (gFadeControl.type & 2) { if (gFadeControl.type & FADE_BLACK_WHITE) {
gFadeControl.color = 0xf8; gFadeControl.color = 0xf8;
} else { } else {
gFadeControl.color = 0; gFadeControl.color = 0;
} }
if (type & 8) { if (type & FADE_MOSAIC) {
gOAMControls.spritesOffset = 1; gOAMControls.spritesOffset = 1;
gScreen.bg1.control |= BGCNT_MOSAIC; gScreen.bg1.control |= BGCNT_MOSAIC;
gScreen.bg2.control |= BGCNT_MOSAIC; gScreen.bg2.control |= BGCNT_MOSAIC;
gScreen.bg3.control |= BGCNT_MOSAIC; gScreen.bg3.control |= BGCNT_MOSAIC;
} }
if (type & 0x10) { if (type & FADE_IRIS) {
sub_0801E1B8(gFadeControl.win_inside_cnt, gFadeControl.win_outside_cnt); sub_0801E1B8(gFadeControl.win_inside_cnt, gFadeControl.win_outside_cnt);
sub_0801E1EC(gFadeControl.iris_x, gFadeControl.iris_y, gFadeControl.iris_size); sub_0801E1EC(gFadeControl.iris_x, gFadeControl.iris_y, gFadeControl.iris_size);
if ((type & 1) == 0) { if ((type & FADE_IN_OUT) == 0) {
gFadeControl.type &= ~4; gFadeControl.type &= ~FADE_INSTANT;
ResetFadeMask(); ResetFadeMask();
gUsedPalettes = 0xffffffff; gUsedPalettes = 0xffffffff;
} }
@ -96,13 +96,13 @@ void SetFade(u32 type, u32 speed) {
void SetFadeInverted(u32 speed) { void SetFadeInverted(u32 speed) {
gFadeControl.speed = speed; gFadeControl.speed = speed;
gFadeControl.type ^= 1; gFadeControl.type ^= FADE_IN_OUT;
gFadeControl.active = 1; gFadeControl.active = 1;
gFadeControl.progress = 256; gFadeControl.progress = 256;
} }
void SetFadeIris(u32 x, u32 y, u32 type, u32 speed) { void SetFadeIris(u32 x, u32 y, u32 type, u32 speed) {
if ((type & 1) != 0) { if ((type & FADE_IN_OUT) != 0) {
gFadeControl.iris_size = 0x96; gFadeControl.iris_size = 0x96;
} else { } else {
gFadeControl.iris_size = 0; gFadeControl.iris_size = 0;
@ -149,7 +149,7 @@ static u32 sub_080501C0(FadeControl* ctl) {
struct_020354C0* v3; struct_020354C0* v3;
u32 i; u32 i;
if (ctl->type & 1) { if (ctl->type & FADE_IN_OUT) {
v1 = 256 - (s16)ctl->progress; v1 = 256 - (s16)ctl->progress;
} else { } else {
v1 = (s16)ctl->progress; v1 = (s16)ctl->progress;
@ -183,7 +183,7 @@ static u32 sub_08050230(FadeControl* ctl) {
// fade is finished // fade is finished
gOAMControls.spritesOffset = 0; gOAMControls.spritesOffset = 0;
if ((type & 1) == 0) { if ((type & FADE_IN_OUT) == 0) {
// reset registers if fading in // reset registers if fading in
gScreen.bg0.control &= ~BGCNT_MOSAIC; gScreen.bg0.control &= ~BGCNT_MOSAIC;
gScreen.bg1.control &= ~BGCNT_MOSAIC; gScreen.bg1.control &= ~BGCNT_MOSAIC;
@ -194,7 +194,7 @@ static u32 sub_08050230(FadeControl* ctl) {
} }
static u32 sub_080502A4(FadeControl* ctl) { static u32 sub_080502A4(FadeControl* ctl) {
if (ctl->type & 1) { if (ctl->type & FADE_IN_OUT) {
s32 delta = (u16)gFadeControl.iris_size - gFadeControl.speed; s32 delta = (u16)gFadeControl.iris_size - gFadeControl.speed;
gFadeControl.iris_size -= gFadeControl.speed; gFadeControl.iris_size -= gFadeControl.speed;
if (delta << 16 <= 0) if (delta << 16 <= 0)

View File

@ -234,7 +234,7 @@ static void HandleFileScreenEnter(void) {
gGFXSlots.unk0 = 1; gGFXSlots.unk0 = 1;
gMain.state = GAMETASK_INIT; gMain.state = GAMETASK_INIT;
SoundReq(BGM_FILE_SELECT); SoundReq(BGM_FILE_SELECT);
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
static void HandleFileScreenActive(void) { static void HandleFileScreenActive(void) {
@ -1217,7 +1217,7 @@ void HandleFileStart(void) {
gSaveHeader->msg_speed = gSave.msg_speed; gSaveHeader->msg_speed = gSave.msg_speed;
gSaveHeader->brightness = gSave.brightness; gSaveHeader->brightness = gSave.brightness;
gMain.state = GAMETASK_MAIN; gMain.state = GAMETASK_MAIN;
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
} }
} }

View File

@ -251,7 +251,7 @@ void GameTask(void) {
#ifdef DEMO_USA #ifdef DEMO_USA
if (gSave.demo_timer != 0) { if (gSave.demo_timer != 0) {
if (--gSave.demo_timer == 0) { if (--gSave.demo_timer == 0) {
SetFade(7, 2); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 2);
gMain.state = GAMETASK_EXIT; gMain.state = GAMETASK_EXIT;
} }
} }
@ -478,7 +478,7 @@ static void GameTask_Exit(void) {
if (!gFadeControl.active) if (!gFadeControl.active)
DoSoftReset(); DoSoftReset();
#else #else
SetFade(7, 8); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 8);
SetTask(TASK_GAMEOVER); SetTask(TASK_GAMEOVER);
#endif #endif
} }
@ -716,12 +716,12 @@ static void GameOver_FadeIn(void) {
switch_state(GAMETASK_MAIN); switch_state(GAMETASK_MAIN);
#if defined(DEMO_USA) || defined(DEMO_JP) #if defined(DEMO_USA) || defined(DEMO_JP)
SoundReq(SONG_VOL_FADE_OUT); SoundReq(SONG_VOL_FADE_OUT);
SetFade(7, 4); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 4);
#else #else
SetPopupState(0, 0); SetPopupState(0, 0);
gScreen.lcd.displayControl |= DISPCNT_BG1_ON | DISPCNT_BG2_ON; gScreen.lcd.displayControl |= DISPCNT_BG1_ON | DISPCNT_BG2_ON;
gFadeControl.mask = 0x0000ffff; gFadeControl.mask = 0x0000ffff;
SetFade(4, 16); SetFade(FADE_INSTANT, 16);
#endif #endif
} }
} }
@ -839,9 +839,9 @@ static void GameOver_Update(void) {
SetMenuType(2); SetMenuType(2);
SoundReq(SFX_TEXTBOX_SELECT); SoundReq(SFX_TEXTBOX_SELECT);
if (temp == 0) { if (temp == 0) {
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
} else { } else {
SetFade(7, 8); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 8);
} }
break; break;
} }
@ -1153,7 +1153,7 @@ static bool32 CheckGameOver(void) {
InitFade(); InitFade();
gMain.state = GAMETASK_EXIT; gMain.state = GAMETASK_EXIT;
gMain.substate = GAMEMAIN_INITROOM; gMain.substate = GAMEMAIN_INITROOM;
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
SoundReq(SONG_STOP_BGM); SoundReq(SONG_STOP_BGM);
return TRUE; return TRUE;
} }
@ -1174,29 +1174,29 @@ static bool32 CheckRoomExit(void) {
switch (gRoomTransition.type) { switch (gRoomTransition.type) {
case TRANSITION_CUT: case TRANSITION_CUT:
SetFade(13, 8); SetFade(FADE_IN_OUT | FADE_INSTANT | FADE_MOSAIC, 8);
break; break;
case TRANSITION_CUT_FAST: case TRANSITION_CUT_FAST:
SetFade(13, 3); SetFade(FADE_IN_OUT | FADE_INSTANT | FADE_MOSAIC, 3);
break; break;
case TRANSITION_FADE_WHITE_SLOW: case TRANSITION_FADE_WHITE_SLOW:
SetFade(7, 4); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 4);
break; break;
case TRANSITION_FADE_BLACK_SLOW: case TRANSITION_FADE_BLACK_SLOW:
SetFade(5, 4); SetFade(FADE_IN_OUT | FADE_INSTANT, 4);
break; break;
case TRANSITION_FADE_BLACK: case TRANSITION_FADE_BLACK:
SetFade(5, 16); SetFade(FADE_IN_OUT | FADE_INSTANT, 16);
break; break;
case TRANSITION_FADE_BLACK_FAST: case TRANSITION_FADE_BLACK_FAST:
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
break; break;
case TRANSITION_7: case TRANSITION_7:
case TRANSITION_FADE_WHITE_FAST: case TRANSITION_FADE_WHITE_FAST:
SetFade(7, 256); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 256);
break; break;
default: default:
SetFade(7, 16); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 16);
break; break;
} }
RoomExitCallback(); RoomExitCallback();
@ -1243,27 +1243,27 @@ void InitParachuteRoom(void) {
static void InitRoomTransition(void) { static void InitRoomTransition(void) {
switch (gRoomTransition.type) { switch (gRoomTransition.type) {
case TRANSITION_CUT: case TRANSITION_CUT:
SetFade(12, 8); SetFade(FADE_INSTANT | FADE_MOSAIC, 8);
break; break;
case TRANSITION_CUT_FAST: case TRANSITION_CUT_FAST:
SetFade(12, 3); SetFade(FADE_INSTANT | FADE_MOSAIC, 3);
break; break;
case TRANSITION_FADE_WHITE_SLOW: case TRANSITION_FADE_WHITE_SLOW:
SetFade(6, 4); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 4);
break; break;
case TRANSITION_3: case TRANSITION_3:
break; break;
case TRANSITION_FADE_BLACK_FAST: case TRANSITION_FADE_BLACK_FAST:
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
break; break;
case TRANSITION_7: case TRANSITION_7:
SetFade(7, 256); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 256);
break; break;
case TRANSITION_FADE_BLACK: case TRANSITION_FADE_BLACK:
SetFade(4, 16); SetFade(FADE_INSTANT, 16);
break; break;
case TRANSITION_FADE_WHITE_FAST: case TRANSITION_FADE_WHITE_FAST:
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
break; break;
default: default:
SetFadeInverted(16); SetFadeInverted(16);
@ -1783,7 +1783,7 @@ void sub_080535AC(void) {
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
gScreen.lcd.displayControl &= 0xfeff; gScreen.lcd.displayControl &= 0xfeff;
LoadRoomEntityList((EntityData*)gUnk_080FCB94); LoadRoomEntityList((EntityData*)gUnk_080FCB94);
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
} }
void sub_080535F4(void) { void sub_080535F4(void) {
@ -1834,7 +1834,7 @@ void sub_080536A8(void) {
void sub_080536B8(void) { void sub_080536B8(void) {
sub_080A71C4(5, 3, 4, 4); sub_080A71C4(5, 3, 4, 4);
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
void sub_080536D4(void) { void sub_080536D4(void) {
@ -1850,7 +1850,7 @@ void sub_0805370C(void) {
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
sub_08051FF0(); sub_08051FF0();
LoadRoomEntityList((EntityData*)gUnk_080FCC54); LoadRoomEntityList((EntityData*)gUnk_080FCC54);
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_0805373C(void) { void sub_0805373C(void) {
@ -1881,7 +1881,7 @@ void sub_08053758(void) {
gScreen.bg2.control = 0x1dc1; gScreen.bg2.control = 0x1dc1;
SoundReq(BGM_STORY); SoundReq(BGM_STORY);
ResetSystemPriority(); ResetSystemPriority();
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
ASM_FUNC("asm/non_matching/game/sub_08053800.inc", void sub_08053800()) ASM_FUNC("asm/non_matching/game/sub_08053800.inc", void sub_08053800())
@ -1897,7 +1897,7 @@ void sub_08053974(void) {
SetBGDefaults(); SetBGDefaults();
sub_08051F78(); sub_08051F78();
LoadRoomEntityList((EntityData*)&gUnk_080FCBC4); LoadRoomEntityList((EntityData*)&gUnk_080FCBC4);
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
gMenu.overlayType++; gMenu.overlayType++;
} }
} }
@ -1930,14 +1930,14 @@ void sub_08053A1C(void) {
MessageFromTarget(0xf07); MessageFromTarget(0xf07);
gMessage.textWindowPosX = 1; gMessage.textWindowPosX = 1;
gMessage.textWindowPosY = 8; gMessage.textWindowPosY = 8;
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
} }
void sub_08053A5C(void) { void sub_08053A5C(void) {
if (((gMessage.doTextBox & 0x7f) == 0) && --gMenu.transitionTimer == 0) { if (((gMessage.doTextBox & 0x7f) == 0) && --gMenu.transitionTimer == 0) {
gMenu.overlayType++; gMenu.overlayType++;
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
} }
} }
@ -1957,7 +1957,7 @@ void sub_08053ACC(void) {
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
sub_08051FF0(); sub_08051FF0();
LoadRoomEntityList((EntityData*)&gUnk_080FCD84); LoadRoomEntityList((EntityData*)&gUnk_080FCD84);
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
void sub_08053B00(void) { void sub_08053B00(void) {
@ -1968,13 +1968,13 @@ void sub_08053B10(void) {
if (CheckRoomFlag(1)) { if (CheckRoomFlag(1)) {
gMenu.menuType++; gMenu.menuType++;
DispReset(1); DispReset(1);
SetFade(4, 0x100); SetFade(FADE_INSTANT, 0x100);
} }
} }
void sub_08053B3C(void) { void sub_08053B3C(void) {
sub_080A71C4(5, 4, 5, 0x100); sub_080A71C4(5, 4, 5, 0x100);
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
void sub_08053B58(void) { void sub_08053B58(void) {
@ -1987,7 +1987,7 @@ void sub_08053B74(void) {
LoadRoomEntityList((EntityData*)&gUnk_080FCDE0); LoadRoomEntityList((EntityData*)&gUnk_080FCDE0);
ResetSystemPriority(); ResetSystemPriority();
ResetEntityPriority(); ResetEntityPriority();
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
void sub_08053BAC(void) { void sub_08053BAC(void) {
@ -1998,13 +1998,13 @@ void sub_08053BBC(void) {
if (CheckRoomFlag(0)) { if (CheckRoomFlag(0)) {
gMenu.menuType++; gMenu.menuType++;
DispReset(1); DispReset(1);
SetFade(4, 0x100); SetFade(FADE_INSTANT, 0x100);
} }
} }
void sub_08053BE8(void) { void sub_08053BE8(void) {
sub_080A71C4(5, 2, 5, 0x100); sub_080A71C4(5, 2, 5, 0x100);
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
void sub_08053C04(void) { void sub_08053C04(void) {
@ -2018,7 +2018,7 @@ void sub_08053C20(void) {
sub_08051FF0(); sub_08051FF0();
sub_0805B4D0(4); sub_0805B4D0(4);
LoadRoomEntityList((EntityData*)&gUnk_080FCEBC); LoadRoomEntityList((EntityData*)&gUnk_080FCEBC);
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
SoundReq(BGM_FIGHT_THEME2); SoundReq(BGM_FIGHT_THEME2);
} }
@ -2026,7 +2026,7 @@ void nullsub_483(void) {
} }
void sub_08053C60(void) { void sub_08053C60(void) {
SetFade(5, 2); SetFade(FADE_IN_OUT | FADE_INSTANT, 2);
SoundReq(SFX_SUMMON); SoundReq(SFX_SUMMON);
SoundReq(SONG_STOP_BGM); SoundReq(SONG_STOP_BGM);
SetTask(3); SetTask(3);
@ -2107,7 +2107,7 @@ void sub_08053E74(void) {
gScreen.lcd.displayControl &= 0xfeff; gScreen.lcd.displayControl &= 0xfeff;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetMinPriority(1); SetMinPriority(1);
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
void sub_08053EC4(void) { void sub_08053EC4(void) {

View File

@ -89,7 +89,7 @@ void sub_0805DF98(Manager* this) {
this->unk_0e -= 1; this->unk_0e -= 1;
} else { } else {
this->action = 4; this->action = 4;
SetFade(7, 4); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 4);
SoundReq(SFX_EVAPORATE); SoundReq(SFX_EVAPORATE);
} }
} }
@ -120,7 +120,7 @@ void sub_0805E000(Manager* this) {
this->action = 1; this->action = 1;
SetPlayerControl(3); SetPlayerControl(3);
gArea.queued_bgm = 0x80010000; gArea.queued_bgm = 0x80010000;
SetFade(6, 4); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 4);
SoundReq(SFX_APPARATE); SoundReq(SFX_APPARATE);
} }
} }

View File

@ -118,7 +118,7 @@ void FigurineMenu_080A4608(void) {
r1 = 1; r1 = 1;
} }
gFigurineMenu.figure_idx = r1; gFigurineMenu.figure_idx = r1;
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
void FigurineMenu_080A46C0(void) { void FigurineMenu_080A46C0(void) {

View File

@ -128,7 +128,7 @@ void KinstoneMenu_Type0(void) {
sub_0801E738(0); sub_0801E738(0);
sub_080A70AC((void*)gUnk_081280DC); sub_080A70AC((void*)gUnk_081280DC);
SetMenuType(1); SetMenuType(1);
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
} }
const u8 gUnk_081280EE[] = { const u8 gUnk_081280EE[] = {

View File

@ -86,7 +86,7 @@ void PauseMenu_Variant0(void) {
gPauseMenuOptions.unk1 = r0; gPauseMenuOptions.unk1 = r0;
gPauseMenuOptions.unk14 = r0; gPauseMenuOptions.unk14 = r0;
sub_080A4DB8(r0); sub_080A4DB8(r0);
SetFade(4, 0x20); SetFade(FADE_INSTANT, 0x20);
sub_080A4E90(1); sub_080A4E90(1);
} }

View File

@ -45,10 +45,10 @@ void sub_0806C280(void) {
void sub_0806C2A0(Entity* this, ScriptExecutionContext* context) { void sub_0806C2A0(Entity* this, ScriptExecutionContext* context) {
switch (context->intVariable) { switch (context->intVariable) {
case 0: case 0:
SetFade(0xd, 4); SetFade(FADE_IN_OUT | FADE_INSTANT | FADE_MOSAIC, 4);
break; break;
case 1: case 1:
SetFade(0xc, 4); SetFade(FADE_INSTANT | FADE_MOSAIC, 4);
break; break;
} }
} }

View File

@ -98,7 +98,7 @@ void FourElements_Action2(FourElementsEntity* this) {
gScreen.controls.alphaBlend = 0; gScreen.controls.alphaBlend = 0;
InitItemGetSequence(super->type, 0, 1); InitItemGetSequence(super->type, 0, 1);
sub_0808C650(super, 1); sub_0808C650(super, 1);
SetFade(6, 2); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 2);
SoundReq(SFX_F8); SoundReq(SFX_F8);
SoundReq(SFX_148); SoundReq(SFX_148);
SoundReq(BGM_ELEMENT_GET); SoundReq(BGM_ELEMENT_GET);

View File

@ -119,7 +119,7 @@ void GreatFairy_SpawningUpdate(Entity* this) {
mini = GreatFairy_CreateForm(this, WAKE, 0); //??? mini = GreatFairy_CreateForm(this, WAKE, 0); //???
if (mini != NULL) { if (mini != NULL) {
CopyPosition(this, mini); CopyPosition(this, mini);
SetFade(6, 4); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 4);
SoundReq(SFX_145); SoundReq(SFX_145);
this->action = 4; this->action = 4;
this->timer = 60; this->timer = 60;

View File

@ -252,7 +252,7 @@ void GyorgBossObject_FightEnd(GyorgBossObjectEntity* this) {
return; return;
} }
if (super->subtimer == 0x3C) { if (super->subtimer == 0x3C) {
SetFade(7, 4); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 4);
} }
return; return;
} }

View File

@ -76,7 +76,7 @@ void Object3D_Action1(Object3DEntity* this) {
super->spriteRendering.b0 = 3; super->spriteRendering.b0 = 3;
SetAffineInfo(super, 0x100, 0x100, 0); SetAffineInfo(super, 0x100, 0x100, 0);
gArea.field_0x10 = 1; gArea.field_0x10 = 1;
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
} }
} }

View File

@ -1305,11 +1305,11 @@ void sub_0809629C(Object6AEntity* this, u32 type) {
} }
void sub_080962D8(Object6AEntity* this) { void sub_080962D8(Object6AEntity* this) {
SetFade(6, 0x100); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x100);
} }
void sub_080962E8(Object6AEntity* this) { void sub_080962E8(Object6AEntity* this) {
SetFade(7, 0x100); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x100);
} }
void sub_080962F8(Object6AEntity* this, ScriptExecutionContext* ctx) { void sub_080962F8(Object6AEntity* this, ScriptExecutionContext* ctx) {

View File

@ -253,7 +253,7 @@ void Object8E_Type3(Object8EEntity* this) {
if (sub_0809BE78(this)) { if (sub_0809BE78(this)) {
if (super->timer != 0) { if (super->timer != 0) {
if (--super->timer == 0) { if (--super->timer == 0) {
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
sub_0805AAF0(3); sub_0805AAF0(3);
gScreen.lcd.displayControl = (gScreen.lcd.displayControl & 0xbfff) | 0x2800; gScreen.lcd.displayControl = (gScreen.lcd.displayControl & 0xbfff) | 0x2800;
} }

View File

@ -1022,7 +1022,7 @@ static void PlayerUsePortal(Entity* this) {
if (AreaIsDungeon() || gArea.portal_type == 3) { if (AreaIsDungeon() || gArea.portal_type == 3) {
this->subAction = 7; this->subAction = 7;
this->timer = 30; this->timer = 30;
SetFade(7, 16); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 16);
SoundReq(SFX_F8); SoundReq(SFX_F8);
} else { } else {
RespawnAsMinish(); RespawnAsMinish();
@ -2660,7 +2660,7 @@ static void sub_0807332C(Entity* this) {
} else { } else {
gMain.substate = GAMEMAIN_CHANGEAREA; gMain.substate = GAMEMAIN_CHANGEAREA;
gMain.pad = 1; gMain.pad = 1;
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
} }
} }
@ -3818,7 +3818,7 @@ static void sub_08074C68(Entity* this) {
gPlayerState.animation = 1850; gPlayerState.animation = 1850;
else else
gPlayerState.animation = 1846; gPlayerState.animation = 1846;
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
} }

View File

@ -407,7 +407,7 @@ extern void* script_PlayerSleepingInn[];
void sub_StateChange_HouseInteriors1_InnWestRoom(void) { void sub_StateChange_HouseInteriors1_InnWestRoom(void) {
if (CheckLocalFlag(YADO_CHECKIN)) { if (CheckLocalFlag(YADO_CHECKIN)) {
ClearLocalFlag(YADO_CHECKIN); ClearLocalFlag(YADO_CHECKIN);
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0x50; gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0x50;
gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x38; gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x38;
sub_080751E8(1, 2, &script_PlayerSleepingInn); sub_080751E8(1, 2, &script_PlayerSleepingInn);
@ -433,7 +433,7 @@ u32 sub_unk3_HouseInteriors1_InnMiddleRoom(void) {
void sub_StateChange_HouseInteriors1_InnMiddleRoom(void) { void sub_StateChange_HouseInteriors1_InnMiddleRoom(void) {
if (CheckLocalFlag(YADO_CHECKIN) != 0) { if (CheckLocalFlag(YADO_CHECKIN) != 0) {
ClearLocalFlag(YADO_CHECKIN); ClearLocalFlag(YADO_CHECKIN);
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0x50; gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0x50;
gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x38; gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x38;
sub_080751E8(1, 2, &script_PlayerSleepingInn); sub_080751E8(1, 2, &script_PlayerSleepingInn);
@ -459,7 +459,7 @@ u32 sub_unk3_HouseInteriors1_InnEastRoom(void) {
void sub_StateChange_HouseInteriors1_InnEastRoom(void) { void sub_StateChange_HouseInteriors1_InnEastRoom(void) {
if (CheckLocalFlag(YADO_CHECKIN)) { if (CheckLocalFlag(YADO_CHECKIN)) {
ClearLocalFlag(YADO_CHECKIN); ClearLocalFlag(YADO_CHECKIN);
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0x60; gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0x60;
gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x38; gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x38;
sub_080751E8(1, 2, &script_PlayerSleepingInn); sub_080751E8(1, 2, &script_PlayerSleepingInn);
@ -679,7 +679,7 @@ extern u32 script_PlayerWakingUpInHyruleCastle;
void sub_StateChange_HyruleCastle_4(void) { void sub_StateChange_HyruleCastle_4(void) {
if (!CheckLocalFlag(CASTLE_04_MEZAME)) { if (!CheckLocalFlag(CASTLE_04_MEZAME)) {
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0xb0; gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0xb0;
gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x40; gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x40;
sub_080751E8(0, 6, &script_PlayerWakingUpInHyruleCastle); sub_080751E8(0, 6, &script_PlayerWakingUpInHyruleCastle);
@ -4349,9 +4349,9 @@ u32 sub_unk3_HyruleTown_0(void) {
#else #else
if (CheckLocalFlag(0xcd) == 0) { if (CheckLocalFlag(0xcd) == 0) {
#endif #endif
SetFade(7, 0x100); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x100);
} else { } else {
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
} }
} }
return 1; return 1;
@ -4976,7 +4976,7 @@ void sub_StateChange_HouseInteriors2_LinksHouseBedroom(void) {
if (!CheckGlobalFlag(START) && !CheckLocalFlag(0x46)) { if (!CheckGlobalFlag(START) && !CheckLocalFlag(0x46)) {
sub_080A71C4(5, 1, 4, 4); sub_080A71C4(5, 1, 4, 4);
gUpdateVisibleTiles = 0; gUpdateVisibleTiles = 0;
SetFade(5, 256); SetFade(FADE_IN_OUT | FADE_INSTANT, 256);
sub_080751E8(0, 6, &script_PlayerIntro); sub_080751E8(0, 6, &script_PlayerIntro);
} }
if (!CheckGlobalFlag(OUTDOOR)) { if (!CheckGlobalFlag(OUTDOOR)) {
@ -5711,7 +5711,7 @@ u32 sub_unk3_HyruleField_SouthHyruleField(void) {
#else #else
if (!CheckLocalFlag(0x6d)) { if (!CheckLocalFlag(0x6d)) {
#endif #endif
SetFade(7, 256); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 256);
} }
SetGlobalFlag(OUTDOOR); SetGlobalFlag(OUTDOOR);
return 1; return 1;

View File

@ -77,9 +77,9 @@ void ScriptCommand_SetFade4(Entity* entity, ScriptExecutionContext* context);
void ScriptCommand_SetFade5(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_SetFade5(Entity* entity, ScriptExecutionContext* context);
void ScriptCommand_SetFade6(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_SetFade6(Entity* entity, ScriptExecutionContext* context);
void ScriptCommand_SetFade7(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_SetFade7(Entity* entity, ScriptExecutionContext* context);
void ScriptCommand_0807E800(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_SetFadeIris(Entity* entity, ScriptExecutionContext* context);
void ScriptCommand_0807E80C(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_SetFadeIrisInOut(Entity* entity, ScriptExecutionContext* context);
void sub_0807E818(u32); void SetFadeIrisForCameraTarget(u32);
void ScriptCommand_0807E858(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_0807E858(Entity* entity, ScriptExecutionContext* context);
void ScriptCommand_SetPlayerIdle(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_SetPlayerIdle(Entity* entity, ScriptExecutionContext* context);
void ScriptCommand_EnablePlayerControl(Entity* entity, ScriptExecutionContext* context); void ScriptCommand_EnablePlayerControl(Entity* entity, ScriptExecutionContext* context);
@ -167,7 +167,7 @@ void InitScriptData(void) {
MemClear(&gActiveScriptInfo, sizeof(gActiveScriptInfo)); MemClear(&gActiveScriptInfo, sizeof(gActiveScriptInfo));
MemClear(&gScriptExecutionContextArray, sizeof(gScriptExecutionContextArray)); MemClear(&gScriptExecutionContextArray, sizeof(gScriptExecutionContextArray));
MemClear(&gPlayerScriptExecutionContext, sizeof(gPlayerScriptExecutionContext)); MemClear(&gPlayerScriptExecutionContext, sizeof(gPlayerScriptExecutionContext));
gActiveScriptInfo.unk_08 = 8; gActiveScriptInfo.fadeSpeed = 8;
} }
ScriptExecutionContext* CreateScriptExecutionContext(void) { ScriptExecutionContext* CreateScriptExecutionContext(void) {
@ -526,8 +526,8 @@ void ExecuteScript(Entity* entity, ScriptExecutionContext* context) {
ScriptCommand_SetFade5, ScriptCommand_SetFade5,
ScriptCommand_SetFade6, ScriptCommand_SetFade6,
ScriptCommand_SetFade7, ScriptCommand_SetFade7,
ScriptCommand_0807E800, ScriptCommand_SetFadeIris,
ScriptCommand_0807E80C, ScriptCommand_SetFadeIrisInOut,
ScriptCommand_0807E858, ScriptCommand_0807E858,
ScriptCommand_SetPlayerIdle, ScriptCommand_SetPlayerIdle,
ScriptCommand_EnablePlayerControl, ScriptCommand_EnablePlayerControl,
@ -997,7 +997,7 @@ void ScriptCommand_WaitForFadeFinish(Entity* entity, ScriptExecutionContext* con
} }
void ScriptCommand_SetFadeTime(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFadeTime(Entity* entity, ScriptExecutionContext* context) {
gActiveScriptInfo.unk_08 = context->scriptInstructionPointer[1]; gActiveScriptInfo.fadeSpeed = context->scriptInstructionPointer[1];
} }
void ScriptCommand_SetFadeMask(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFadeMask(Entity* entity, ScriptExecutionContext* context) {
@ -1005,47 +1005,47 @@ void ScriptCommand_SetFadeMask(Entity* entity, ScriptExecutionContext* context)
} }
void ScriptCommand_FadeInvert(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_FadeInvert(Entity* entity, ScriptExecutionContext* context) {
SetFadeInverted(gActiveScriptInfo.unk_08); SetFadeInverted(gActiveScriptInfo.fadeSpeed);
} }
void ScriptCommandNop2(Entity* entity, ScriptExecutionContext* context) { void ScriptCommandNop2(Entity* entity, ScriptExecutionContext* context) {
} }
void ScriptCommand_SetFade4(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFade4(Entity* entity, ScriptExecutionContext* context) {
SetFade(4, gActiveScriptInfo.unk_08); SetFade(FADE_INSTANT, gActiveScriptInfo.fadeSpeed);
} }
void ScriptCommand_SetFade5(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFade5(Entity* entity, ScriptExecutionContext* context) {
SetFade(5, gActiveScriptInfo.unk_08); SetFade(FADE_IN_OUT | FADE_INSTANT, gActiveScriptInfo.fadeSpeed);
} }
void ScriptCommand_SetFade6(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFade6(Entity* entity, ScriptExecutionContext* context) {
SetFade(6, gActiveScriptInfo.unk_08); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, gActiveScriptInfo.fadeSpeed);
} }
void ScriptCommand_SetFade7(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFade7(Entity* entity, ScriptExecutionContext* context) {
SetFade(7, gActiveScriptInfo.unk_08); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, gActiveScriptInfo.fadeSpeed);
} }
void ScriptCommand_0807E800(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFadeIris(Entity* entity, ScriptExecutionContext* context) {
sub_0807E818(0x10); SetFadeIrisForCameraTarget(FADE_IRIS);
} }
void ScriptCommand_0807E80C(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_SetFadeIrisInOut(Entity* entity, ScriptExecutionContext* context) {
sub_0807E818(0x11); SetFadeIrisForCameraTarget(FADE_IN_OUT | FADE_IRIS);
} }
void sub_0807E818(u32 type) { void SetFadeIrisForCameraTarget(u32 type) {
Entity* cameraTarget = gRoomControls.camera_target; Entity* cameraTarget = gRoomControls.camera_target;
u32 x, y; u32 x, y;
if (cameraTarget) { if (cameraTarget) {
x = cameraTarget->x.HALF.HI - gRoomControls.scroll_x; x = cameraTarget->x.HALF.HI - gRoomControls.scroll_x;
y = cameraTarget->y.HALF.HI - gRoomControls.scroll_y; y = cameraTarget->y.HALF.HI - gRoomControls.scroll_y;
} else { } else {
x = 0x78; x = DISPLAY_WIDTH / 2;
y = 0x50; y = DISPLAY_HEIGHT / 2;
} }
SetFadeIris(x, y, type, gActiveScriptInfo.unk_08); SetFadeIris(x, y, type, gActiveScriptInfo.fadeSpeed);
} }
void ScriptCommand_0807E858(Entity* entity, ScriptExecutionContext* context) { void ScriptCommand_0807E858(Entity* entity, ScriptExecutionContext* context) {
@ -1570,7 +1570,7 @@ void SetCollisionLayer2(Entity* entity, ScriptExecutionContext* context) {
} }
void sub_0807F190(Entity* entity, ScriptExecutionContext* context) { void sub_0807F190(Entity* entity, ScriptExecutionContext* context) {
SetFade(4, 256); SetFade(FADE_INSTANT, 256);
} }
void sub_0807F1A0(Entity* entity, ScriptExecutionContext* context) { void sub_0807F1A0(Entity* entity, ScriptExecutionContext* context) {

View File

@ -89,7 +89,7 @@ void StaffrollTask_State0(void) {
gScreen.bg2.control = 0x1dc3; gScreen.bg2.control = 0x1dc3;
InitSoundPlayingInfo(); InitSoundPlayingInfo();
ResetSystemPriority(); ResetSystemPriority();
SetFade(5, 0x100); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x100);
} }
void StaffrollTask_State1(void) { void StaffrollTask_State1(void) {
@ -116,7 +116,7 @@ void StaffrollTask_State1MenuType1(void) {
gStaffrollMenu.bgmMusicStarted = 1; gStaffrollMenu.bgmMusicStarted = 1;
SoundReq(BGM_CREDITS); SoundReq(BGM_CREDITS);
} }
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
} }
@ -172,19 +172,19 @@ void StaffrollTask_State1MenuType3(void) {
gMenu.transitionTimer--; gMenu.transitionTimer--;
if (gMenu.transitionTimer == 0) { if (gMenu.transitionTimer == 0) {
sub_080A3954(); sub_080A3954();
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
} }
} }
void StaffrollTask_State1MenuType4(void) { void StaffrollTask_State1MenuType4(void) {
gFadeControl.mask = 0xffff7fff; gFadeControl.mask = 0xffff7fff;
SetFade(5, 4); SetFade(FADE_IN_OUT | FADE_INSTANT, 4);
SetFadeProgress(gMenu.transitionTimer); SetFadeProgress(gMenu.transitionTimer);
sub_080A3954(); sub_080A3954();
} }
void StaffrollTask_State1MenuType5(void) { void StaffrollTask_State1MenuType5(void) {
SetFade(4, 4); SetFade(FADE_INSTANT, 4);
SetFadeProgress(gMenu.transitionTimer); SetFadeProgress(gMenu.transitionTimer);
sub_080A3954(); sub_080A3954();
} }
@ -197,13 +197,13 @@ void StaffrollTask_State1MenuType6(void) {
gScreen.bg2.updated = 1; gScreen.bg2.updated = 1;
gScreen.controls.alphaBlend = 0x1000; gScreen.controls.alphaBlend = 0x1000;
gMenu.menuType = 0; gMenu.menuType = 0;
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
} }
void StaffrollTask_State1MenuType7(void) { void StaffrollTask_State1MenuType7(void) {
if (gFadeControl.active == 0) { if (gFadeControl.active == 0) {
SetFade(7, 8); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 8);
gMain.state = 2; gMain.state = 2;
} }
} }
@ -255,7 +255,7 @@ void StaffrollTask_State2(void) {
gScreen.bg1.control = 0x1c01; gScreen.bg1.control = 0x1c01;
gScreen.bg2.control = 0x1d05; gScreen.bg2.control = 0x1d05;
gScreen.bg2.updated = 1; gScreen.bg2.updated = 1;
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
break; break;
case 1: case 1:
if (gFadeControl.active == 0) { if (gFadeControl.active == 0) {
@ -317,7 +317,7 @@ void StaffrollTask_State2(void) {
default: default:
gScreen.lcd.displayControl &= 0xfdff; gScreen.lcd.displayControl &= 0xfdff;
sub_08050384(); sub_08050384();
SetFade(7, 8); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 8);
gMain.state = 3; gMain.state = 3;
gStaffrollMenu.base.overlayType = 0; gStaffrollMenu.base.overlayType = 0;
break; break;

View File

@ -29,7 +29,7 @@ void sub_08055E24(void) {
sub_0804B0B0(gMenu.field_0xc[2], gMenu.field_0xc[3]); sub_0804B0B0(gMenu.field_0xc[2], gMenu.field_0xc[3]);
LoadRoomEntityList(&gUnk_080FF400); LoadRoomEntityList(&gUnk_080FF400);
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_493(void) { void nullsub_493(void) {

View File

@ -118,12 +118,12 @@ void sub_08054C20(void) {
sub_0801876C(gMenu.field_0x4, 0); sub_0801876C(gMenu.field_0x4, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08054C58(void) { void sub_08054C58(void) {
if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) { if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) {
SetFade(7, 0x10); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
gMenu.overlayType++; gMenu.overlayType++;
} }
} }
@ -131,7 +131,7 @@ void sub_08054C58(void) {
void sub_08054C88(void) { void sub_08054C88(void) {
if (gFadeControl.active == 0) { if (gFadeControl.active == 0) {
sub_08054974(gMenu.field_0x4, 0); sub_08054974(gMenu.field_0x4, 0);
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
SoundReq(SFX_SECRET_BIG); SoundReq(SFX_SECRET_BIG);
gMenu.overlayType++; gMenu.overlayType++;
gMenu.transitionTimer = 0x78; gMenu.transitionTimer = 0x78;
@ -153,7 +153,7 @@ void sub_08054D04(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08054D3C(void) { void sub_08054D3C(void) {
@ -183,7 +183,7 @@ void sub_08054DAC(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_484(void) { void nullsub_484(void) {
@ -200,14 +200,14 @@ void sub_08054E1C(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08054E5C(void) { void sub_08054E5C(void) {
if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) { if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) {
gMenu.overlayType++; gMenu.overlayType++;
gMenu.transitionTimer = 0xb4; gMenu.transitionTimer = 0xb4;
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
sub_080553E0(gMenu.field_0x4); sub_080553E0(gMenu.field_0x4);
sub_0801876C(gMenu.field_0x4, 1); sub_0801876C(gMenu.field_0x4, 1);
} }
@ -278,7 +278,7 @@ void sub_08054FAC(void) {
sub_08055B70(gMenu.field_0x4, tmp, 0, 0); sub_08055B70(gMenu.field_0x4, tmp, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
gMenu.field_0xa = 0; gMenu.field_0xa = 0;
if (CheckLocalFlagByBank(0x400, 0x77) && (ptr[2] == 0x2f)) { if (CheckLocalFlagByBank(0x400, 0x77) && (ptr[2] == 0x2f)) {
gMenu.field_0xa = 1; gMenu.field_0xa = 1;
@ -301,7 +301,7 @@ void sub_08055054(void) {
sub_08055B70(gMenu.field_0x4, 2, 0, 0); sub_08055B70(gMenu.field_0x4, 2, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_0805508C(void) { void sub_0805508C(void) {
@ -320,7 +320,7 @@ void sub_080550B0(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_487(void) { void nullsub_487(void) {
@ -338,7 +338,7 @@ void sub_08055114(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_488(void) { void nullsub_488(void) {
@ -364,7 +364,7 @@ void sub_08055184(void) {
gMenu.transitionTimer = 0x3c; gMenu.transitionTimer = 0x3c;
gMenu.field_0xa = 0; gMenu.field_0xa = 0;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055224(void) { void sub_08055224(void) {
@ -411,12 +411,12 @@ void sub_08055318(void) {
sub_0801876C(gMenu.field_0x4, 0); sub_0801876C(gMenu.field_0x4, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055350(void) { void sub_08055350(void) {
if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) { if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) {
SetFade(7, 0x10); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
gMenu.overlayType++; gMenu.overlayType++;
} }
} }
@ -424,7 +424,7 @@ void sub_08055350(void) {
void sub_08055380(void) { void sub_08055380(void) {
if (gFadeControl.active == 0) { if (gFadeControl.active == 0) {
sub_08054974(gMenu.field_0x4, 0); sub_08054974(gMenu.field_0x4, 0);
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
SoundReq(SFX_SECRET_BIG); SoundReq(SFX_SECRET_BIG);
gMenu.overlayType++; gMenu.overlayType++;
gMenu.transitionTimer = 0x78; gMenu.transitionTimer = 0x78;
@ -455,12 +455,12 @@ void sub_08055430(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055468(void) { void sub_08055468(void) {
if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) { if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) {
SetFade(7, 0x10); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
gMenu.overlayType++; gMenu.overlayType++;
} }
} }
@ -469,7 +469,7 @@ void sub_08055498(void) {
if (gFadeControl.active == 0) { if (gFadeControl.active == 0) {
sub_0801876C(gMenu.field_0x4, 1); sub_0801876C(gMenu.field_0x4, 1);
sub_080553E0(gMenu.field_0x4); sub_080553E0(gMenu.field_0x4);
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
SoundReq(SFX_SECRET_BIG); SoundReq(SFX_SECRET_BIG);
gMenu.overlayType++; gMenu.overlayType++;
gMenu.transitionTimer = 0x78; gMenu.transitionTimer = 0x78;
@ -491,7 +491,7 @@ void sub_08055518(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055548(void) { void sub_08055548(void) {
@ -521,7 +521,7 @@ void sub_080555B8(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_0805560C(void) { void sub_0805560C(void) {
@ -557,7 +557,7 @@ void sub_080556AC(void) {
sub_0804B0B0(gMenu.field_0xc[2], gMenu.field_0xc[3]); sub_0804B0B0(gMenu.field_0xc[2], gMenu.field_0xc[3]);
LoadRoomEntityList((EntityData*)gUnk_080FF264); LoadRoomEntityList((EntityData*)gUnk_080FF264);
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_489(void) { void nullsub_489(void) {
@ -580,7 +580,7 @@ void sub_08055710(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_0805576C(void) { void sub_0805576C(void) {
@ -606,7 +606,7 @@ void sub_080557D0(void) {
sub_0804B0B0((u32)gMenu.field_0xc[2], gMenu.field_0xc[3]); sub_0804B0B0((u32)gMenu.field_0xc[2], gMenu.field_0xc[3]);
LoadRoomEntityList((EntityData*)gUnk_080FF298); LoadRoomEntityList((EntityData*)gUnk_080FF298);
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_490(void) { void nullsub_490(void) {
@ -624,7 +624,7 @@ void sub_08055834(void) {
sub_08055B70(gMenu.field_0x4, 1, 0, 0); sub_08055B70(gMenu.field_0x4, 1, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_491(void) { void nullsub_491(void) {
@ -640,7 +640,7 @@ void sub_080558A4(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void nullsub_492(void) { void nullsub_492(void) {
@ -657,7 +657,7 @@ void sub_08055908(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055948(void) { void sub_08055948(void) {
@ -699,12 +699,12 @@ void sub_080559FC(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055A3C(void) { void sub_08055A3C(void) {
if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) { if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) {
SetFade(7, 0x10); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
gMenu.overlayType++; gMenu.overlayType++;
} }
} }
@ -713,7 +713,7 @@ void sub_08055A6C(void) {
if (gFadeControl.active == 0) { if (gFadeControl.active == 0) {
sub_0801876C(gMenu.field_0x4, 1); sub_0801876C(gMenu.field_0x4, 1);
sub_080553E0(gMenu.field_0x4); sub_080553E0(gMenu.field_0x4);
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
SoundReq(SFX_SECRET_BIG); SoundReq(SFX_SECRET_BIG);
gMenu.overlayType++; gMenu.overlayType++;
gMenu.transitionTimer = 0x78; gMenu.transitionTimer = 0x78;
@ -739,7 +739,7 @@ void sub_08055AEC(void) {
} }
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055B38(void) { void sub_08055B38(void) {
@ -773,12 +773,12 @@ void sub_08055BCC(void) {
sub_0801876C(gMenu.field_0x4, 0); sub_0801876C(gMenu.field_0x4, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055C04(void) { void sub_08055C04(void) {
if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) { if ((gFadeControl.active == 0) && CheckRoomFlag(0xff)) {
SetFade(7, 0x10); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
gMenu.overlayType++; gMenu.overlayType++;
} }
} }
@ -798,7 +798,7 @@ void sub_08055C34(void) {
DeleteEntity(entity); DeleteEntity(entity);
} }
} }
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
SoundReq(SFX_SECRET_BIG); SoundReq(SFX_SECRET_BIG);
gMenu.overlayType++; gMenu.overlayType++;
gMenu.transitionTimer = 0x78; gMenu.transitionTimer = 0x78;
@ -821,7 +821,7 @@ void sub_08055CF4(void) {
sub_08055B70(gMenu.field_0x4, 0, 0, 0); sub_08055B70(gMenu.field_0x4, 0, 0, 0);
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055D2C(void) { void sub_08055D2C(void) {
@ -846,7 +846,7 @@ void sub_08055D80(void) {
void sub_08055D9C(void) { void sub_08055D9C(void) {
gMenu.overlayType++; gMenu.overlayType++;
gUpdateVisibleTiles = 1; gUpdateVisibleTiles = 1;
SetFade(4, 0x10); SetFade(FADE_INSTANT, 0x10);
} }
void sub_08055DC0(void) { void sub_08055DC0(void) {

View File

@ -169,7 +169,7 @@ void sub_080A5BB8(void) {
m = &gMain; m = &gMain;
*(vu8*)&m->sleepStatus; // force a read *(vu8*)&m->sleepStatus; // force a read
m->sleepStatus = SLEEP; m->sleepStatus = SLEEP;
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
sub_080A4E84(2); sub_080A4E84(2);
gPauseMenuOptions.unk16 = 16; gPauseMenuOptions.unk16 = 16;
} }
@ -504,7 +504,7 @@ void sub_080A6CA8(void) {
sub_080A6290(); sub_080A6290();
gMenu.field_0x3 = sub_080A6D74(0); gMenu.field_0x3 = sub_080A6D74(0);
SetMenuType(1); SetMenuType(1);
SetFade(4, 8); SetFade(FADE_INSTANT, 8);
} }
ASM_FUNC("asm/non_matching/subtask2/sub_080A6CD8.inc", void sub_080A6CD8()) ASM_FUNC("asm/non_matching/subtask2/sub_080A6CD8.inc", void sub_080A6CD8())
@ -565,7 +565,7 @@ void sub_080A6DD0(void) {
void sub_080A6DF8(void) { void sub_080A6DF8(void) {
if (gMenu.field_0x0 == 2) { if (gMenu.field_0x0 == 2) {
SetMenuType(4); SetMenuType(4);
SetFade(5, 8); SetFade(FADE_IN_OUT | FADE_INSTANT, 8);
} else { } else {
ResetPlayerAnimationAndAction(); ResetPlayerAnimationAndAction();
sub_080042D0(&gPlayerEntity, (u32)gPlayerEntity.animIndex, gPlayerEntity.spriteIndex); sub_080042D0(&gPlayerEntity, (u32)gPlayerEntity.animIndex, gPlayerEntity.spriteIndex);
@ -642,7 +642,7 @@ void MenuFadeIn(u32 param_1, u32 param_2) {
gUI.isLoading = -1; gUI.isLoading = -1;
gUI.fadeInTime = 0x20; gUI.fadeInTime = 0x20;
gMain.substate = GAMEMAIN_SUBTASK; gMain.substate = GAMEMAIN_SUBTASK;
SetFade(5, 0x20); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x20);
gUnk_02018EB0.unk_0 = 0; gUnk_02018EB0.unk_0 = 0;
gUnk_02018EB0.unk_1 = 0; gUnk_02018EB0.unk_1 = 0;
} }
@ -664,7 +664,7 @@ void sub_080A71C4(u32 param_1, u32 param_2, u32 param_3, u32 param_4) {
void Subtask_Exit(void) { void Subtask_Exit(void) {
gUI.nextToLoad = 3; gUI.nextToLoad = 3;
SetFade(5, 0x20); SetFade(FADE_IN_OUT | FADE_INSTANT, 0x20);
} }
void sub_080A71F4(ScreenTransitionData* exitTransition) { void sub_080A71F4(ScreenTransitionData* exitTransition) {
@ -694,11 +694,11 @@ ASM_FUNC("asm/non_matching/subtask2/Subtask_FadeIn.inc", void Subtask_FadeIn())
void Subtask_Init(void) { void Subtask_Init(void) {
if (gFadeControl.active == 0) { if (gFadeControl.active == 0) {
DeleteAllEntities(); DeleteAllEntities();
MemClear(&gMenu, 0x30); MemClear(&gMenu, sizeof(FigurineMenu));
MemClear(&gRoomControls, 0x38); MemClear(&gRoomControls, 0x38);
MemClear(gOAMControls.unk, 0x100); MemClear(gOAMControls.unk, 0x100);
MemClear(&gActiveScriptInfo, 0xc); MemClear(&gActiveScriptInfo, sizeof(gActiveScriptInfo));
gActiveScriptInfo.unk_08 = 8; gActiveScriptInfo.fadeSpeed = 8;
DispReset(1); DispReset(1);
MessageInitialize(); MessageInitialize();
ResetPalettes(); ResetPalettes();

View File

@ -127,7 +127,7 @@ static u32 AdvanceIntroSequence(u32 transition) {
gUI.lastState = transition; gUI.lastState = transition;
gMain.state = GAMETASK_MAIN; gMain.state = GAMETASK_MAIN;
MemClear(&gIntroState, sizeof(gIntroState)); MemClear(&gIntroState, sizeof(gIntroState));
SetFade(7, 8); SetFade(FADE_IN_OUT | FADE_BLACK_WHITE | FADE_INSTANT, 8);
} }
void TitleTask(void) { void TitleTask(void) {
@ -171,7 +171,7 @@ static void HandleNintendoCapcomLogos(void) {
LoadPaletteGroup(paletteGroup); LoadPaletteGroup(paletteGroup);
gScreen.lcd.displayControl |= DISPCNT_BG2_ON; gScreen.lcd.displayControl |= DISPCNT_BG2_ON;
gScreen.bg1.updated = 1; gScreen.bg1.updated = 1;
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
advance = ADVANCE_NONE; advance = ADVANCE_NONE;
#if defined(DEMO_USA) #if defined(DEMO_USA)
if (gUnk_02000010.listenForKeyPresses == 0) { if (gUnk_02000010.listenForKeyPresses == 0) {
@ -246,7 +246,7 @@ static void HandleTitlescreen(void) {
} }
InitSoundPlayingInfo(); InitSoundPlayingInfo();
SoundReq(BGM_TITLE_SCREEN); SoundReq(BGM_TITLE_SCREEN);
SetFade(6, 8); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 8);
break; break;
case 1: case 1:
if (gFadeControl.active) { if (gFadeControl.active) {
@ -355,7 +355,7 @@ static void HandleJapaneseTitlescreenAnimationIntro(void) {
gScreen.bg1.yOffset = 0; gScreen.bg1.yOffset = 0;
gScreen.bg1.control = BGCNT_SCREENBASE(12) | BGCNT_PRIORITY(1) | BGCNT_CHARBASE(2); gScreen.bg1.control = BGCNT_SCREENBASE(12) | BGCNT_PRIORITY(1) | BGCNT_CHARBASE(2);
gFadeControl.mask = 0x00000040; gFadeControl.mask = 0x00000040;
SetFade(6, 0x10); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 0x10);
SoundReq(SFX_F8); SoundReq(SFX_F8);
} }
} }
@ -403,7 +403,7 @@ static void HandleTitlescreenAnimationIntro(void) {
gIntroState.swordBgScaleRatio = 0x100; gIntroState.swordBgScaleRatio = 0x100;
gIntroState.timer = 40; gIntroState.timer = 40;
gIntroState.subState++; gIntroState.subState++;
SetFade(6, 16); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 16);
} }
UpdateSwordBgAffineData(); UpdateSwordBgAffineData();
break; break;
@ -416,7 +416,7 @@ static void HandleTitlescreenAnimationIntro(void) {
#endif #endif
gIntroState.subState++; gIntroState.subState++;
CreateObject(OBJECT_BD, 0, 0); CreateObject(OBJECT_BD, 0, 0);
SetFade(6, 16); SetFade(FADE_BLACK_WHITE | FADE_INSTANT, 16);
SoundReq(SFX_F8); SoundReq(SFX_F8);
} }
break; break;