From 031fd663939b6d6bf2d29a21ac3f155f1d593457 Mon Sep 17 00:00:00 2001 From: Slawter666 <38655737+Slawter666@users.noreply.github.com> Date: Sat, 2 Feb 2019 22:14:04 +0000 Subject: [PATCH 1/4] Label some summary screen functions --- src/pokemon_summary_screen.c | 123 ++++++++++++++++++----------------- 1 file changed, 62 insertions(+), 61 deletions(-) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 14bfba4ad..b05f3129b 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -173,7 +173,7 @@ static void sub_81C20F0(u8 taskId); static void sub_81C2194(u16 *a, u16 b, u8 c); static void sub_81C2228(struct Pokemon* mon); static void DrawExperienceProgressBar(struct Pokemon* mon); -static void sub_81C240C(u16 a); +static void DrawContestMoveHearts(u16 move); static void sub_81C2524(void); static void sub_81C2554(void); static void sub_81C25E8(void); @@ -223,17 +223,17 @@ static void PrintNewMoveDetailsOrCancelText(void); static void sub_81C4064(void); static void sub_81C40A0(u8 a, u8 b); static void PrintHMMovesCantBeForgotten(void); -static void sub_81C4190(void); -static void sub_81C4204(u8 a, u8 b); -static void sub_81C424C(void); -static void sub_81C4280(void); -static void sub_81C42C8(void); -static void sub_81C43A0(void); -static void sub_81C4420(void); -static void sub_81C4484(void); -static void sub_81C44F0(void); +static void ResetPssSpriteIds(void); +static void SetSpriteInvisibility(u8 spriteArrayId, bool8 invisible); +static void HidePageSpecificSprites(void); +static void SetTypeIcons(void); +static void CreateMoveTypeIcons(void); +static void SetMonTypeIcons(void); +static void SetMoveTypeIcons(void); +static void SetContestMoveTypeIcons(void); +static void SetNewMoveTypeIcon(void); static void sub_81C4568(u8 a, u8 b); -static u8 sub_81C45F4(struct Pokemon *a, s16 *b); +static u8 CreatePokemonSprite(struct Pokemon *a, s16 *b); static u8 sub_81C47B4(struct Pokemon *unused); static void sub_81C4844(struct Sprite *); static void sub_81C48F0(void); @@ -968,13 +968,13 @@ static const union AnimCmd *const sSpriteAnimTable_StatusCondition[] = { sSpriteAnim_StatusPokerus, sSpriteAnim_StatusFaint, }; -static const struct CompressedSpriteSheet gUnknown_0861D0F8 = +static const struct CompressedSpriteSheet sStatusIconsSpriteSheet = { .data = gStatusGfx_Icons, .size = 0x380, .tag = 30001 }; -static const struct CompressedSpritePalette gUnknown_0861D100 = +static const struct CompressedSpritePalette sStatusIconsSpritePalette = { .data = gStatusPal_Icons, .tag = 30001 @@ -1141,13 +1141,13 @@ static bool8 SummaryScreen_LoadGraphics(void) gMain.state++; break; case 16: - sub_81C4190(); - sub_81C42C8(); + ResetPssSpriteIds(); + CreateMoveTypeIcons(); pssData->unk40F0 = 0; gMain.state++; break; case 17: - pssData->spriteIds[0] = sub_81C45F4(&pssData->currentMon, &pssData->unk40F0); + pssData->spriteIds[0] = CreatePokemonSprite(&pssData->currentMon, &pssData->unk40F0); if (pssData->spriteIds[0] != 0xFF) { pssData->unk40F0 = 0; @@ -1167,7 +1167,7 @@ static bool8 SummaryScreen_LoadGraphics(void) gMain.state++; break; case 21: - sub_81C4280(); + SetTypeIcons(); gMain.state++; break; case 22: @@ -1259,11 +1259,11 @@ static bool8 SummaryScreen_DecompressGraphics(void) pssData->unk40F0++; break; case 9: - LoadCompressedSpriteSheet(&gUnknown_0861D0F8); + LoadCompressedSpriteSheet(&sStatusIconsSpriteSheet); pssData->unk40F0++; break; case 10: - LoadCompressedSpritePalette(&gUnknown_0861D100); + LoadCompressedSpritePalette(&sStatusIconsSpritePalette); pssData->unk40F0++; break; case 11: @@ -1374,7 +1374,7 @@ static void sub_81C0348(void) } else { - sub_81C240C(pssData->summary.moves[pssData->firstMoveIndex]); + DrawContestMoveHearts(pssData->summary.moves[pssData->firstMoveIndex]); sub_81C2194(pssData->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][0], 3, 0); sub_81C2194(pssData->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0], 1, 0); SetBgTilemapBuffer(1, pssData->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0]); @@ -1510,7 +1510,7 @@ static void sub_81C0604(u8 taskId, s8 a) PlaySE(SE_SELECT); if (pssData->summary.unk7 != 0) { - sub_81C4204(2, 1); + SetSpriteInvisibility(2, 1); ClearWindowTilemap(13); schedule_bg_copy_tilemap_to_vram(0); sub_81C2074(0, 2); @@ -1559,7 +1559,7 @@ static void sub_81C0704(u8 taskId) data[1] = 0; break; case 8: - pssData->spriteIds[0] = sub_81C45F4(&pssData->currentMon, &data[1]); + pssData->spriteIds[0] = CreatePokemonSprite(&pssData->currentMon, &data[1]); if (pssData->spriteIds[0] == 0xFF) return; gSprites[pssData->spriteIds[0]].data[2] = 1; @@ -1567,7 +1567,7 @@ static void sub_81C0704(u8 taskId) data[1] = 0; break; case 9: - sub_81C4280(); + SetTypeIcons(); break; case 10: sub_81C25E8(); @@ -1677,7 +1677,7 @@ static void sub_81C0A8C(u8 taskId, s8 b) else SetTaskFuncWithFollowupFunc(taskId, sub_81C0CC4, gTasks[taskId].func); sub_81C2DE4(pssData->currPageIndex); - sub_81C424C(); + HidePageSpecificSprites(); } static void sub_81C0B8C(u8 taskId) @@ -1718,7 +1718,7 @@ static void sub_81C0C68(u8 taskId) data[0] = 0; sub_81C1BA0(); sub_81C2AFC(pssData->currPageIndex); - sub_81C4280(); + SetTypeIcons(); sub_81C0E24(); SwitchTaskToFollowupFunc(taskId); } @@ -1767,7 +1767,7 @@ static void sub_81C0D44(u8 taskId) data[0] = 0; sub_81C1BA0(); sub_81C2AFC(pssData->currPageIndex); - sub_81C4280(); + SetTypeIcons(); sub_81C0E24(); SwitchTaskToFollowupFunc(taskId); } @@ -1797,7 +1797,7 @@ static void sub_81C0E48(u8 taskId) sub_81C2194(pssData->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0], 1, 0); PrintMoveDetails(move); PrintNewMoveDetailsOrCancelText(); - sub_81C44F0(); + SetNewMoveTypeIcon(); schedule_bg_copy_tilemap_to_vram(0); schedule_bg_copy_tilemap_to_vram(1); schedule_bg_copy_tilemap_to_vram(2); @@ -1883,7 +1883,7 @@ static void sub_81C1070(s16 *a, s8 b, u8 *c) if (move != 0) break; } - sub_81C240C(move); + DrawContestMoveHearts(move); schedule_bg_copy_tilemap_to_vram(1); schedule_bg_copy_tilemap_to_vram(2); PrintMoveDetails(move); @@ -2003,7 +2003,7 @@ static void sub_81C13B0(u8 taskId, bool8 b) move = pssData->summary.moves[pssData->firstMoveIndex]; PrintMoveDetails(move); - sub_81C240C(move); + DrawContestMoveHearts(move); schedule_bg_copy_tilemap_to_vram(1); schedule_bg_copy_tilemap_to_vram(2); gTasks[taskId].func = sub_81C0F44; @@ -2081,7 +2081,7 @@ static void SwapBoxMonMoves(struct BoxPokemon *mon, u8 moveIndex1, u8 moveIndex2 static void sub_81C171C(u8 taskId) { - sub_81C44F0(); + SetNewMoveTypeIcon(); sub_81C4AF8(8); gTasks[taskId].func = sub_81C174C; } @@ -2415,7 +2415,7 @@ static void sub_81C1F80(u8 taskId) { if (pssData->currPageIndex == 3 && FuncIsActiveTask(sub_81C0B8C) == 0) PutWindowTilemap(15); - sub_81C240C(data[2]); + DrawContestMoveHearts(data[2]); } else { @@ -2566,7 +2566,7 @@ static void DrawExperienceProgressBar(struct Pokemon *unused) schedule_bg_copy_tilemap_to_vram(2); } -static void sub_81C240C(u16 move) +static void DrawContestMoveHearts(u16 move) { u16 *tilemap = pssData->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][1]; u8 i; @@ -3641,7 +3641,7 @@ static void PrintHMMovesCantBeForgotten(void) SummaryScreen_PrintTextOnWindow(windowId, gText_HMMovesCantBeForgotten2, 6, 1, 0, 0); } -static void sub_81C4190(void) +static void ResetPssSpriteIds(void) { u8 i; @@ -3660,41 +3660,42 @@ static void DestroySpriteInArray(u8 spriteArrayId) } } -static void sub_81C4204(u8 spriteArrayId, bool8 invisible) +static void SetSpriteInvisibility(u8 spriteArrayId, bool8 invisible) { gSprites[pssData->spriteIds[spriteArrayId]].invisible = invisible; } -static void sub_81C424C(void) +static void HidePageSpecificSprites(void) { +// Keeps Pokémon, caught ball and status sprites visible. u8 i; for (i = 3; i < 28; i++) { if (pssData->spriteIds[i] != 0xFF) - sub_81C4204(i, TRUE); + SetSpriteInvisibility(i, TRUE); } } -static void sub_81C4280(void) +static void SetTypeIcons(void) { switch (pssData->currPageIndex) { - case 0: - sub_81C43A0(); + case PSS_PAGE_INFO: + SetMonTypeIcons(); break; - case 2: - sub_81C4420(); - sub_81C44F0(); + case PSS_PAGE_BATTLE_MOVES: + SetMoveTypeIcons(); + SetNewMoveTypeIcon(); break; - case 3: - sub_81C4484(); - sub_81C44F0(); + case PSS_PAGE_CONTEST_MOVES: + SetContestMoveTypeIcons(); + SetNewMoveTypeIcon(); break; } } -static void sub_81C42C8(void) +static void CreateMoveTypeIcons(void) { u8 i; @@ -3703,7 +3704,7 @@ static void sub_81C42C8(void) if (pssData->spriteIds[i] == 0xFF) pssData->spriteIds[i] = CreateSprite(&sSpriteTemplate_MoveTypes, 0, 0, 2); - sub_81C4204(i, TRUE); + SetSpriteInvisibility(i, TRUE); } } @@ -3714,16 +3715,16 @@ static void SetMoveTypeSpritePosAndType(u8 typeId, u8 x, u8 y, u8 spriteArrayId) sprite->oam.paletteNum = sMoveTypeToOamPaletteNum[typeId]; sprite->pos1.x = x + 16; sprite->pos1.y = y + 8; - sub_81C4204(spriteArrayId, FALSE); + SetSpriteInvisibility(spriteArrayId, FALSE); } -static void sub_81C43A0(void) +static void SetMonTypeIcons(void) { struct PokeSummary *summary = &pssData->summary; if (summary->isEgg) { SetMoveTypeSpritePosAndType(TYPE_MYSTERY, 120, 48, 3); - sub_81C4204(4, TRUE); + SetSpriteInvisibility(4, TRUE); } else { @@ -3731,16 +3732,16 @@ static void sub_81C43A0(void) if (gBaseStats[summary->species].type1 != gBaseStats[summary->species].type2) { SetMoveTypeSpritePosAndType(gBaseStats[summary->species].type2, 0xA0, 0x30, 4); - sub_81C4204(4, FALSE); + SetSpriteInvisibility(4, FALSE); } else { - sub_81C4204(4, TRUE); + SetSpriteInvisibility(4, TRUE); } } } -static void sub_81C4420(void) +static void SetMoveTypeIcons(void) { u8 i; struct PokeSummary *summary = &pssData->summary; @@ -3749,11 +3750,11 @@ static void sub_81C4420(void) if (summary->moves[i] != MOVE_NONE) SetMoveTypeSpritePosAndType(gBattleMoves[summary->moves[i]].type, 0x55, 0x20 + (i * 0x10), i + 3); else - sub_81C4204(i + 3, TRUE); + SetSpriteInvisibility(i + 3, TRUE); } } -static void sub_81C4484(void) +static void SetContestMoveTypeIcons(void) { u8 i; struct PokeSummary *summary = &pssData->summary; @@ -3762,15 +3763,15 @@ static void sub_81C4484(void) if (summary->moves[i] != MOVE_NONE) SetMoveTypeSpritePosAndType(NUMBER_OF_MON_TYPES + gContestMoves[summary->moves[i]].contestCategory, 0x55, 0x20 + (i * 0x10), i + 3); else - sub_81C4204(i + 3, TRUE); + SetSpriteInvisibility(i + 3, TRUE); } } -static void sub_81C44F0(void) +static void SetNewMoveTypeIcon(void) { if (pssData->newMove == MOVE_NONE) { - sub_81C4204(7, TRUE); + SetSpriteInvisibility(7, TRUE); } else { @@ -3800,7 +3801,7 @@ static void sub_81C4568(u8 a0, u8 a1) sprite2->animEnded = FALSE; } -static u8 sub_81C45F4(struct Pokemon *mon, s16 *a1) +static u8 CreatePokemonSprite(struct Pokemon *mon, s16 *a1) { const struct CompressedSpritePalette *pal; struct PokeSummary *summary = &pssData->summary; @@ -4000,11 +4001,11 @@ static void CreateSetStatusSprite(void) if (anim != 0) { StartSpriteAnim(&gSprites[*spriteId], anim - 1); - sub_81C4204(2, FALSE); + SetSpriteInvisibility(2, FALSE); } else { - sub_81C4204(2, TRUE); + SetSpriteInvisibility(2, TRUE); } } From 804e955c8d3c57b7ee8ed90ca59ab732f8eeeae1 Mon Sep 17 00:00:00 2001 From: Slawter666 <38655737+Slawter666@users.noreply.github.com> Date: Mon, 4 Feb 2019 11:38:44 +0000 Subject: [PATCH 2/4] Label some more functions --- src/pokemon_summary_screen.c | 84 +++++++++++++++++++----------------- 1 file changed, 44 insertions(+), 40 deletions(-) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index b05f3129b..f88a2470a 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -184,10 +184,10 @@ static void PrintPageNamesAndStatsPageToWindows(void); static void sub_81C2AFC(u8 a); static void sub_81C2C38(u8 a); static void SummaryScreen_RemoveWindowByIndex(u8 a); -static void sub_81C2D9C(u8 a); -static void sub_81C2DE4(u8 a); -static void sub_81C2E00(void); -static void sub_81C2E40(u8 taskId); +static void PrintPageSpecificText(u8 a); +static void CreateTextPrinterTask(u8 a); +static void PrintInfoPageText(void); +static void sTask_PrintInfoPage(u8 taskId); static void PrintMonOTName(void); static void PrintMonOTID(void); static void PrintMonAbilityName(void); @@ -203,27 +203,27 @@ static void PrintEggOTName(void); static void PrintEggOTID(void); static void PrintEggState(void); static void PrintEggMemo(void); -static void sub_81C3554(u8 taskId); +static void sTask_PrintSkillsPage(u8 taskId); static void PrintHeldItemName(void); -static void sub_81C3530(void); +static void PrintSkillsPageText(void); static void PrintRibbonCount(void); static void BufferLeftColumnStats(void); static void PrintLeftColumnStats(void); static void BufferRightColumnStats(void); static void PrintRightColumnStats(void); static void PrintExpPointsNextLevel(void); -static void sub_81C3984(void); -static void sub_81C39F0(u8 taskId); +static void PrintBattleMoves(void); +static void sTask_PrintBattleMoves(u8 taskId); static void PrintMoveNameAndPP(u8 a); -static void sub_81C3D08(void); -static void sub_81C3D54(u8 taskId); +static void PrintContestMoves(void); +static void sTask_PrintContestMoves(u8 taskId); static void PrintContestMoveDescription(u8 a); static void PrintMoveDetails(u16 a); static void PrintNewMoveDetailsOrCancelText(void); static void sub_81C4064(void); static void sub_81C40A0(u8 a, u8 b); static void PrintHMMovesCantBeForgotten(void); -static void ResetPssSpriteIds(void); +static void ResetSpriteIds(void); static void SetSpriteInvisibility(u8 spriteArrayId, bool8 invisible); static void HidePageSpecificSprites(void); static void SetTypeIcons(void); @@ -626,22 +626,26 @@ static const u8 sTextColors_861CD2C[][3] = {0, 5, 6}, {0, 7, 8} }; + static const u8 gUnknown_0861CD53[] = INCBIN_U8("graphics/interface/summary_a_button.4bpp"); static const u8 gUnknown_0861CDD3[] = INCBIN_U8("graphics/interface/summary_b_button.4bpp"); -static void (*const gUnknown_0861CE54[])(void) = + +static void (*const sTextPrinterFunctions[])(void) = { - sub_81C2E00, - sub_81C3530, - sub_81C3984, - sub_81C3D08 + PrintInfoPageText, + PrintSkillsPageText, + PrintBattleMoves, + PrintContestMoves }; -static void (*const gUnknown_0861CE64[])(u8 taskId) = + +static void (*const sTextPrinterTasks[])(u8 taskId) = { - sub_81C2E40, - sub_81C3554, - sub_81C39F0, - sub_81C3D54 + sTask_PrintInfoPage, + sTask_PrintSkillsPage, + sTask_PrintBattleMoves, + sTask_PrintContestMoves }; + static const u8 gUnknown_0861CE74[] = _("{COLOR LIGHT_RED}{SHADOW GREEN}"); static const u8 gUnknown_0861CE7B[] = _("{COLOR WHITE}{SHADOW DARK_GREY}"); static const u8 gUnknown_0861CE82[] = _("{SPECIAL_F7 0x00}/{SPECIAL_F7 0x01}\n{SPECIAL_F7 0x02}\n{SPECIAL_F7 0x03}"); @@ -1129,7 +1133,7 @@ static bool8 SummaryScreen_LoadGraphics(void) gMain.state++; break; case 13: - sub_81C2D9C(pssData->currPageIndex); + PrintPageSpecificText(pssData->currPageIndex); gMain.state++; break; case 14: @@ -1141,7 +1145,7 @@ static bool8 SummaryScreen_LoadGraphics(void) gMain.state++; break; case 16: - ResetPssSpriteIds(); + ResetSpriteIds(); CreateMoveTypeIcons(); pssData->unk40F0 = 0; gMain.state++; @@ -1573,7 +1577,7 @@ static void sub_81C0704(u8 taskId) sub_81C25E8(); break; case 11: - sub_81C2D9C(pssData->currPageIndex); + PrintPageSpecificText(pssData->currPageIndex); sub_81C2524(); break; case 12: @@ -1676,7 +1680,7 @@ static void sub_81C0A8C(u8 taskId, s8 b) SetTaskFuncWithFollowupFunc(taskId, sub_81C0B8C, gTasks[taskId].func); else SetTaskFuncWithFollowupFunc(taskId, sub_81C0CC4, gTasks[taskId].func); - sub_81C2DE4(pssData->currPageIndex); + CreateTextPrinterTask(pssData->currPageIndex); HidePageSpecificSprites(); } @@ -2910,7 +2914,7 @@ static void SummaryScreen_RemoveWindowByIndex(u8 windowIndex) } } -static void sub_81C2D9C(u8 pageIndex) +static void PrintPageSpecificText(u8 pageIndex) { u16 i; for (i = 0; i < 8; i++) @@ -2918,15 +2922,15 @@ static void sub_81C2D9C(u8 pageIndex) if (pssData->windowIds[i] != 0xFF) FillWindowPixelBuffer(pssData->windowIds[i], 0); } - gUnknown_0861CE54[pageIndex](); + sTextPrinterFunctions[pageIndex](); } -static void sub_81C2DE4(u8 pageIndex) +static void CreateTextPrinterTask(u8 pageIndex) { - CreateTask(gUnknown_0861CE64[pageIndex], 16); + CreateTask(sTextPrinterTasks[pageIndex], 16); } -static void sub_81C2E00(void) +static void PrintInfoPageText(void) { if (pssData->summary.isEgg) { @@ -2946,7 +2950,7 @@ static void sub_81C2E00(void) } } -static void sub_81C2E40(u8 taskId) +static void sTask_PrintInfoPage(u8 taskId) { s16 *data = gTasks[taskId].data; switch (data[0]) @@ -3200,7 +3204,7 @@ static void PrintEggMemo(void) SummaryScreen_PrintTextOnWindow(AddWindowFromTemplateList(gUnknown_0861CCCC, 3), text, 0, 1, 0, 0); } -static void sub_81C3530(void) +static void PrintSkillsPageText(void) { PrintHeldItemName(); PrintRibbonCount(); @@ -3211,7 +3215,7 @@ static void sub_81C3530(void) PrintExpPointsNextLevel(); } -static void sub_81C3554(u8 taskId) +static void sTask_PrintSkillsPage(u8 taskId) { s16 *data = gTasks[taskId].data; @@ -3357,7 +3361,7 @@ static void PrintExpPointsNextLevel(void) SummaryScreen_PrintTextOnWindow(windowId, gStringVar1, offset, 17, 0, 0); } -static void sub_81C3984(void) +static void PrintBattleMoves(void) { PrintMoveNameAndPP(0); PrintMoveNameAndPP(1); @@ -3379,7 +3383,7 @@ static void sub_81C3984(void) } } -static void sub_81C39F0(u8 taskId) +static void sTask_PrintBattleMoves(u8 taskId) { s16 *data = gTasks[taskId].data; @@ -3493,7 +3497,7 @@ static void PrintMovePowerAndAccuracy(u16 moveIndex) } } -static void sub_81C3D08(void) +static void PrintContestMoves(void) { PrintMoveNameAndPP(0); PrintMoveNameAndPP(1); @@ -3507,7 +3511,7 @@ static void sub_81C3D08(void) } } -static void sub_81C3D54(u8 taskId) +static void sTask_PrintContestMoves(u8 taskId) { s16 *data = gTasks[taskId].data; s16 dataa = data[0] - 1; @@ -3641,11 +3645,11 @@ static void PrintHMMovesCantBeForgotten(void) SummaryScreen_PrintTextOnWindow(windowId, gText_HMMovesCantBeForgotten2, 6, 1, 0, 0); } -static void ResetPssSpriteIds(void) +static void ResetSpriteIds(void) { u8 i; - for (i = 0; i < 28; i++) + for (i = 0; i < ARRAY_COUNT(pssData->spriteIds); i++) { pssData->spriteIds[i] = 0xFF; } @@ -3670,7 +3674,7 @@ static void HidePageSpecificSprites(void) // Keeps Pokémon, caught ball and status sprites visible. u8 i; - for (i = 3; i < 28; i++) + for (i = 3; i < ARRAY_COUNT(pssData->spriteIds); i++) { if (pssData->spriteIds[i] != 0xFF) SetSpriteInvisibility(i, TRUE); From 3d79aeb9da19a0488c87400100056ad04d9c165a Mon Sep 17 00:00:00 2001 From: Slawter666 <38655737+Slawter666@users.noreply.github.com> Date: Mon, 4 Feb 2019 12:44:09 +0000 Subject: [PATCH 3/4] More documentation --- src/pokemon_summary_screen.c | 143 ++++++++++++++++++----------------- 1 file changed, 72 insertions(+), 71 deletions(-) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index f88a2470a..2a241620f 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -43,10 +43,11 @@ #include "constants/items.h" #include "constants/moves.h" #include "constants/region_map_sections.h" +#include "constants/rgb.h" #include "constants/songs.h" #include "constants/species.h" -static EWRAM_DATA struct UnkSummaryStruct +static EWRAM_DATA struct PssData { /*0x00*/ union { struct Pokemon *mons; @@ -135,21 +136,21 @@ static bool8 SummaryScreen_DecompressGraphics(void); static void CopyMonToSummaryStruct(struct Pokemon* a); static bool8 ExtractMonDataToSummaryStruct(struct Pokemon* a); static void sub_81C0348(void); -static void sub_81C0484(u8 taskId); -static void sub_81C0510(u8 taskId); -static void sub_81C0604(u8 taskId, s8 a); +static void CloseSummaryScreen(u8 taskId); +static void HandleInput(u8 taskId); +static void ChangePokemon(u8 taskId, s8 a); static void sub_81C0704(u8 taskId); static s8 sub_81C08F8(s8 a); static s8 sub_81C09B4(s8 a); static bool8 sub_81C0A50(struct Pokemon* mon); -static void sub_81C0A8C(u8 taskId, s8 a); +static void ChangePage(u8 taskId, s8 a); static void sub_81C0B8C(u8 taskId); static void sub_81C0C68(u8 taskId); static void sub_81C0CC4(u8 taskId); static void sub_81C0D44(u8 taskId); static void sub_81C0E24(void); static void sub_81C0E48(u8 taskId); -static void sub_81C0F44(u8 taskId); +static void HandleInput_MoveSelect(u8 taskId); static bool8 sub_81C1040(void); static void sub_81C1070(s16* a, s8 b, u8* c); static void sub_81C11F4(u8 a); @@ -175,19 +176,19 @@ static void sub_81C2228(struct Pokemon* mon); static void DrawExperienceProgressBar(struct Pokemon* mon); static void DrawContestMoveHearts(u16 move); static void sub_81C2524(void); -static void sub_81C2554(void); +static void ResetWindows(void); static void sub_81C25E8(void); static void sub_81C2628(void); static void sub_81C2794(void); static void sub_81C27DC(struct Pokemon *mon, u16 a); static void PrintPageNamesAndStatsPageToWindows(void); -static void sub_81C2AFC(u8 a); -static void sub_81C2C38(u8 a); +static void CreatePageWindowTilemaps(u8 a); +static void ClearPageWindowTilemaps(u8 a); static void SummaryScreen_RemoveWindowByIndex(u8 a); static void PrintPageSpecificText(u8 a); static void CreateTextPrinterTask(u8 a); static void PrintInfoPageText(void); -static void sTask_PrintInfoPage(u8 taskId); +static void Task_PrintInfoPage(u8 taskId); static void PrintMonOTName(void); static void PrintMonOTID(void); static void PrintMonAbilityName(void); @@ -203,7 +204,7 @@ static void PrintEggOTName(void); static void PrintEggOTID(void); static void PrintEggState(void); static void PrintEggMemo(void); -static void sTask_PrintSkillsPage(u8 taskId); +static void Task_PrintSkillsPage(u8 taskId); static void PrintHeldItemName(void); static void PrintSkillsPageText(void); static void PrintRibbonCount(void); @@ -213,10 +214,10 @@ static void BufferRightColumnStats(void); static void PrintRightColumnStats(void); static void PrintExpPointsNextLevel(void); static void PrintBattleMoves(void); -static void sTask_PrintBattleMoves(u8 taskId); +static void Task_PrintBattleMoves(u8 taskId); static void PrintMoveNameAndPP(u8 a); static void PrintContestMoves(void); -static void sTask_PrintContestMoves(u8 taskId); +static void Task_PrintContestMoves(u8 taskId); static void PrintContestMoveDescription(u8 a); static void PrintMoveDetails(u16 a); static void PrintNewMoveDetailsOrCancelText(void); @@ -640,10 +641,10 @@ static void (*const sTextPrinterFunctions[])(void) = static void (*const sTextPrinterTasks[])(u8 taskId) = { - sTask_PrintInfoPage, - sTask_PrintSkillsPage, - sTask_PrintBattleMoves, - sTask_PrintContestMoves + Task_PrintInfoPage, + Task_PrintSkillsPage, + Task_PrintBattleMoves, + Task_PrintContestMoves }; static const u8 gUnknown_0861CE74[] = _("{COLOR LIGHT_RED}{SHADOW GREEN}"); @@ -1108,7 +1109,7 @@ static bool8 SummaryScreen_LoadGraphics(void) gMain.state++; break; case 7: - sub_81C2554(); + ResetWindows(); gMain.state++; break; case 8: @@ -1141,7 +1142,7 @@ static bool8 SummaryScreen_LoadGraphics(void) gMain.state++; break; case 15: - sub_81C2AFC(pssData->currPageIndex); + CreatePageWindowTilemaps(pssData->currPageIndex); gMain.state++; break; case 16: @@ -1176,7 +1177,7 @@ static bool8 SummaryScreen_LoadGraphics(void) break; case 22: if (pssData->mode != PSS_MODE_SELECT_MOVE) - CreateTask(sub_81C0510, 0); + CreateTask(HandleInput, 0); else CreateTask(sub_81C171C, 0); gMain.state++; @@ -1186,7 +1187,7 @@ static bool8 SummaryScreen_LoadGraphics(void) gMain.state++; break; case 24: - BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, 0); + BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK); gPaletteFade.bufferTransferDisabled = 0; gMain.state++; break; @@ -1406,13 +1407,13 @@ static void sub_81C0434(void) Free(pssData); } -static void sub_81C044C(u8 taskId) +static void BeginCloseSummaryScreen(u8 taskId) { - BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0); - gTasks[taskId].func = sub_81C0484; + BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK); + gTasks[taskId].func = CloseSummaryScreen; } -static void sub_81C0484(u8 taskId) +static void CloseSummaryScreen(u8 taskId) { if (sub_81221EC() != TRUE && !gPaletteFade.active) { @@ -1430,25 +1431,25 @@ static void sub_81C0484(u8 taskId) } } -static void sub_81C0510(u8 taskId) +static void HandleInput(u8 taskId) { if (sub_81221EC() != TRUE && !gPaletteFade.active) { if (gMain.newKeys & DPAD_UP) { - sub_81C0604(taskId, -1); + ChangePokemon(taskId, -1); } else if (gMain.newKeys & DPAD_DOWN) { - sub_81C0604(taskId, 1); + ChangePokemon(taskId, 1); } else if ((gMain.newKeys & DPAD_LEFT) || GetLRKeysState() == 1) { - sub_81C0A8C(taskId, -1); + ChangePage(taskId, -1); } else if ((gMain.newKeys & DPAD_RIGHT) || GetLRKeysState() == 2) { - sub_81C0A8C(taskId, 1); + ChangePage(taskId, 1); } else if (gMain.newKeys & A_BUTTON) { @@ -1458,7 +1459,7 @@ static void sub_81C0510(u8 taskId) { sub_81C48F0(); PlaySE(SE_SELECT); - sub_81C044C(taskId); + BeginCloseSummaryScreen(taskId); } else { @@ -1471,12 +1472,12 @@ static void sub_81C0510(u8 taskId) { sub_81C48F0(); PlaySE(SE_SELECT); - sub_81C044C(taskId); + BeginCloseSummaryScreen(taskId); } } } -static void sub_81C0604(u8 taskId, s8 a) +static void ChangePokemon(u8 taskId, s8 a) { s8 r4_2; @@ -1587,7 +1588,7 @@ static void sub_81C0704(u8 taskId) if (sub_81221EC() == 0 && FuncIsActiveTask(sub_81C20F0) == 0) { data[0] = 0; - gTasks[taskId].func = sub_81C0510; + gTasks[taskId].func = HandleInput; } return; } @@ -1660,7 +1661,7 @@ static bool8 sub_81C0A50(struct Pokemon* mon) return FALSE; } -static void sub_81C0A8C(u8 taskId, s8 b) +static void ChangePage(u8 taskId, s8 b) { struct PokeSummary *summary = &pssData->summary; s16 *data = gTasks[taskId].data; @@ -1673,7 +1674,7 @@ static void sub_81C0A8C(u8 taskId, s8 b) return; PlaySE(SE_SELECT); - sub_81C2C38(pssData->currPageIndex); + ClearPageWindowTilemaps(pssData->currPageIndex); pssData->currPageIndex += b; data[0] = 0; if (b == 1) @@ -1721,7 +1722,7 @@ static void sub_81C0C68(u8 taskId) data[1] = 0; data[0] = 0; sub_81C1BA0(); - sub_81C2AFC(pssData->currPageIndex); + CreatePageWindowTilemaps(pssData->currPageIndex); SetTypeIcons(); sub_81C0E24(); SwitchTaskToFollowupFunc(taskId); @@ -1770,7 +1771,7 @@ static void sub_81C0D44(u8 taskId) data[1] = 0; data[0] = 0; sub_81C1BA0(); - sub_81C2AFC(pssData->currPageIndex); + CreatePageWindowTilemaps(pssData->currPageIndex); SetTypeIcons(); sub_81C0E24(); SwitchTaskToFollowupFunc(taskId); @@ -1806,10 +1807,10 @@ static void sub_81C0E48(u8 taskId) schedule_bg_copy_tilemap_to_vram(1); schedule_bg_copy_tilemap_to_vram(2); sub_81C4AF8(8); - gTasks[taskId].func = sub_81C0F44; + gTasks[taskId].func = HandleInput_MoveSelect; } -static void sub_81C0F44(u8 taskId) +static void HandleInput_MoveSelect(u8 taskId) { u8 id = taskId; s16 *data = gTasks[taskId].data; @@ -1934,7 +1935,7 @@ static void sub_81C11F4(u8 taskId) schedule_bg_copy_tilemap_to_vram(0); schedule_bg_copy_tilemap_to_vram(1); schedule_bg_copy_tilemap_to_vram(2); - gTasks[taskId].func = sub_81C0510; + gTasks[taskId].func = HandleInput; } static void sub_81C129C(u8 taskId) @@ -2010,7 +2011,7 @@ static void sub_81C13B0(u8 taskId, bool8 b) DrawContestMoveHearts(move); schedule_bg_copy_tilemap_to_vram(1); schedule_bg_copy_tilemap_to_vram(2); - gTasks[taskId].func = sub_81C0F44; + gTasks[taskId].func = HandleInput_MoveSelect; } static void SwapMonMoves(struct Pokemon *mon, u8 moveIndex1, u8 moveIndex2) @@ -2110,11 +2111,11 @@ static void sub_81C174C(u8 taskId) } else if (gMain.newKeys & DPAD_LEFT || GetLRKeysState() == 1) { - sub_81C0A8C(taskId, -1); + ChangePage(taskId, -1); } else if (gMain.newKeys & DPAD_RIGHT || GetLRKeysState() == 2) { - sub_81C0A8C(taskId, 1); + ChangePage(taskId, 1); } else if (gMain.newKeys & A_BUTTON) { @@ -2124,7 +2125,7 @@ static void sub_81C174C(u8 taskId) PlaySE(SE_SELECT); gUnknown_0203CF21 = pssData->firstMoveIndex; gSpecialVar_0x8005 = gUnknown_0203CF21; - sub_81C044C(taskId); + BeginCloseSummaryScreen(taskId); } else { @@ -2139,7 +2140,7 @@ static void sub_81C174C(u8 taskId) PlaySE(SE_SELECT); gUnknown_0203CF21 = 4; gSpecialVar_0x8005 = 4; - sub_81C044C(taskId); + BeginCloseSummaryScreen(taskId); } } } @@ -2195,7 +2196,7 @@ static void sub_81C1940(u8 taskId) ClearWindowTilemap(13); move = pssData->summary.moves[pssData->firstMoveIndex]; gTasks[taskId].func = sub_81C174C; - sub_81C0A8C(taskId, -1); + ChangePage(taskId, -1); sub_81C1DA4(9, -2); sub_81C1EFC(9, -2, move); } @@ -2209,7 +2210,7 @@ static void sub_81C1940(u8 taskId) ClearWindowTilemap(13); move = pssData->summary.moves[pssData->firstMoveIndex]; gTasks[taskId].func = sub_81C174C; - sub_81C0A8C(taskId, 1); + ChangePage(taskId, 1); sub_81C1DA4(9, -2); sub_81C1EFC(9, -2, move); } @@ -2622,7 +2623,7 @@ static void sub_81C2524(void) ChangeBgX(3, 0, 0); } -static void sub_81C2554(void) +static void ResetWindows(void) { u8 i; InitWindows(gUnknown_0861CC24); @@ -2632,7 +2633,7 @@ static void sub_81C2554(void) { FillWindowPixelBuffer(i, 0); } - for (i = 0; i < 8; i++) + for (i = 0; i < ARRAY_COUNT(pssData->windowIds); i++) { pssData->windowIds[i] = 0xFF; } @@ -2786,7 +2787,7 @@ static void PrintPageNamesAndStatsPageToWindows(void) SummaryScreen_PrintTextOnWindow(15, gText_Jam, 0, 17, 0, 1); } -static void sub_81C2AFC(u8 a) +static void CreatePageWindowTilemaps(u8 page) { u8 i; @@ -2795,22 +2796,22 @@ static void sub_81C2AFC(u8 a) ClearWindowTilemap(2); ClearWindowTilemap(3); - switch (a) + switch (page) { - case 0: + case PSS_PAGE_INFO: PutWindowTilemap(0); PutWindowTilemap(4); if (sub_81A6BF4() == TRUE || sub_81B9E94() == TRUE) PutWindowTilemap(8); PutWindowTilemap(9); break; - case 1: + case PSS_PAGE_SKILLS: PutWindowTilemap(1); PutWindowTilemap(10); PutWindowTilemap(11); PutWindowTilemap(12); break; - case 2: + case PSS_PAGE_BATTLE_MOVES: PutWindowTilemap(2); if (pssData->mode == PSS_MODE_SELECT_MOVE) { @@ -2822,7 +2823,7 @@ static void sub_81C2AFC(u8 a) PutWindowTilemap(5); } break; - case 3: + case PSS_PAGE_CONTEST_MOVES: PutWindowTilemap(3); if (pssData->mode == PSS_MODE_SELECT_MOVE) { @@ -2836,7 +2837,7 @@ static void sub_81C2AFC(u8 a) break; } - for (i = 0; i < 8; i++) + for (i = 0; i < ARRAY_COUNT(pssData->windowIds); i++) { PutWindowTilemap(pssData->windowIds[i]); } @@ -2844,23 +2845,23 @@ static void sub_81C2AFC(u8 a) schedule_bg_copy_tilemap_to_vram(0); } -static void sub_81C2C38(u8 a) +static void ClearPageWindowTilemaps(u8 page) { u8 i; - switch (a) + switch (page) { - case 0: + case PSS_PAGE_INFO: ClearWindowTilemap(4); if (sub_81A6BF4() == TRUE || sub_81B9E94() == TRUE) ClearWindowTilemap(8); ClearWindowTilemap(9); break; - case 1: + case PSS_PAGE_SKILLS: ClearWindowTilemap(10); ClearWindowTilemap(11); ClearWindowTilemap(12); break; - case 2: + case PSS_PAGE_BATTLE_MOVES: if (pssData->mode == PSS_MODE_SELECT_MOVE) { if (pssData->newMove != MOVE_NONE || pssData->firstMoveIndex != MAX_MON_MOVES) @@ -2871,7 +2872,7 @@ static void sub_81C2C38(u8 a) ClearWindowTilemap(5); } break; - case 3: + case PSS_PAGE_CONTEST_MOVES: if (pssData->mode == PSS_MODE_SELECT_MOVE) { if (pssData->newMove != MOVE_NONE || pssData->firstMoveIndex != MAX_MON_MOVES) @@ -2884,7 +2885,7 @@ static void sub_81C2C38(u8 a) break; } - for (i = 0; i < 8; i++) + for (i = 0; i < ARRAY_COUNT(pssData->windowIds); i++) { SummaryScreen_RemoveWindowByIndex(i); } @@ -2917,7 +2918,7 @@ static void SummaryScreen_RemoveWindowByIndex(u8 windowIndex) static void PrintPageSpecificText(u8 pageIndex) { u16 i; - for (i = 0; i < 8; i++) + for (i = 0; i < ARRAY_COUNT(pssData->windowIds); i++) { if (pssData->windowIds[i] != 0xFF) FillWindowPixelBuffer(pssData->windowIds[i], 0); @@ -2950,7 +2951,7 @@ static void PrintInfoPageText(void) } } -static void sTask_PrintInfoPage(u8 taskId) +static void Task_PrintInfoPage(u8 taskId) { s16 *data = gTasks[taskId].data; switch (data[0]) @@ -3078,7 +3079,7 @@ static void PrintMonTrainerMemo(void) static void BufferNatureString(void) { - struct UnkSummaryStruct *sumStruct = pssData; + struct PssData *sumStruct = pssData; DynamicPlaceholderTextUtil_SetPlaceholderPtr(2, gNatureNamePointers[sumStruct->summary.nature]); DynamicPlaceholderTextUtil_SetPlaceholderPtr(5, gText_EmptyString5); } @@ -3215,7 +3216,7 @@ static void PrintSkillsPageText(void) PrintExpPointsNextLevel(); } -static void sTask_PrintSkillsPage(u8 taskId) +static void Task_PrintSkillsPage(u8 taskId) { s16 *data = gTasks[taskId].data; @@ -3383,7 +3384,7 @@ static void PrintBattleMoves(void) } } -static void sTask_PrintBattleMoves(u8 taskId) +static void Task_PrintBattleMoves(u8 taskId) { s16 *data = gTasks[taskId].data; @@ -3434,7 +3435,7 @@ static void PrintMoveNameAndPP(u8 moveIndex) u32 ppState; const u8 *text; u32 offset; - struct UnkSummaryStruct *summaryStruct = pssData; + struct PssData *summaryStruct = pssData; u8 moveNameWindowId = AddWindowFromTemplateList(gUnknown_0861CD14, 0); u8 ppValueWindowId = AddWindowFromTemplateList(gUnknown_0861CD14, 1); u16 move = summaryStruct->summary.moves[moveIndex]; @@ -3511,7 +3512,7 @@ static void PrintContestMoves(void) } } -static void sTask_PrintContestMoves(u8 taskId) +static void Task_PrintContestMoves(u8 taskId) { s16 *data = gTasks[taskId].data; s16 dataa = data[0] - 1; From fa352cfda350dddf42e2cf5673b72069d63bbc32 Mon Sep 17 00:00:00 2001 From: Slawter666 <38655737+Slawter666@users.noreply.github.com> Date: Mon, 4 Feb 2019 14:35:49 +0000 Subject: [PATCH 4/4] Some more labelling --- src/pokemon_summary_screen.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 2a241620f..d878d2c9e 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -236,7 +236,7 @@ static void SetNewMoveTypeIcon(void); static void sub_81C4568(u8 a, u8 b); static u8 CreatePokemonSprite(struct Pokemon *a, s16 *b); static u8 sub_81C47B4(struct Pokemon *unused); -static void sub_81C4844(struct Sprite *); +static void SpriteCB_Pokemon(struct Sprite *); static void sub_81C48F0(void); static void CreateMonMarkingsSprite(struct Pokemon *mon); static void RemoveAndCreateMonMarkingsSprite(struct Pokemon *mon); @@ -3853,17 +3853,17 @@ static u8 CreatePokemonSprite(struct Pokemon *mon, s16 *a1) } } (*a1)++; - return -1; + return 0xFF; case 1: pal = GetMonSpritePalStructFromOtIdPersonality(summary->species2, summary->OTID, summary->pid); LoadCompressedSpritePalette(pal); SetMultiuseSpriteTemplateToPokemon(pal->tag, 1); (*a1)++; - return -1; + return 0xFF; } } -static void sub_81C4778(void) +static void PlayMonCry(void) { struct PokeSummary *summary = &pssData->summary; if (!summary->isEgg) @@ -3889,7 +3889,7 @@ static u8 sub_81C47B4(struct Pokemon *unused) sprite->data[0] = summary->species2; sprite->data[2] = 0; - gSprites[spriteId].callback = sub_81C4844; + gSprites[spriteId].callback = SpriteCB_Pokemon; sprite->oam.priority = 0; if (!IsMonSpriteNotFlipped(summary->species2)) @@ -3904,14 +3904,14 @@ static u8 sub_81C47B4(struct Pokemon *unused) return spriteId; } -static void sub_81C4844(struct Sprite *sprite) +static void SpriteCB_Pokemon(struct Sprite *sprite) { struct PokeSummary *summary = &pssData->summary; if (!gPaletteFade.active && sprite->data[2] != 1) { sprite->data[1] = IsMonSpriteNotFlipped(sprite->data[0]); - sub_81C4778(); + PlayMonCry(); PokemonSummaryDoMonAnimation(sprite, sprite->data[0], summary->isEgg); } }