port documentation of battle_anim_mon_movement from pokeem
This commit is contained in:
+18
-18
@@ -23,9 +23,9 @@ ClearBattleAnimationVars: @ 80724C0
|
||||
ldr r0, _08072564 @ =gAnimDisableStructPtr
|
||||
movs r1, 0
|
||||
str r1, [r0]
|
||||
ldr r0, _08072568 @ =gUnknown_2037EE8
|
||||
ldr r0, _08072568 @ =gAnimMoveDmg
|
||||
str r1, [r0]
|
||||
ldr r0, _0807256C @ =gUnknown_2037EEC
|
||||
ldr r0, _0807256C @ =gAnimMovePower
|
||||
movs r2, 0
|
||||
strh r1, [r0]
|
||||
ldr r0, _08072570 @ =gUnknown_2037EFE
|
||||
@@ -89,8 +89,8 @@ _08072558: .4byte gUnknown_2037EE1
|
||||
_0807255C: .4byte gUnknown_2037EE2
|
||||
_08072560: .4byte gUnknown_2037EE3
|
||||
_08072564: .4byte gAnimDisableStructPtr
|
||||
_08072568: .4byte gUnknown_2037EE8
|
||||
_0807256C: .4byte gUnknown_2037EEC
|
||||
_08072568: .4byte gAnimMoveDmg
|
||||
_0807256C: .4byte gAnimMovePower
|
||||
_08072570: .4byte gUnknown_2037EFE
|
||||
_08072574: .4byte gUnknown_2037F14
|
||||
_08072578: .4byte gAnimMoveTurn
|
||||
@@ -989,7 +989,7 @@ _08072C60:
|
||||
_08072C62:
|
||||
ldrb r5, [r0]
|
||||
adds r0, r5, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08072D12
|
||||
@@ -1073,7 +1073,7 @@ _08072D12:
|
||||
cmp r6, 0x1
|
||||
bls _08072DCE
|
||||
adds r0, r5, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08072DCE
|
||||
@@ -1169,8 +1169,8 @@ _08072DE8: .4byte gUnknown_2037F14
|
||||
_08072DEC: .4byte gUnknown_2037ED4
|
||||
thumb_func_end sub_8072C30
|
||||
|
||||
thumb_func_start sub_8072DF0
|
||||
sub_8072DF0: @ 8072DF0
|
||||
thumb_func_start IsBattlerSpriteVisible
|
||||
IsBattlerSpriteVisible: @ 8072DF0
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
@@ -1215,7 +1215,7 @@ _08072E42:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8072DF0
|
||||
thumb_func_end IsBattlerSpriteVisible
|
||||
|
||||
thumb_func_start sub_8072E48
|
||||
sub_8072E48: @ 8072E48
|
||||
@@ -1897,7 +1897,7 @@ _080733CC:
|
||||
_080733CE:
|
||||
ldrb r4, [r0]
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08073416
|
||||
@@ -1935,7 +1935,7 @@ _08073416:
|
||||
cmp r5, 0x1
|
||||
bls _08073464
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08073464
|
||||
@@ -2016,7 +2016,7 @@ _080734B4:
|
||||
_080734B6:
|
||||
ldrb r6, [r0]
|
||||
adds r0, r6, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080734E0
|
||||
@@ -2041,7 +2041,7 @@ _080734E0:
|
||||
adds r4, r6, 0
|
||||
eors r4, r0
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08073520
|
||||
@@ -2127,7 +2127,7 @@ sub_8073558: @ 8073558
|
||||
movs r7, 0
|
||||
_08073598:
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080735AA
|
||||
@@ -2141,7 +2141,7 @@ _080735AA:
|
||||
movs r0, 0x2
|
||||
eors r6, r0
|
||||
adds r0, r6, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080735CC
|
||||
@@ -2397,11 +2397,11 @@ ScriptCmd_jump: @ 8073764
|
||||
_08073784: .4byte gUnknown_2037ED4
|
||||
thumb_func_end ScriptCmd_jump
|
||||
|
||||
thumb_func_start sub_8073788
|
||||
sub_8073788: @ 8073788
|
||||
thumb_func_start IsContest
|
||||
IsContest: @ 8073788
|
||||
movs r0, 0
|
||||
bx lr
|
||||
thumb_func_end sub_8073788
|
||||
thumb_func_end IsContest
|
||||
|
||||
thumb_func_start sub_807378C
|
||||
sub_807378C: @ 807378C
|
||||
|
||||
+33
-33
@@ -756,7 +756,7 @@ sub_80A28C4: @ 80A28C4
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A28DE
|
||||
@@ -1320,7 +1320,7 @@ _080A2D08:
|
||||
sub_80A2D10: @ 80A2D10
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A2D3C
|
||||
@@ -1608,7 +1608,7 @@ _080A2F38: .4byte gSprites
|
||||
_080A2F3C:
|
||||
adds r0, r2, 0
|
||||
movs r1, 0x1
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldr r1, _080A2F68 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
@@ -1680,7 +1680,7 @@ _080A2FBE:
|
||||
adds r0, r6, 0
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
adds r0, r6, 0
|
||||
bl sub_8076440
|
||||
ldrh r0, [r4, 0xA]
|
||||
@@ -1730,7 +1730,7 @@ sub_80A3004: @ 80A3004
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r1, _080A305C @ =gSprites
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
@@ -2512,7 +2512,7 @@ _080A3638:
|
||||
adds r0, r6, 0
|
||||
adds r0, 0xA
|
||||
strh r0, [r5, 0x3C]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A3650
|
||||
@@ -2712,7 +2712,7 @@ sub_80A37BC: @ 80A37BC
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
bne _080A3850
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A37E4
|
||||
@@ -2908,7 +2908,7 @@ _080A3910:
|
||||
movs r1, 0xFF
|
||||
ands r0, r1
|
||||
strh r0, [r4, 0x30]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A395E
|
||||
@@ -4224,7 +4224,7 @@ _080A4318:
|
||||
bl sub_8075B30
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A437A
|
||||
@@ -4557,7 +4557,7 @@ _080A45C8:
|
||||
mov r8, r2
|
||||
mov r1, r8
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A463E
|
||||
@@ -4959,7 +4959,7 @@ _080A48E8:
|
||||
sub_80A48F0: @ 80A48F0
|
||||
push {r4-r6,lr}
|
||||
adds r5, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A4906
|
||||
@@ -4991,7 +4991,7 @@ _080A4906:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A4944
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A496C
|
||||
@@ -5558,7 +5558,7 @@ _080A4D7A:
|
||||
movs r1, 0x2
|
||||
adds r0, r6, 0
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A4DC4
|
||||
@@ -6388,7 +6388,7 @@ _080A53B6:
|
||||
ldr r1, _080A53E0 @ =sub_80A53E8
|
||||
adds r0, r4, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
ldr r0, _080A53E4 @ =sub_8074DC4
|
||||
ldr r0, _080A53E4 @ =TranslateMonSpriteLinear
|
||||
str r0, [r4, 0x1C]
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@@ -6397,7 +6397,7 @@ _080A53B6:
|
||||
_080A53D8: .4byte gBattleAnimAttacker
|
||||
_080A53DC: .4byte gBattlerSpriteIds
|
||||
_080A53E0: .4byte sub_80A53E8
|
||||
_080A53E4: .4byte sub_8074DC4
|
||||
_080A53E4: .4byte TranslateMonSpriteLinear
|
||||
thumb_func_end sub_80A5398
|
||||
|
||||
thumb_func_start sub_80A53E8
|
||||
@@ -6415,7 +6415,7 @@ sub_80A53E8: @ 80A53E8
|
||||
ldrb r0, [r0]
|
||||
strh r0, [r5, 0x34]
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldrb r0, [r4]
|
||||
bl GetBattlerSide
|
||||
lsls r0, 24
|
||||
@@ -6443,7 +6443,7 @@ _080A5424:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r5, 0x38]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r5, 0x34]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -6498,7 +6498,7 @@ _080A5492:
|
||||
ldr r1, _080A54BC @ =sub_80A5584
|
||||
adds r0, r4, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
ldr r0, _080A54C0 @ =sub_8074DC4
|
||||
ldr r0, _080A54C0 @ =TranslateMonSpriteLinear
|
||||
str r0, [r4, 0x1C]
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@@ -6507,7 +6507,7 @@ _080A5492:
|
||||
_080A54B4: .4byte gBattleAnimAttacker
|
||||
_080A54B8: .4byte gBattlerSpriteIds
|
||||
_080A54BC: .4byte sub_80A5584
|
||||
_080A54C0: .4byte sub_8074DC4
|
||||
_080A54C0: .4byte TranslateMonSpriteLinear
|
||||
thumb_func_end sub_80A5474
|
||||
|
||||
thumb_func_start sub_80A54C4
|
||||
@@ -6585,7 +6585,7 @@ _080A5538:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r5, 0x38]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r5, 0x34]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -6600,7 +6600,7 @@ _080A5538:
|
||||
ldrh r0, [r5, 0x34]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r0, _080A5580 @ =sub_80A5584
|
||||
str r0, [r5, 0x1C]
|
||||
_080A5578:
|
||||
@@ -6674,7 +6674,7 @@ _080A55E4:
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldrh r0, [r4, 0x2E]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x2E]
|
||||
@@ -6690,7 +6690,7 @@ _080A55FA:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r4, 0x38]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x32]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -6728,7 +6728,7 @@ _080A564C:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r4, 0x38]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x32]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -6743,7 +6743,7 @@ _080A564C:
|
||||
ldrh r0, [r4, 0x32]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
adds r0, r4, 0
|
||||
bl DestroyAnimSprite
|
||||
_080A568E:
|
||||
@@ -6888,7 +6888,7 @@ _080A5792:
|
||||
strh r1, [r4, 0x12]
|
||||
ldrb r0, [r4, 0x8]
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
b _080A58A8
|
||||
_080A579E:
|
||||
movs r3, 0xE
|
||||
@@ -6904,7 +6904,7 @@ _080A579E:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r4, 0x10]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_80759DC
|
||||
b _080A58D4
|
||||
@@ -7095,7 +7095,7 @@ sub_80A58EC: @ 80A58EC
|
||||
lsls r2, 1
|
||||
ldrh r3, [r4, 0x10]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_80759DC
|
||||
ldrh r0, [r4, 0xE]
|
||||
@@ -7106,7 +7106,7 @@ sub_80A58EC: @ 80A58EC
|
||||
_080A5928: .4byte gTasks
|
||||
_080A592C:
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl DestroyAnimVisualTask
|
||||
_080A5938:
|
||||
@@ -7559,7 +7559,7 @@ sub_80A5C68: @ 80A5C68
|
||||
ldrh r5, [r5, 0x2]
|
||||
adds r0, r5
|
||||
strh r0, [r6, 0x22]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A5CAC
|
||||
@@ -7863,7 +7863,7 @@ _080A5EDC: .4byte gBattlersCount
|
||||
sub_80A5EE0: @ 80A5EE0
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A5EF6
|
||||
@@ -8350,7 +8350,7 @@ _080A6262:
|
||||
ldrh r1, [r5, 0x20]
|
||||
strh r1, [r5, 0x3A]
|
||||
strh r0, [r5, 0x3C]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A62D4
|
||||
@@ -8934,7 +8934,7 @@ _080A6710:
|
||||
strh r1, [r5, 0x32]
|
||||
ldrh r0, [r4, 0x4]
|
||||
strh r0, [r5, 0x34]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A6734
|
||||
|
||||
+31
-31
@@ -329,7 +329,7 @@ sub_80A70A0: @ 80A70A0
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldr r1, _080A70D4 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
@@ -389,7 +389,7 @@ _080A7126:
|
||||
lsls r2, 1
|
||||
adds r0, r4, 0
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldr r1, _080A7158 @ =gTasks
|
||||
adds r0, r6, r5
|
||||
lsls r0, 3
|
||||
@@ -458,7 +458,7 @@ _080A71AA:
|
||||
cmp r0, 0x2
|
||||
bne _080A71CC
|
||||
adds r0, r4, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl DestroyAnimVisualTask
|
||||
b _080A71D0
|
||||
@@ -604,7 +604,7 @@ sub_80A72C8: @ 80A72C8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r5, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A72EC
|
||||
@@ -677,7 +677,7 @@ _080A730E:
|
||||
lsls r1, 24
|
||||
adds r0, r1
|
||||
lsrs r4, r0, 16
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A7380
|
||||
@@ -1158,7 +1158,7 @@ sub_80A76F0: @ 80A76F0
|
||||
mov r4, sp
|
||||
adds r4, 0x2
|
||||
strh r1, [r4]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
mov r10, r4
|
||||
cmp r0, 0
|
||||
@@ -1268,7 +1268,7 @@ _080A77B6:
|
||||
ldrb r1, [r4]
|
||||
movs r0, 0x2
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A7820
|
||||
@@ -2258,12 +2258,12 @@ sub_80A7FB0: @ 80A7FB0
|
||||
lsrs r4, 24
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
adds r0, r4, 0
|
||||
movs r1, 0xD0
|
||||
movs r2, 0xD0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldr r1, _080A8008 @ =gSprites
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
@@ -2317,7 +2317,7 @@ sub_80A8014: @ 80A8014
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r1, _080A8070 @ =gSprites
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
@@ -2356,7 +2356,7 @@ sub_80A8074: @ 80A8074
|
||||
movs r5, 0
|
||||
strh r0, [r4, 0x8]
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
strh r5, [r4, 0xA]
|
||||
strh r5, [r4, 0xC]
|
||||
strh r5, [r4, 0xE]
|
||||
@@ -2439,7 +2439,7 @@ _080A8128:
|
||||
ldrsh r2, [r4, r1]
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_8076440
|
||||
movs r2, 0xC
|
||||
@@ -2471,7 +2471,7 @@ _080A816E:
|
||||
ldrb r0, [r4, 0x8]
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_8076440
|
||||
movs r0, 0x2
|
||||
@@ -2502,7 +2502,7 @@ _080A81A4:
|
||||
ldrsh r2, [r4, r1]
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_8076440
|
||||
movs r2, 0xC
|
||||
@@ -2519,7 +2519,7 @@ _080A81D0:
|
||||
b _080A81F6
|
||||
_080A81D8:
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r2, _080A81FC @ =gSprites
|
||||
movs r0, 0x26
|
||||
ldrsh r1, [r4, r0]
|
||||
@@ -2631,7 +2631,7 @@ _080A8244:
|
||||
ldrsh r2, [r7, r1]
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrb r0, [r4, 0x1]
|
||||
movs r3, 0x4
|
||||
negs r3, r3
|
||||
@@ -3856,7 +3856,7 @@ _080A8BF2:
|
||||
movs r1, 0x2
|
||||
adds r0, r5, 0
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A8C6A
|
||||
@@ -4008,7 +4008,7 @@ _080A8D10:
|
||||
mov r4, r8
|
||||
eors r4, r0
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A8D5C
|
||||
@@ -4040,7 +4040,7 @@ _080A8D6C:
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
mov r9, r0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A8DE4
|
||||
@@ -4048,7 +4048,7 @@ _080A8D6C:
|
||||
adds r4, r7, 0
|
||||
eors r4, r0
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A8DE4
|
||||
@@ -4112,14 +4112,14 @@ _080A8DFA:
|
||||
adds r0, r1
|
||||
lsls r0, 16
|
||||
lsrs r6, r0, 16
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A8E4C
|
||||
movs r1, 0x2
|
||||
mov r0, r8
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A8E4C
|
||||
@@ -5509,7 +5509,7 @@ sub_80A98B0: @ 80A98B0
|
||||
push {r4-r7,lr}
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
movs r6, 0xF0
|
||||
cmp r0, 0
|
||||
@@ -6057,7 +6057,7 @@ sub_80A9CE8: @ 80A9CE8
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A9D2A
|
||||
@@ -6095,7 +6095,7 @@ _080A9D2A:
|
||||
lsls r1, 4
|
||||
movs r2, 0x20
|
||||
bl LoadCompressedPalette
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A9D88
|
||||
@@ -6265,7 +6265,7 @@ _080A9EAE:
|
||||
.align 2, 0
|
||||
_080A9ED0: .4byte gTasks
|
||||
_080A9ED4:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A9EE8
|
||||
@@ -6314,7 +6314,7 @@ sub_80A9F10: @ 80A9F10
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A9F52
|
||||
@@ -6336,7 +6336,7 @@ _080A9F52:
|
||||
bl SetGpuReg
|
||||
mov r0, sp
|
||||
bl sub_80752A0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A9F98
|
||||
@@ -6383,7 +6383,7 @@ _080A9FC6:
|
||||
lsls r1, 4
|
||||
movs r2, 0x20
|
||||
bl LoadCompressedPalette
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A9FFA
|
||||
@@ -6548,7 +6548,7 @@ _080AA112:
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x20]
|
||||
_080AA134:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AA148
|
||||
@@ -7847,7 +7847,7 @@ sub_80AAAE4: @ 80AAAE4
|
||||
ldrb r1, [r4]
|
||||
movs r0, 0x2
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080AAB30
|
||||
|
||||
+34
-34
@@ -243,7 +243,7 @@ sub_80DE440: @ 80DE440
|
||||
lsls r1, 23
|
||||
adds r0, r1
|
||||
lsrs r4, r0, 16
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080DE49E
|
||||
@@ -957,7 +957,7 @@ sub_80DE9D8: @ 80DE9D8
|
||||
ldrsh r1, [r5, r2]
|
||||
adds r0, r4, 0
|
||||
bl sub_8074FF8
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080DEA2C
|
||||
@@ -1093,7 +1093,7 @@ sub_80DEAF0: @ 80DEAF0
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r0, _080DEB04 @ =gUnknown_2037EE8
|
||||
ldr r0, _080DEB04 @ =gAnimMoveDmg
|
||||
ldr r0, [r0]
|
||||
cmp r0, 0
|
||||
ble _080DEB0C
|
||||
@@ -1101,7 +1101,7 @@ sub_80DEAF0: @ 80DEAF0
|
||||
movs r0, 0
|
||||
b _080DEB10
|
||||
.align 2, 0
|
||||
_080DEB04: .4byte gUnknown_2037EE8
|
||||
_080DEB04: .4byte gAnimMoveDmg
|
||||
_080DEB08: .4byte gBattleAnimArgs
|
||||
_080DEB0C:
|
||||
ldr r1, _080DEB1C @ =gBattleAnimArgs
|
||||
@@ -1474,7 +1474,7 @@ sub_80DEDD8: @ 80DEDD8
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080DEE2C
|
||||
@@ -1551,7 +1551,7 @@ sub_80DEE78: @ 80DEE78
|
||||
strh r1, [r0]
|
||||
ldr r0, _080DEEB8 @ =gUnknown_202298A
|
||||
strh r1, [r0]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080DEEA4
|
||||
@@ -2503,7 +2503,7 @@ _080DF5AA:
|
||||
strh r0, [r5, 0x22]
|
||||
adds r0, r6, 0
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
movs r0, 0x80
|
||||
lsls r0, 1
|
||||
strh r0, [r5, 0x30]
|
||||
@@ -2524,7 +2524,7 @@ _080DF5E0:
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r6, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r5, 0x34]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0x34]
|
||||
@@ -2548,7 +2548,7 @@ _080DF610:
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r6, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r5, 0x34]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0x34]
|
||||
@@ -2569,7 +2569,7 @@ _080DF610:
|
||||
orrs r1, r2
|
||||
strb r1, [r0]
|
||||
adds r0, r6, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
_080DF658:
|
||||
ldrh r0, [r5, 0x2E]
|
||||
adds r0, 0x1
|
||||
@@ -3144,7 +3144,7 @@ _080DFA86:
|
||||
ldrb r1, [r6]
|
||||
mov r0, sp
|
||||
bl sub_8075300
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080DFABC
|
||||
@@ -3252,7 +3252,7 @@ _080DFB80:
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
_080DFB8A:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080DFBC8
|
||||
@@ -3397,7 +3397,7 @@ _080DFC94:
|
||||
movs r1, 0x4
|
||||
movs r2, 0x1
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080DFCCE
|
||||
@@ -3424,7 +3424,7 @@ _080DFCCE:
|
||||
lsls r1, 4
|
||||
movs r2, 0x20
|
||||
bl LoadCompressedPalette
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080DFD30
|
||||
@@ -3616,7 +3616,7 @@ _080DFE7E:
|
||||
mov r0, sp
|
||||
ldrb r0, [r0, 0x9]
|
||||
bl sub_8075358
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080DFEA0
|
||||
@@ -4039,7 +4039,7 @@ _080E01C4:
|
||||
movs r1, 0x4
|
||||
movs r2, 0x1
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080E01FC
|
||||
@@ -4066,7 +4066,7 @@ _080E01FC:
|
||||
lsls r1, 4
|
||||
movs r2, 0x20
|
||||
bl LoadCompressedPalette
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080E0264
|
||||
@@ -4319,7 +4319,7 @@ _080E042A:
|
||||
mov r0, sp
|
||||
ldrb r0, [r0, 0x9]
|
||||
bl sub_8075358
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080E044C
|
||||
@@ -4557,7 +4557,7 @@ _080E0608:
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldr r0, _080E0624 @ =sub_80E0628
|
||||
str r0, [r4]
|
||||
_080E0618:
|
||||
@@ -4621,7 +4621,7 @@ _080E065C:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r4, 0xC]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -4662,7 +4662,7 @@ _080E06B0:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r4, 0xC]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -4706,7 +4706,7 @@ _080E0708:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r4, 0xC]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -4741,7 +4741,7 @@ _080E0778:
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl DestroyAnimVisualTask
|
||||
_080E0788:
|
||||
@@ -4879,7 +4879,7 @@ sub_80E0850: @ 80E0850
|
||||
lsrs r0, 24
|
||||
strh r0, [r4, 0x26]
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldr r0, _080E08A0 @ =sub_80E08A4
|
||||
str r0, [r4]
|
||||
pop {r4}
|
||||
@@ -5028,7 +5028,7 @@ _080E09A8:
|
||||
ldrh r0, [r7, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
adds r0, r4, 0
|
||||
bl DestroyAnimVisualTask
|
||||
b _080E0A30
|
||||
@@ -5040,7 +5040,7 @@ _080E09BA:
|
||||
lsls r2, 1
|
||||
ldrh r3, [r7, 0xC]
|
||||
adds r1, r2, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r7, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -5248,7 +5248,7 @@ _080E0B3E:
|
||||
strh r5, [r6, 0x1C]
|
||||
adds r0, r5, 0
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
mov r2, r8
|
||||
movs r3, 0x2
|
||||
ldrsh r0, [r2, r3]
|
||||
@@ -5274,7 +5274,7 @@ _080E0B88:
|
||||
adds r0, r5, 0
|
||||
movs r1, 0xE0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl sub_8076440
|
||||
lsls r2, r5, 4
|
||||
@@ -5293,10 +5293,10 @@ _080E0BAA:
|
||||
_080E0BB2:
|
||||
adds r0, r5, 0
|
||||
movs r1, 0xD0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl sub_8076440
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080E0BD8
|
||||
@@ -5361,7 +5361,7 @@ _080E0C30:
|
||||
cmp r0, 0xD
|
||||
bne _080E0C58
|
||||
adds r0, r5, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r1, _080E0C64 @ =gSprites
|
||||
lsls r0, r5, 4
|
||||
adds r0, r5
|
||||
@@ -10378,7 +10378,7 @@ sub_80E3294: @ 80E3294
|
||||
bne _080E32DC
|
||||
adds r0, r5, 0
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
movs r0, 0x80
|
||||
lsls r0, 1
|
||||
strh r0, [r4, 0xA]
|
||||
@@ -10401,7 +10401,7 @@ _080E32DC:
|
||||
ldrsh r2, [r4, r0]
|
||||
adds r0, r5, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0xE]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0xE]
|
||||
@@ -10412,7 +10412,7 @@ _080E32DC:
|
||||
movs r0, 0
|
||||
strh r0, [r4, 0xE]
|
||||
adds r0, r5, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r1, _080E3330 @ =gSprites
|
||||
lsls r0, r5, 4
|
||||
adds r0, r5
|
||||
|
||||
+38
-38
@@ -745,7 +745,7 @@ _08074A1C:
|
||||
ldrb r0, [r5]
|
||||
movs r4, 0x2
|
||||
eors r0, r4
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08074A4A
|
||||
@@ -757,7 +757,7 @@ _08074A38:
|
||||
ldrb r0, [r5]
|
||||
movs r4, 0x2
|
||||
eors r0, r4
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08074A54
|
||||
@@ -1265,8 +1265,8 @@ _08074DBC: .4byte gBattleAnimTarget
|
||||
_08074DC0: .4byte sub_8074C64
|
||||
thumb_func_end sub_8074D80
|
||||
|
||||
thumb_func_start sub_8074DC4
|
||||
sub_8074DC4: @ 8074DC4
|
||||
thumb_func_start TranslateMonSpriteLinear
|
||||
TranslateMonSpriteLinear: @ 8074DC4
|
||||
push {r4,lr}
|
||||
adds r3, r0, 0
|
||||
ldrh r1, [r3, 0x2E]
|
||||
@@ -1307,10 +1307,10 @@ _08074E0E:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8074DC4
|
||||
thumb_func_end TranslateMonSpriteLinear
|
||||
|
||||
thumb_func_start sub_8074E14
|
||||
sub_8074E14: @ 8074E14
|
||||
thumb_func_start TranslateMonSpriteLinearFixedPoint
|
||||
TranslateMonSpriteLinearFixedPoint: @ 8074E14
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldrh r1, [r4, 0x2E]
|
||||
@@ -1358,7 +1358,7 @@ _08074E6A:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8074E14
|
||||
thumb_func_end TranslateMonSpriteLinearFixedPoint
|
||||
|
||||
thumb_func_start sub_8074E70
|
||||
sub_8074E70: @ 8074E70
|
||||
@@ -2219,7 +2219,7 @@ sub_8075490: @ 8075490
|
||||
ldrh r0, [r4, 0x22]
|
||||
strh r0, [r4, 0x34]
|
||||
adds r0, r4, 0
|
||||
bl sub_80754B8
|
||||
bl InitSpriteDataForLinearTranslation
|
||||
ldr r1, _080754B4 @ =sub_8074D3C
|
||||
str r1, [r4, 0x1C]
|
||||
adds r0, r4, 0
|
||||
@@ -2231,8 +2231,8 @@ sub_8075490: @ 8075490
|
||||
_080754B4: .4byte sub_8074D3C
|
||||
thumb_func_end sub_8075490
|
||||
|
||||
thumb_func_start sub_80754B8
|
||||
sub_80754B8: @ 80754B8
|
||||
thumb_func_start InitSpriteDataForLinearTranslation
|
||||
InitSpriteDataForLinearTranslation: @ 80754B8
|
||||
push {r4-r6,lr}
|
||||
adds r5, r0, 0
|
||||
ldrh r0, [r5, 0x32]
|
||||
@@ -2262,7 +2262,7 @@ sub_80754B8: @ 80754B8
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_80754B8
|
||||
thumb_func_end InitSpriteDataForLinearTranslation
|
||||
|
||||
thumb_func_start obj_translate_based_on_private_1_2_3_4
|
||||
obj_translate_based_on_private_1_2_3_4: @ 80754F8
|
||||
@@ -2745,8 +2745,8 @@ sub_8075830: @ 8075830
|
||||
_08075854: .4byte sub_80757E8
|
||||
thumb_func_end sub_8075830
|
||||
|
||||
thumb_func_start obj_id_set_rotscale
|
||||
obj_id_set_rotscale: @ 8075858
|
||||
thumb_func_start SetSpriteRotScale
|
||||
SetSpriteRotScale: @ 8075858
|
||||
push {r4,r5,lr}
|
||||
sub sp, 0x10
|
||||
lsls r0, 24
|
||||
@@ -2810,7 +2810,7 @@ _08075894:
|
||||
_080758D0: .4byte 0xffff0000
|
||||
_080758D4: .4byte gSprites
|
||||
_080758D8: .4byte gOamMatrices
|
||||
thumb_func_end obj_id_set_rotscale
|
||||
thumb_func_end SetSpriteRotScale
|
||||
|
||||
thumb_func_start sub_80758DC
|
||||
sub_80758DC: @ 80758DC
|
||||
@@ -2818,8 +2818,8 @@ sub_80758DC: @ 80758DC
|
||||
bx lr
|
||||
thumb_func_end sub_80758DC
|
||||
|
||||
thumb_func_start sub_80758E0
|
||||
sub_80758E0: @ 80758E0
|
||||
thumb_func_start PrepareBattlerSpriteForRotScale
|
||||
PrepareBattlerSpriteForRotScale: @ 80758E0
|
||||
push {r4-r7,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -2834,7 +2834,7 @@ sub_80758E0: @ 80758E0
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
adds r6, r0, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08075914
|
||||
@@ -2899,10 +2899,10 @@ _0807595C:
|
||||
.align 2, 0
|
||||
_08075978: .4byte gSprites
|
||||
_0807597C: .4byte gUnknown_2024018
|
||||
thumb_func_end sub_80758E0
|
||||
thumb_func_end PrepareBattlerSpriteForRotScale
|
||||
|
||||
thumb_func_start sub_8075980
|
||||
sub_8075980: @ 8075980
|
||||
thumb_func_start ResetSpriteRotScale
|
||||
ResetSpriteRotScale: @ 8075980
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
@@ -2912,7 +2912,7 @@ sub_8075980: @ 8075980
|
||||
adds r0, r4, 0
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldr r1, _080759D8 @ =gSprites
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
@@ -2946,7 +2946,7 @@ sub_8075980: @ 8075980
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080759D8: .4byte gSprites
|
||||
thumb_func_end sub_8075980
|
||||
thumb_func_end ResetSpriteRotScale
|
||||
|
||||
thumb_func_start sub_80759DC
|
||||
sub_80759DC: @ 80759DC
|
||||
@@ -3276,7 +3276,7 @@ _08075C40:
|
||||
ldrb r0, [r6]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08075C64
|
||||
@@ -3294,7 +3294,7 @@ _08075C64:
|
||||
ldrb r0, [r6]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08075C88
|
||||
@@ -3349,7 +3349,7 @@ sub_8075CB8: @ 8075CB8
|
||||
bl GetBattlerAtPosition
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08075CF2
|
||||
@@ -3367,7 +3367,7 @@ _08075CF2:
|
||||
bl GetBattlerAtPosition
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08075D1E
|
||||
@@ -3387,7 +3387,7 @@ _08075D1E:
|
||||
bl GetBattlerAtPosition
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08075D4A
|
||||
@@ -3407,7 +3407,7 @@ _08075D4A:
|
||||
bl GetBattlerAtPosition
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08075D76
|
||||
@@ -4155,7 +4155,7 @@ sub_80762D0: @ 80762D0
|
||||
bl sub_80765C0
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -4223,7 +4223,7 @@ _08076356:
|
||||
movs r3, 0x1E
|
||||
ldrsh r2, [r4, r3]
|
||||
ldrh r3, [r4, 0x20]
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -4309,7 +4309,7 @@ _08076410:
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
movs r0, 0
|
||||
b _08076438
|
||||
.align 2, 0
|
||||
@@ -4633,7 +4633,7 @@ _08076672:
|
||||
movs r3, 0x1C
|
||||
ldrsh r2, [r4, r3]
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
movs r0, 0x18
|
||||
ldrsh r3, [r4, r0]
|
||||
cmp r3, 0
|
||||
@@ -4701,7 +4701,7 @@ sub_80766EC: @ 80766EC
|
||||
adds r7, r4, 0
|
||||
ldr r6, _080767E0 @ =gBattleAnimTarget
|
||||
ldrb r0, [r6]
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0807672C
|
||||
@@ -4728,7 +4728,7 @@ _0807672C:
|
||||
ldr r0, _080767EC @ =gBattleAnimAttacker
|
||||
mov r8, r0
|
||||
ldrb r0, [r0]
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08076764
|
||||
@@ -4756,7 +4756,7 @@ _08076764:
|
||||
ldrb r0, [r6]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0807679C
|
||||
@@ -4784,7 +4784,7 @@ _0807679C:
|
||||
mov r1, r8
|
||||
ldrb r0, [r1]
|
||||
eors r0, r5
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080767D4
|
||||
@@ -4834,7 +4834,7 @@ _080767FE:
|
||||
lsls r0, r5, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08076840
|
||||
|
||||
@@ -363,7 +363,7 @@ _080DD0BE:
|
||||
bne _080DD0E8
|
||||
_080DD0CC:
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080DD0E8
|
||||
@@ -475,7 +475,7 @@ _080DD19A:
|
||||
bne _080DD1C4
|
||||
_080DD1A8:
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080DD1C4
|
||||
|
||||
@@ -347,7 +347,7 @@ _080EEE9C:
|
||||
movs r0, 0x4A
|
||||
adds r1, r4, 0
|
||||
bl SetGpuReg
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080EEF00
|
||||
@@ -839,7 +839,7 @@ _080EF2D0:
|
||||
_080EF2D6:
|
||||
adds r0, r5, 0
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
movs r0, 0x80
|
||||
lsls r0, 1
|
||||
strh r0, [r4, 0x1C]
|
||||
@@ -853,7 +853,7 @@ _080EF2E6:
|
||||
adds r0, r5, 0
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl sub_8076440
|
||||
movs r0, 0x1C
|
||||
@@ -870,7 +870,7 @@ _080EF30A:
|
||||
_080EF314: .4byte 0x000002cf
|
||||
_080EF318:
|
||||
adds r0, r5, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r1, _080EF340 @ =gSprites
|
||||
lsls r0, r5, 4
|
||||
adds r0, r5
|
||||
@@ -1781,7 +1781,7 @@ _080EFA5C:
|
||||
_080EFA62:
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
movs r0, 0x80
|
||||
lsls r0, 1
|
||||
strh r0, [r5, 0x1C]
|
||||
@@ -1824,7 +1824,7 @@ _080EFAB4:
|
||||
adds r0, r4, 0
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r5, 0xC]
|
||||
ldrh r1, [r5, 0xE]
|
||||
adds r0, r1
|
||||
@@ -1850,7 +1850,7 @@ _080EFAF0: .4byte gSprites
|
||||
_080EFAF4: .4byte 0x0000047f
|
||||
_080EFAF8:
|
||||
adds r0, r4, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
ldr r1, _080EFB1C @ =gSprites
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
@@ -5487,7 +5487,7 @@ sub_80F1720: @ 80F1720
|
||||
bl GetMonData
|
||||
adds r4, r0, 0
|
||||
adds r0, r6, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080F17F8
|
||||
|
||||
@@ -358,7 +358,7 @@ sub_80783FC: @ 80783FC
|
||||
ldr r1, _080784B4 @ =0xffdc0000
|
||||
adds r0, r1
|
||||
lsrs r4, r0, 16
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0807843A
|
||||
|
||||
@@ -137,7 +137,7 @@ _080BA8EA:
|
||||
cmp r4, r0
|
||||
beq _080BA914
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BA914
|
||||
@@ -707,7 +707,7 @@ sub_80BACEC: @ 80BACEC
|
||||
ldrh r1, [r4]
|
||||
movs r0, 0xA
|
||||
bl SetGpuReg
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BAD7A
|
||||
@@ -726,7 +726,7 @@ _080BAD7A:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BADFE
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BADFE
|
||||
@@ -746,7 +746,7 @@ _080BADAA:
|
||||
ldrb r0, [r5]
|
||||
movs r6, 0x2
|
||||
eors r0, r6
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -844,7 +844,7 @@ _080BAE5C:
|
||||
ldrb r0, [r0, 0x9]
|
||||
ldr r1, _080BAF18 @ =gFile_graphics_battle_anims_masks_curse_tilemap
|
||||
bl sub_807543C
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BAEAC
|
||||
@@ -967,7 +967,7 @@ sub_80BAF38: @ 80BAF38
|
||||
movs r0, 0x4A
|
||||
adds r1, r4, 0
|
||||
bl SetGpuReg
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BAFCA
|
||||
@@ -1134,7 +1134,7 @@ _080BB0FA:
|
||||
movs r1, 0x2
|
||||
eors r0, r1
|
||||
strb r0, [r2, 0x1]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BB12A
|
||||
@@ -1144,7 +1144,7 @@ _080BB0FA:
|
||||
cmp r0, 0
|
||||
beq _080BB130
|
||||
ldrb r0, [r1, 0x1]
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BB130
|
||||
@@ -1183,7 +1183,7 @@ _080BB130:
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BB18E
|
||||
@@ -1217,7 +1217,7 @@ _080BB18E:
|
||||
_080BB1C0:
|
||||
ldr r0, [r4]
|
||||
ldrb r0, [r0, 0x1]
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
cmp r5, 0x1
|
||||
@@ -1369,7 +1369,7 @@ _080BB30C:
|
||||
ldr r1, _080BB354 @ =gFile_graphics_battle_anims_masks_stat_tilemap_2_tilemap
|
||||
bl sub_807543C
|
||||
_080BB316:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BB32E
|
||||
@@ -1692,7 +1692,7 @@ _080BB582:
|
||||
movs r0, 0x4A
|
||||
adds r1, r4, 0
|
||||
bl SetGpuReg
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BB5B2
|
||||
@@ -2234,7 +2234,7 @@ _080BB9BA:
|
||||
beq _080BB9F8
|
||||
lsls r0, r4, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BB9F8
|
||||
@@ -2313,7 +2313,7 @@ sub_80BBA20: @ 80BBA20
|
||||
movs r0, 0x2
|
||||
adds r6, r7, 0
|
||||
eors r6, r0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BBA82
|
||||
@@ -2321,7 +2321,7 @@ sub_80BBA20: @ 80BBA20
|
||||
cmp r1, 0
|
||||
beq _080BBA86
|
||||
adds r0, r6, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BBA86
|
||||
@@ -2370,7 +2370,7 @@ _080BBA86:
|
||||
movs r1, 0x20
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BBAFC
|
||||
@@ -2446,7 +2446,7 @@ _080BBB80:
|
||||
ldrb r0, [r0, 0x9]
|
||||
ldr r1, [sp, 0x58]
|
||||
bl sub_807543C
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BBBA8
|
||||
@@ -2669,7 +2669,7 @@ _080BBD00:
|
||||
movs r0, 0x4A
|
||||
adds r1, r4, 0
|
||||
bl SetGpuReg
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BBD7E
|
||||
@@ -3044,7 +3044,7 @@ sub_80BC02C: @ 80BC02C
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
lsrs r1, r0, 24
|
||||
cmp r1, 0
|
||||
@@ -3173,7 +3173,7 @@ sub_80BC12C: @ 80BC12C
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BC144
|
||||
|
||||
@@ -4639,7 +4639,7 @@ _0803CCA6:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, _0803CD84 @ =gUnknown_2037EEC
|
||||
ldr r4, _0803CD84 @ =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4653,7 +4653,7 @@ _0803CCA6:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, _0803CD88 @ =gUnknown_2037EE8
|
||||
ldr r4, _0803CD88 @ =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4726,8 +4726,8 @@ _0803CCA6:
|
||||
_0803CD78: .4byte gActiveBattler
|
||||
_0803CD7C: .4byte gUnknown_2022BC4
|
||||
_0803CD80: .4byte gAnimMoveTurn
|
||||
_0803CD84: .4byte gUnknown_2037EEC
|
||||
_0803CD88: .4byte gUnknown_2037EE8
|
||||
_0803CD84: .4byte gAnimMovePower
|
||||
_0803CD88: .4byte gAnimMoveDmg
|
||||
_0803CD8C: .4byte gUnknown_2037EFE
|
||||
_0803CD90: .4byte gUnknown_2037F00
|
||||
_0803CD94: .4byte gAnimDisableStructPtr
|
||||
|
||||
@@ -4260,7 +4260,7 @@ _080D6522:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, _080D6600 @ =gUnknown_2037EEC
|
||||
ldr r4, _080D6600 @ =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4274,7 +4274,7 @@ _080D6522:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, _080D6604 @ =gUnknown_2037EE8
|
||||
ldr r4, _080D6604 @ =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4347,8 +4347,8 @@ _080D6522:
|
||||
_080D65F4: .4byte gActiveBattler
|
||||
_080D65F8: .4byte gUnknown_2022BC4
|
||||
_080D65FC: .4byte gAnimMoveTurn
|
||||
_080D6600: .4byte gUnknown_2037EEC
|
||||
_080D6604: .4byte gUnknown_2037EE8
|
||||
_080D6600: .4byte gAnimMovePower
|
||||
_080D6604: .4byte gAnimMoveDmg
|
||||
_080D6608: .4byte gUnknown_2037EFE
|
||||
_080D660C: .4byte gUnknown_2037F00
|
||||
_080D6610: .4byte gAnimDisableStructPtr
|
||||
|
||||
@@ -5489,7 +5489,7 @@ sub_80EA2B8: @ 80EA2B8
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, _080EA398 @ =gUnknown_2037EEC
|
||||
ldr r4, _080EA398 @ =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -5503,7 +5503,7 @@ sub_80EA2B8: @ 80EA2B8
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, _080EA39C @ =gUnknown_2037EE8
|
||||
ldr r4, _080EA39C @ =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -5576,8 +5576,8 @@ sub_80EA2B8: @ 80EA2B8
|
||||
_080EA38C: .4byte gUnknown_2022BC4
|
||||
_080EA390: .4byte gActiveBattler
|
||||
_080EA394: .4byte gAnimMoveTurn
|
||||
_080EA398: .4byte gUnknown_2037EEC
|
||||
_080EA39C: .4byte gUnknown_2037EE8
|
||||
_080EA398: .4byte gAnimMovePower
|
||||
_080EA39C: .4byte gAnimMoveDmg
|
||||
_080EA3A0: .4byte gUnknown_2037EFE
|
||||
_080EA3A4: .4byte gUnknown_2037F00
|
||||
_080EA3A8: .4byte gAnimDisableStructPtr
|
||||
|
||||
@@ -4800,7 +4800,7 @@ _08038212:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, _080382F0 @ =gUnknown_2037EEC
|
||||
ldr r4, _080382F0 @ =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4814,7 +4814,7 @@ _08038212:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, _080382F4 @ =gUnknown_2037EE8
|
||||
ldr r4, _080382F4 @ =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4887,8 +4887,8 @@ _08038212:
|
||||
_080382E4: .4byte gActiveBattler
|
||||
_080382E8: .4byte gUnknown_2022BC4
|
||||
_080382EC: .4byte gAnimMoveTurn
|
||||
_080382F0: .4byte gUnknown_2037EEC
|
||||
_080382F4: .4byte gUnknown_2037EE8
|
||||
_080382F0: .4byte gAnimMovePower
|
||||
_080382F4: .4byte gAnimMoveDmg
|
||||
_080382F8: .4byte gUnknown_2037EFE
|
||||
_080382FC: .4byte gUnknown_2037F00
|
||||
_08038300: .4byte gAnimDisableStructPtr
|
||||
|
||||
@@ -3956,7 +3956,7 @@ sub_8030350: @ 8030350
|
||||
ldrsh r6, [r4, r0]
|
||||
lsls r0, r6, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -8434,7 +8434,7 @@ _08032852:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, _08032930 @ =gUnknown_2037EEC
|
||||
ldr r4, _08032930 @ =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -8448,7 +8448,7 @@ _08032852:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, _08032934 @ =gUnknown_2037EE8
|
||||
ldr r4, _08032934 @ =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -8521,8 +8521,8 @@ _08032852:
|
||||
_08032924: .4byte gActiveBattler
|
||||
_08032928: .4byte gUnknown_2022BC4
|
||||
_0803292C: .4byte gAnimMoveTurn
|
||||
_08032930: .4byte gUnknown_2037EEC
|
||||
_08032934: .4byte gUnknown_2037EE8
|
||||
_08032930: .4byte gAnimMovePower
|
||||
_08032934: .4byte gAnimMoveDmg
|
||||
_08032938: .4byte gUnknown_2037EFE
|
||||
_0803293C: .4byte gUnknown_2037F00
|
||||
_08032940: .4byte gAnimDisableStructPtr
|
||||
|
||||
@@ -4768,7 +4768,7 @@ sub_8158814: @ 8158814
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, _081588F4 @ =gUnknown_2037EEC
|
||||
ldr r4, _081588F4 @ =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4782,7 +4782,7 @@ sub_8158814: @ 8158814
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, _081588F8 @ =gUnknown_2037EE8
|
||||
ldr r4, _081588F8 @ =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@@ -4855,8 +4855,8 @@ sub_8158814: @ 8158814
|
||||
_081588E8: .4byte gUnknown_2022BC4
|
||||
_081588EC: .4byte gActiveBattler
|
||||
_081588F0: .4byte gAnimMoveTurn
|
||||
_081588F4: .4byte gUnknown_2037EEC
|
||||
_081588F8: .4byte gUnknown_2037EE8
|
||||
_081588F4: .4byte gAnimMovePower
|
||||
_081588F8: .4byte gAnimMoveDmg
|
||||
_081588FC: .4byte gUnknown_2037EFE
|
||||
_08158900: .4byte gUnknown_2037F00
|
||||
_08158904: .4byte gAnimDisableStructPtr
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
sub_80B3FAC: @ 80B3FAC
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B3FD8
|
||||
@@ -105,7 +105,7 @@ _080B4078: .4byte DestroyAnimSprite
|
||||
sub_80B407C: @ 80B407C
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B40A0
|
||||
@@ -185,7 +185,7 @@ _080B4124: .4byte DestroyAnimSprite
|
||||
sub_80B4128: @ 80B4128
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B4144
|
||||
@@ -484,7 +484,7 @@ sub_80B4364: @ 80B4364
|
||||
push {r4-r7,lr}
|
||||
sub sp, 0x4
|
||||
adds r7, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B4384
|
||||
@@ -513,7 +513,7 @@ _080B4384:
|
||||
negs r0, r0
|
||||
strh r0, [r1, 0x6]
|
||||
_080B43A6:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B43F6
|
||||
|
||||
+11
-11
@@ -282,7 +282,7 @@ sub_80B7ACC: @ 80B7ACC
|
||||
movs r0, 0x7E
|
||||
strh r0, [r4, 0x2E]
|
||||
adds r0, r4, 0
|
||||
bl sub_80754B8
|
||||
bl InitSpriteDataForLinearTranslation
|
||||
ldrh r0, [r4, 0x30]
|
||||
negs r0, r0
|
||||
strh r0, [r4, 0x34]
|
||||
@@ -701,7 +701,7 @@ _080B7E16:
|
||||
ldr r0, _080B7E70 @ =0x04000016
|
||||
str r0, [sp]
|
||||
movs r7, 0x2
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B7EA8
|
||||
@@ -728,7 +728,7 @@ _080B7E78:
|
||||
ldr r0, _080B7F38 @ =0x0400001a
|
||||
str r0, [sp]
|
||||
movs r7, 0x4
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B7EA8
|
||||
@@ -995,7 +995,7 @@ _080B80A0:
|
||||
.4byte _080B81E8
|
||||
.4byte _080B8250
|
||||
_080B80B4:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -1685,7 +1685,7 @@ sub_80B85B8: @ 80B85B8
|
||||
ldrb r0, [r6]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B8642
|
||||
@@ -1744,7 +1744,7 @@ sub_80B8664: @ 80B8664
|
||||
ldrb r1, [r4]
|
||||
movs r0, 0x2
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B86A0
|
||||
@@ -1827,7 +1827,7 @@ sub_80B86EC: @ 80B86EC
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B8750
|
||||
@@ -1840,7 +1840,7 @@ _080B8750:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B87CA
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B87CA
|
||||
@@ -1860,7 +1860,7 @@ _080B8780:
|
||||
ldrb r0, [r4]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -2155,7 +2155,7 @@ _080B89FC:
|
||||
movs r0, 0x4A
|
||||
adds r1, r4, 0
|
||||
bl SetGpuReg
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B8A2E
|
||||
@@ -2254,7 +2254,7 @@ _080B8AE0:
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B8B04
|
||||
|
||||
+4
-4
@@ -219,7 +219,7 @@ _080ADD7C:
|
||||
ldrb r0, [r4]
|
||||
movs r6, 0x2
|
||||
eors r0, r6
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080ADD98
|
||||
@@ -237,7 +237,7 @@ _080ADDA0:
|
||||
ldrb r0, [r0]
|
||||
movs r4, 0x2
|
||||
eors r0, r4
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080ADDC4
|
||||
@@ -536,7 +536,7 @@ _080ADFFA:
|
||||
sub_80AE000: @ 80AE000
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AE01C
|
||||
@@ -609,7 +609,7 @@ _080AE090:
|
||||
ldr r0, _080AE118 @ =gBattleAnimAttacker
|
||||
_080AE092:
|
||||
ldrb r6, [r0]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AE0AA
|
||||
|
||||
+3
-3
@@ -76,7 +76,7 @@ _080B0924: .4byte gBattleAnimAttacker
|
||||
sub_80B0928: @ 80B0928
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B0944
|
||||
@@ -1379,7 +1379,7 @@ _080B1332:
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r5, 0x5]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B136C
|
||||
@@ -1555,7 +1555,7 @@ _080B14A0:
|
||||
movs r1, 0
|
||||
bl sub_8075114
|
||||
_080B14A8:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B14BC
|
||||
|
||||
+4
-4
@@ -782,7 +782,7 @@ sub_80ACEA4: @ 80ACEA4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldr r0, _080ACF10 @ =sub_80ACF14
|
||||
str r0, [r4]
|
||||
pop {r4,r5}
|
||||
@@ -1147,7 +1147,7 @@ _080AD1A8:
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
strh r5, [r4, 0xC]
|
||||
_080AD1D4:
|
||||
ldrh r0, [r4, 0x8]
|
||||
@@ -1877,7 +1877,7 @@ _080AD70C:
|
||||
movs r1, 0xFF
|
||||
ands r0, r1
|
||||
strh r0, [r4, 0x30]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AD7A8
|
||||
@@ -1999,7 +1999,7 @@ _080AD826:
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x2
|
||||
eors r0, r1
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
adds r0, 0x1
|
||||
|
||||
+7
-7
@@ -302,7 +302,7 @@ sub_80B1AB8: @ 80B1AB8
|
||||
negs r0, r0
|
||||
strh r0, [r1, 0x6]
|
||||
_080B1AE4:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B1AFC
|
||||
@@ -720,7 +720,7 @@ _080B1DC8:
|
||||
lsrs r1, 16
|
||||
cmp r1, 0x7F
|
||||
bhi _080B1EBE
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B1E64
|
||||
@@ -1017,7 +1017,7 @@ _080B2028:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080B20E6
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B20B6
|
||||
@@ -1149,7 +1149,7 @@ _080B211C:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080B21DA
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B21AA
|
||||
@@ -1281,7 +1281,7 @@ _080B2210:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080B22CE
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B229E
|
||||
@@ -1422,7 +1422,7 @@ _080B2318:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080B23D6
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B23A6
|
||||
@@ -1659,7 +1659,7 @@ sub_80B2514: @ 80B2514
|
||||
strh r0, [r4, 0x32]
|
||||
ldrh r0, [r5, 0x4]
|
||||
strh r0, [r4, 0x34]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B25C4
|
||||
|
||||
+7
-7
@@ -358,12 +358,12 @@ sub_80B54E8: @ 80B54E8
|
||||
lsrs r4, 24
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x80
|
||||
movs r2, 0x80
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldr r1, _080B5560 @ =gSprites
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
@@ -485,11 +485,11 @@ _080B55F0:
|
||||
adds r0, r1, 0
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
b _080B5634
|
||||
_080B5618:
|
||||
adds r0, r1, 0
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl DestroyAnimVisualTask
|
||||
movs r0, 0x50
|
||||
@@ -1818,7 +1818,7 @@ sub_80B6020: @ 80B6020
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
str r0, [sp, 0x8]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B6090
|
||||
@@ -1840,7 +1840,7 @@ _080B6092:
|
||||
lsls r0, r4, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B615E
|
||||
@@ -2253,7 +2253,7 @@ sub_80B63B4: @ 80B63B4
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B63FC
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B6414
|
||||
|
||||
+5
-5
@@ -1224,7 +1224,7 @@ sub_80B94B4: @ 80B94B4
|
||||
_080B94D8: .4byte gTasks
|
||||
_080B94DC: .4byte gBattleAnimArgs
|
||||
_080B94E0:
|
||||
ldr r0, _080B950C @ =gUnknown_2037EEC
|
||||
ldr r0, _080B950C @ =gAnimMovePower
|
||||
ldrh r0, [r0]
|
||||
movs r1, 0xA
|
||||
bl __udivsi3
|
||||
@@ -1247,7 +1247,7 @@ _080B94EC:
|
||||
ldr r0, _080B9514 @ =sub_80B9584
|
||||
b _080B9576
|
||||
.align 2, 0
|
||||
_080B950C: .4byte gUnknown_2037EEC
|
||||
_080B950C: .4byte gAnimMovePower
|
||||
_080B9510: .4byte gBattle_BG3_X
|
||||
_080B9514: .4byte sub_80B9584
|
||||
_080B9518:
|
||||
@@ -1257,7 +1257,7 @@ _080B9518:
|
||||
_080B951E:
|
||||
lsls r0, r5, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B9548
|
||||
@@ -1641,7 +1641,7 @@ sub_80B97D8: @ 80B97D8
|
||||
lsrs r1, r0, 24
|
||||
ldr r3, _080B97F8 @ =gBattleAnimArgs
|
||||
movs r2, 0
|
||||
ldr r0, _080B97FC @ =gUnknown_2037EEC
|
||||
ldr r0, _080B97FC @ =gAnimMovePower
|
||||
ldrh r0, [r0]
|
||||
cmp r0, 0x63
|
||||
bls _080B97EC
|
||||
@@ -1654,7 +1654,7 @@ _080B97EC:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080B97F8: .4byte gBattleAnimArgs
|
||||
_080B97FC: .4byte gUnknown_2037EEC
|
||||
_080B97FC: .4byte gAnimMovePower
|
||||
thumb_func_end sub_80B97D8
|
||||
|
||||
thumb_func_start sub_80B9800
|
||||
|
||||
@@ -1393,7 +1393,7 @@ sub_80AFAE4: @ 80AFAE4
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AFB26
|
||||
@@ -1433,7 +1433,7 @@ _080AFB26:
|
||||
lsls r1, 4
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080AFB88
|
||||
@@ -1619,7 +1619,7 @@ _080AFCD6:
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x20]
|
||||
_080AFCF8:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AFD0C
|
||||
@@ -1704,7 +1704,7 @@ sub_80AFD80: @ 80AFD80
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AFDC2
|
||||
@@ -1744,7 +1744,7 @@ _080AFDC2:
|
||||
lsls r1, 4
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080AFE24
|
||||
@@ -1920,7 +1920,7 @@ _080AFF5E:
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x20]
|
||||
_080AFF80:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AFF94
|
||||
@@ -2111,7 +2111,7 @@ _080B00F8:
|
||||
ldrh r1, [r5, 0x3C]
|
||||
orrs r0, r1
|
||||
strh r0, [r5, 0x3C]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B012C
|
||||
@@ -2213,7 +2213,7 @@ _080B01AA:
|
||||
ldrh r0, [r4, 0x3C]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x3C]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B0200
|
||||
@@ -2283,7 +2283,7 @@ _080B0230:
|
||||
ldrh r1, [r4, 0x26]
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x26]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B02AE
|
||||
@@ -2361,7 +2361,7 @@ _080B02CE:
|
||||
strh r0, [r4, 0x34]
|
||||
adds r0, 0x4
|
||||
strh r0, [r4, 0x36]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B0328
|
||||
@@ -2583,7 +2583,7 @@ sub_80B0458: @ 80B0458
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
adds r0, r5, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B0544
|
||||
|
||||
+1
-1
@@ -1733,7 +1733,7 @@ sub_80BA5F8: @ 80BA5F8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BA61C
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080BA61C
|
||||
|
||||
+1
-1
@@ -166,7 +166,7 @@ sub_80B1744: @ 80B1744
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x36]
|
||||
adds r0, r4, 0
|
||||
bl sub_80754B8
|
||||
bl InitSpriteDataForLinearTranslation
|
||||
movs r1, 0x30
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r2, 0x4
|
||||
|
||||
+19
-19
@@ -15,7 +15,7 @@ sub_80B2ECC: @ 80B2ECC
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B2EE8
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B2EFE
|
||||
@@ -32,7 +32,7 @@ _080B2EE8:
|
||||
movs r0, 0xC8
|
||||
strb r0, [r1]
|
||||
_080B2EFE:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B2F5A
|
||||
@@ -51,7 +51,7 @@ _080B2EFE:
|
||||
orrs r1, r0
|
||||
lsrs r5, r1, 31
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B2F3C
|
||||
@@ -63,7 +63,7 @@ _080B2F3C:
|
||||
adds r4, r0, 0
|
||||
eors r4, r7
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B2F5A
|
||||
@@ -73,7 +73,7 @@ _080B2F3C:
|
||||
adds r1, r5, 0
|
||||
bl sub_8072E48
|
||||
_080B2F5A:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B2F90
|
||||
@@ -128,7 +128,7 @@ _080B2FA6:
|
||||
adds r0, r4
|
||||
_080B2FCA:
|
||||
strh r0, [r6, 0x22]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B2FDC
|
||||
@@ -271,7 +271,7 @@ sub_80B30B0: @ 80B30B0
|
||||
negs r1, r1
|
||||
cmp r0, r1
|
||||
bne _080B3156
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B3146
|
||||
@@ -281,7 +281,7 @@ sub_80B30B0: @ 80B30B0
|
||||
lsrs r4, r0, 24
|
||||
adds r6, r4, 0
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B3118
|
||||
@@ -304,7 +304,7 @@ _080B3118:
|
||||
adds r4, r0, 0
|
||||
eors r4, r6
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B3146
|
||||
@@ -345,7 +345,7 @@ _080B3164: .4byte sub_80B3168
|
||||
sub_80B3168: @ 80B3168
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B31C0
|
||||
@@ -363,7 +363,7 @@ sub_80B3168: @ 80B3168
|
||||
orrs r1, r0
|
||||
lsrs r5, r1, 31
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B31A6
|
||||
@@ -373,7 +373,7 @@ _080B31A6:
|
||||
movs r0, 0x2
|
||||
eors r4, r0
|
||||
adds r0, r4, 0
|
||||
bl sub_8072DF0
|
||||
bl IsBattlerSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B31C0
|
||||
@@ -407,7 +407,7 @@ sub_80B31D0: @ 80B31D0
|
||||
bne _080B31EA
|
||||
movs r6, 0x1
|
||||
_080B31EA:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B3232
|
||||
@@ -860,7 +860,7 @@ _080B3544:
|
||||
lsls r1, 1
|
||||
strh r1, [r0, 0x20]
|
||||
ldrb r0, [r4, 0x8]
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
adds r0, r5, 0
|
||||
bl DestroyAnimVisualTask
|
||||
_080B357A:
|
||||
@@ -1240,7 +1240,7 @@ sub_80B3834: @ 80B3834
|
||||
lsls r1, 3
|
||||
ldr r0, _080B3890 @ =gTasks
|
||||
adds r5, r1, r0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B38D8
|
||||
@@ -1860,7 +1860,7 @@ _080B3CD8:
|
||||
lsls r2, 1
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrb r3, [r4, 0x1]
|
||||
lsrs r1, r3, 6
|
||||
ldrb r2, [r4, 0x3]
|
||||
@@ -1947,7 +1947,7 @@ _080B3DAA:
|
||||
ldrsh r2, [r4, r1]
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -1986,7 +1986,7 @@ _080B3DFC:
|
||||
ldrsh r2, [r4, r1]
|
||||
adds r1, r2, 0
|
||||
movs r3, 0
|
||||
bl obj_id_set_rotscale
|
||||
bl SetSpriteRotScale
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -2063,7 +2063,7 @@ _080B3EA4:
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5, 0x22]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B3ED2
|
||||
|
||||
+6
-6
@@ -143,7 +143,7 @@ _080B472E:
|
||||
adds r2, r0
|
||||
strh r2, [r5, 0x36]
|
||||
adds r0, r5, 0
|
||||
bl sub_80754B8
|
||||
bl InitSpriteDataForLinearTranslation
|
||||
strh r4, [r5, 0x34]
|
||||
strh r4, [r5, 0x36]
|
||||
ldr r0, _080B4774 @ =sub_8074D00
|
||||
@@ -262,7 +262,7 @@ do_boulder_dust: @ 80B4810
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl SetAnimBgAttribute
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B4854
|
||||
@@ -299,7 +299,7 @@ _080B4854:
|
||||
lsls r1, 4
|
||||
movs r2, 0x20
|
||||
bl LoadCompressedPalette
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B48B0
|
||||
@@ -512,7 +512,7 @@ _080B4A4C:
|
||||
.align 2, 0
|
||||
_080B4A54: .4byte gTasks
|
||||
_080B4A58:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B4A6C
|
||||
@@ -1413,7 +1413,7 @@ sub_80B5148: @ 80B5148
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
ldr r2, _080B5180 @ =gUnknown_2037EE8
|
||||
ldr r2, _080B5180 @ =gAnimMoveDmg
|
||||
ldr r0, [r2]
|
||||
cmp r0, 0x20
|
||||
bgt _080B515C
|
||||
@@ -1441,7 +1441,7 @@ _080B5176:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080B5180: .4byte gUnknown_2037EE8
|
||||
_080B5180: .4byte gAnimMoveDmg
|
||||
_080B5184: .4byte gBattleAnimArgs
|
||||
thumb_func_end sub_80B5148
|
||||
|
||||
|
||||
+7
-7
@@ -753,7 +753,7 @@ sub_80AB168: @ 80AB168
|
||||
bl sub_807685C
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AB1C2
|
||||
@@ -1036,7 +1036,7 @@ sub_80AB38C: @ 80AB38C
|
||||
bl SetAnimBgAttribute
|
||||
mov r0, sp
|
||||
bl sub_80752A0
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AB418
|
||||
@@ -1140,7 +1140,7 @@ _080AB476:
|
||||
lsls r0, 5
|
||||
strh r0, [r7, 0xA]
|
||||
strh r0, [r7, 0xC]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0
|
||||
@@ -1461,7 +1461,7 @@ _080AB740: .4byte gBattle_BG1_X
|
||||
_080AB744: .4byte gBattle_BG1_Y
|
||||
_080AB748: .4byte gTasks
|
||||
_080AB74C:
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080AB760
|
||||
@@ -2012,7 +2012,7 @@ sub_80ABB28: @ 80ABB28
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0
|
||||
bl sub_80758E0
|
||||
bl PrepareBattlerSpriteForRotScale
|
||||
ldr r0, _080ABB80 @ =sub_80ABB84
|
||||
str r0, [r4]
|
||||
pop {r4}
|
||||
@@ -2282,7 +2282,7 @@ _080ABD64:
|
||||
ldrh r0, [r4, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8075980
|
||||
bl ResetSpriteRotScale
|
||||
movs r0, 0x26
|
||||
ldrsh r1, [r4, r0]
|
||||
lsls r0, r1, 4
|
||||
@@ -3047,7 +3047,7 @@ sub_80AC328: @ 80AC328
|
||||
movs r1, 0x1
|
||||
_080AC36C:
|
||||
strh r1, [r5, 0x16]
|
||||
bl sub_8073788
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080AC380
|
||||
|
||||
+58
-30
@@ -19,28 +19,28 @@ enum
|
||||
{
|
||||
BG_ANIM_SCREEN_SIZE,
|
||||
BG_ANIM_AREA_OVERFLOW_MODE,
|
||||
BG_ANIM2,
|
||||
BG_ANIM3,
|
||||
BG_ANIM_MOSAIC,
|
||||
BG_ANIM_CHAR_BASE_BLOCK,
|
||||
BG_ANIM_PRIORITY,
|
||||
BG_ANIM_5,
|
||||
BG_ANIM_6
|
||||
BG_ANIM_PALETTES_MODE,
|
||||
BG_ANIM_SCREEN_BASE_BLOCK
|
||||
};
|
||||
|
||||
struct UnknownAnimStruct2
|
||||
struct BattleAnimBgData
|
||||
{
|
||||
void *unk0;
|
||||
u16 *unk4;
|
||||
u8 unk8;
|
||||
u8 unk9;
|
||||
u16 unkA;
|
||||
u16 unkC;
|
||||
u8 *bgTiles;
|
||||
u16 *bgTilemap;
|
||||
u8 paletteId;
|
||||
u8 bgId;
|
||||
u16 tilesOffset;
|
||||
u16 unused;
|
||||
};
|
||||
|
||||
struct BattleAnimBackground
|
||||
{
|
||||
void *image;
|
||||
void *palette;
|
||||
void *tilemap;
|
||||
const u32 *image;
|
||||
const u32 *palette;
|
||||
const u32 *tilemap;
|
||||
};
|
||||
|
||||
#define ANIM_ARGS_COUNT 8
|
||||
@@ -53,7 +53,6 @@ extern bool8 gAnimScriptActive;
|
||||
extern u8 gAnimVisualTaskCount;
|
||||
extern u8 gAnimSoundTaskCount;
|
||||
extern struct DisableStruct *gAnimDisableStructPtr;
|
||||
extern u32 gAnimMoveDmg;
|
||||
extern u16 gAnimMovePower;
|
||||
extern u8 gAnimFriendship;
|
||||
extern u16 gWeatherMoveAnim;
|
||||
@@ -64,8 +63,8 @@ extern u8 gBattleAnimTarget;
|
||||
extern u16 gAnimSpeciesByBanks[BATTLE_BANKS_COUNT];
|
||||
extern u8 gUnknown_02038440;
|
||||
extern u8 gBattlerSpriteIds[MAX_BATTLERS_COUNT];
|
||||
extern u16 gUnknown_2037EEC;
|
||||
extern s32 gUnknown_2037EE8;
|
||||
extern u16 gAnimMovePower;
|
||||
extern s32 gAnimMoveDmg;
|
||||
|
||||
void ClearBattleAnimationVars(void);
|
||||
void DoMoveAnim(u16 move);
|
||||
@@ -80,7 +79,7 @@ s8 BattleAnimAdjustPanning(s8 pan);
|
||||
s8 BattleAnimAdjustPanning2(s8 pan);
|
||||
s16 sub_80A52EC(s16 a);
|
||||
s16 CalculatePanIncrement(s16 sourcePan, s16 targetPan, s16 incrementPan);
|
||||
bool8 sub_8072DF0(u8 battlerId);
|
||||
bool8 IsBattlerSpriteVisible(u8 battlerId);
|
||||
|
||||
// battle_anim_80FE840.s
|
||||
void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value);
|
||||
@@ -92,18 +91,32 @@ void sub_80A6EEC(struct Sprite *sprite);
|
||||
void sub_80A68D4(struct Sprite *sprite);
|
||||
void sub_80A6F3C(struct Sprite *sprite);
|
||||
void sub_80A8278(void);
|
||||
void sub_80A6B30(struct UnknownAnimStruct2*);
|
||||
void sub_80A6B90(struct UnknownAnimStruct2*, u32 arg1);
|
||||
void sub_80A6B30(struct BattleAnimBgData *);
|
||||
void sub_80A6B90(struct BattleAnimBgData *, u32 arg1);
|
||||
u8 sub_80A82E4(u8 bank);
|
||||
bool8 AnimateBallThrow(struct Sprite *sprite);
|
||||
|
||||
enum
|
||||
{
|
||||
BANK_X_POS,
|
||||
BANK_Y_POS,
|
||||
BATTLER_COORD_X,
|
||||
BATTLER_COORD_Y,
|
||||
BATTLER_COORD_X_2,
|
||||
BATTLER_COORD_Y_PIC_OFFSET,
|
||||
BATTLER_COORD_Y_PIC_OFFSET_DEFAULT,
|
||||
};
|
||||
|
||||
u8 GetBankPosition(u8 bank, u8 attributeId);
|
||||
enum
|
||||
{
|
||||
BATTLER_COORD_ATTR_HEIGHT,
|
||||
BATTLER_COORD_ATTR_WIDTH,
|
||||
BATTLER_COORD_ATTR_TOP,
|
||||
BATTLER_COORD_ATTR_BOTTOM,
|
||||
BATTLER_COORD_ATTR_LEFT,
|
||||
BATTLER_COORD_ATTR_RIGHT,
|
||||
BATTLER_COORD_ATTR_RAW_BOTTOM,
|
||||
};
|
||||
|
||||
u8 GetBattlerSpriteCoord(u8 bank, u8 attributeId);
|
||||
|
||||
bool8 IsBankSpritePresent(u8 bank);
|
||||
void sub_80A6C68(u8 arg0);
|
||||
@@ -126,13 +139,28 @@ u8 LaunchBallStarsTask(u8 x, u8 y, u8 kindOfStars, u8 arg3, u8 ballId);
|
||||
u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 bank, u32 arg2, u8 ballId);
|
||||
|
||||
// battle_anim_mons.s
|
||||
void sub_8074DC4(struct Sprite * sprite);
|
||||
void sub_8074E14(struct Sprite * sprite);
|
||||
void sub_80754B8(struct Sprite * sprite);
|
||||
void sub_80758E0(u8 spriteId, u8 b);
|
||||
void sub_8075980(u8 spriteId);
|
||||
void obj_id_set_rotscale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation);
|
||||
bool8 sub_8073788(void);
|
||||
void TranslateMonSpriteLinear(struct Sprite * sprite);
|
||||
void TranslateMonSpriteLinearFixedPoint(struct Sprite * sprite);
|
||||
void InitSpriteDataForLinearTranslation(struct Sprite * sprite);
|
||||
void PrepareBattlerSpriteForRotScale(u8 spriteId, u8 b);
|
||||
void ResetSpriteRotScale(u8 spriteId);
|
||||
void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation);
|
||||
bool8 IsContest(void);
|
||||
void sub_80759DC(u8 spriteId);
|
||||
|
||||
// battle_anim_mon_movement.c
|
||||
void AnimTask_ShakeMon(u8 taskId);
|
||||
void AnimTask_ShakeMon2(u8 taskId);
|
||||
void AnimTask_ShakeMonInPlace(u8 taskId);
|
||||
void AnimTask_ShakeAndSinkMon(u8 taskId);
|
||||
void AnimTask_TranslateMonElliptical(u8 taskId);
|
||||
void AnimTask_TranslateMonEllipticalRespectSide(u8 taskId);
|
||||
void AnimTask_WindUpLunge(u8 taskId);
|
||||
void sub_80995FC(u8 taskId);
|
||||
void AnimTask_SwayMon(u8 taskId);
|
||||
void AnimTask_ScaleMonAndRestore(u8 taskId);
|
||||
void sub_8099980(u8 taskId);
|
||||
void sub_8099A78(u8 taskId);
|
||||
void sub_8099BD4(u8 taskId);
|
||||
|
||||
#endif // GUARD_BATTLE_ANIM_H
|
||||
|
||||
+246
-118
@@ -6,43 +6,91 @@
|
||||
|
||||
#define abs(x) ((x) < 0 ? -(x) : (x))
|
||||
|
||||
void sub_8098A6C(u8 taskId);
|
||||
void sub_8098C08(u8 taskId);
|
||||
void sub_8098D54(u8 taskId);
|
||||
void sub_8098EF0(u8 taskId);
|
||||
void sub_8099004(u8 taskId);
|
||||
void sub_80990AC(struct Sprite * sprite);
|
||||
void sub_8099120(struct Sprite * sprite);
|
||||
void sub_8099144(struct Sprite * sprite);
|
||||
void sub_8099190(struct Sprite * sprite);
|
||||
void sub_80991B4(struct Sprite * sprite);
|
||||
void sub_8099270(struct Sprite * sprite);
|
||||
void sub_80992E0(struct Sprite * sprite);
|
||||
void sub_8099394(struct Sprite * sprite);
|
||||
void sub_809946C(struct Sprite * sprite);
|
||||
void sub_8099530(u8 taskId);
|
||||
void sub_8099594(u8 taskId);
|
||||
void sub_80996B8(u8 taskId);
|
||||
void sub_8099788(u8 taskId);
|
||||
void sub_8099908(u8 taskId);
|
||||
void sub_8099B54(u8 taskId);
|
||||
void sub_8099CB8(u8 taskId);
|
||||
static void AnimTask_ShakeMonStep(u8 taskId);
|
||||
static void AnimTask_ShakeMon2Step(u8 taskId);
|
||||
static void AnimTask_ShakeMonInPlaceStep(u8 taskId);
|
||||
static void AnimTask_ShakeAndSinkMonStep(u8 taskId);
|
||||
static void AnimTask_TranslateMonEllipticalStep(u8 taskId);
|
||||
static void DoHorizontalLunge(struct Sprite * sprite);
|
||||
static void ReverseHorizontalLungeDirection(struct Sprite * sprite);
|
||||
static void DoVerticalDip(struct Sprite * sprite);
|
||||
static void ReverseVerticalDipDirection(struct Sprite * sprite);
|
||||
static void SlideMonToOriginalPos(struct Sprite * sprite);
|
||||
static void SlideMonToOriginalPosStep(struct Sprite * sprite);
|
||||
static void SlideMonToOffset(struct Sprite * sprite);
|
||||
static void sub_8099394(struct Sprite * sprite);
|
||||
static void sub_809946C(struct Sprite * sprite);
|
||||
static void AnimTask_WindUpLungePart1(u8 taskId);
|
||||
static void AnimTask_WindUpLungePart2(u8 taskId);
|
||||
static void sub_80996B8(u8 taskId);
|
||||
static void AnimTask_SwayMonStep(u8 taskId);
|
||||
static void AnimTask_ScaleMonAndRestoreStep(u8 taskId);
|
||||
static void sub_8099B54(u8 taskId);
|
||||
static void sub_8099CB8(u8 taskId);
|
||||
|
||||
const struct SpriteTemplate gUnknown_83D4E4C[] = {
|
||||
{
|
||||
0, 0, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80990AC
|
||||
}, {
|
||||
0, 0, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8099144
|
||||
}, {
|
||||
0, 0, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80991B4
|
||||
}, {
|
||||
0, 0, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80992E0
|
||||
}, {
|
||||
0, 0, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8099394
|
||||
}
|
||||
const struct SpriteTemplate gHorizontalLungeSpriteTemplate =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
.oam = &gDummyOamData,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = DoHorizontalLunge,
|
||||
};
|
||||
|
||||
void sub_80989F8(u8 taskId)
|
||||
const struct SpriteTemplate gVerticalDipSpriteTemplate =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
.oam = &gDummyOamData,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = DoVerticalDip,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSlideMonToOriginalPosSpriteTemplate =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
.oam = &gDummyOamData,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SlideMonToOriginalPos,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gSlideMonToOffsetSpriteTemplate =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
.oam = &gDummyOamData,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SlideMonToOffset,
|
||||
};
|
||||
|
||||
const struct SpriteTemplate gUnknown_83D4EB4 =
|
||||
{
|
||||
.tileTag = 0,
|
||||
.paletteTag = 0,
|
||||
.oam = &gDummyOamData,
|
||||
.anims = gDummySpriteAnimTable,
|
||||
.images = NULL,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = sub_8099394,
|
||||
};
|
||||
|
||||
// Task to facilitate simple shaking of a pokemon's picture in battle.
|
||||
// The shaking alternates between the original position and the target position.
|
||||
// arg 0: anim battler
|
||||
// arg 1: x pixel offset
|
||||
// arg 2: y pixel offset
|
||||
// arg 3: num times to shake
|
||||
// arg 4: frame delay
|
||||
void AnimTask_ShakeMon(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBankSpriteId(gBattleAnimArgs[0]);
|
||||
|
||||
@@ -58,12 +106,12 @@ void sub_80989F8(u8 taskId)
|
||||
gTasks[taskId].data[3] = gBattleAnimArgs[4];
|
||||
gTasks[taskId].data[4] = gBattleAnimArgs[1];
|
||||
gTasks[taskId].data[5] = gBattleAnimArgs[2];
|
||||
gTasks[taskId].func = sub_8098A6C;
|
||||
gTasks[taskId].func = AnimTask_ShakeMonStep;
|
||||
gTasks[taskId].func(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8098A6C(u8 taskId)
|
||||
static void AnimTask_ShakeMonStep(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
@@ -87,7 +135,14 @@ void sub_8098A6C(u8 taskId)
|
||||
gTasks[taskId].data[3]--;
|
||||
}
|
||||
|
||||
void sub_8098B1C(u8 taskId)
|
||||
// Task to facilitate simple shaking of a pokemon's picture in battle.
|
||||
// The shaking alternates between the positive and negative versions of the specified pixel offsets.
|
||||
// arg 0: anim battler
|
||||
// arg 1: x pixel offset
|
||||
// arg 2: y pixel offset
|
||||
// arg 3: num times to shake
|
||||
// arg 4: frame delay
|
||||
void AnimTask_ShakeMon2(u8 taskId)
|
||||
{
|
||||
bool8 abort = FALSE;
|
||||
u8 spriteId;
|
||||
@@ -116,7 +171,7 @@ void sub_8098B1C(u8 taskId)
|
||||
battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT);
|
||||
break;
|
||||
}
|
||||
if (!sub_8072DF0(battlerId))
|
||||
if (!IsBattlerSpriteVisible(battlerId))
|
||||
abort = TRUE;
|
||||
spriteId = gBattlerSpriteIds[battlerId];
|
||||
}
|
||||
@@ -134,12 +189,12 @@ void sub_8098B1C(u8 taskId)
|
||||
gTasks[taskId].data[3] = gBattleAnimArgs[4];
|
||||
gTasks[taskId].data[4] = gBattleAnimArgs[1];
|
||||
gTasks[taskId].data[5] = gBattleAnimArgs[2];
|
||||
gTasks[taskId].func = sub_8098C08;
|
||||
gTasks[taskId].func = AnimTask_ShakeMon2Step;
|
||||
gTasks[taskId].func(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8098C08(u8 taskId)
|
||||
static void AnimTask_ShakeMon2Step(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
@@ -163,7 +218,15 @@ void sub_8098C08(u8 taskId)
|
||||
gTasks[taskId].data[3]--;
|
||||
}
|
||||
|
||||
void sub_8098CD0(u8 taskId)
|
||||
// Task to facilitate simple shaking of a pokemon's picture in battle.
|
||||
// The shaking alternates between the positive and negative versions of the specified pixel offsets
|
||||
// with respect to the current location of the mon's picture.
|
||||
// arg 0: battler
|
||||
// arg 1: x offset
|
||||
// arg 2: y offset
|
||||
// arg 3: num shakes
|
||||
// arg 4: delay
|
||||
void AnimTask_ShakeMonInPlace(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBankSpriteId(gBattleAnimArgs[0]);
|
||||
|
||||
@@ -180,12 +243,12 @@ void sub_8098CD0(u8 taskId)
|
||||
gTasks[taskId].data[4] = gBattleAnimArgs[4];
|
||||
gTasks[taskId].data[5] = gBattleAnimArgs[1] * 2;
|
||||
gTasks[taskId].data[6] = gBattleAnimArgs[2] * 2;
|
||||
gTasks[taskId].func = sub_8098D54;
|
||||
gTasks[taskId].func = AnimTask_ShakeMonInPlaceStep;
|
||||
gTasks[taskId].func(taskId);
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8098D54(u8 taskId)
|
||||
static void AnimTask_ShakeMonInPlaceStep(u8 taskId)
|
||||
{
|
||||
if (gTasks[taskId].data[3] == 0)
|
||||
{
|
||||
@@ -219,7 +282,13 @@ void sub_8098D54(u8 taskId)
|
||||
gTasks[taskId].data[3]--;
|
||||
}
|
||||
|
||||
void sub_8098E90(u8 taskId)
|
||||
// Shakes a mon bg horizontally and moves it downward linearly.
|
||||
// arg 0: battler
|
||||
// arg 1: x offset
|
||||
// arg 2: frame delay between each movement
|
||||
// arg 3: downward speed (subpixel)
|
||||
// arg 4: duration
|
||||
void AnimTask_ShakeAndSinkMon(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBankSpriteId(gBattleAnimArgs[0]);
|
||||
|
||||
@@ -229,11 +298,11 @@ void sub_8098E90(u8 taskId)
|
||||
gTasks[taskId].data[2] = gBattleAnimArgs[2];
|
||||
gTasks[taskId].data[3] = gBattleAnimArgs[3];
|
||||
gTasks[taskId].data[4] = gBattleAnimArgs[4];
|
||||
gTasks[taskId].func = sub_8098EF0;
|
||||
gTasks[taskId].func = AnimTask_ShakeAndSinkMonStep;
|
||||
gTasks[taskId].func(taskId);
|
||||
}
|
||||
|
||||
void sub_8098EF0(u8 taskId)
|
||||
static void AnimTask_ShakeAndSinkMonStep(u8 taskId)
|
||||
{
|
||||
u8 spriteId = gTasks[taskId].data[0];
|
||||
s16 data1 = gTasks[taskId].data[1];
|
||||
@@ -251,25 +320,32 @@ void sub_8098EF0(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_8098F84(u8 taskId)
|
||||
// Moves a mon bg picture along an elliptical path that begins
|
||||
// and ends at the mon's origin location.
|
||||
// arg 0: battler
|
||||
// arg 1: ellipse width
|
||||
// arg 2: ellipse height
|
||||
// arg 3: num loops
|
||||
// arg 4: speed (valid values are 0-5)
|
||||
void AnimTask_TranslateMonElliptical(u8 taskId)
|
||||
{
|
||||
u8 r6 = 1;
|
||||
u8 wavePeriod = 1;
|
||||
u8 i;
|
||||
u8 spriteId = GetAnimBankSpriteId(gBattleAnimArgs[0]);
|
||||
if (gBattleAnimArgs[4] > 5)
|
||||
gBattleAnimArgs[4] = 5;
|
||||
for (i = 0; i < gBattleAnimArgs[4]; i++)
|
||||
r6 *= 2;
|
||||
wavePeriod *= 2;
|
||||
gTasks[taskId].data[0] = spriteId;
|
||||
gTasks[taskId].data[1] = gBattleAnimArgs[1];
|
||||
gTasks[taskId].data[2] = gBattleAnimArgs[2];
|
||||
gTasks[taskId].data[3] = gBattleAnimArgs[3];
|
||||
gTasks[taskId].data[4] = r6;
|
||||
gTasks[taskId].func = sub_8099004;
|
||||
gTasks[taskId].data[4] = wavePeriod;
|
||||
gTasks[taskId].func = AnimTask_TranslateMonEllipticalStep;
|
||||
gTasks[taskId].func(taskId);
|
||||
}
|
||||
|
||||
void sub_8099004(u8 taskId)
|
||||
static void AnimTask_TranslateMonEllipticalStep(u8 taskId)
|
||||
{
|
||||
u8 spriteId = gTasks[taskId].data[0];
|
||||
gSprites[spriteId].pos2.x = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]);
|
||||
@@ -287,14 +363,26 @@ void sub_8099004(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_809907C(u8 taskId)
|
||||
// Moves a mon bg picture along an elliptical path that begins
|
||||
// and ends at the mon's origin location. Reverses the direction
|
||||
// of the path if it's not on the player's side of the battle.
|
||||
// arg 0: battler
|
||||
// arg 1: ellipse width
|
||||
// arg 2: ellipse height
|
||||
// arg 3: num loops
|
||||
// arg 4: speed (valid values are 0-5)
|
||||
void AnimTask_TranslateMonEllipticalRespectSide(u8 taskId)
|
||||
{
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
|
||||
sub_8098F84(taskId);
|
||||
AnimTask_TranslateMonElliptical(taskId);
|
||||
}
|
||||
|
||||
void sub_80990AC(struct Sprite * sprite)
|
||||
// Performs a simple horizontal lunge, where the mon moves
|
||||
// horizontally, and then moves back in the opposite direction.
|
||||
// arg 0: duration of single lunge direction
|
||||
// arg 1: x pixel delta that is applied each frame
|
||||
static void DoHorizontalLunge(struct Sprite * sprite)
|
||||
{
|
||||
sprite->invisible = TRUE;
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
@@ -305,19 +393,24 @@ void sub_80990AC(struct Sprite * sprite)
|
||||
sprite->data[2] = 0;
|
||||
sprite->data[3] = gBattlerSpriteIds[gBattleAnimAttacker];
|
||||
sprite->data[4] = gBattleAnimArgs[0];
|
||||
StoreSpriteCallbackInData6(sprite, sub_8099120);
|
||||
sprite->callback = sub_8074DC4;
|
||||
StoreSpriteCallbackInData6(sprite, ReverseHorizontalLungeDirection);
|
||||
sprite->callback = TranslateMonSpriteLinear;
|
||||
}
|
||||
|
||||
void sub_8099120(struct Sprite * sprite)
|
||||
static void ReverseHorizontalLungeDirection(struct Sprite * sprite)
|
||||
{
|
||||
sprite->data[0] = sprite->data[4];
|
||||
sprite->data[1] = -sprite->data[1];
|
||||
sprite->callback = sub_8074DC4;
|
||||
sprite->callback = TranslateMonSpriteLinear;
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
void sub_8099144(struct Sprite * sprite)
|
||||
// Performs a simple vertical dipping motion, where moves vertically, and then
|
||||
// moves back in the opposite direction.
|
||||
// arg 0: duration of single dip direction
|
||||
// arg 1: y pixel delta that is applied each frame
|
||||
// arg 2: battler
|
||||
static void DoVerticalDip(struct Sprite * sprite)
|
||||
{
|
||||
u8 spriteId;
|
||||
sprite->invisible = TRUE;
|
||||
@@ -327,19 +420,24 @@ void sub_8099144(struct Sprite * sprite)
|
||||
sprite->data[2] = gBattleAnimArgs[1];
|
||||
sprite->data[3] = spriteId;
|
||||
sprite->data[4] = gBattleAnimArgs[0];
|
||||
StoreSpriteCallbackInData6(sprite, sub_8099190);
|
||||
sprite->callback = sub_8074DC4;
|
||||
StoreSpriteCallbackInData6(sprite, ReverseVerticalDipDirection);
|
||||
sprite->callback = TranslateMonSpriteLinear;
|
||||
}
|
||||
|
||||
void sub_8099190(struct Sprite * sprite)
|
||||
static void ReverseVerticalDipDirection(struct Sprite * sprite)
|
||||
{
|
||||
sprite->data[0] = sprite->data[4];
|
||||
sprite->data[2] = -sprite->data[2];
|
||||
sprite->callback = sub_8074DC4;
|
||||
sprite->callback = TranslateMonSpriteLinear;
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
}
|
||||
|
||||
void sub_80991B4(struct Sprite * sprite)
|
||||
// Linearly slides a mon's bg picture back to its original sprite position.
|
||||
// The sprite parameter is a dummy sprite used for facilitating the movement with its callback.
|
||||
// arg 0: 1 = target or 0 = attacker
|
||||
// arg 1: direction (0 = horizontal and vertical, 1 = horizontal only, 2 = vertical only)
|
||||
// arg 2: duration
|
||||
static void SlideMonToOriginalPos(struct Sprite * sprite)
|
||||
{
|
||||
u8 spriteId;
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
@@ -351,7 +449,7 @@ void sub_80991B4(struct Sprite * sprite)
|
||||
sprite->data[2] = gSprites[spriteId].pos1.x;
|
||||
sprite->data[3] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y;
|
||||
sprite->data[4] = gSprites[spriteId].pos1.y;
|
||||
sub_80754B8(sprite);
|
||||
InitSpriteDataForLinearTranslation(sprite);
|
||||
sprite->data[3] = 0;
|
||||
sprite->data[4] = 0;
|
||||
sprite->data[5] = gSprites[spriteId].pos2.x;
|
||||
@@ -363,10 +461,10 @@ void sub_80991B4(struct Sprite * sprite)
|
||||
sprite->data[1] = 0;
|
||||
sprite->data[7] = gBattleAnimArgs[1];
|
||||
sprite->data[7] |= spriteId << 8;
|
||||
sprite->callback = sub_8099270;
|
||||
sprite->callback = SlideMonToOriginalPosStep;
|
||||
}
|
||||
|
||||
void sub_8099270(struct Sprite * sprite)
|
||||
static void SlideMonToOriginalPosStep(struct Sprite * sprite)
|
||||
{
|
||||
u8 data7 = sprite->data[7];
|
||||
struct Sprite *otherSprite = &gSprites[sprite->data[7] >> 8];
|
||||
@@ -388,7 +486,15 @@ void sub_8099270(struct Sprite * sprite)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80992E0(struct Sprite * sprite)
|
||||
// Linearly translates a mon to a target offset. The horizontal offset
|
||||
// is mirrored for the opponent's pokemon, and the vertical offset
|
||||
// is only mirrored if arg 3 is set to 1.
|
||||
// arg 0: 0 = attacker, 1 = target
|
||||
// arg 1: target x pixel offset
|
||||
// arg 2: target y pixel offset
|
||||
// arg 3: mirror vertical translation for opposite battle side
|
||||
// arg 4: duration
|
||||
static void SlideMonToOffset(struct Sprite * sprite)
|
||||
{
|
||||
u8 battlerId;
|
||||
u8 spriteId;
|
||||
@@ -408,16 +514,16 @@ void sub_80992E0(struct Sprite * sprite)
|
||||
sprite->data[2] = gSprites[spriteId].pos1.x + gBattleAnimArgs[1];
|
||||
sprite->data[3] = gSprites[spriteId].pos1.y;
|
||||
sprite->data[4] = gSprites[spriteId].pos1.y + gBattleAnimArgs[2];
|
||||
sub_80754B8(sprite);
|
||||
InitSpriteDataForLinearTranslation(sprite);
|
||||
sprite->data[3] = 0;
|
||||
sprite->data[4] = 0;
|
||||
sprite->data[5] = spriteId;
|
||||
sprite->invisible = TRUE;
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
sprite->callback = sub_8074E14;
|
||||
sprite->callback = TranslateMonSpriteLinearFixedPoint;
|
||||
}
|
||||
|
||||
void sub_8099394(struct Sprite * sprite)
|
||||
static void sub_8099394(struct Sprite * sprite)
|
||||
{
|
||||
u8 battlerId;
|
||||
u8 spriteId;
|
||||
@@ -438,7 +544,7 @@ void sub_8099394(struct Sprite * sprite)
|
||||
sprite->data[2] = sprite->data[1] + gBattleAnimArgs[1];
|
||||
sprite->data[3] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y;
|
||||
sprite->data[4] = sprite->data[3] + gBattleAnimArgs[2];
|
||||
sub_80754B8(sprite);
|
||||
InitSpriteDataForLinearTranslation(sprite);
|
||||
sprite->data[3] = gSprites[spriteId].pos2.x << 8;
|
||||
sprite->data[4] = gSprites[spriteId].pos2.y << 8;
|
||||
sprite->data[5] = spriteId;
|
||||
@@ -447,19 +553,29 @@ void sub_8099394(struct Sprite * sprite)
|
||||
StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
|
||||
else
|
||||
StoreSpriteCallbackInData6(sprite, sub_809946C);
|
||||
sprite->callback = sub_8074E14;
|
||||
sprite->callback = TranslateMonSpriteLinearFixedPoint;
|
||||
}
|
||||
|
||||
void sub_809946C(struct Sprite * sprite)
|
||||
static void sub_809946C(struct Sprite * sprite)
|
||||
{
|
||||
gSprites[sprite->data[5]].pos2.x = 0;
|
||||
gSprites[sprite->data[5]].pos2.y = 0;
|
||||
DestroyAnimSprite(sprite);
|
||||
}
|
||||
|
||||
void sub_809949C(u8 taskId)
|
||||
// Task to facilitate a two-part translation animation, in which the sprite
|
||||
// is first translated in an arc to one position. Then, it "lunges" to a target
|
||||
// x offset. Used in TAKE_DOWN, for example.
|
||||
// arg 0: anim bank
|
||||
// arg 1: horizontal speed (subpixel)
|
||||
// arg 2: wave amplitude
|
||||
// arg 3: first duration
|
||||
// arg 4: delay before starting lunge
|
||||
// arg 5: target x offset for lunge
|
||||
// arg 6: lunge duration
|
||||
void AnimTask_WindUpLunge(u8 taskId)
|
||||
{
|
||||
u16 r7 = 0x8000 / gBattleAnimArgs[3];
|
||||
u16 wavePeriod = 0x8000 / gBattleAnimArgs[3];
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
{
|
||||
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
|
||||
@@ -472,11 +588,11 @@ void sub_809949C(u8 taskId)
|
||||
gTasks[taskId].data[4] = gBattleAnimArgs[4];
|
||||
gTasks[taskId].data[5] = gBattleAnimArgs[5] * 256 / gBattleAnimArgs[6];
|
||||
gTasks[taskId].data[6] = gBattleAnimArgs[6];
|
||||
gTasks[taskId].data[7] = r7;
|
||||
gTasks[taskId].func = sub_8099530;
|
||||
gTasks[taskId].data[7] = wavePeriod;
|
||||
gTasks[taskId].func = AnimTask_WindUpLungePart1;
|
||||
}
|
||||
|
||||
void sub_8099530(u8 taskId)
|
||||
static void AnimTask_WindUpLungePart1(u8 taskId)
|
||||
{
|
||||
u8 spriteId = gTasks[taskId].data[0];
|
||||
gTasks[taskId].data[11] += gTasks[taskId].data[1];
|
||||
@@ -484,10 +600,10 @@ void sub_8099530(u8 taskId)
|
||||
gSprites[spriteId].pos2.y = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]);
|
||||
gTasks[taskId].data[10] += gTasks[taskId].data[7];
|
||||
if (--gTasks[taskId].data[3] == 0)
|
||||
gTasks[taskId].func = sub_8099594;
|
||||
gTasks[taskId].func = AnimTask_WindUpLungePart2;
|
||||
}
|
||||
|
||||
void sub_8099594(u8 taskId)
|
||||
static void AnimTask_WindUpLungePart2(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
|
||||
@@ -514,7 +630,7 @@ void sub_80995FC(u8 taskId)
|
||||
spriteId = GetAnimBankSpriteId(gBattleAnimArgs[0]);
|
||||
break;
|
||||
case 2:
|
||||
if (!sub_8072DF0(gBattleAnimAttacker ^ BIT_FLANK))
|
||||
if (!IsBattlerSpriteVisible(gBattleAnimAttacker ^ BIT_FLANK))
|
||||
{
|
||||
DestroyAnimVisualTask(taskId);
|
||||
return;
|
||||
@@ -522,7 +638,7 @@ void sub_80995FC(u8 taskId)
|
||||
spriteId = gBattlerSpriteIds[gBattleAnimAttacker ^ BIT_FLANK];
|
||||
break;
|
||||
case 3:
|
||||
if (!sub_8072DF0(gBattleAnimTarget ^ BIT_FLANK))
|
||||
if (!IsBattlerSpriteVisible(gBattleAnimTarget ^ BIT_FLANK))
|
||||
{
|
||||
DestroyAnimVisualTask(taskId);
|
||||
return;
|
||||
@@ -541,7 +657,7 @@ void sub_80995FC(u8 taskId)
|
||||
gTasks[taskId].func = sub_80996B8;
|
||||
}
|
||||
|
||||
void sub_80996B8(u8 taskId)
|
||||
static void sub_80996B8(u8 taskId)
|
||||
{
|
||||
u8 spriteId = gTasks[taskId].data[0];
|
||||
gSprites[spriteId].pos2.x += gTasks[taskId].data[1];
|
||||
@@ -549,7 +665,15 @@ void sub_80996B8(u8 taskId)
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
void sub_8099704(u8 taskId)
|
||||
// Task that facilitates translating the mon bg picture back and forth
|
||||
// in a swaying motion (uses Sine wave). It can sway either horizontally
|
||||
// or vertically, but not both.
|
||||
// arg 0: direction (0 = horizontal, 1 = vertical)
|
||||
// arg 1: wave amplitude
|
||||
// arg 2: wave period
|
||||
// arg 3: num sways
|
||||
// arg 4: which mon (0 = attacker, 1 = target)
|
||||
void AnimTask_SwayMon(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
|
||||
@@ -565,32 +689,32 @@ void sub_8099704(u8 taskId)
|
||||
else
|
||||
gTasks[taskId].data[5] = gBattleAnimTarget;
|
||||
gTasks[taskId].data[12] = 1;
|
||||
gTasks[taskId].func = sub_8099788;
|
||||
gTasks[taskId].func = AnimTask_SwayMonStep;
|
||||
}
|
||||
|
||||
void sub_8099788(u8 taskId)
|
||||
static void AnimTask_SwayMonStep(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
u32 r8;
|
||||
s16 r5;
|
||||
u16 tmp;
|
||||
u32 waveIndex;
|
||||
s16 sineValue;
|
||||
u16 sineIndex;
|
||||
|
||||
spriteId = gTasks[taskId].data[4];
|
||||
tmp = gTasks[taskId].data[10] + gTasks[taskId].data[2];
|
||||
gTasks[taskId].data[10] = tmp;
|
||||
r8 = tmp >> 8;
|
||||
r5 = Sin(r8, gTasks[taskId].data[1]);
|
||||
sineIndex = gTasks[taskId].data[10] + gTasks[taskId].data[2];
|
||||
gTasks[taskId].data[10] = sineIndex;
|
||||
waveIndex = sineIndex >> 8;
|
||||
sineValue = Sin(waveIndex, gTasks[taskId].data[1]);
|
||||
if (gTasks[taskId].data[0] == 0)
|
||||
{
|
||||
gSprites[spriteId].pos2.x = r5;
|
||||
gSprites[spriteId].pos2.x = sineValue;
|
||||
}
|
||||
else if (GetBattlerSide(gTasks[taskId].data[5]) == B_SIDE_PLAYER)
|
||||
{
|
||||
gSprites[spriteId].pos2.y = abs(r5);
|
||||
gSprites[spriteId].pos2.y = abs(sineValue);
|
||||
}
|
||||
else
|
||||
gSprites[spriteId].pos2.y = -abs(r5);
|
||||
if ((r8 > 0x7F && gTasks[taskId].data[11] == 0 && gTasks[taskId].data[12] == 1) || (r8 < 0x7F && gTasks[taskId].data[11] == 1 && gTasks[taskId].data[12] == 0))
|
||||
gSprites[spriteId].pos2.y = -abs(sineValue);
|
||||
if ((waveIndex > 0x7F && gTasks[taskId].data[11] == 0 && gTasks[taskId].data[12] == 1) || (waveIndex < 0x7F && gTasks[taskId].data[11] == 1 && gTasks[taskId].data[12] == 0))
|
||||
{
|
||||
gTasks[taskId].data[11] ^= 1;
|
||||
gTasks[taskId].data[12] ^= 1;
|
||||
@@ -603,10 +727,16 @@ void sub_8099788(u8 taskId)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80998B0(u8 taskId)
|
||||
// Scales a mon's sprite, and then scales back to its original dimensions.
|
||||
// arg 0: x scale delta
|
||||
// arg 1: y scale delta
|
||||
// arg 2: duration
|
||||
// arg 3: anim bank
|
||||
// arg 4: sprite object mode
|
||||
void AnimTask_ScaleMonAndRestore(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBankSpriteId(gBattleAnimArgs[3]);
|
||||
sub_80758E0(spriteId, gBattleAnimArgs[4]);
|
||||
PrepareBattlerSpriteForRotScale(spriteId, gBattleAnimArgs[4]);
|
||||
gTasks[taskId].data[0] = gBattleAnimArgs[0];
|
||||
gTasks[taskId].data[1] = gBattleAnimArgs[1];
|
||||
gTasks[taskId].data[2] = gBattleAnimArgs[2];
|
||||
@@ -614,16 +744,16 @@ void sub_80998B0(u8 taskId)
|
||||
gTasks[taskId].data[4] = spriteId;
|
||||
gTasks[taskId].data[10] = 0x100;
|
||||
gTasks[taskId].data[11] = 0x100;
|
||||
gTasks[taskId].func = sub_8099908;
|
||||
gTasks[taskId].func = AnimTask_ScaleMonAndRestoreStep;
|
||||
}
|
||||
|
||||
void sub_8099908(u8 taskId)
|
||||
static void AnimTask_ScaleMonAndRestoreStep(u8 taskId)
|
||||
{
|
||||
u8 spriteId;
|
||||
gTasks[taskId].data[10] += gTasks[taskId].data[0];
|
||||
gTasks[taskId].data[11] += gTasks[taskId].data[1];
|
||||
spriteId = gTasks[taskId].data[4];
|
||||
obj_id_set_rotscale(spriteId, gTasks[taskId].data[10], gTasks[taskId].data[11], 0);
|
||||
SetSpriteRotScale(spriteId, gTasks[taskId].data[10], gTasks[taskId].data[11], 0);
|
||||
if (--gTasks[taskId].data[2] == 0)
|
||||
{
|
||||
if (gTasks[taskId].data[3] > 0)
|
||||
@@ -635,7 +765,7 @@ void sub_8099908(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_8075980(spriteId);
|
||||
ResetSpriteRotScale(spriteId);
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
}
|
||||
@@ -644,7 +774,7 @@ void sub_8099908(u8 taskId)
|
||||
void sub_8099980(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBankSpriteId(gBattleAnimArgs[2]);
|
||||
sub_80758E0(spriteId, 0);
|
||||
PrepareBattlerSpriteForRotScale(spriteId, 0);
|
||||
gTasks[taskId].data[1] = 0;
|
||||
gTasks[taskId].data[2] = gBattleAnimArgs[0];
|
||||
if (gBattleAnimArgs[3] != 1)
|
||||
@@ -654,7 +784,7 @@ void sub_8099980(u8 taskId)
|
||||
gTasks[taskId].data[4] = gBattleAnimArgs[1];
|
||||
gTasks[taskId].data[5] = spriteId;
|
||||
gTasks[taskId].data[6] = gBattleAnimArgs[3];
|
||||
if (sub_8073788())
|
||||
if (IsContest())
|
||||
gTasks[taskId].data[7] = 1;
|
||||
else
|
||||
{
|
||||
@@ -663,7 +793,7 @@ void sub_8099980(u8 taskId)
|
||||
else
|
||||
gTasks[taskId].data[7] = GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER ? 1 : 0;
|
||||
}
|
||||
if (gTasks[taskId].data[7] && !sub_8073788())
|
||||
if (gTasks[taskId].data[7] && !IsContest())
|
||||
{
|
||||
s16 tmp;
|
||||
tmp = gTasks[taskId].data[3];
|
||||
@@ -677,7 +807,7 @@ void sub_8099980(u8 taskId)
|
||||
void sub_8099A78(u8 taskId)
|
||||
{
|
||||
u8 spriteId = GetAnimBankSpriteId(gBattleAnimArgs[2]);
|
||||
sub_80758E0(spriteId, 0);
|
||||
PrepareBattlerSpriteForRotScale(spriteId, 0);
|
||||
gTasks[taskId].data[1] = 0;
|
||||
gTasks[taskId].data[2] = gBattleAnimArgs[0];
|
||||
if (gBattleAnimArgs[2] == 0)
|
||||
@@ -709,11 +839,10 @@ void sub_8099A78(u8 taskId)
|
||||
gTasks[taskId].func = sub_8099B54;
|
||||
}
|
||||
|
||||
void sub_8099B54(u8 taskId)
|
||||
static void sub_8099B54(u8 taskId)
|
||||
{
|
||||
s16 tmp;
|
||||
gTasks[taskId].data[3] += gTasks[taskId].data[4];
|
||||
obj_id_set_rotscale(gTasks[taskId].data[5], 0x100, 0x100, gTasks[taskId].data[3]);
|
||||
SetSpriteRotScale(gTasks[taskId].data[5], 0x100, 0x100, gTasks[taskId].data[3]);
|
||||
if (gTasks[taskId].data[7])
|
||||
sub_80759DC(gTasks[taskId].data[5]);
|
||||
if (++gTasks[taskId].data[1] >= gTasks[taskId].data[2])
|
||||
@@ -721,7 +850,7 @@ void sub_8099B54(u8 taskId)
|
||||
switch (gTasks[taskId].data[6])
|
||||
{
|
||||
case 1:
|
||||
sub_8075980(gTasks[taskId].data[5]);
|
||||
ResetSpriteRotScale(gTasks[taskId].data[5]);
|
||||
// fallthrough
|
||||
case 0:
|
||||
default:
|
||||
@@ -729,8 +858,7 @@ void sub_8099B54(u8 taskId)
|
||||
break;
|
||||
case 2:
|
||||
gTasks[taskId].data[1] = 0;
|
||||
tmp = gTasks[taskId].data[4];
|
||||
gTasks[taskId].data[4] = -tmp;
|
||||
gTasks[taskId].data[4] *= -1;
|
||||
gTasks[taskId].data[6] = 1;
|
||||
break;
|
||||
}
|
||||
@@ -741,7 +869,7 @@ void sub_8099BD4(u8 taskId)
|
||||
{
|
||||
if (gBattleAnimArgs[0] == 0)
|
||||
{
|
||||
gTasks[taskId].data[15] = gUnknown_2037EEC / 12;
|
||||
gTasks[taskId].data[15] = gAnimMovePower / 12;
|
||||
if (gTasks[taskId].data[15] < 1)
|
||||
gTasks[taskId].data[15] = 1;
|
||||
if (gTasks[taskId].data[15] > 16)
|
||||
@@ -749,7 +877,7 @@ void sub_8099BD4(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
gTasks[taskId].data[15] = gUnknown_2037EE8 / 12;
|
||||
gTasks[taskId].data[15] = gAnimMoveDmg / 12;
|
||||
if (gTasks[taskId].data[15] < 1)
|
||||
gTasks[taskId].data[15] = 1;
|
||||
if (gTasks[taskId].data[15] > 16)
|
||||
@@ -769,7 +897,7 @@ void sub_8099BD4(u8 taskId)
|
||||
gTasks[taskId].func = sub_8099CB8;
|
||||
}
|
||||
|
||||
void sub_8099CB8(u8 taskId)
|
||||
static void sub_8099CB8(u8 taskId)
|
||||
{
|
||||
struct Task *task = &gTasks[taskId];
|
||||
if (++task->data[0] > task->data[1])
|
||||
|
||||
+2
-2
@@ -721,10 +721,10 @@ gUnknown_2037EE3: @ 2037EE3
|
||||
gAnimDisableStructPtr: @ 2037EE4
|
||||
.space 0x4
|
||||
|
||||
gUnknown_2037EE8: @ 2037EE8
|
||||
gAnimMoveDmg: @ 2037EE8
|
||||
.space 0x4
|
||||
|
||||
gUnknown_2037EEC: @ 2037EEC
|
||||
gAnimMovePower: @ 2037EEC
|
||||
.space 0x2
|
||||
|
||||
gUnknown_2037EEE: @ 2037EEE
|
||||
|
||||
Reference in New Issue
Block a user