summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/field_effect.s282
1 files changed, 39 insertions, 243 deletions
diff --git a/asm/field_effect.s b/asm/field_effect.s
index 8fc5386b9..370016f84 100644
--- a/asm/field_effect.s
+++ b/asm/field_effect.s
@@ -5,212 +5,8 @@
.text
- thumb_func_start FldEff_Unk41
-FldEff_Unk41: @ 8086BA8
- push {lr}
- ldr r0, _08086BC8 @ =gQuestLogState
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08086BBA
- movs r0, 0x8
- movs r1, 0x59
- bl sub_811278C
-_08086BBA:
- ldr r0, _08086BCC @ =Task_FldEffUnk41
- movs r1, 0xFF
- bl CreateTask
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08086BC8: .4byte gQuestLogState
-_08086BCC: .4byte Task_FldEffUnk41
- thumb_func_end FldEff_Unk41
-
- thumb_func_start Task_FldEffUnk41
-Task_FldEffUnk41: @ 8086BD0
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _08086BF8 @ =sUnk41EffectFuncs
- ldr r2, _08086BFC @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_08086BF8: .4byte sUnk41EffectFuncs
-_08086BFC: .4byte gTasks
- thumb_func_end Task_FldEffUnk41
-
- thumb_func_start Unk41Effect_1
-Unk41Effect_1: @ 8086C00
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- ldr r1, _08086C20 @ =gPlayerAvatar
- movs r0, 0x1
- strb r0, [r1, 0x6]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086C20: .4byte gPlayerAvatar
- thumb_func_end Unk41Effect_1
-
- thumb_func_start Unk41Effect_2
-Unk41Effect_2: @ 8086C24
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _08086C68 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086C6C @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- beq _08086C4E
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086C60
-_08086C4E:
- bl sub_805CBE8
- adds r0, r4, 0
- movs r1, 0x45
- bl ObjectEventSetHeldMovement
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_08086C60:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08086C68: .4byte gPlayerAvatar
-_08086C6C: .4byte gObjectEvents
- thumb_func_end Unk41Effect_2
-
- thumb_func_start Unk41Effect_3
-Unk41Effect_3: @ 8086C70
- push {r4-r6,lr}
- adds r6, r0, 0
- ldr r5, _08086C9C @ =gPlayerAvatar
- ldrb r1, [r5, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086CA0 @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086CEE
- ldrb r1, [r5]
- movs r0, 0x6
- ands r0, r1
- cmp r0, 0
- beq _08086CA4
- movs r0, 0x1
- b _08086CAE
- .align 2, 0
-_08086C9C: .4byte gPlayerAvatar
-_08086CA0: .4byte gObjectEvents
-_08086CA4:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08086CC0
- movs r0, 0x2
-_08086CAE:
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetGraphicsId
- b _08086CD2
-_08086CC0:
- movs r0, 0
- bl GetPlayerAvatarGraphicsIdByStateId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventSetGraphicsId
-_08086CD2:
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl GetFaceDirectionMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ObjectEventForceSetSpecialAnim
- ldrh r0, [r6, 0x8]
- adds r0, 0x1
- strh r0, [r6, 0x8]
-_08086CEE:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end Unk41Effect_3
-
- thumb_func_start Unk41Effect_4
-Unk41Effect_4: @ 8086CF4
- push {r4,lr}
- ldr r4, _08086D2C @ =gPlayerAvatar
- ldrb r1, [r4, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08086D30 @ =gObjectEvents
- adds r0, r1
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- beq _08086D26
- movs r0, 0
- strb r0, [r4, 0x6]
- movs r0, 0x41
- bl FieldEffectActiveListRemove
- ldr r0, _08086D34 @ =Task_FldEffUnk41
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_08086D26:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08086D2C: .4byte gPlayerAvatar
-_08086D30: .4byte gObjectEvents
-_08086D34: .4byte Task_FldEffUnk41
- thumb_func_end Unk41Effect_4
-
- thumb_func_start sub_8086D38
-sub_8086D38: @ 8086D38
+ thumb_func_start FldEff_NpcFlyOut
+FldEff_NpcFlyOut: @ 8086D38
push {r4,lr}
ldr r0, _08086D84 @ =gFieldEffectObjectTemplatePointers
ldr r0, [r0, 0x68]
@@ -251,7 +47,7 @@ _08086D84: .4byte gFieldEffectObjectTemplatePointers
_08086D88: .4byte gSprites
_08086D8C: .4byte sub_8086D94
_08086D90: .4byte gFieldEffectArguments
- thumb_func_end sub_8086D38
+ thumb_func_end FldEff_NpcFlyOut
thumb_func_start sub_8086D94
sub_8086D94: @ 8086D94
@@ -321,7 +117,7 @@ _08086E0C: .4byte gSprites
thumb_func_start FldEff_UseFly
FldEff_UseFly: @ 8086E10
push {lr}
- ldr r0, _08086E34 @ =sub_8086E40
+ ldr r0, _08086E34 @ =Task_UseFly
movs r1, 0xFE
bl CreateTask
lsls r0, 24
@@ -338,18 +134,18 @@ FldEff_UseFly: @ 8086E10
pop {r1}
bx r1
.align 2, 0
-_08086E34: .4byte sub_8086E40
+_08086E34: .4byte Task_UseFly
_08086E38: .4byte gTasks
_08086E3C: .4byte gFieldEffectArguments
thumb_func_end FldEff_UseFly
- thumb_func_start sub_8086E40
-sub_8086E40: @ 8086E40
+ thumb_func_start Task_UseFly
+Task_UseFly: @ 8086E40
push {lr}
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
- ldr r3, _08086E68 @ =gUnknown_83CC178
+ ldr r3, _08086E68 @ =sUseFlyEffectFuncs
ldr r2, _08086E6C @ =gTasks
lsls r0, r1, 2
adds r0, r1
@@ -364,12 +160,12 @@ sub_8086E40: @ 8086E40
pop {r0}
bx r0
.align 2, 0
-_08086E68: .4byte gUnknown_83CC178
+_08086E68: .4byte sUseFlyEffectFuncs
_08086E6C: .4byte gTasks
- thumb_func_end sub_8086E40
+ thumb_func_end Task_UseFly
- thumb_func_start sub_8086E70
-sub_8086E70: @ 8086E70
+ thumb_func_start UseFlyEffect_1
+UseFlyEffect_1: @ 8086E70
push {r4-r6,lr}
adds r5, r0, 0
ldr r6, _08086EC0 @ =gPlayerAvatar
@@ -409,10 +205,10 @@ _08086EB8:
.align 2, 0
_08086EC0: .4byte gPlayerAvatar
_08086EC4: .4byte gObjectEvents
- thumb_func_end sub_8086E70
+ thumb_func_end UseFlyEffect_1
- thumb_func_start sub_8086EC8
-sub_8086EC8: @ 8086EC8
+ thumb_func_start UseFlyEffect_2
+UseFlyEffect_2: @ 8086EC8
push {r4,lr}
adds r4, r0, 0
ldr r0, _08086F00 @ =gPlayerAvatar
@@ -443,10 +239,10 @@ _08086EF8:
_08086F00: .4byte gPlayerAvatar
_08086F04: .4byte gObjectEvents
_08086F08: .4byte gFieldEffectArguments
- thumb_func_end sub_8086EC8
+ thumb_func_end UseFlyEffect_2
- thumb_func_start sub_8086F0C
-sub_8086F0C: @ 8086F0C
+ thumb_func_start UseFlyEffect_3
+UseFlyEffect_3: @ 8086F0C
push {r4,r5,lr}
adds r4, r0, 0
movs r0, 0x6
@@ -487,10 +283,10 @@ _08086F54:
.align 2, 0
_08086F5C: .4byte gPlayerAvatar
_08086F60: .4byte gObjectEvents
- thumb_func_end sub_8086F0C
+ thumb_func_end UseFlyEffect_3
- thumb_func_start sub_8086F64
-sub_8086F64: @ 8086F64
+ thumb_func_start UseFlyEffect_4
+UseFlyEffect_4: @ 8086F64
push {r4,lr}
adds r4, r0, 0
ldrb r0, [r4, 0xA]
@@ -521,10 +317,10 @@ _08086F98:
.align 2, 0
_08086FA0: .4byte gPlayerAvatar
_08086FA4: .4byte gObjectEvents
- thumb_func_end sub_8086F64
+ thumb_func_end UseFlyEffect_4
- thumb_func_start sub_8086FA8
-sub_8086FA8: @ 8086FA8
+ thumb_func_start UseFlyEffect_5
+UseFlyEffect_5: @ 8086FA8
push {r4,lr}
adds r4, r0, 0
ldr r0, _08086FF4 @ =gPlayerAvatar
@@ -564,10 +360,10 @@ _08086FEC:
.align 2, 0
_08086FF4: .4byte gPlayerAvatar
_08086FF8: .4byte gObjectEvents
- thumb_func_end sub_8086FA8
+ thumb_func_end UseFlyEffect_5
- thumb_func_start sub_8086FFC
-sub_8086FFC: @ 8086FFC
+ thumb_func_start UseFlyEffect_6
+UseFlyEffect_6: @ 8086FFC
push {r4,r5,lr}
adds r5, r0, 0
ldrh r0, [r5, 0xC]
@@ -619,10 +415,10 @@ _0808705A:
_08087060: .4byte gPlayerAvatar
_08087064: .4byte gObjectEvents
_08087068: .4byte gSprites
- thumb_func_end sub_8086FFC
+ thumb_func_end UseFlyEffect_6
- thumb_func_start sub_808706C
-sub_808706C: @ 808706C
+ thumb_func_start UseFlyEffect_7
+UseFlyEffect_7: @ 808706C
push {r4,r5,lr}
adds r5, r0, 0
ldrh r0, [r5, 0xC]
@@ -700,10 +496,10 @@ _08087108: .4byte gObjectEvents
_0808710C: .4byte gSprites
_08087110: .4byte gSaveBlock2Ptr
_08087114: .4byte sub_8087828
- thumb_func_end sub_808706C
+ thumb_func_end UseFlyEffect_7
- thumb_func_start sub_8087118
-sub_8087118: @ 8087118
+ thumb_func_start UseFlyEffect_8
+UseFlyEffect_8: @ 8087118
push {r4,lr}
adds r4, r0, 0
ldrb r0, [r4, 0xA]
@@ -719,10 +515,10 @@ _08087132:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_8087118
+ thumb_func_end UseFlyEffect_8
- thumb_func_start sub_8087138
-sub_8087138: @ 8087138
+ thumb_func_start UseFlyEffect_9
+UseFlyEffect_9: @ 8087138
push {lr}
ldr r0, _08087160 @ =gPaletteFade
ldrb r1, [r0, 0x7]
@@ -732,7 +528,7 @@ sub_8087138: @ 8087138
bne _0808715A
movs r0, 0x1F
bl FieldEffectActiveListRemove
- ldr r0, _08087164 @ =sub_8086E40
+ ldr r0, _08087164 @ =Task_UseFly
bl FindTaskIdByFunc
lsls r0, 24
lsrs r0, 24
@@ -742,8 +538,8 @@ _0808715A:
bx r0
.align 2, 0
_08087160: .4byte gPaletteFade
-_08087164: .4byte sub_8086E40
- thumb_func_end sub_8087138
+_08087164: .4byte Task_UseFly
+ thumb_func_end UseFlyEffect_9
thumb_func_start sub_8087168
sub_8087168: @ 8087168