diff options
author | Cameron Hall <camthesaxman@users.noreply.github.com> | 2017-01-28 13:08:09 -0500 |
---|---|---|
committer | YamaArashi <YamaArashi@users.noreply.github.com> | 2017-01-28 10:08:09 -0800 |
commit | 9a500a622b7fb666b8b45e1280af02084fcbc12d (patch) | |
tree | 4e3bdc79dc14309c894fb15c567f579f030475fc | |
parent | b9f1143d3e9b32120cc62fcc7a822d3bca8ef976 (diff) |
define data in title_screen.c and fix build (#221)
* define more data in C
* correct typo in comments
* define data in title_screen.c
* define data in title_screen.c and fix build
-rw-r--r-- | data/title_screen.s | 215 | ||||
-rw-r--r-- | ld_script.txt | 3 | ||||
-rw-r--r-- | src/menu.c | 2 | ||||
-rw-r--r-- | src/title_screen.c | 368 |
4 files changed, 309 insertions, 279 deletions
diff --git a/data/title_screen.s b/data/title_screen.s deleted file mode 100644 index 7c818eeb2..000000000 --- a/data/title_screen.s +++ /dev/null @@ -1,215 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - - .align 2 -gUnknown_08393210:: @ 8393210 - .ifdef SAPPHIRE - .incbin "graphics/title_screen/kyogre_dark.gbapal" - .incbin "graphics/title_screen/kyogre_glow.gbapal" - .else - .incbin "graphics/title_screen/groudon_dark.gbapal" - .incbin "graphics/title_screen/groudon_glow.gbapal" - .endif - - .align 2 -gUnknown_08393250:: @ 8393250 - .ifdef SAPPHIRE - .incbin "graphics/title_screen/kyogre.4bpp.lz" - .else - .incbin "graphics/title_screen/groudon.4bpp.lz" - .endif - - .align 2 -gUnknown_083939EC:: @ 83939EC - .ifdef SAPPHIRE - .incbin "graphics/title_screen/kyogre_map.bin.lz" - .else - .incbin "graphics/title_screen/groudon_map.bin.lz" - .endif - - .align 2 -gUnknown_08393BF8:: @ 8393BF8 - .ifdef SAPPHIRE - .incbin "graphics/title_screen/water_map.bin.lz" - .else - .incbin "graphics/title_screen/lava_map.bin.lz" - .endif - - .align 2 -LogoShineTiles: @ 8393D14 - .incbin "graphics/title_screen/logo_shine.4bpp.lz" - - .align 1 -gUnknown_08393E64:: @ 8393E64 - .2byte 0x10 - .2byte 0x110 - .2byte 0x210 - .2byte 0x310 - .2byte 0x410 - .2byte 0x510 - .2byte 0x610 - .2byte 0x710 - .2byte 0x810 - .2byte 0x910 - .2byte 0xA10 - .2byte 0xB10 - .2byte 0xC10 - .2byte 0xD10 - .2byte 0xE10 - .2byte 0xF10 - .2byte 0x100F - .2byte 0x100E - .2byte 0x100D - .2byte 0x100C - .2byte 0x100B - .2byte 0x100A - .2byte 0x1009 - .2byte 0x1008 - .2byte 0x1007 - .2byte 0x1006 - .2byte 0x1005 - .2byte 0x1004 - .2byte 0x1003 - .2byte 0x1002 - .2byte 0x1001 - .2byte 0x1000 - - .align 2 -gOamData_8393EA4:: @ 8393EA4 - .2byte 0x60A0 - .2byte 0xC000 - .2byte 0x0000 - - .align 2 -gOamData_8393EAC:: @ 8393EAC - .2byte 0x60A0 - .2byte 0xC000 - .2byte 0x0000 - - .align 2 -gSpriteAnim_8393EB4:: @ 8393EB4 - obj_image_anim_frame 0, 30 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393EBC:: @ 8393EBC - obj_image_anim_frame 64, 30 - obj_image_anim_end - - .align 2 -gSpriteAnimTable_8393EC4:: @ 8393EC4 - .4byte gSpriteAnim_8393EB4 - - .align 2 -gSpriteAnimTable_8393EC8:: @ 8393EC8 - .4byte gSpriteAnim_8393EBC - - .align 2 -gSpriteTemplate_8393ECC:: @ 8393ECC - spr_template 1000, 1000, gOamData_8393EA4, gSpriteAnimTable_8393EC4, NULL, gDummySpriteAffineAnimTable, SpriteCallback_VersionBannerLeft - - .align 2 -gSpriteTemplate_8393EE4:: @ 8393EE4 - spr_template 1000, 1000, gOamData_8393EAC, gSpriteAnimTable_8393EC8, NULL, gDummySpriteAffineAnimTable, SpriteCallback_VersionBannerRight - - .align 2 -gUnknown_08393EFC:: @ 8393EFC - obj_tiles gVersionTiles, 0x1000, 1000 - null_obj_tiles - - .align 2 -gOamData_8393F0C:: @ 8393F0C - .2byte 0x40A0 - .2byte 0x4000 - .2byte 0x0000 - - .align 2 -gSpriteAnim_8393F14:: @ 8393F14 - obj_image_anim_frame 0, 4 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393F1C:: @ 8393F1C - obj_image_anim_frame 4, 4 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393F24:: @ 8393F24 - obj_image_anim_frame 8, 4 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393F2C:: @ 8393F2C - obj_image_anim_frame 12, 4 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393F34:: @ 8393F34 - obj_image_anim_frame 16, 4 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393F3C:: @ 8393F3C - obj_image_anim_frame 20, 4 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393F44:: @ 8393F44 - obj_image_anim_frame 24, 4 - obj_image_anim_end - - .align 2 -gSpriteAnim_8393F4C:: @ 8393F4C - obj_image_anim_frame 28, 4 - obj_image_anim_end - - .align 2 -gSpriteAnimTable_8393F54:: @ 8393F54 - .4byte gSpriteAnim_8393F14 - .4byte gSpriteAnim_8393F1C - .4byte gSpriteAnim_8393F24 - .4byte gSpriteAnim_8393F2C - .4byte gSpriteAnim_8393F34 - .4byte gSpriteAnim_8393F3C - .4byte gSpriteAnim_8393F44 - .4byte gSpriteAnim_8393F4C - - .align 2 -gSpriteTemplate_8393F74:: @ 8393F74 - spr_template 1001, 1001, gOamData_8393F0C, gSpriteAnimTable_8393F54, NULL, gDummySpriteAffineAnimTable, SpriteCallback_PressStartCopyrightBanner - - .align 2 -gUnknown_08393F8C:: @ 8393F8C - obj_tiles gTitleScreenPressStart_Gfx, 0x520, 1001 - null_obj_tiles - - .align 2 -gUnknown_08393F9C:: @ 8393F9C - obj_pal gTitleScreenLogoShinePalette, 1001 - obj_pal 0x0, 0x0 - - .align 2 -gOamData_8393FAC:: @ 8393FAC - .2byte 0x00A0 - .2byte 0xC000 - .2byte 0x0000 - - .align 2 -gSpriteAnim_8393FB4:: @ 8393FB4 - obj_image_anim_frame 0, 4 - obj_image_anim_end - - .align 2 -gSpriteAnimTable_8393FBC:: @ 8393FBC - .4byte gSpriteAnim_8393FB4 - - .align 2 -gSpriteTemplate_8393FC0:: @ 8393FC0 - spr_template 1002, 1001, gOamData_8393FAC, gSpriteAnimTable_8393FBC, NULL, gDummySpriteAffineAnimTable, SpriteCallback_PokemonLogoShine - - .align 2 -gUnknown_08393FD8:: @ 8393FD8 - obj_tiles LogoShineTiles, 0x800, 1002 - null_obj_tiles diff --git a/ld_script.txt b/ld_script.txt index 063f030d7..4373dd6c0 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -338,11 +338,10 @@ SECTIONS { data/data_8393054.o(.rodata); data/task.o(.rodata); data/battle_anim_807B69C.o(.rodata); - data/title_screen.o(.rodata); + src/title_screen.o(.rodata); data/weather.o(.rodata); data/rom_8080874.o(.rodata); src/battle_setup.o(.rodata); - data/battle_setup.o(.rodata); data/cable_club.o(.rodata); data/mori_debug_menu.o(.rodata); data/trainer_see.o(.rodata); diff --git a/src/menu.c b/src/menu.c index a4e5d9065..ba98ff057 100644 --- a/src/menu.c +++ b/src/menu.c @@ -654,7 +654,7 @@ u8 *sub_8072C44(u8 *a1, s32 a2, u8 a3, u8 a4) return AlignInt2(gMenuWindowPtr, a1, a2, a3, a4); } -u8 *sub_8072C74(u8 *a1, u8 *a2, u8 a3, u8 a4) +u8 *sub_8072C74(u8 *a1, const u8 *a2, u8 a3, u8 a4) { return AlignString(gMenuWindowPtr, a1, a2, a3, a4); } diff --git a/src/title_screen.c b/src/title_screen.c index 35f3d049c..86ca1c365 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -19,32 +19,270 @@ extern struct MusicPlayerInfo gMPlay_BGM; extern u8 gUnknown_0202F7E4; extern u16 gUnknown_030041B4; extern u16 gUnknown_030042C0; -extern u8 gUnknown_08393210[]; -extern u8 gUnknown_08393250[]; -extern u8 gUnknown_083939EC[]; -extern u8 gUnknown_08393BF8[]; -extern u16 gUnknown_08393E64[]; -extern struct SpriteTemplate gSpriteTemplate_8393ECC; -extern struct SpriteTemplate gSpriteTemplate_8393EE4; -extern struct SpriteSheet gUnknown_08393EFC; -extern struct SpriteTemplate gSpriteTemplate_8393F74; -extern struct SpriteSheet gUnknown_08393F8C; -extern const struct SpritePalette gUnknown_08393F9C[]; -extern struct SpriteTemplate gSpriteTemplate_8393FC0; -extern struct SpriteSheet gUnknown_08393FD8; -extern u8 gUnknown_08E9D8CC[]; -extern u8 gUnknown_08E9F624[]; -extern u8 gUnknown_08E9F7E4[]; +extern const u8 gUnknown_08E9D8CC[]; +extern const u16 gUnknown_08E9F624[]; +extern const u8 gUnknown_08E9F7E4[]; +extern const u8 gVersionTiles[]; +extern const u8 gTitleScreenPressStart_Gfx[]; +extern const u16 gTitleScreenLogoShinePalette[]; -static void MainCB2(void); -static void Task_TitleScreenPhase1(u8); -static void Task_TitleScreenPhase2(u8); -static void Task_TitleScreenPhase3(u8); -static void CB2_GoToMainMenu(void); -static void CB2_GoToClearSaveDataScreen(void); -static void CB2_GoToResetRtcScreen(void); -static void CB2_GoToCopyrightScreen(void); -static void UpdateLegendaryMarkingColor(u8); +#ifdef SAPPHIRE +static const u16 sLegendaryMonPalettes[][16] = +{ + INCBIN_U16("graphics/title_screen/kyogre_dark.gbapal"), + INCBIN_U16("graphics/title_screen/kyogre_glow.gbapal"), +}; +static const u8 sLegendaryMonPixelData[] = INCBIN_U8("graphics/title_screen/kyogre.4bpp.lz"); +static const u8 sLegendaryMonTilemap[] = INCBIN_U8("graphics/title_screen/kyogre_map.bin.lz"); +static const u8 sBackdropTilemap[] = INCBIN_U8("graphics/title_screen/water_map.bin.lz"); +#else +static const u16 sLegendaryMonPalettes[][16] = +{ + INCBIN_U16("graphics/title_screen/groudon_dark.gbapal"), + INCBIN_U16("graphics/title_screen/groudon_glow.gbapal"), +}; +static const u8 sLegendaryMonPixelData[] = INCBIN_U8("graphics/title_screen/groudon.4bpp.lz"); +static const u8 sLegendaryMonTilemap[] = INCBIN_U8("graphics/title_screen/groudon_map.bin.lz"); +static const u8 sBackdropTilemap[] = INCBIN_U8("graphics/title_screen/lava_map.bin.lz"); +#endif +static const u8 sLogoShineTiles[] = INCBIN_U8("graphics/title_screen/logo_shine.4bpp.lz"); +const u16 gUnknown_08393E64[] = +{ + 0x10, + 0x110, + 0x210, + 0x310, + 0x410, + 0x510, + 0x610, + 0x710, + 0x810, + 0x910, + 0xA10, + 0xB10, + 0xC10, + 0xD10, + 0xE10, + 0xF10, + 0x100F, + 0x100E, + 0x100D, + 0x100C, + 0x100B, + 0x100A, + 0x1009, + 0x1008, + 0x1007, + 0x1006, + 0x1005, + 0x1004, + 0x1003, + 0x1002, + 0x1001, + 0x1000, +}; +static const struct OamData sVersionBannerLeftOamData = +{ + .y = 160, + .affineMode = 0, + .objMode = 0, + .mosaic = 0, + .bpp = 1, + .shape = 1, + .x = 0, + .matrixNum = 0, + .size = 3, + .tileNum = 0, + .priority = 0, + .paletteNum = 0, + .affineParam = 0, +}; +static const struct OamData sVersionBannerRightOamData = +{ + .y = 160, + .affineMode = 0, + .objMode = 0, + .mosaic = 0, + .bpp = 1, + .shape = 1, + .x = 0, + .matrixNum = 0, + .size = 3, + .tileNum = 0, + .priority = 0, + .paletteNum = 0, + .affineParam = 0, +}; +static const union AnimCmd sVersionBannerLeftAnimSequence[] = +{ + ANIMCMD_FRAME(0, 30), + ANIMCMD_END, +}; +static const union AnimCmd sVersionBannerRightAnimSequence[] = +{ + ANIMCMD_FRAME(64, 30), + ANIMCMD_END, +}; +static const union AnimCmd *const sVersionBannerLeftAnimTable[] = +{ + sVersionBannerLeftAnimSequence, +}; +static const union AnimCmd *const sVersionBannerRightAnimTable[] = +{ + sVersionBannerRightAnimSequence, +}; +static const struct SpriteTemplate sVersionBannerLeftSpriteTemplate = +{ + .tileTag = 1000, + .paletteTag = 1000, + .oam = &sVersionBannerLeftOamData, + .anims = sVersionBannerLeftAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallback_VersionBannerLeft, +}; +static const struct SpriteTemplate sVersionBannerRightSpriteTemplate = +{ + .tileTag = 1000, + .paletteTag = 1000, + .oam = &sVersionBannerRightOamData, + .anims = sVersionBannerRightAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallback_VersionBannerRight, +}; +static const struct SpriteSheet gUnknown_08393EFC[] = +{ + {gVersionTiles, 0x1000, 1000}, + {NULL}, +}; +static const struct OamData gOamData_8393F0C = +{ + .y = 160, + .affineMode = 0, + .objMode = 0, + .mosaic = 0, + .bpp = 0, + .shape = 1, + .x = 0, + .matrixNum = 0, + .size = 1, + .tileNum = 0, + .priority = 0, + .paletteNum = 0, + .affineParam = 0, +}; +static const union AnimCmd gSpriteAnim_8393F14[] = +{ + ANIMCMD_FRAME(0, 4), + ANIMCMD_END, +}; +static const union AnimCmd gSpriteAnim_8393F1C[] = +{ + ANIMCMD_FRAME(4, 4), + ANIMCMD_END, +}; +static const union AnimCmd gSpriteAnim_8393F24[] = +{ + ANIMCMD_FRAME(8, 4), + ANIMCMD_END, +}; +static const union AnimCmd gSpriteAnim_8393F2C[] = +{ + ANIMCMD_FRAME(12, 4), + ANIMCMD_END, +}; +static const union AnimCmd gSpriteAnim_8393F34[] = +{ + ANIMCMD_FRAME(16, 4), + ANIMCMD_END, +}; +static const union AnimCmd gSpriteAnim_8393F3C[] = +{ + ANIMCMD_FRAME(20, 4), + ANIMCMD_END, +}; +static const union AnimCmd gSpriteAnim_8393F44[] = +{ + ANIMCMD_FRAME(24, 4), + ANIMCMD_END, +}; +static const union AnimCmd gSpriteAnim_8393F4C[] = +{ + ANIMCMD_FRAME(28, 4), + ANIMCMD_END, +}; +static const union AnimCmd *const sStartCopyrightBannerAnimTable[] = +{ + gSpriteAnim_8393F14, + gSpriteAnim_8393F1C, + gSpriteAnim_8393F24, + gSpriteAnim_8393F2C, + gSpriteAnim_8393F34, + gSpriteAnim_8393F3C, + gSpriteAnim_8393F44, + gSpriteAnim_8393F4C, +}; +static const struct SpriteTemplate sStartCopyrightBannerSpriteTemplate = +{ + .tileTag = 1001, + .paletteTag = 1001, + .oam = &gOamData_8393F0C, + .anims = sStartCopyrightBannerAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallback_PressStartCopyrightBanner, +}; +static const struct SpriteSheet gUnknown_08393F8C[] = +{ + {gTitleScreenPressStart_Gfx, 0x520, 1001}, + {NULL}, +}; +const struct SpritePalette sPokemonLogoShinePalette[] = +{ + {gTitleScreenLogoShinePalette, 1001}, + {NULL}, +}; +static const struct OamData sPokemonLogoShineOamData = +{ + .y = 160, + .affineMode = 0, + .objMode = 0, + .mosaic = 0, + .bpp = 0, + .shape = 0, + .x = 0, + .matrixNum = 0, + .size = 3, + .tileNum = 0, + .priority = 0, + .paletteNum = 0, + .affineParam = 0, +}; +static const union AnimCmd sPokemonLogoShineAnimSequence[] = +{ + ANIMCMD_FRAME(0, 4), + ANIMCMD_END, +}; +static const union AnimCmd *const sPokemonLogoShineAnimTable[] = +{ + sPokemonLogoShineAnimSequence, +}; +static const struct SpriteTemplate sPokemonLogoShineSpriteTemplate = +{ + .tileTag = 1002, + .paletteTag = 1001, + .oam = &sPokemonLogoShineOamData, + .anims = sPokemonLogoShineAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallback_PokemonLogoShine, +}; +static const struct SpriteSheet sPokemonLogoShineSpriteSheet[] = +{ + {sLogoShineTiles, 0x800, 1002}, + {NULL}, +}; #define _RGB(r, g, b) ((((b) & 31) << 10) + (((g) & 31) << 5) + ((r) & 31)) @@ -66,6 +304,16 @@ static void UpdateLegendaryMarkingColor(u8); #define RESET_RTC_BUTTON_COMBO (B_BUTTON | SELECT_BUTTON | DPAD_LEFT) #define A_B_START_SELECT (A_BUTTON | B_BUTTON | START_BUTTON | SELECT_BUTTON) +static void MainCB2(void); +static void Task_TitleScreenPhase1(u8); +static void Task_TitleScreenPhase2(u8); +static void Task_TitleScreenPhase3(u8); +static void CB2_GoToMainMenu(void); +static void CB2_GoToClearSaveDataScreen(void); +static void CB2_GoToResetRtcScreen(void); +static void CB2_GoToCopyrightScreen(void); +static void UpdateLegendaryMarkingColor(u8); + void SpriteCallback_VersionBannerLeft(struct Sprite *sprite) { struct Task *task = &gTasks[sprite->data1]; @@ -134,7 +382,7 @@ static void CreatePressStartBanner(s16 x, s16 y) x -= 32; for (i = 0; i < 3; i++, x += 32) { - spriteId = CreateSprite(&gSpriteTemplate_8393F74, x, y, 0); + spriteId = CreateSprite(&sStartCopyrightBannerSpriteTemplate, x, y, 0); StartSpriteAnim(&gSprites[spriteId], i); gSprites[spriteId].data0 = 1; } @@ -148,7 +396,7 @@ static void CreateCopyrightBanner(s16 x, s16 y) x -= 64; for (i = 0; i < 5; i++, x += 32) { - spriteId = CreateSprite(&gSpriteTemplate_8393F74, x, y, 0); + spriteId = CreateSprite(&sStartCopyrightBannerSpriteTemplate, x, y, 0); StartSpriteAnim(&gSprites[spriteId], i + 3); } } @@ -193,7 +441,7 @@ void SpriteCallback_PokemonLogoShine(struct Sprite *sprite) static void StartPokemonLogoShine(bool8 flashBackground) { - u8 spriteId = CreateSprite(&gSpriteTemplate_8393FC0, 0, 68, 0); + u8 spriteId = CreateSprite(&sPokemonLogoShineSpriteTemplate, 0, 68, 0); gSprites[spriteId].oam.objMode = 2; gSprites[spriteId].data0 = flashBackground; @@ -208,11 +456,9 @@ static void VBlankCB(void) REG_BG1VOFS = gUnknown_030041B4; } -enum -{ - TD_COUNTER, - TD_SKIP, -}; + +#define tCounter data[0] +#define tSkipToNext data[1] void CB2_InitTitleScreen(void) { @@ -245,28 +491,28 @@ void CB2_InitTitleScreen(void) LZ77UnCompVram(gUnknown_08E9D8CC, (void *)VRAM); LZ77UnCompVram(gUnknown_08E9F7E4, (void *)(VRAM + 0x4800)); LoadPalette(gUnknown_08E9F624, 0, 0x1C0); - LZ77UnCompVram(gUnknown_08393250, (void *)(VRAM + 0x8000)); - LZ77UnCompVram(gUnknown_083939EC, (void *)(VRAM + 0xC000)); - LZ77UnCompVram(gUnknown_08393BF8, (void *)(VRAM + 0xC800)); - LoadPalette(gUnknown_08393210, 0xE0, 0x40); + LZ77UnCompVram(sLegendaryMonPixelData, (void *)(VRAM + 0x8000)); + LZ77UnCompVram(sLegendaryMonTilemap, (void *)(VRAM + 0xC000)); + LZ77UnCompVram(sBackdropTilemap, (void *)(VRAM + 0xC800)); + LoadPalette(sLegendaryMonPalettes, 0xE0, sizeof(sLegendaryMonPalettes)); remove_some_task(); ResetTasks(); ResetSpriteData(); FreeAllSpritePalettes(); gReservedSpritePaletteCount = 14; - LoadCompressedObjectPic(&gUnknown_08393EFC); - LoadCompressedObjectPic(&gUnknown_08393F8C); - LoadCompressedObjectPic(&gUnknown_08393FD8); + LoadCompressedObjectPic(&gUnknown_08393EFC[0]); + LoadCompressedObjectPic(&gUnknown_08393F8C[0]); + LoadCompressedObjectPic(&sPokemonLogoShineSpriteSheet[0]); LoadPalette(gUnknown_08E9F624, 0x100, 0x1C0); - LoadSpritePalette(&gUnknown_08393F9C[0]); + LoadSpritePalette(&sPokemonLogoShinePalette[0]); gMain.state = 2; break; case 2: { u8 taskId = CreateTask(Task_TitleScreenPhase1, 0); - gTasks[taskId].data[TD_COUNTER] = 0x100; - gTasks[taskId].data[TD_SKIP] = FALSE; + gTasks[taskId].tCounter = 256; + gTasks[taskId].tSkipToNext = FALSE; gTasks[taskId].data[2] = -16; gTasks[taskId].data[3] = -32; gUnknown_0202F7E4 = taskId; @@ -337,17 +583,17 @@ static void Task_TitleScreenPhase1(u8 taskId) //Skip to next phase when A, B, Start, or Select is pressed if ((gMain.newKeys & A_B_START_SELECT) || gTasks[taskId].data[1] != 0) { - gTasks[taskId].data[TD_SKIP] = TRUE; - gTasks[taskId].data[TD_COUNTER] = 0; + gTasks[taskId].tSkipToNext = TRUE; + gTasks[taskId].tCounter = 0; } - if (gTasks[taskId].data[TD_COUNTER] != 0) + if (gTasks[taskId].tCounter != 0) { - u16 frameNum = gTasks[taskId].data[TD_COUNTER]; + u16 frameNum = gTasks[taskId].tCounter; if (frameNum == 160 || frameNum == 64) StartPokemonLogoShine(TRUE); - gTasks[taskId].data[TD_COUNTER]--; + gTasks[taskId].tCounter--; } else { @@ -361,17 +607,17 @@ static void Task_TitleScreenPhase1(u8 taskId) REG_BLDY = 0; //Create left side of version banner - spriteId = CreateSprite(&gSpriteTemplate_8393ECC, 0x62, 0x1A, 0); + spriteId = CreateSprite(&sVersionBannerLeftSpriteTemplate, 0x62, 0x1A, 0); gSprites[spriteId].invisible = TRUE; gSprites[spriteId].data1 = taskId; //Create right side of version banner - spriteId = CreateSprite(&gSpriteTemplate_8393EE4, 0xA2, 0x1A, 0); + spriteId = CreateSprite(&sVersionBannerRightSpriteTemplate, 0xA2, 0x1A, 0); gSprites[spriteId].invisible = TRUE; gSprites[spriteId].data1 = taskId; gTasks[taskId].data[5] = 88; - gTasks[taskId].data[TD_COUNTER] = 144; + gTasks[taskId].tCounter = 144; gTasks[taskId].func = Task_TitleScreenPhase2; } } @@ -380,17 +626,17 @@ static void Task_TitleScreenPhase1(u8 taskId) static void Task_TitleScreenPhase2(u8 taskId) { //Skip to next phase when A, B, Start, or Select is pressed - if ((gMain.newKeys & A_B_START_SELECT) || gTasks[taskId].data[TD_SKIP]) + if ((gMain.newKeys & A_B_START_SELECT) || gTasks[taskId].tSkipToNext) { - gTasks[taskId].data[TD_SKIP] = TRUE; - gTasks[taskId].data[TD_COUNTER] = 0; + gTasks[taskId].tSkipToNext = TRUE; + gTasks[taskId].tCounter = 0; } - if (gTasks[taskId].data[TD_COUNTER] != 0) - gTasks[taskId].data[TD_COUNTER]--; + if (gTasks[taskId].tCounter != 0) + gTasks[taskId].tCounter--; else { - gTasks[taskId].data[TD_SKIP] = TRUE; + gTasks[taskId].tSkipToNext = TRUE; REG_DISPCNT = DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON @@ -403,7 +649,7 @@ static void Task_TitleScreenPhase2(u8 taskId) gTasks[taskId].func = Task_TitleScreenPhase3; } - if (!(gTasks[taskId].data[TD_COUNTER] & 1) && gTasks[taskId].data[3] != 0) + if (!(gTasks[taskId].tCounter & 1) && gTasks[taskId].data[3] != 0) gTasks[taskId].data[3]++; //Slide Pokemon logo up @@ -437,14 +683,14 @@ static void Task_TitleScreenPhase3(u8 taskId) else { REG_BG2Y = 0; - gTasks[taskId].data[TD_COUNTER]++; - if (gTasks[taskId].data[TD_COUNTER] & 1) + gTasks[taskId].tCounter++; + if (gTasks[taskId].tCounter & 1) { gTasks[taskId].data[4]++; gUnknown_030041B4 = gTasks[taskId].data[4]; gUnknown_030042C0 = 0; } - UpdateLegendaryMarkingColor(gTasks[taskId].data[TD_COUNTER]); + UpdateLegendaryMarkingColor(gTasks[taskId].tCounter); if ((gMPlay_BGM.status & 0xFFFF) == 0) { BeginNormalPaletteFade(-1, 0, 0, 0x10, 0xFFFF); |