sub_81461D8
This commit is contained in:
@@ -5,92 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_81461D8
|
||||
sub_81461D8: @ 81461D8
|
||||
push {r4-r7,lr}
|
||||
movs r6, 0
|
||||
ldr r4, =gUnknown_203F3C8
|
||||
ldr r0, [r4]
|
||||
movs r2, 0xBE
|
||||
lsls r2, 1
|
||||
adds r1, r0, r2
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0xFF
|
||||
beq _081461FC
|
||||
adds r1, r0, 0
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
ldr r1, =gSprites
|
||||
adds r0, r1
|
||||
bl sub_8097070
|
||||
_081461FC:
|
||||
ldr r0, [r4]
|
||||
ldrb r2, [r0, 0x9]
|
||||
cmp r2, 0
|
||||
beq _08146274
|
||||
ldrb r1, [r0, 0x8]
|
||||
movs r0, 0x3
|
||||
ands r0, r1
|
||||
cmp r0, 0x1
|
||||
bne _08146274
|
||||
cmp r6, r2
|
||||
bcs _08146264
|
||||
adds r7, r4, 0
|
||||
_08146214:
|
||||
ldr r0, [r7]
|
||||
lsls r4, r6, 1
|
||||
ldr r1, =0x0000017d
|
||||
adds r0, r1
|
||||
adds r1, r0, r4
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0xFF
|
||||
beq _08146256
|
||||
adds r1, r0, 0
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
ldr r5, =gSprites
|
||||
adds r0, r5
|
||||
bl DestroySprite
|
||||
ldr r1, [r7]
|
||||
ldr r2, =0x0000017d
|
||||
adds r0, r1, r2
|
||||
adds r0, r4
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0xFF
|
||||
beq _08146256
|
||||
adds r2, 0x1
|
||||
adds r0, r1, r2
|
||||
adds r0, r4
|
||||
ldrb r1, [r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r5
|
||||
bl sub_8097070
|
||||
_08146256:
|
||||
adds r0, r6, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r0, [r7]
|
||||
ldrb r0, [r0, 0x9]
|
||||
cmp r6, r0
|
||||
bcc _08146214
|
||||
_08146264:
|
||||
movs r4, 0x80
|
||||
lsls r4, 8
|
||||
adds r0, r4, 0
|
||||
bl FreeSpriteTilesByTag
|
||||
adds r0, r4, 0
|
||||
bl FreeSpritePaletteByTag
|
||||
_08146274:
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
thumb_func_end sub_81461D8
|
||||
|
||||
@ file boundary maybe
|
||||
|
||||
thumb_func_start sub_8146288
|
||||
|
||||
@@ -14,5 +14,6 @@ void sub_809707C(void);
|
||||
void FreeMonIconPalettes(void);
|
||||
u16 sub_8096FD4(u16);
|
||||
u8 sub_8096ECC(u16, void (*)(struct Sprite *), s16, s16, u8, bool32);
|
||||
void sub_8097070(struct Sprite *);
|
||||
|
||||
#endif // GUARD_POKEMON_ICON_H
|
||||
|
||||
@@ -361,3 +361,28 @@ void sub_8146060(void)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void sub_81461D8(void)
|
||||
{
|
||||
u8 r6 = 0;
|
||||
if (gUnknown_203F3C8->unk_017C != 0xFF)
|
||||
sub_8097070(&gSprites[gUnknown_203F3C8->unk_017C]);
|
||||
if (gUnknown_203F3C8->unk_0000.unk_09 != 0 && gUnknown_203F3C8->unk_0000.unk_08_0 == 1)
|
||||
{
|
||||
for (; r6 < gUnknown_203F3C8->unk_0000.unk_09; r6++)
|
||||
{
|
||||
if (gUnknown_203F3C8->unk_017D[r6][0] != 0xFF)
|
||||
{
|
||||
DestroySprite(&gSprites[gUnknown_203F3C8->unk_017D[r6][0]]);
|
||||
// This might be a typo. Uncomment the next line, and comment the one that follows, to get the presumed intended behavior.
|
||||
// if (gUnknown_203F3C8->unk_017D[r6][1] != 0xFF)
|
||||
if (gUnknown_203F3C8->unk_017D[r6][0] != 0xFF)
|
||||
{
|
||||
sub_8097070(&gSprites[gUnknown_203F3C8->unk_017D[r6][1]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
FreeSpriteTilesByTag(0x8000);
|
||||
FreeSpritePaletteByTag(0x8000);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user