diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2018-12-03 08:41:06 -0500 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2018-12-03 08:41:06 -0500 |
commit | 208c6054475030ce48482c34647bd5728172b074 (patch) | |
tree | 7a3961f4d750fc12a34b067bab2f14c173151263 /src | |
parent | 9ff5f62747589e403bc8bf215f8ebe3f5ba82353 (diff) |
sub_8146604
Diffstat (limited to 'src')
-rw-r--r-- | src/mevent_8145654.c | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/src/mevent_8145654.c b/src/mevent_8145654.c index 3d7f6d3ca..5161d5380 100644 --- a/src/mevent_8145654.c +++ b/src/mevent_8145654.c @@ -10,6 +10,7 @@ #include "mystery_gift_menu.h" #include "menu_indicators.h" #include "string_util.h" +#include "link_rfu.h" #include "mevent.h" struct UnkStruct_8467FB8 @@ -574,3 +575,66 @@ s32 sub_8146318(void) ++gUnknown_203F3CC->unk_01C0_1; return 0; } + +s32 sub_8146604(bool32 flag) +{ + if (gUnknown_203F3CC == NULL) + return -1; + switch (gUnknown_203F3CC->unk_01C0_1) + { + case 0: + BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0); + break; + case 1: + if (UpdatePaletteFade()) + return 0; + ChangeBgY(2, 0, 0); + SetGpuReg(REG_OFFSET_WIN0H, 0); + SetGpuReg(REG_OFFSET_WIN0V, 0); + SetGpuReg(REG_OFFSET_WININ, 0); + SetGpuReg(REG_OFFSET_WINOUT, 0); + ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON); + break; + case 2: + FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(1, 0x000, 0, 0, 30, 20); + FillBgTilemapBufferRect_Palette0(2, 0x000, 0, 0, 30, 24); + FillBgTilemapBufferRect_Palette0(3, 0x000, 0, 0, 30, 24); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(1); + CopyBgTilemapBufferToVram(2); + CopyBgTilemapBufferToVram(3); + break; + case 3: + HideBg(1); + HideBg(2); + RemoveWindow(gUnknown_203F3CC->unk_01C8[1]); + RemoveWindow(gUnknown_203F3CC->unk_01C8[0]); + break; + case 4: + ChangeBgY(2, 0, 0); + ChangeBgY(3, 0, 0); + if (gUnknown_203F3CC->unk_01C1 != 0xFF) + { + RemoveScrollIndicatorArrowPair(gUnknown_203F3CC->unk_01C1); + gUnknown_203F3CC->unk_01C1 = 0xFF; + } + break; + case 5: + sub_8142344(gUnknown_203F3B8, flag); + break; + case 6: + sub_8142420(); + CopyBgTilemapBufferToVram(0); + CopyBgTilemapBufferToVram(3); + BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0); + break; + default: + if (UpdatePaletteFade()) + return 0; + gUnknown_203F3CC->unk_01C0_1 = 0; + return 1; + } + ++gUnknown_203F3CC->unk_01C0_1; + return 0; +} |