summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pokemon_special_anim_scene.c47
1 files changed, 26 insertions, 21 deletions
diff --git a/src/pokemon_special_anim_scene.c b/src/pokemon_special_anim_scene.c
index b3f005c87..ec056a2b0 100644
--- a/src/pokemon_special_anim_scene.c
+++ b/src/pokemon_special_anim_scene.c
@@ -1038,14 +1038,8 @@ void PSA_UseItem_CleanUpForCancel(void)
static void InitItemIconSpriteState(struct PokemonSpecialAnimScene * scene, struct Sprite * sprite, u8 closeness)
{
- u16 species;
+ u16 species, x, y;
u32 personality;
- #ifndef NONMATCHING
- register int x asm("r4"); // FIXME
- #else
- int x;
- #endif
- u8 y;
if (closeness == 3)
{
sprite->pos1.x = 120;
@@ -1060,22 +1054,33 @@ static void InitItemIconSpriteState(struct PokemonSpecialAnimScene * scene, stru
sprite->pos1.y += 4;
species = PSA_GetMonSpecies();
personality = PSA_GetMonPersonality();
- if (PSA_GetAnimType() == 4)
+ switch (PSA_GetAnimType())
{
- x = Menu2_GetMonSpriteAnchorCoord(species, personality, 0);
- y = Menu2_GetMonSpriteAnchorCoord(species, personality, 1);
- }
- else
- {
- x = Menu2_GetMonSpriteAnchorCoord(species, personality, 3);
- y = Menu2_GetMonSpriteAnchorCoord(species, personality, 4);
+ case 4:
+ {
+ x = Menu2_GetMonSpriteAnchorCoord(species, personality, 0);
+ y = Menu2_GetMonSpriteAnchorCoord(species, personality, 1);
+ if (x == 0xFF)
+ x = 0;
+ if (y == 0xFF)
+ y = 0;
+ sprite->data[6] = x;
+ sprite->data[7] = y;
+ break;
+ }
+ default:
+ {
+ x = Menu2_GetMonSpriteAnchorCoord(species, personality, 3);
+ y = Menu2_GetMonSpriteAnchorCoord(species, personality, 4);
+ if (x == 0xFF)
+ x = 0;
+ if (y == 0xFF)
+ y = 0;
+ sprite->data[6] = x;
+ sprite->data[7] = y;
+ break;
+ }
}
- if (x == 0xFF)
- x = 0;
- if (y == 0xFF)
- y = 0;
- sprite->data[6] = x;
- sprite->data[7] = y;
ItemSpriteZoom_UpdateYPos(sprite, closeness);
}