Pokecenter heal and HOF field effects
This commit is contained in:
@@ -5,977 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FldEff_PokecenterHeal
|
||||
FldEff_PokecenterHeal: @ 8083B8C
|
||||
push {r4,lr}
|
||||
bl CalculatePlayerPartyCount
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r0, _08083BC8 @ =Task_PokecenterHeal
|
||||
movs r1, 0xFF
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
ldr r0, _08083BCC @ =gTasks
|
||||
adds r1, r0
|
||||
strh r4, [r1, 0xA]
|
||||
movs r0, 0x5D
|
||||
strh r0, [r1, 0xC]
|
||||
movs r0, 0x24
|
||||
strh r0, [r1, 0xE]
|
||||
movs r0, 0x80
|
||||
strh r0, [r1, 0x10]
|
||||
movs r0, 0x18
|
||||
strh r0, [r1, 0x12]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08083BC8: .4byte Task_PokecenterHeal
|
||||
_08083BCC: .4byte gTasks
|
||||
thumb_func_end FldEff_PokecenterHeal
|
||||
|
||||
thumb_func_start Task_PokecenterHeal
|
||||
Task_PokecenterHeal: @ 8083BD0
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
ldr r0, _08083BF8 @ =gTasks
|
||||
adds r1, r0
|
||||
ldr r2, _08083BFC @ =sPokecenterHealTaskCBTable
|
||||
movs r3, 0x8
|
||||
ldrsh r0, [r1, r3]
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldr r2, [r0]
|
||||
adds r0, r1, 0
|
||||
bl _call_via_r2
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083BF8: .4byte gTasks
|
||||
_08083BFC: .4byte sPokecenterHealTaskCBTable
|
||||
thumb_func_end Task_PokecenterHeal
|
||||
|
||||
thumb_func_start PokecenterHealEffect_0
|
||||
PokecenterHealEffect_0: @ 8083C00
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldrh r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x8]
|
||||
movs r1, 0xA
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r2, 0xC
|
||||
ldrsh r1, [r4, r2]
|
||||
movs r3, 0xE
|
||||
ldrsh r2, [r4, r3]
|
||||
movs r3, 0x1
|
||||
bl CreatePokeballGlowSprite
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r4, 0x14]
|
||||
movs r1, 0x10
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r2, 0x12
|
||||
ldrsh r1, [r4, r2]
|
||||
bl PokecenterHealEffectHelper
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r4, 0x16]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end PokecenterHealEffect_0
|
||||
|
||||
thumb_func_start PokecenterHealEffect_1
|
||||
PokecenterHealEffect_1: @ 8083C3C
|
||||
push {r4,lr}
|
||||
adds r2, r0, 0
|
||||
ldr r3, _08083C74 @ =gSprites
|
||||
movs r1, 0x14
|
||||
ldrsh r0, [r2, r1]
|
||||
lsls r1, r0, 4
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
adds r1, r3
|
||||
movs r4, 0x2E
|
||||
ldrsh r0, [r1, r4]
|
||||
cmp r0, 0x1
|
||||
ble _08083C6E
|
||||
movs r0, 0x16
|
||||
ldrsh r1, [r2, r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r3
|
||||
ldrh r1, [r0, 0x2E]
|
||||
adds r1, 0x1
|
||||
strh r1, [r0, 0x2E]
|
||||
ldrh r0, [r2, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r2, 0x8]
|
||||
_08083C6E:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083C74: .4byte gSprites
|
||||
thumb_func_end PokecenterHealEffect_1
|
||||
|
||||
thumb_func_start PokecenterHealEffect_2
|
||||
PokecenterHealEffect_2: @ 8083C78
|
||||
push {lr}
|
||||
adds r3, r0, 0
|
||||
ldr r2, _08083C9C @ =gSprites
|
||||
movs r0, 0x14
|
||||
ldrsh r1, [r3, r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0x4
|
||||
ble _08083C98
|
||||
ldrh r0, [r3, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r3, 0x8]
|
||||
_08083C98:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083C9C: .4byte gSprites
|
||||
thumb_func_end PokecenterHealEffect_2
|
||||
|
||||
thumb_func_start PokecenterHealEffect_3
|
||||
PokecenterHealEffect_3: @ 8083CA0
|
||||
push {lr}
|
||||
ldr r2, _08083CD8 @ =gSprites
|
||||
movs r3, 0x14
|
||||
ldrsh r1, [r0, r3]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r1, r0, r2
|
||||
movs r2, 0x2E
|
||||
ldrsh r0, [r1, r2]
|
||||
cmp r0, 0x6
|
||||
ble _08083CD2
|
||||
adds r0, r1, 0
|
||||
bl DestroySprite
|
||||
movs r0, 0x19
|
||||
bl FieldEffectActiveListRemove
|
||||
ldr r0, _08083CDC @ =Task_PokecenterHeal
|
||||
bl FindTaskIdByFunc
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl DestroyTask
|
||||
_08083CD2:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083CD8: .4byte gSprites
|
||||
_08083CDC: .4byte Task_PokecenterHeal
|
||||
thumb_func_end PokecenterHealEffect_3
|
||||
|
||||
thumb_func_start FldEff_HallOfFameRecord
|
||||
FldEff_HallOfFameRecord: @ 8083CE0
|
||||
push {r4,lr}
|
||||
bl CalculatePlayerPartyCount
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r0, _08083D14 @ =Task_HallOfFameRecord
|
||||
movs r1, 0xFF
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
ldr r0, _08083D18 @ =gTasks
|
||||
adds r1, r0
|
||||
strh r4, [r1, 0xA]
|
||||
movs r0, 0x75
|
||||
strh r0, [r1, 0xC]
|
||||
movs r0, 0x3C
|
||||
strh r0, [r1, 0xE]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08083D14: .4byte Task_HallOfFameRecord
|
||||
_08083D18: .4byte gTasks
|
||||
thumb_func_end FldEff_HallOfFameRecord
|
||||
|
||||
thumb_func_start Task_HallOfFameRecord
|
||||
Task_HallOfFameRecord: @ 8083D1C
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
ldr r0, _08083D44 @ =gTasks
|
||||
adds r1, r0
|
||||
ldr r2, _08083D48 @ =sHallOfFameRecordTaskCBTable
|
||||
movs r3, 0x8
|
||||
ldrsh r0, [r1, r3]
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldr r2, [r0]
|
||||
adds r0, r1, 0
|
||||
bl _call_via_r2
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083D44: .4byte gTasks
|
||||
_08083D48: .4byte sHallOfFameRecordTaskCBTable
|
||||
thumb_func_end Task_HallOfFameRecord
|
||||
|
||||
thumb_func_start HallOfFameRecordEffect_0
|
||||
HallOfFameRecordEffect_0: @ 8083D4C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldrh r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x8]
|
||||
movs r1, 0xA
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r2, 0xC
|
||||
ldrsh r1, [r4, r2]
|
||||
movs r3, 0xE
|
||||
ldrsh r2, [r4, r3]
|
||||
movs r3, 0
|
||||
bl CreatePokeballGlowSprite
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r4, 0x14]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end HallOfFameRecordEffect_0
|
||||
|
||||
thumb_func_start HallOfFameRecordEffect_1
|
||||
HallOfFameRecordEffect_1: @ 8083D74
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r2, _08083DA8 @ =gSprites
|
||||
movs r0, 0x14
|
||||
ldrsh r1, [r4, r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0x1
|
||||
ble _08083DA2
|
||||
movs r0, 0x78
|
||||
movs r1, 0x19
|
||||
bl HallOfFameRecordEffectHelper
|
||||
ldrh r0, [r4, 0x26]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x26]
|
||||
ldrh r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x8]
|
||||
_08083DA2:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083DA8: .4byte gSprites
|
||||
thumb_func_end HallOfFameRecordEffect_1
|
||||
|
||||
thumb_func_start HallOfFameRecordEffect_2
|
||||
HallOfFameRecordEffect_2: @ 8083DAC
|
||||
push {lr}
|
||||
adds r3, r0, 0
|
||||
ldr r2, _08083DD0 @ =gSprites
|
||||
movs r0, 0x14
|
||||
ldrsh r1, [r3, r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0x4
|
||||
ble _08083DCC
|
||||
ldrh r0, [r3, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r3, 0x8]
|
||||
_08083DCC:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083DD0: .4byte gSprites
|
||||
thumb_func_end HallOfFameRecordEffect_2
|
||||
|
||||
thumb_func_start HallOfFameRecordEffect_3
|
||||
HallOfFameRecordEffect_3: @ 8083DD4
|
||||
push {lr}
|
||||
ldr r2, _08083E0C @ =gSprites
|
||||
movs r3, 0x14
|
||||
ldrsh r1, [r0, r3]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r1, r0, r2
|
||||
movs r2, 0x2E
|
||||
ldrsh r0, [r1, r2]
|
||||
cmp r0, 0x6
|
||||
ble _08083E06
|
||||
adds r0, r1, 0
|
||||
bl DestroySprite
|
||||
movs r0, 0x3E
|
||||
bl FieldEffectActiveListRemove
|
||||
ldr r0, _08083E10 @ =Task_HallOfFameRecord
|
||||
bl FindTaskIdByFunc
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl DestroyTask
|
||||
_08083E06:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083E0C: .4byte gSprites
|
||||
_08083E10: .4byte Task_HallOfFameRecord
|
||||
thumb_func_end HallOfFameRecordEffect_3
|
||||
|
||||
thumb_func_start CreatePokeballGlowSprite
|
||||
CreatePokeballGlowSprite: @ 8083E14
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
mov r8, r0
|
||||
adds r4, r1, 0
|
||||
adds r5, r2, 0
|
||||
adds r6, r3, 0
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
mov r8, r0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
lsls r5, 16
|
||||
lsrs r5, 16
|
||||
lsls r6, 16
|
||||
lsrs r6, 16
|
||||
ldr r0, _08083E68 @ =SpriteCB_PokeballGlowEffect
|
||||
bl CreateInvisibleSprite
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r1, r0, 4
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
ldr r2, _08083E6C @ =gSprites
|
||||
adds r1, r2
|
||||
strh r4, [r1, 0x24]
|
||||
strh r5, [r1, 0x26]
|
||||
adds r3, r1, 0
|
||||
adds r3, 0x43
|
||||
movs r2, 0xFF
|
||||
strb r2, [r3]
|
||||
strh r6, [r1, 0x38]
|
||||
mov r2, r8
|
||||
strh r2, [r1, 0x3A]
|
||||
strh r0, [r1, 0x3C]
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08083E68: .4byte SpriteCB_PokeballGlowEffect
|
||||
_08083E6C: .4byte gSprites
|
||||
thumb_func_end CreatePokeballGlowSprite
|
||||
|
||||
thumb_func_start SpriteCB_PokeballGlowEffect
|
||||
SpriteCB_PokeballGlowEffect: @ 8083E70
|
||||
push {lr}
|
||||
ldr r2, _08083E88 @ =sPokeballGlowSpriteCBTable
|
||||
movs r3, 0x2E
|
||||
ldrsh r1, [r0, r3]
|
||||
lsls r1, 2
|
||||
adds r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083E88: .4byte sPokeballGlowSpriteCBTable
|
||||
thumb_func_end SpriteCB_PokeballGlowEffect
|
||||
|
||||
thumb_func_start PokeballGlowEffect_0
|
||||
PokeballGlowEffect_0: @ 8083E8C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldrh r1, [r4, 0x30]
|
||||
movs r2, 0x30
|
||||
ldrsh r0, [r4, r2]
|
||||
cmp r0, 0
|
||||
beq _08083EA4
|
||||
subs r0, r1, 0x1
|
||||
strh r0, [r4, 0x30]
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bne _08083F00
|
||||
_08083EA4:
|
||||
movs r0, 0x19
|
||||
strh r0, [r4, 0x30]
|
||||
ldr r0, _08083F18 @ =gUnknown_83CBF88
|
||||
ldr r1, _08083F1C @ =gUnknown_83CC010
|
||||
movs r2, 0x32
|
||||
ldrsh r3, [r4, r2]
|
||||
lsls r3, 2
|
||||
adds r3, r1
|
||||
ldrh r1, [r4, 0x24]
|
||||
ldrh r2, [r3]
|
||||
adds r1, r2
|
||||
lsls r1, 16
|
||||
asrs r1, 16
|
||||
ldrh r2, [r4, 0x26]
|
||||
ldrh r3, [r3, 0x2]
|
||||
adds r2, r3
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
movs r3, 0xFF
|
||||
bl CreateSpriteAtEnd
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _08083F20 @ =gSprites
|
||||
lsls r1, r0, 4
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
adds r1, r2
|
||||
ldrb r2, [r1, 0x5]
|
||||
movs r0, 0xD
|
||||
negs r0, r0
|
||||
ands r0, r2
|
||||
movs r2, 0x8
|
||||
orrs r0, r2
|
||||
strb r0, [r1, 0x5]
|
||||
ldrh r0, [r4, 0x3C]
|
||||
strh r0, [r1, 0x2E]
|
||||
ldrh r0, [r4, 0x32]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x32]
|
||||
ldrh r0, [r4, 0x3A]
|
||||
subs r0, 0x1
|
||||
strh r0, [r4, 0x3A]
|
||||
movs r0, 0x17
|
||||
bl PlaySE
|
||||
_08083F00:
|
||||
movs r1, 0x3A
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
bne _08083F12
|
||||
movs r0, 0x20
|
||||
strh r0, [r4, 0x30]
|
||||
ldrh r0, [r4, 0x2E]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x2E]
|
||||
_08083F12:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08083F18: .4byte gUnknown_83CBF88
|
||||
_08083F1C: .4byte gUnknown_83CC010
|
||||
_08083F20: .4byte gSprites
|
||||
thumb_func_end PokeballGlowEffect_0
|
||||
|
||||
thumb_func_start PokeballGlowEffect_1
|
||||
PokeballGlowEffect_1: @ 8083F24
|
||||
push {lr}
|
||||
adds r1, r0, 0
|
||||
ldrh r0, [r1, 0x30]
|
||||
subs r0, 0x1
|
||||
strh r0, [r1, 0x30]
|
||||
lsls r0, 16
|
||||
asrs r2, r0, 16
|
||||
cmp r2, 0
|
||||
bne _08083F54
|
||||
ldrh r0, [r1, 0x2E]
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x2E]
|
||||
movs r0, 0x8
|
||||
strh r0, [r1, 0x30]
|
||||
strh r2, [r1, 0x32]
|
||||
strh r2, [r1, 0x34]
|
||||
movs r2, 0x38
|
||||
ldrsh r0, [r1, r2]
|
||||
cmp r0, 0
|
||||
beq _08083F54
|
||||
movs r0, 0x80
|
||||
lsls r0, 1
|
||||
bl PlayFanfare
|
||||
_08083F54:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end PokeballGlowEffect_1
|
||||
|
||||
thumb_func_start PokeballGlowEffect_2
|
||||
PokeballGlowEffect_2: @ 8083F58
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
adds r7, r0, 0
|
||||
ldrh r0, [r7, 0x30]
|
||||
subs r0, 0x1
|
||||
strh r0, [r7, 0x30]
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bne _08083F88
|
||||
movs r0, 0x8
|
||||
strh r0, [r7, 0x30]
|
||||
ldrh r0, [r7, 0x32]
|
||||
adds r0, 0x1
|
||||
movs r1, 0x3
|
||||
ands r0, r1
|
||||
strh r0, [r7, 0x32]
|
||||
cmp r0, 0
|
||||
bne _08083F88
|
||||
ldrh r0, [r7, 0x34]
|
||||
adds r0, 0x1
|
||||
strh r0, [r7, 0x34]
|
||||
_08083F88:
|
||||
ldrh r4, [r7, 0x32]
|
||||
adds r4, 0x3
|
||||
movs r0, 0x3
|
||||
mov r8, r0
|
||||
mov r1, r8
|
||||
ands r4, r1
|
||||
ldr r3, _08084080 @ =0x00001007
|
||||
mov r10, r3
|
||||
mov r0, r10
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
movs r1, 0x84
|
||||
lsls r1, 17
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
ldr r6, _08084084 @ =gUnknown_83CC028
|
||||
adds r1, r4, r6
|
||||
ldrb r1, [r1]
|
||||
ldr r5, _08084088 @ =gUnknown_83CC02C
|
||||
adds r2, r4, r5
|
||||
ldrb r2, [r2]
|
||||
ldr r3, _0808408C @ =gUnknown_83CC030
|
||||
mov r9, r3
|
||||
add r4, r9
|
||||
ldrb r3, [r4]
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
ldrh r4, [r7, 0x32]
|
||||
adds r4, 0x2
|
||||
mov r0, r8
|
||||
ands r4, r0
|
||||
mov r0, r10
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
movs r1, 0x83
|
||||
lsls r1, 17
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
adds r1, r4, r6
|
||||
ldrb r1, [r1]
|
||||
adds r2, r4, r5
|
||||
ldrb r2, [r2]
|
||||
add r4, r9
|
||||
ldrb r3, [r4]
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
ldrh r4, [r7, 0x32]
|
||||
adds r4, 0x1
|
||||
mov r3, r8
|
||||
ands r4, r3
|
||||
mov r0, r10
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
movs r1, 0x81
|
||||
lsls r1, 17
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
adds r1, r4, r6
|
||||
ldrb r1, [r1]
|
||||
adds r2, r4, r5
|
||||
ldrb r2, [r2]
|
||||
add r4, r9
|
||||
ldrb r3, [r4]
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
ldrh r4, [r7, 0x32]
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
mov r0, r10
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
ldr r3, _08084090 @ =0x01050000
|
||||
adds r0, r3
|
||||
lsrs r0, 16
|
||||
adds r6, r4, r6
|
||||
ldrb r6, [r6]
|
||||
adds r5, r4, r5
|
||||
ldrb r5, [r5]
|
||||
add r4, r9
|
||||
ldrb r4, [r4]
|
||||
adds r1, r6, 0
|
||||
adds r2, r5, 0
|
||||
adds r3, r4, 0
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
mov r0, r10
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
ldr r1, _08084094 @ =0x01030000
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
adds r1, r6, 0
|
||||
adds r2, r5, 0
|
||||
adds r3, r4, 0
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
movs r3, 0x34
|
||||
ldrsh r0, [r7, r3]
|
||||
cmp r0, 0x2
|
||||
ble _08084072
|
||||
ldrh r0, [r7, 0x2E]
|
||||
adds r0, 0x1
|
||||
movs r1, 0
|
||||
strh r0, [r7, 0x2E]
|
||||
movs r0, 0x8
|
||||
strh r0, [r7, 0x30]
|
||||
strh r1, [r7, 0x32]
|
||||
_08084072:
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08084080: .4byte 0x00001007
|
||||
_08084084: .4byte gUnknown_83CC028
|
||||
_08084088: .4byte gUnknown_83CC02C
|
||||
_0808408C: .4byte gUnknown_83CC030
|
||||
_08084090: .4byte 0x01050000
|
||||
_08084094: .4byte 0x01030000
|
||||
thumb_func_end PokeballGlowEffect_2
|
||||
|
||||
thumb_func_start PokeballGlowEffect_3
|
||||
PokeballGlowEffect_3: @ 8084098
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
adds r2, r0, 0
|
||||
ldrh r0, [r2, 0x30]
|
||||
subs r0, 0x1
|
||||
strh r0, [r2, 0x30]
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bne _080840C8
|
||||
movs r0, 0x8
|
||||
strh r0, [r2, 0x30]
|
||||
ldrh r0, [r2, 0x32]
|
||||
adds r0, 0x1
|
||||
movs r1, 0x3
|
||||
ands r0, r1
|
||||
strh r0, [r2, 0x32]
|
||||
cmp r0, 0x3
|
||||
bne _080840C8
|
||||
ldrh r0, [r2, 0x2E]
|
||||
adds r0, 0x1
|
||||
strh r0, [r2, 0x2E]
|
||||
movs r0, 0x1E
|
||||
strh r0, [r2, 0x30]
|
||||
_080840C8:
|
||||
ldrh r4, [r2, 0x32]
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r0, _08084174 @ =0x00001007
|
||||
mov r8, r0
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
movs r1, 0x84
|
||||
lsls r1, 17
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
ldr r1, _08084178 @ =gUnknown_83CC028
|
||||
adds r1, r4, r1
|
||||
ldrb r6, [r1]
|
||||
ldr r1, _0808417C @ =gUnknown_83CC02C
|
||||
adds r1, r4, r1
|
||||
ldrb r5, [r1]
|
||||
ldr r1, _08084180 @ =gUnknown_83CC030
|
||||
adds r4, r1
|
||||
ldrb r4, [r4]
|
||||
adds r1, r6, 0
|
||||
adds r2, r5, 0
|
||||
adds r3, r4, 0
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
mov r0, r8
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
movs r1, 0x83
|
||||
lsls r1, 17
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
adds r1, r6, 0
|
||||
adds r2, r5, 0
|
||||
adds r3, r4, 0
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
mov r0, r8
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
movs r1, 0x81
|
||||
lsls r1, 17
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
adds r1, r6, 0
|
||||
adds r2, r5, 0
|
||||
adds r3, r4, 0
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
mov r0, r8
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
ldr r1, _08084184 @ =0x01050000
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
adds r1, r6, 0
|
||||
adds r2, r5, 0
|
||||
adds r3, r4, 0
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
mov r0, r8
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 4
|
||||
ldr r1, _08084188 @ =0x01030000
|
||||
adds r0, r1
|
||||
lsrs r0, 16
|
||||
adds r1, r6, 0
|
||||
adds r2, r5, 0
|
||||
adds r3, r4, 0
|
||||
bl MultiplyInvertedPaletteRGBComponents
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08084174: .4byte 0x00001007
|
||||
_08084178: .4byte gUnknown_83CC028
|
||||
_0808417C: .4byte gUnknown_83CC02C
|
||||
_08084180: .4byte gUnknown_83CC030
|
||||
_08084184: .4byte 0x01050000
|
||||
_08084188: .4byte 0x01030000
|
||||
thumb_func_end PokeballGlowEffect_3
|
||||
|
||||
thumb_func_start PokeballGlowEffect_4
|
||||
PokeballGlowEffect_4: @ 808418C
|
||||
push {lr}
|
||||
adds r1, r0, 0
|
||||
ldrh r0, [r1, 0x30]
|
||||
subs r0, 0x1
|
||||
strh r0, [r1, 0x30]
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bne _080841A2
|
||||
ldrh r0, [r1, 0x2E]
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x2E]
|
||||
_080841A2:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end PokeballGlowEffect_4
|
||||
|
||||
thumb_func_start PokeballGlowEffect_5
|
||||
PokeballGlowEffect_5: @ 80841A8
|
||||
ldrh r1, [r0, 0x2E]
|
||||
adds r1, 0x1
|
||||
strh r1, [r0, 0x2E]
|
||||
bx lr
|
||||
thumb_func_end PokeballGlowEffect_5
|
||||
|
||||
thumb_func_start PokeballGlowEffect_6
|
||||
PokeballGlowEffect_6: @ 80841B0
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
movs r1, 0x38
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
beq _080841C6
|
||||
bl IsFanfareTaskInactive
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080841CC
|
||||
_080841C6:
|
||||
ldrh r0, [r4, 0x2E]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x2E]
|
||||
_080841CC:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end PokeballGlowEffect_6
|
||||
|
||||
thumb_func_start PokeballGlowEffect_7
|
||||
PokeballGlowEffect_7: @ 80841D4
|
||||
bx lr
|
||||
thumb_func_end PokeballGlowEffect_7
|
||||
|
||||
thumb_func_start SpriteCB_PokeballGlow
|
||||
SpriteCB_PokeballGlow: @ 80841D8
|
||||
push {lr}
|
||||
adds r3, r0, 0
|
||||
ldr r2, _080841FC @ =gSprites
|
||||
movs r0, 0x2E
|
||||
ldrsh r1, [r3, r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0x4
|
||||
ble _080841F8
|
||||
adds r0, r3, 0
|
||||
bl FieldEffectFreeGraphicsResources
|
||||
_080841F8:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080841FC: .4byte gSprites
|
||||
thumb_func_end SpriteCB_PokeballGlow
|
||||
|
||||
thumb_func_start PokecenterHealEffectHelper
|
||||
PokecenterHealEffectHelper: @ 8084200
|
||||
push {lr}
|
||||
adds r3, r0, 0
|
||||
adds r2, r1, 0
|
||||
ldr r0, _08084244 @ =gUnknown_83CBFA0
|
||||
lsls r3, 16
|
||||
asrs r3, 16
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
adds r1, r3, 0
|
||||
movs r3, 0
|
||||
bl CreateSpriteAtEnd
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r2, r0, 4
|
||||
adds r2, r0
|
||||
lsls r2, 2
|
||||
ldr r1, _08084248 @ =gSprites
|
||||
adds r2, r1
|
||||
ldrb r3, [r2, 0x5]
|
||||
movs r1, 0xD
|
||||
negs r1, r1
|
||||
ands r1, r3
|
||||
movs r3, 0x8
|
||||
orrs r1, r3
|
||||
strb r1, [r2, 0x5]
|
||||
adds r2, 0x3E
|
||||
ldrb r1, [r2]
|
||||
movs r3, 0x4
|
||||
orrs r1, r3
|
||||
strb r1, [r2]
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08084244: .4byte gUnknown_83CBFA0
|
||||
_08084248: .4byte gSprites
|
||||
thumb_func_end PokecenterHealEffectHelper
|
||||
|
||||
thumb_func_start SpriteCB_PokecenterMonitor
|
||||
SpriteCB_PokecenterMonitor: @ 808424C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
beq _08084270
|
||||
movs r0, 0
|
||||
strh r0, [r4, 0x2E]
|
||||
adds r2, r4, 0
|
||||
adds r2, 0x3E
|
||||
ldrb r1, [r2]
|
||||
subs r0, 0x5
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl StartSpriteAnim
|
||||
_08084270:
|
||||
adds r0, r4, 0
|
||||
adds r0, 0x3F
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x10
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _08084284
|
||||
adds r0, r4, 0
|
||||
bl FieldEffectFreeGraphicsResources
|
||||
_08084284:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end SpriteCB_PokecenterMonitor
|
||||
|
||||
thumb_func_start HallOfFameRecordEffectHelper
|
||||
HallOfFameRecordEffectHelper: @ 808428C
|
||||
push {lr}
|
||||
adds r3, r0, 0
|
||||
adds r2, r1, 0
|
||||
ldr r0, _080842A8 @ =gUnknown_83CBFB8
|
||||
lsls r3, 16
|
||||
asrs r3, 16
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
adds r1, r3, 0
|
||||
movs r3, 0
|
||||
bl CreateSpriteAtEnd
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080842A8: .4byte gUnknown_83CBFB8
|
||||
thumb_func_end HallOfFameRecordEffectHelper
|
||||
|
||||
thumb_func_start SpriteCB_HallOfFameMonitor
|
||||
SpriteCB_HallOfFameMonitor: @ 80842AC
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
adds r0, 0x3F
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x10
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080842C2
|
||||
adds r0, r2, 0
|
||||
bl FieldEffectFreeGraphicsResources
|
||||
_080842C2:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end SpriteCB_HallOfFameMonitor
|
||||
|
||||
thumb_func_start ReturnToFieldFromFlyMapSelect
|
||||
ReturnToFieldFromFlyMapSelect: @ 80842C8
|
||||
push {lr}
|
||||
|
||||
Reference in New Issue
Block a user