diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/debug/watanabe_debug_menu.c | 2 | ||||
-rw-r--r-- | src/party_menu.c | 6 | ||||
-rw-r--r-- | src/pokemon_icon.c | 18 | ||||
-rw-r--r-- | src/trade.c | 22 |
4 files changed, 22 insertions, 26 deletions
diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index da9aced98..ff5fd5fe5 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -2684,7 +2684,7 @@ void debug_80C6CB8(u8 taskId) gSprites[gUnknown_Debug_2038A20->unk3].callback = debug_69; gSprites[gUnknown_Debug_2038A20->unk3].oam.priority = 0; - gUnknown_Debug_2038A20->round1Points = CreateMonIcon(gUnknown_Debug_2038A20->totalPoints, sub_809D62C, 0x68, 0x2C, 0, 0); + gUnknown_Debug_2038A20->round1Points = CreateMonIcon(gUnknown_Debug_2038A20->totalPoints, SpriteCB_PokemonIcon, 0x68, 0x2C, 0, 0); PrintFootprint(SpeciesToNationalPokedexNum(gUnknown_Debug_2038A20->totalPoints), 2, 0x3fc); diff --git a/src/party_menu.c b/src/party_menu.c index cb6749d63..dcb2ba200 100644 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -2261,7 +2261,7 @@ void SetMonIconAnimByHP(u8 spriteId, u16 currentHP, u16 maxHP) animNum = 4; } - sub_809D824(&gSprites[spriteId], animNum); + SetPartyHPBarSprite(&gSprites[spriteId], animNum); } void SetMonIconAnim(u8 spriteId, struct Pokemon *pokemon) @@ -2280,7 +2280,7 @@ void CreatePartyMenuMonIcon(u8 taskId, u8 monIndex, u8 menuType, struct Pokemon u16 species2 = GetMonData(pokemon, MON_DATA_SPECIES2); u32 personality = GetMonData(pokemon, MON_DATA_PERSONALITY); - u8 spriteId = CreateMonIcon(species2, sub_809D62C, x, y, 5, personality); + u8 spriteId = CreateMonIcon(species2, SpriteCB_PokemonIcon, x, y, 5, personality); SetMonIconSpriteId(taskId, monIndex, spriteId); SetMonIconAnim(spriteId, pokemon); } @@ -2309,7 +2309,7 @@ void CreateMonIcon_LinkMultiBattle(u8 taskId, u8 monIndex, u8 menuType, struct M u8 x = gUnknown_08376678[menuType][monIndex].x; u8 y = gUnknown_08376678[menuType][monIndex].y; - u8 spriteId = CreateMonIcon(pokemon->species, sub_809D62C, x, y, 5, pokemon->personality); + u8 spriteId = CreateMonIcon(pokemon->species, SpriteCB_PokemonIcon, x, y, 5, pokemon->personality); SetMonIconSpriteId(taskId, monIndex, spriteId); SetMonIconAnimByHP(spriteId, pokemon->hp, pokemon->maxhp); } diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 76c6a1c5c..9d76b158a 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -1018,9 +1018,9 @@ u16 GetUnownLetterByPersonality(u32); const u8 *GetMonIconPtr(u16, u32 personality); u8 UpdateMonIconFrame(struct Sprite *); u8 CreateMonIconSprite(struct MonIconSpriteTemplate *, s16, s16, u8); -void sub_809D7E8(struct Sprite *); +void DestroyPokemonIconSprite(struct Sprite *); -// duplicate of sub_809D3A4 +// duplicate of CreateMonIcon u8 unref_sub_809D26C(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority) { u8 spriteId; @@ -1139,7 +1139,7 @@ const u8 *GetMonIconPtr(u16 species, u32 personality) void sub_809D510(struct Sprite *sprite) { - sub_809D7E8(sprite); + DestroyPokemonIconSprite(sprite); } void sub_809D51C(void) @@ -1192,12 +1192,11 @@ void sub_809D608(u16 species) FreeSpritePaletteByTag(gMonIconPaletteTable[palIndex].tag); } -void sub_809D62C(struct Sprite *sprite) +void SpriteCB_PokemonIcon(struct Sprite *sprite) { UpdateMonIconFrame(sprite); } -// TODO: try to find a way to avoid using asm statement u8 UpdateMonIconFrame(struct Sprite *sprite) { u8 result = 0; @@ -1221,10 +1220,7 @@ u8 UpdateMonIconFrame(struct Sprite *sprite) (u8 *)sprite->images + (sSpriteImageSizes[sprite->oam.shape][sprite->oam.size] * frame), OBJ_VRAM0 + sprite->oam.tileNum * TILE_SIZE_4BPP, sSpriteImageSizes[sprite->oam.shape][sprite->oam.size]); - { - register u8 duration asm("r0") = sprite->anims[sprite->animNum][sprite->animCmdIndex].frame.duration; - sprite->animDelayCounter = duration; - } + sprite->animDelayCounter = sprite->anims[sprite->animNum][sprite->animCmdIndex].frame.duration & 0xFF; sprite->animCmdIndex++; result = sprite->animCmdIndex; break; @@ -1261,14 +1257,14 @@ u8 CreateMonIconSprite(struct MonIconSpriteTemplate *iconTemplate, s16 x, s16 y, return spriteId; } -void sub_809D7E8(struct Sprite *sprite) +void DestroyPokemonIconSprite(struct Sprite *sprite) { struct SpriteFrameImage image = { NULL, sSpriteImageSizes[sprite->oam.shape][sprite->oam.size] }; sprite->images = ℑ DestroySprite(sprite); } -void sub_809D824(struct Sprite *sprite, u8 animNum) +void SetPartyHPBarSprite(struct Sprite *sprite, u8 animNum) { sprite->animNum = animNum; sprite->animDelayCounter = 0; diff --git a/src/trade.c b/src/trade.c index 2659c8833..8433d087f 100644 --- a/src/trade.c +++ b/src/trade.c @@ -1150,9 +1150,9 @@ static void sub_8047EC0(void) gUnknown_03004824->partyCounts[0] = gPlayerPartyCount; gUnknown_03004824->partyCounts[1] = gEnemyPartyCount; for (i = 0; i < gUnknown_03004824->partyCounts[0]; i ++) - gUnknown_03004824->partyIcons[0][i] = CreateMonIcon(GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2), sub_809D62C, gTradeMonSpriteCoords[i][0] * 8 + 14, gTradeMonSpriteCoords[i][1] * 8 - 12, TRUE, GetMonData(&gPlayerParty[i], MON_DATA_PERSONALITY)); + gUnknown_03004824->partyIcons[0][i] = CreateMonIcon(GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2), SpriteCB_PokemonIcon, gTradeMonSpriteCoords[i][0] * 8 + 14, gTradeMonSpriteCoords[i][1] * 8 - 12, TRUE, GetMonData(&gPlayerParty[i], MON_DATA_PERSONALITY)); for (i = 0; i < gUnknown_03004824->partyCounts[1]; i ++) - gUnknown_03004824->partyIcons[1][i] = CreateMonIcon(GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2, NULL), sub_809D62C, gTradeMonSpriteCoords[6 + i][0] * 8 + 14, gTradeMonSpriteCoords[6 + i][1] * 8 - 12, TRUE, GetMonData(&gEnemyParty[i], MON_DATA_PERSONALITY)); + gUnknown_03004824->partyIcons[1][i] = CreateMonIcon(GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2, NULL), SpriteCB_PokemonIcon, gTradeMonSpriteCoords[6 + i][0] * 8 + 14, gTradeMonSpriteCoords[6 + i][1] * 8 - 12, TRUE, GetMonData(&gEnemyParty[i], MON_DATA_PERSONALITY)); nullsub_5(2, 0); gMain.state ++; break; @@ -1300,9 +1300,9 @@ static void sub_80484F4(void) sub_804A41C(0); sub_804A41C(1); for (i = 0; i < gUnknown_03004824->partyCounts[0]; i ++) - gUnknown_03004824->partyIcons[0][i] = CreateMonIcon(GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL), sub_809D62C, gTradeMonSpriteCoords[i][0] * 8 + 14, gTradeMonSpriteCoords[i][1] * 8 - 12, TRUE, GetMonData(&gPlayerParty[i], MON_DATA_PERSONALITY)); + gUnknown_03004824->partyIcons[0][i] = CreateMonIcon(GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL), SpriteCB_PokemonIcon, gTradeMonSpriteCoords[i][0] * 8 + 14, gTradeMonSpriteCoords[i][1] * 8 - 12, TRUE, GetMonData(&gPlayerParty[i], MON_DATA_PERSONALITY)); for (i = 0; i < gUnknown_03004824->partyCounts[1]; i ++) - gUnknown_03004824->partyIcons[1][i] = CreateMonIcon(GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2, NULL), sub_809D62C, gTradeMonSpriteCoords[6 + i][0] * 8 + 14, gTradeMonSpriteCoords[6 + i][1] * 8 - 12, TRUE, GetMonData(&gEnemyParty[i], MON_DATA_PERSONALITY)); + gUnknown_03004824->partyIcons[1][i] = CreateMonIcon(GetMonData(&gEnemyParty[i], MON_DATA_SPECIES2, NULL), SpriteCB_PokemonIcon, gTradeMonSpriteCoords[6 + i][0] * 8 + 14, gTradeMonSpriteCoords[6 + i][1] * 8 - 12, TRUE, GetMonData(&gEnemyParty[i], MON_DATA_PERSONALITY)); nullsub_5(2, 0); gMain.state ++; break; @@ -2259,7 +2259,7 @@ static void sub_8049ED4(u8 a0) gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]].data[0] = 20; gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]].data[2] = (gTradeMonSpriteCoords[6 * whichParty + whichPokemon][0] + gTradeMonSpriteCoords[6 * whichParty + whichPokemon + 1][0]) / 2 * 8 + 14; gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]].data[4] = gTradeMonSpriteCoords[6 * whichParty + whichPokemon][1] * 8 - 12; - StoreSpriteCallbackInData(&gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]], sub_809D62C); + StoreSpriteCallbackInData(&gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]], SpriteCB_PokemonIcon); gUnknown_03004824->unk_0080[a0] ++; sub_8078A34(&gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]]); Menu_DestroyCursor(); @@ -2271,7 +2271,7 @@ static void sub_8049ED4(u8 a0) } break; case 2: - if (gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]].callback == sub_809D62C) + if (gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]].callback == SpriteCB_PokemonIcon) { gUnknown_03004824->unk_0080[a0] = 3; } @@ -2472,7 +2472,7 @@ static void sub_8049ED4(u8 a0) "\tadds r0, r1\n" "\tlsls r0, 2\n" "\tadds r0, r7\n" - "\tldr r1, _0804A0A0 @ =sub_809D62C\n" + "\tldr r1, _0804A0A0 @ =SpriteCB_PokemonIcon\n" "\tbl StoreSpriteCallbackInData\n" "\tldr r2, _0804A09C @ =gUnknown_03004824\n" "\tldr r1, [r2]\n" @@ -2535,7 +2535,7 @@ static void sub_8049ED4(u8 a0) "_0804A094: .4byte gSprites\n" "_0804A098: .4byte gTradeMonSpriteCoords\n" "_0804A09C: .4byte gUnknown_03004824\n" - "_0804A0A0: .4byte sub_809D62C\n" + "_0804A0A0: .4byte SpriteCB_PokemonIcon\n" "_0804A0A4: .4byte gUnknown_0820C330\n" "_0804A0A8: .4byte gTradePartyBoxTilemap\n" "_0804A0AC:\n" @@ -2555,7 +2555,7 @@ static void sub_8049ED4(u8 a0) "\tadds r2, 0x1C\n" "\tadds r0, r2\n" "\tldr r1, [r0]\n" - "\tldr r0, _0804A0E0 @ =sub_809D62C\n" + "\tldr r0, _0804A0E0 @ =SpriteCB_PokemonIcon\n" "\tcmp r1, r0\n" "\tbeq _0804A0D4\n" "\tb _0804A294\n" @@ -2565,7 +2565,7 @@ static void sub_8049ED4(u8 a0) "\tb _0804A294\n" "\t.align 2, 0\n" "_0804A0DC: .4byte gSprites\n" - "_0804A0E0: .4byte sub_809D62C\n" + "_0804A0E0: .4byte SpriteCB_PokemonIcon\n" "_0804A0E4:\n" "\tadds r0, r5, 0\n" "\tadds r0, 0xC8\n" @@ -3346,7 +3346,7 @@ static void sub_804AF10(void) { for (j = 0; j < gUnknown_03004824->partyCounts[i]; j ++) { - sub_809D824(&gSprites[gUnknown_03004824->partyIcons[i][j]], 4 - gUnknown_03004824->unk_0069[i][j]); + SetPartyHPBarSprite(&gSprites[gUnknown_03004824->partyIcons[i][j]], 4 - gUnknown_03004824->unk_0069[i][j]); } } } |