diff options
Diffstat (limited to 'src/diploma.c')
-rw-r--r-- | src/diploma.c | 39 |
1 files changed, 22 insertions, 17 deletions
diff --git a/src/diploma.c b/src/diploma.c index 8fabe3a2f..649f4a33d 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -10,10 +10,6 @@ #include "task.h" #include "text.h" -extern u8 gDiplomaTiles[]; -extern u8 gDiplomaTilemap[]; -extern u8 gDiplomaPalettes[]; -extern u8 gStringVar1[]; extern u8 gOtherText_NationalDex[]; extern u8 gOtherText_HoennDex[]; extern u8 gOtherText_DiplomaCertificationGameFreak[]; @@ -25,6 +21,15 @@ static void Task_DiplomaWaitForKeyPress(u8); static void Task_DiplomaFadeOut(u8); static void DisplayDiplomaText(void); +static const u16 gDiplomaPalettes[][16] = +{ + INCBIN_U16("graphics/misc/diploma_national.gbapal"), + INCBIN_U16("graphics/misc/diploma_hoenn.gbapal"), +}; + +static const u8 gDiplomaTilemap[] = INCBIN_U8("graphics/misc/diploma_map.bin.lz"); +static const u8 gDiplomaTiles[] = INCBIN_U8("graphics/misc/diploma.4bpp.lz"); + static void VBlankCB(void) { LoadOam(); @@ -35,9 +40,9 @@ static void VBlankCB(void) void sub_8145D88(void) { u32 savedIme; - + SetVBlankCallback(NULL); - + REG_DISPCNT = 0; REG_BG3CNT = 0; REG_BG2CNT = 0; @@ -51,14 +56,14 @@ void sub_8145D88(void) REG_BG1VOFS = 0; REG_BG0HOFS = 0; REG_BG0VOFS = 0; - + DmaFill16(3, 0, VRAM, VRAM_SIZE); DmaFill32(3, 0, OAM, OAM_SIZE); DmaFill16(3, 0, PLTT, PLTT_SIZE); - + LZ77UnCompVram(gDiplomaTiles, (void *)VRAM); LZ77UnCompVram(gDiplomaTilemap, (void *)(VRAM + 0x3000)); - + remove_some_task(); ResetTasks(); ResetSpriteData(); @@ -69,22 +74,22 @@ void sub_8145D88(void) InitMenuWindow(&gWindowConfig_81E6CE4); DisplayDiplomaText(); BeginNormalPaletteFade(-1, 0, 0x10, 0, 0); - + savedIme = REG_IME; REG_IME = 0; REG_IE |= INTR_FLAG_VBLANK; REG_IME = savedIme; REG_DISPSTAT |= DISPSTAT_VBLANK_INTR; - + SetVBlankCallback(VBlankCB); SetMainCallback2(MainCB2); - + REG_BLDCNT = 0; REG_BLDALPHA = 0; REG_BLDY = 0; REG_BG3CNT = 0x4603; REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG3_ON | DISPCNT_OBJ_ON; - + CreateTask(Task_DiplomaFadeIn, 0); } @@ -98,13 +103,13 @@ static void MainCB2(void) static void Task_DiplomaFadeIn(u8 taskId) { - if(!gPaletteFade.active) + if (!gPaletteFade.active) gTasks[taskId].func = Task_DiplomaWaitForKeyPress; } static void Task_DiplomaWaitForKeyPress(u8 taskId) { - if(gMain.newKeys & (A_BUTTON | B_BUTTON)) + if (gMain.newKeys & (A_BUTTON | B_BUTTON)) { BeginNormalPaletteFade(-1, 0, 0, 0x10, 0); gTasks[taskId].func = Task_DiplomaFadeOut; @@ -113,7 +118,7 @@ static void Task_DiplomaWaitForKeyPress(u8 taskId) static void Task_DiplomaFadeOut(u8 taskId) { - if(!gPaletteFade.active) + if (!gPaletteFade.active) { DestroyTask(taskId); SetMainCallback2(sub_80546F0); @@ -122,7 +127,7 @@ static void Task_DiplomaFadeOut(u8 taskId) static void DisplayDiplomaText(void) { - if(sub_8090FF4()) + if (sub_8090FF4()) { REG_BG3HOFS = 256; StringCopy(gStringVar1, gOtherText_NationalDex); |