mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-25 11:14:15 +01:00
start working on battle anim
This commit is contained in:
parent
0d38d443b5
commit
752ce9b90d
@ -1056,10 +1056,10 @@ _0805D980:
|
||||
b _0805DA1E
|
||||
.pool
|
||||
_0805D9CC:
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
mov r2, r10
|
||||
strb r2, [r0]
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
mov r1, sp
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r0]
|
||||
@ -1070,7 +1070,7 @@ _0805D9CC:
|
||||
ldr r0, =gUnknown_082C9320
|
||||
adds r1, r5, 0
|
||||
movs r2, 0
|
||||
bl move_something
|
||||
bl DoBattleAnim
|
||||
ldr r0, =task0A_0803415C
|
||||
movs r1, 0xA
|
||||
bl CreateTask
|
||||
@ -1180,14 +1180,14 @@ move_anim_start_t4: @ 805DAC4
|
||||
lsrs r4, 24
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
strb r1, [r0]
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
strb r2, [r0]
|
||||
ldr r0, =gUnknown_082C937C
|
||||
adds r1, r3, 0
|
||||
movs r2, 0
|
||||
bl move_something
|
||||
bl DoBattleAnim
|
||||
ldr r0, =task0A_08034248
|
||||
movs r1, 0xA
|
||||
bl CreateTask
|
||||
@ -2353,7 +2353,7 @@ _0805E51C:
|
||||
beq _0805E558
|
||||
movs r0, 0
|
||||
mov r10, r0
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r2, [r0, 0x18]
|
||||
ldrh r1, [r2, 0x2]
|
||||
@ -3111,7 +3111,7 @@ sub_805EB9C: @ 805EB9C
|
||||
_0805EBC8:
|
||||
lsls r0, r5, 24
|
||||
lsrs r0, 24
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0805EC60
|
||||
@ -3329,7 +3329,7 @@ sub_805ED70: @ 805ED70
|
||||
cmp r0, 0
|
||||
beq _0805EDAC
|
||||
adds r0, r4, 0
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805EDC0
|
||||
|
1587
asm/battle_anim.s
1587
asm/battle_anim.s
File diff suppressed because it is too large
Load Diff
@ -331,7 +331,7 @@ sub_80A9EF4: @ 80A9EF4
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r4, =gAnimationBankTarget
|
||||
ldr r4, =gAnimBankTarget
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl sub_80A5C6C
|
||||
@ -616,7 +616,7 @@ _080AA16C:
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080AA186:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
@ -829,7 +829,7 @@ _080AA322:
|
||||
b _080AA330
|
||||
_080AA328:
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080AA352
|
||||
_080AA330:
|
||||
ldr r0, =gBattleAnimArgs
|
||||
@ -863,13 +863,13 @@ move_anim_start_t2: @ 80AA364
|
||||
lsrs r4, 24
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
strb r4, [r0]
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
strb r4, [r0]
|
||||
ldr r0, =gUnknown_082C92FC
|
||||
movs r2, 0
|
||||
bl move_something
|
||||
bl DoBattleAnim
|
||||
ldr r0, =task0A_80788BC
|
||||
movs r1, 0xA
|
||||
bl CreateTask
|
||||
|
@ -18,7 +18,7 @@ sub_80D51AC: @ 80D51AC
|
||||
cmp r2, 0xFF
|
||||
bne _080D51D0
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D520C
|
||||
.pool
|
||||
_080D51D0:
|
||||
@ -140,7 +140,7 @@ _080D5288:
|
||||
adds r0, r6
|
||||
strh r3, [r0, 0x26]
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D52CA
|
||||
_080D52C6:
|
||||
subs r0, 0x1
|
||||
@ -204,7 +204,7 @@ _080D5326:
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r0, r4, 0
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080D533C
|
||||
@ -216,7 +216,7 @@ _080D533C:
|
||||
.pool
|
||||
_080D5348:
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
_080D5350:
|
||||
@ -226,7 +226,7 @@ _080D5352:
|
||||
beq _080D5368
|
||||
_080D5356:
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D53A6
|
||||
.pool
|
||||
_080D5368:
|
||||
@ -359,7 +359,7 @@ _080D5436:
|
||||
adds r0, r7
|
||||
strh r2, [r0, 0x26]
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D5478
|
||||
_080D5474:
|
||||
subs r0, r2, 0x1
|
||||
@ -385,7 +385,7 @@ sub_80D5484: @ 80D5484
|
||||
cmp r3, 0xFF
|
||||
bne _080D54A8
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D54F6
|
||||
.pool
|
||||
_080D54A8:
|
||||
@ -584,7 +584,7 @@ _080D55F8:
|
||||
strh r0, [r2, 0x26]
|
||||
_080D5630:
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D563C
|
||||
_080D5638:
|
||||
subs r0, r2, 0x1
|
||||
@ -705,7 +705,7 @@ _080D56F6:
|
||||
cmp r0, 0
|
||||
bne _080D5728
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080D5728:
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
@ -829,7 +829,7 @@ _080D5810:
|
||||
strh r0, [r4, 0x24]
|
||||
strh r0, [r4, 0x26]
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080D5822:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
@ -842,7 +842,7 @@ sub_80D5830: @ 80D5830
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -871,7 +871,7 @@ sub_80D5860: @ 80D5860
|
||||
movs r1, 0x4
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -892,7 +892,7 @@ _080D5894:
|
||||
strh r2, [r4, 0x2E]
|
||||
strh r0, [r4, 0x32]
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
@ -919,7 +919,7 @@ sub_80D58D4: @ 80D58D4
|
||||
strh r1, [r0, 0x30]
|
||||
ldr r1, =sub_80A6630
|
||||
str r1, [r0, 0x1C]
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
bl StoreSpriteCallbackInData6
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -970,7 +970,7 @@ sub_80D5944: @ 80D5944
|
||||
strh r1, [r0, 0x32]
|
||||
ldr r1, =sub_80A6630
|
||||
str r1, [r0, 0x1C]
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
bl StoreSpriteCallbackInData6
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -988,12 +988,12 @@ sub_80D5968: @ 80D5968
|
||||
cmp r0, 0
|
||||
bne _080D598C
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _080D5990
|
||||
.pool
|
||||
_080D598C:
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_080D5990:
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@ -1093,7 +1093,7 @@ _080D5A56:
|
||||
strh r1, [r3, 0x26]
|
||||
_080D5A58:
|
||||
adds r0, r2, 0
|
||||
bl move_anim_8072740
|
||||
bl DestroyAnimSprite
|
||||
b _080D5A8E
|
||||
.pool
|
||||
_080D5A64:
|
||||
@ -1133,11 +1133,11 @@ sub_80D5A94: @ 80D5A94
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _080D5AB0
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _080D5AB2
|
||||
.pool
|
||||
_080D5AB0:
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_080D5AB2:
|
||||
ldrb r2, [r0]
|
||||
ldr r0, =gBankSpriteIds
|
||||
@ -1192,7 +1192,7 @@ _080D5ADC:
|
||||
movs r1, 0x4
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
adds r0, r5, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
ldr r0, =sub_80A6680
|
||||
@ -1218,11 +1218,11 @@ sub_80D5B48: @ 80D5B48
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _080D5B70
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _080D5B72
|
||||
.pool
|
||||
_080D5B70:
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_080D5B72:
|
||||
ldrb r1, [r0]
|
||||
ldr r0, =gBankSpriteIds
|
||||
@ -1281,7 +1281,7 @@ _080D5B9C:
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bne _080D5C04
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
adds r0, r6, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
b _080D5C0C
|
||||
@ -1318,7 +1318,7 @@ sub_80D5C20: @ 80D5C20
|
||||
lsls r1, 2
|
||||
adds r1, r4
|
||||
strh r3, [r1, 0x26]
|
||||
bl move_anim_8072740
|
||||
bl DestroyAnimSprite
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -1338,7 +1338,7 @@ sub_80D5C50: @ 80D5C50
|
||||
bl __divsi3
|
||||
lsls r0, 16
|
||||
lsrs r7, r0, 16
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -1485,7 +1485,7 @@ _080D5D70:
|
||||
cmp r0, 0
|
||||
bne _080D5DA4
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080D5DA4:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -1518,16 +1518,16 @@ _080D5DD8:
|
||||
beq _080D5DE8
|
||||
b _080D5E10
|
||||
_080D5DDE:
|
||||
ldr r5, =gAnimationBankAttacker
|
||||
ldr r5, =gAnimBankAttacker
|
||||
b _080D5DEA
|
||||
.pool
|
||||
_080D5DE8:
|
||||
ldr r5, =gAnimationBankTarget
|
||||
ldr r5, =gAnimBankTarget
|
||||
_080D5DEA:
|
||||
ldrb r0, [r5]
|
||||
movs r4, 0x2
|
||||
eors r0, r4
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080D5E10
|
||||
@ -1540,7 +1540,7 @@ _080D5DEA:
|
||||
.pool
|
||||
_080D5E10:
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D5E58
|
||||
_080D5E18:
|
||||
ldr r1, =gTasks
|
||||
@ -1549,7 +1549,7 @@ _080D5E18:
|
||||
lsls r0, 3
|
||||
adds r5, r0, r1
|
||||
strh r2, [r5, 0x8]
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -1609,7 +1609,7 @@ sub_80D5E6C: @ 80D5E6C
|
||||
cmp r1, r0
|
||||
bls _080D5EAA
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080D5EAA:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
@ -1622,7 +1622,7 @@ sub_80D5EB8: @ 80D5EB8
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
ldr r6, =gAnimationBankAttacker
|
||||
ldr r6, =gAnimBankAttacker
|
||||
ldrb r0, [r6]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -1660,7 +1660,7 @@ _080D5ED4:
|
||||
b _080D5F18
|
||||
.pool
|
||||
_080D5F14:
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
_080D5F18:
|
||||
strh r0, [r2, 0x12]
|
||||
@ -1817,7 +1817,7 @@ _080D601E:
|
||||
strh r3, [r0, 0x24]
|
||||
strh r3, [r0, 0x26]
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080D6050:
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
@ -1923,7 +1923,7 @@ _080D6120:
|
||||
adds r0, r6, 0
|
||||
bl sub_80A7344
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080D612C:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
@ -1995,11 +1995,11 @@ _080D61B8:
|
||||
ldrsh r0, [r6, r1]
|
||||
cmp r0, 0
|
||||
bne _080D61C8
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _080D61CA
|
||||
.pool
|
||||
_080D61C8:
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_080D61CA:
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
@ -2076,11 +2076,11 @@ sub_80D622C: @ 80D622C
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
bne _080D6274
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _080D6276
|
||||
.pool
|
||||
_080D6274:
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_080D6276:
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
@ -2201,7 +2201,7 @@ _080D6364:
|
||||
bl sub_80A7344
|
||||
_080D636A:
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080D6382
|
||||
_080D6372:
|
||||
movs r0, 0
|
||||
@ -2236,7 +2236,7 @@ sub_80D6388: @ 80D6388
|
||||
adds r0, r5, r7
|
||||
lsls r0, 3
|
||||
adds r6, r0, r4
|
||||
ldr r0, =gMovePowerMoveAnim
|
||||
ldr r0, =gAnimMovePower
|
||||
ldrh r0, [r0]
|
||||
movs r1, 0xC
|
||||
bl __udivsi3
|
||||
@ -2248,7 +2248,7 @@ _080D63C0:
|
||||
adds r0, r5, r7
|
||||
lsls r0, 3
|
||||
adds r6, r0, r4
|
||||
ldr r0, =gMoveDmgMoveAnim
|
||||
ldr r0, =gAnimMoveDmg
|
||||
ldr r0, [r0]
|
||||
movs r1, 0xC
|
||||
bl __divsi3
|
||||
@ -2435,7 +2435,7 @@ _080D6518:
|
||||
adds r0, r2
|
||||
strh r4, [r0, 0x26]
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080D654A:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -16,7 +16,7 @@ sub_8170478: @ 8170478
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [sp, 0x10]
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r4, [r0]
|
||||
ldr r0, =gBattle_WIN0H
|
||||
movs r1, 0
|
||||
@ -43,19 +43,19 @@ sub_8170478: @ 8170478
|
||||
movs r0, 0x1
|
||||
movs r1, 0x4
|
||||
movs r2, 0
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
movs r0, 0x1
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
movs r0, 0x1
|
||||
movs r1, 0x1
|
||||
movs r2, 0x1
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
movs r0, 0x1
|
||||
movs r1, 0x3
|
||||
movs r2, 0x1
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
ldr r0, =gHealthBoxesIds
|
||||
adds r4, r0
|
||||
ldrb r0, [r4]
|
||||
@ -212,7 +212,7 @@ sub_8170660: @ 8170660
|
||||
push {r7}
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
mov r8, r0
|
||||
ldr r1, =gTasks
|
||||
@ -335,7 +335,7 @@ _08170708:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x3
|
||||
movs r2, 0
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
_0817076C:
|
||||
movs r0, 0
|
||||
bl GetGpuReg
|
||||
@ -372,7 +372,7 @@ _0817076C:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x1
|
||||
movs r2, 0
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
ldr r0, =gHealthBoxesIds
|
||||
add r0, r8
|
||||
ldrb r0, [r0]
|
||||
@ -412,7 +412,7 @@ _0817076C:
|
||||
orrs r2, r5
|
||||
strb r2, [r0, 0x5]
|
||||
adds r0, r7, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08170814:
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
@ -540,12 +540,12 @@ sub_8170920: @ 8170920
|
||||
lsrs r4, 24
|
||||
mov r1, sp
|
||||
adds r1, 0x1
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r2, [r0]
|
||||
mov r0, sp
|
||||
bl sub_8170834
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
add sp, 0x4
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
@ -628,11 +628,11 @@ sub_81709EC: @ 81709EC
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl sub_817094C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -752,7 +752,7 @@ _08170AD6:
|
||||
cmp r0, 0
|
||||
bne _08170AF8
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08170AF8:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
@ -766,7 +766,7 @@ sub_8170B04: @ 8170B04
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r5, [r0]
|
||||
@ -834,7 +834,7 @@ _08170B84:
|
||||
orrs r1, r2
|
||||
strb r1, [r0]
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08170BA4:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
@ -852,7 +852,7 @@ sub_8170BB0: @ 8170BB0
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r4, =gAnimationBankAttacker
|
||||
ldr r4, =gAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
adds r1, r0, r1
|
||||
ldrb r1, [r1]
|
||||
@ -904,7 +904,7 @@ _08170C08:
|
||||
b _08170CEE
|
||||
.pool
|
||||
_08170C44:
|
||||
ldr r5, =gAnimationBankAttacker
|
||||
ldr r5, =gAnimBankAttacker
|
||||
ldrb r0, [r5]
|
||||
movs r1, 0
|
||||
bl sub_80A5C6C
|
||||
@ -979,7 +979,7 @@ _08170CC4:
|
||||
cmp r0, 0
|
||||
bne _08170CEE
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08170CEE:
|
||||
add sp, 0xC
|
||||
pop {r3,r4}
|
||||
@ -1003,7 +1003,7 @@ sub_8170CFC: @ 8170CFC
|
||||
lsrs r0, 24
|
||||
bl sub_8076A78
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -1023,7 +1023,7 @@ sub_8170D24: @ 8170D24
|
||||
lsrs r0, 24
|
||||
bl sub_8076AE8
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -1051,7 +1051,7 @@ _08170D70:
|
||||
_08170D74:
|
||||
strh r0, [r1, 0xE]
|
||||
adds r0, r2, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -1162,7 +1162,7 @@ sub_8170E04: @ 8170E04
|
||||
adds r6, r4, r1
|
||||
movs r0, 0x22
|
||||
strh r0, [r6, 0x2E]
|
||||
ldr r2, =gAnimationBankTarget
|
||||
ldr r2, =gAnimBankTarget
|
||||
mov r8, r2
|
||||
ldrb r0, [r2]
|
||||
movs r1, 0
|
||||
@ -1246,7 +1246,7 @@ sub_8170EF0: @ 8170EF0
|
||||
cmp r1, r0
|
||||
bne _08170F1A
|
||||
adds r0, r3, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08170F1A:
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -1313,7 +1313,7 @@ _08170F54:
|
||||
adds r6, r4, r0
|
||||
movs r0, 0x22
|
||||
strh r0, [r6, 0x2E]
|
||||
ldr r1, =gAnimationBankTarget
|
||||
ldr r1, =gAnimBankTarget
|
||||
mov r8, r1
|
||||
ldrb r0, [r1]
|
||||
movs r1, 0
|
||||
@ -1550,7 +1550,7 @@ _08171188:
|
||||
movs r2, 0x1
|
||||
movs r3, 0x1C
|
||||
bl sub_8171D98
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0
|
||||
movs r2, 0xE
|
||||
@ -1585,7 +1585,7 @@ sub_81711E8: @ 81711E8
|
||||
str r0, [r4, 0x1C]
|
||||
ldr r2, =gSprites
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@ -1607,7 +1607,7 @@ sub_8171240: @ 8171240
|
||||
push {r4-r7,lr}
|
||||
adds r7, r0, 0
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r4, [r0]
|
||||
@ -2333,7 +2333,7 @@ sub_81717F8: @ 81717F8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r6, r0, 0
|
||||
ldr r7, =gAnimationBankTarget
|
||||
ldr r7, =gAnimBankTarget
|
||||
ldrh r0, [r6, 0x36]
|
||||
adds r0, 0x1
|
||||
movs r1, 0
|
||||
@ -2715,7 +2715,7 @@ sub_8171AE4: @ 8171AE4
|
||||
movs r2, 0x1
|
||||
movs r3, 0x1C
|
||||
bl sub_8171D98
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x1
|
||||
movs r2, 0xE
|
||||
@ -2724,7 +2724,7 @@ sub_8171AE4: @ 8171AE4
|
||||
_08171B36:
|
||||
ldr r6, =gSprites
|
||||
ldr r5, =gBankSpriteIds
|
||||
ldr r4, =gAnimationBankTarget
|
||||
ldr r4, =gAnimBankTarget
|
||||
ldrb r0, [r4]
|
||||
adds r0, r5
|
||||
ldrb r1, [r0]
|
||||
@ -2792,7 +2792,7 @@ sub_8171BAC: @ 8171BAC
|
||||
_08171BCA:
|
||||
ldr r4, =gSprites
|
||||
ldr r3, =gBankSpriteIds
|
||||
ldr r2, =gAnimationBankTarget
|
||||
ldr r2, =gAnimBankTarget
|
||||
ldrb r0, [r2]
|
||||
adds r0, r3
|
||||
ldrb r1, [r0]
|
||||
@ -2841,7 +2841,7 @@ _08171C24:
|
||||
beq _08171C8A
|
||||
ldr r4, =gSprites
|
||||
ldr r3, =gBankSpriteIds
|
||||
ldr r2, =gAnimationBankTarget
|
||||
ldr r2, =gAnimBankTarget
|
||||
ldrb r0, [r2]
|
||||
adds r0, r3
|
||||
ldrb r1, [r0]
|
||||
@ -4730,7 +4730,7 @@ sub_8172BF0: @ 8172BF0
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
ldr r0, =gBankSpriteIds
|
||||
ldr r3, =gAnimationBankAttacker
|
||||
ldr r3, =gAnimBankAttacker
|
||||
ldrb r2, [r3]
|
||||
adds r0, r2, r0
|
||||
ldrb r6, [r0]
|
||||
@ -4877,7 +4877,7 @@ _08172D28:
|
||||
adds r0, r1
|
||||
ldrb r1, [r0, 0x8]
|
||||
strh r1, [r0, 0x8]
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -4914,7 +4914,7 @@ _08172D7E:
|
||||
beq _08172D8A
|
||||
_08172D84:
|
||||
adds r0, r7, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08172D8A:
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
@ -4949,7 +4949,7 @@ _08172DC0:
|
||||
beq _08172E4E
|
||||
b _08172E84
|
||||
_08172DC6:
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankIdentity_permutated
|
||||
lsls r0, 24
|
||||
@ -5010,7 +5010,7 @@ _08172E14:
|
||||
b _08172E84
|
||||
_08172E4E:
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r4, =gAnimationBankAttacker
|
||||
ldr r4, =gAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@ -5032,7 +5032,7 @@ _08172E4E:
|
||||
ldrb r0, [r4]
|
||||
bl sub_805E974
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08172E84:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -5048,7 +5048,7 @@ sub_8172E9C: @ 8172E9C
|
||||
ldr r3, =gBattleAnimArgs
|
||||
ldr r1, =gBattleSpritesDataPtr
|
||||
ldr r2, [r1]
|
||||
ldr r1, =gAnimationBankAttacker
|
||||
ldr r1, =gAnimBankAttacker
|
||||
ldrb r1, [r1]
|
||||
ldr r2, [r2]
|
||||
lsls r1, 2
|
||||
@ -5057,7 +5057,7 @@ sub_8172E9C: @ 8172E9C
|
||||
lsls r1, 29
|
||||
lsrs r1, 31
|
||||
strh r1, [r3, 0xE]
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -5068,11 +5068,11 @@ sub_8172ED0: @ 8172ED0
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, =gAnimationBankTarget
|
||||
ldr r2, =gAnimBankTarget
|
||||
ldr r1, =gEffectBank
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r2]
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -5108,7 +5108,7 @@ sub_8172EF0: @ 8172EF0
|
||||
bl GetMonData
|
||||
adds r4, r0, 0
|
||||
adds r0, r6, 0
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08172FC8
|
||||
@ -5540,7 +5540,7 @@ sub_81732B0: @ 81732B0
|
||||
ldr r0, =0x0000281d
|
||||
bl IndexOfSpritePaletteTag
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -5559,7 +5559,7 @@ sub_81732E4: @ 81732E4
|
||||
adds r0, r5, 0
|
||||
bl FreeSpritePaletteByTag
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -5603,7 +5603,7 @@ sub_817330C: @ 817330C
|
||||
bl sub_80A68D4
|
||||
ldr r2, =gSprites
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@ -5628,7 +5628,7 @@ sub_817339C: @ 817339C
|
||||
adds r3, r0, 0
|
||||
ldr r2, =gSprites
|
||||
ldr r1, =gBankSpriteIds
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@ -5679,7 +5679,7 @@ sub_8173400: @ 8173400
|
||||
adds r4, r0, 0
|
||||
ldr r5, =gSprites
|
||||
ldr r3, =gBankSpriteIds
|
||||
ldr r2, =gAnimationBankAttacker
|
||||
ldr r2, =gAnimBankAttacker
|
||||
ldrb r0, [r2]
|
||||
adds r0, r3
|
||||
ldrb r1, [r0]
|
||||
@ -5708,7 +5708,7 @@ sub_8173400: @ 8173400
|
||||
movs r1, 0
|
||||
bl StartSpriteAnim
|
||||
adds r0, r4, 0
|
||||
bl move_anim_8072740
|
||||
bl DestroyAnimSprite
|
||||
_08173448:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -5733,7 +5733,7 @@ sub_817345C: @ 817345C
|
||||
_08173478:
|
||||
movs r0, 0
|
||||
bl GetBankByIdentity
|
||||
ldr r1, =gAnimationBankAttacker
|
||||
ldr r1, =gAnimBankAttacker
|
||||
strb r0, [r1]
|
||||
movs r0, 0x1
|
||||
b _08173498
|
||||
@ -5741,16 +5741,16 @@ _08173478:
|
||||
_0817348C:
|
||||
movs r0, 0x1
|
||||
bl GetBankByIdentity
|
||||
ldr r1, =gAnimationBankAttacker
|
||||
ldr r1, =gAnimBankAttacker
|
||||
strb r0, [r1]
|
||||
movs r0, 0
|
||||
_08173498:
|
||||
bl GetBankByIdentity
|
||||
ldr r1, =gAnimationBankTarget
|
||||
ldr r1, =gAnimBankTarget
|
||||
strb r0, [r1]
|
||||
_081734A0:
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -5801,7 +5801,7 @@ _08173508:
|
||||
_0817350C:
|
||||
strh r0, [r1]
|
||||
adds r0, r2, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -5812,18 +5812,18 @@ sub_817351C: @ 817351C
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r3, =gAnimationBankAttacker
|
||||
ldr r3, =gAnimBankAttacker
|
||||
ldr r1, =gBattleSpritesDataPtr
|
||||
ldr r2, [r1]
|
||||
ldr r1, [r2, 0x8]
|
||||
ldrh r1, [r1]
|
||||
strb r1, [r3]
|
||||
ldr r3, =gAnimationBankTarget
|
||||
ldr r3, =gAnimBankTarget
|
||||
ldr r1, [r2, 0x8]
|
||||
ldrh r1, [r1]
|
||||
lsrs r1, 8
|
||||
strb r1, [r3]
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
|
@ -142,7 +142,7 @@ sub_8158C04: @ 8158C04
|
||||
cmp r0, 0x2
|
||||
bne _08158C4C
|
||||
adds r0, r5, 0
|
||||
bl move_anim_related_task_del
|
||||
bl DestroyAnimSoundTask
|
||||
_08158C4C:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -264,7 +264,7 @@ sub_8158D08: @ 8158D08
|
||||
cmp r0, 0
|
||||
bne _08158D50
|
||||
adds r0, r5, 0
|
||||
bl move_anim_related_task_del
|
||||
bl DestroyAnimSoundTask
|
||||
b _08158D82
|
||||
.pool
|
||||
_08158D50:
|
||||
@ -319,7 +319,7 @@ sub_8158D8C: @ 8158D8C
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _08158DC8
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x18]
|
||||
ldrh r4, [r0]
|
||||
@ -327,7 +327,7 @@ sub_8158D8C: @ 8158D8C
|
||||
.pool
|
||||
_08158DC8:
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _08158E76
|
||||
_08158DD0:
|
||||
ldr r0, =gBattleAnimArgs
|
||||
@ -336,25 +336,25 @@ _08158DD0:
|
||||
adds r2, r0, 0
|
||||
cmp r1, 0
|
||||
bne _08158DEC
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r4, [r0]
|
||||
b _08158E12
|
||||
.pool
|
||||
_08158DEC:
|
||||
cmp r1, 0x1
|
||||
bne _08158DFC
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r4, [r0]
|
||||
b _08158E12
|
||||
.pool
|
||||
_08158DFC:
|
||||
cmp r1, 0x2
|
||||
bne _08158E08
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _08158E0A
|
||||
.pool
|
||||
_08158E08:
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_08158E0A:
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x2
|
||||
@ -369,12 +369,12 @@ _08158E12:
|
||||
bne _08158E38
|
||||
_08158E1E:
|
||||
adds r0, r4, 0
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08158E38
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _08158E8C
|
||||
.pool
|
||||
_08158E38:
|
||||
@ -416,7 +416,7 @@ _08158E76:
|
||||
bl PlayCry3
|
||||
_08158E86:
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08158E8C:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
@ -444,7 +444,7 @@ sub_8158E9C: @ 8158E9C
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _08158ED8
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x18]
|
||||
ldrh r4, [r0]
|
||||
@ -452,7 +452,7 @@ sub_8158E9C: @ 8158E9C
|
||||
.pool
|
||||
_08158ED8:
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _08158F86
|
||||
_08158EE0:
|
||||
ldr r0, =gBattleAnimArgs
|
||||
@ -461,25 +461,25 @@ _08158EE0:
|
||||
adds r2, r0, 0
|
||||
cmp r1, 0
|
||||
bne _08158EFC
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r4, [r0]
|
||||
b _08158F22
|
||||
.pool
|
||||
_08158EFC:
|
||||
cmp r1, 0x1
|
||||
bne _08158F0C
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r4, [r0]
|
||||
b _08158F22
|
||||
.pool
|
||||
_08158F0C:
|
||||
cmp r1, 0x2
|
||||
bne _08158F18
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _08158F1A
|
||||
.pool
|
||||
_08158F18:
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_08158F1A:
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x2
|
||||
@ -494,12 +494,12 @@ _08158F22:
|
||||
bne _08158F48
|
||||
_08158F2E:
|
||||
adds r0, r4, 0
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08158F48
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _08158FEE
|
||||
.pool
|
||||
_08158F48:
|
||||
@ -571,7 +571,7 @@ _08158FD0:
|
||||
.pool
|
||||
_08158FE8:
|
||||
adds r0, r6, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08158FEE:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
@ -620,7 +620,7 @@ _08159028:
|
||||
movs r2, 0xA
|
||||
bl PlayCry3
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _0815906A
|
||||
_0815904E:
|
||||
bl IsCryPlaying
|
||||
@ -633,7 +633,7 @@ _0815904E:
|
||||
movs r2, 0x8
|
||||
bl PlayCry3
|
||||
mov r0, r9
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_0815906A:
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
@ -669,7 +669,7 @@ _081590A0:
|
||||
cmp r0, 0
|
||||
bne _081590B0
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_081590B0:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
@ -698,14 +698,14 @@ sub_81590B8: @ 81590B8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081590F8
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x18]
|
||||
b _08159102
|
||||
.pool
|
||||
_081590F8:
|
||||
ldr r1, =gUnknown_02038438
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r1, =gAnimSpeciesByBanks
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 1
|
||||
adds r0, r1
|
||||
@ -728,7 +728,7 @@ _08159102:
|
||||
.pool
|
||||
_08159130:
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08159136:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -829,7 +829,7 @@ _081591F2:
|
||||
bl PlayCry3
|
||||
_081591FE:
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_08159204:
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
@ -856,7 +856,7 @@ sub_8159210: @ 8159210
|
||||
adds r0, r5, 0
|
||||
bl PlaySE1WithPanning
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -881,7 +881,7 @@ sub_8159244: @ 8159244
|
||||
adds r0, r5, 0
|
||||
bl PlaySE2WithPanning
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -995,7 +995,7 @@ _08159342:
|
||||
cmp r1, r0
|
||||
bne _0815935A
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_0815935A:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
|
@ -276,7 +276,7 @@ _080645CA:
|
||||
ldrb r1, [r7]
|
||||
movs r0, 0x2
|
||||
eors r0, r1
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0806469C
|
||||
@ -4729,7 +4729,7 @@ _08066D32:
|
||||
ldrb r0, [r1]
|
||||
mov r1, r8
|
||||
strb r0, [r1]
|
||||
ldr r3, =gMovePowerMoveAnim
|
||||
ldr r3, =gAnimMovePower
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -4743,7 +4743,7 @@ _08066D32:
|
||||
lsls r0, 8
|
||||
orrs r2, r0
|
||||
strh r2, [r3]
|
||||
ldr r3, =gMoveDmgMoveAnim
|
||||
ldr r3, =gAnimMoveDmg
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -4769,7 +4769,7 @@ _08066D32:
|
||||
lsls r0, 24
|
||||
orrs r2, r0
|
||||
str r2, [r3]
|
||||
ldr r2, =gHappinessMoveAnim
|
||||
ldr r2, =gAnimFriendship
|
||||
ldrb r0, [r5]
|
||||
lsls r0, 9
|
||||
mov r1, r12
|
||||
@ -4791,7 +4791,7 @@ _08066D32:
|
||||
lsls r0, 8
|
||||
orrs r2, r0
|
||||
strh r2, [r4]
|
||||
ldr r7, =gDisableStructMoveAnim
|
||||
ldr r7, =gAnimDisableStructPtr
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -4928,7 +4928,7 @@ _08066F08:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
@ -6080,7 +6080,7 @@ sub_80678D0: @ 80678D0
|
||||
push {r4,lr}
|
||||
ldr r4, =gActiveBank
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08067916
|
||||
|
@ -4038,7 +4038,7 @@ _0814D2CE:
|
||||
ldrb r0, [r1]
|
||||
mov r1, r8
|
||||
strb r0, [r1]
|
||||
ldr r3, =gMovePowerMoveAnim
|
||||
ldr r3, =gAnimMovePower
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -4052,7 +4052,7 @@ _0814D2CE:
|
||||
lsls r0, 8
|
||||
orrs r2, r0
|
||||
strh r2, [r3]
|
||||
ldr r3, =gMoveDmgMoveAnim
|
||||
ldr r3, =gAnimMoveDmg
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -4078,7 +4078,7 @@ _0814D2CE:
|
||||
lsls r0, 24
|
||||
orrs r2, r0
|
||||
str r2, [r3]
|
||||
ldr r2, =gHappinessMoveAnim
|
||||
ldr r2, =gAnimFriendship
|
||||
ldrb r0, [r5]
|
||||
lsls r0, 9
|
||||
mov r1, r12
|
||||
@ -4100,7 +4100,7 @@ _0814D2CE:
|
||||
lsls r0, 8
|
||||
orrs r2, r0
|
||||
strh r2, [r4]
|
||||
ldr r7, =gDisableStructMoveAnim
|
||||
ldr r7, =gAnimDisableStructPtr
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -4237,7 +4237,7 @@ _0814D4A4:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
@ -5474,7 +5474,7 @@ sub_814DF40: @ 814DF40
|
||||
push {r4,lr}
|
||||
ldr r4, =gActiveBank
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814DF86
|
||||
|
@ -4877,7 +4877,7 @@ _08061C8A:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, =gMovePowerMoveAnim
|
||||
ldr r4, =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4891,7 +4891,7 @@ _08061C8A:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, =gMoveDmgMoveAnim
|
||||
ldr r4, =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4917,7 +4917,7 @@ _08061C8A:
|
||||
lsls r1, 24
|
||||
orrs r3, r1
|
||||
str r3, [r4]
|
||||
ldr r3, =gHappinessMoveAnim
|
||||
ldr r3, =gAnimFriendship
|
||||
ldrb r1, [r6]
|
||||
lsls r1, 9
|
||||
mov r2, r12
|
||||
@ -4939,7 +4939,7 @@ _08061C8A:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r3, =gDisableStructMoveAnim
|
||||
ldr r3, =gAnimDisableStructPtr
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -5068,7 +5068,7 @@ _08061E48:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
@ -6535,7 +6535,7 @@ sub_8062AD0: @ 8062AD0
|
||||
push {r4,lr}
|
||||
ldr r4, =gActiveBank
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08062B16
|
||||
|
@ -8142,7 +8142,7 @@ _0805BCBE:
|
||||
ldrb r0, [r1]
|
||||
mov r1, r8
|
||||
strb r0, [r1]
|
||||
ldr r3, =gMovePowerMoveAnim
|
||||
ldr r3, =gAnimMovePower
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -8156,7 +8156,7 @@ _0805BCBE:
|
||||
lsls r0, 8
|
||||
orrs r2, r0
|
||||
strh r2, [r3]
|
||||
ldr r3, =gMoveDmgMoveAnim
|
||||
ldr r3, =gAnimMoveDmg
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -8182,7 +8182,7 @@ _0805BCBE:
|
||||
lsls r0, 24
|
||||
orrs r2, r0
|
||||
str r2, [r3]
|
||||
ldr r2, =gHappinessMoveAnim
|
||||
ldr r2, =gAnimFriendship
|
||||
ldrb r0, [r5]
|
||||
lsls r0, 9
|
||||
mov r1, r12
|
||||
@ -8204,7 +8204,7 @@ _0805BCBE:
|
||||
lsls r0, 8
|
||||
orrs r2, r0
|
||||
strh r2, [r4]
|
||||
ldr r7, =gDisableStructMoveAnim
|
||||
ldr r7, =gAnimDisableStructPtr
|
||||
ldrb r1, [r5]
|
||||
lsls r1, 9
|
||||
mov r0, r12
|
||||
@ -8341,7 +8341,7 @@ _0805BE94:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
@ -10172,7 +10172,7 @@ dp01t_33_1_enemy_move: @ 805CEF4
|
||||
push {r4,lr}
|
||||
ldr r4, =gActiveBank
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0805CF3A
|
||||
|
@ -4658,7 +4658,7 @@ _081BD7A2:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, =gMovePowerMoveAnim
|
||||
ldr r4, =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4672,7 +4672,7 @@ _081BD7A2:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, =gMoveDmgMoveAnim
|
||||
ldr r4, =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4698,7 +4698,7 @@ _081BD7A2:
|
||||
lsls r1, 24
|
||||
orrs r3, r1
|
||||
str r3, [r4]
|
||||
ldr r3, =gHappinessMoveAnim
|
||||
ldr r3, =gAnimFriendship
|
||||
ldrb r1, [r6]
|
||||
lsls r1, 9
|
||||
mov r2, r12
|
||||
@ -4720,7 +4720,7 @@ _081BD7A2:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r3, =gDisableStructMoveAnim
|
||||
ldr r3, =gAnimDisableStructPtr
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4849,7 +4849,7 @@ _081BD960:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
@ -6207,7 +6207,7 @@ sub_81BE53C: @ 81BE53C
|
||||
push {r4,lr}
|
||||
ldr r4, =gActiveBank
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081BE582
|
||||
|
@ -4414,7 +4414,7 @@ _08188BE6:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, =gMovePowerMoveAnim
|
||||
ldr r4, =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4428,7 +4428,7 @@ _08188BE6:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, =gMoveDmgMoveAnim
|
||||
ldr r4, =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4454,7 +4454,7 @@ _08188BE6:
|
||||
lsls r1, 24
|
||||
orrs r3, r1
|
||||
str r3, [r4]
|
||||
ldr r3, =gHappinessMoveAnim
|
||||
ldr r3, =gAnimFriendship
|
||||
ldrb r1, [r6]
|
||||
lsls r1, 9
|
||||
mov r2, r12
|
||||
@ -4476,7 +4476,7 @@ _08188BE6:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r3, =gDisableStructMoveAnim
|
||||
ldr r3, =gAnimDisableStructPtr
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4605,7 +4605,7 @@ _08188DA4:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
@ -5819,7 +5819,7 @@ sub_8189800: @ 8189800
|
||||
push {r4,lr}
|
||||
ldr r4, =gActiveBank
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08189846
|
||||
|
@ -4514,7 +4514,7 @@ _0818C192:
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, =gMovePowerMoveAnim
|
||||
ldr r4, =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4528,7 +4528,7 @@ _0818C192:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, =gMoveDmgMoveAnim
|
||||
ldr r4, =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4554,7 +4554,7 @@ _0818C192:
|
||||
lsls r1, 24
|
||||
orrs r3, r1
|
||||
str r3, [r4]
|
||||
ldr r3, =gHappinessMoveAnim
|
||||
ldr r3, =gAnimFriendship
|
||||
ldrb r1, [r6]
|
||||
lsls r1, 9
|
||||
mov r2, r12
|
||||
@ -4576,7 +4576,7 @@ _0818C192:
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r3, =gDisableStructMoveAnim
|
||||
ldr r3, =gAnimDisableStructPtr
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -4705,7 +4705,7 @@ _0818C350:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
@ -6003,7 +6003,7 @@ sub_818CE98: @ 818CE98
|
||||
push {r4,lr}
|
||||
ldr r4, =gActiveBank
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0818CEDE
|
||||
|
@ -3322,7 +3322,7 @@ sub_816A144: @ 816A144
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
strb r1, [r5]
|
||||
ldr r4, =gMovePowerMoveAnim
|
||||
ldr r4, =gAnimMovePower
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -3336,7 +3336,7 @@ sub_816A144: @ 816A144
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r4, =gMoveDmgMoveAnim
|
||||
ldr r4, =gAnimMoveDmg
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -3362,7 +3362,7 @@ sub_816A144: @ 816A144
|
||||
lsls r1, 24
|
||||
orrs r3, r1
|
||||
str r3, [r4]
|
||||
ldr r3, =gHappinessMoveAnim
|
||||
ldr r3, =gAnimFriendship
|
||||
ldrb r1, [r6]
|
||||
lsls r1, 9
|
||||
mov r2, r12
|
||||
@ -3384,7 +3384,7 @@ sub_816A144: @ 816A144
|
||||
lsls r1, 8
|
||||
orrs r3, r1
|
||||
strh r3, [r4]
|
||||
ldr r3, =gDisableStructMoveAnim
|
||||
ldr r3, =gAnimDisableStructPtr
|
||||
ldrb r2, [r6]
|
||||
lsls r2, 9
|
||||
mov r1, r12
|
||||
@ -3505,7 +3505,7 @@ _0816A2F6:
|
||||
movs r0, 0
|
||||
bl sub_805EB9C
|
||||
adds r0, r4, 0
|
||||
bl move_anim_start_t1
|
||||
bl DoMoveAnim
|
||||
ldr r0, [r7]
|
||||
ldrb r1, [r6]
|
||||
ldr r2, [r0, 0x4]
|
||||
|
338
asm/contest.s
338
asm/contest.s
File diff suppressed because it is too large
Load Diff
298
asm/contest_ai.s
298
asm/contest_ai.s
File diff suppressed because it is too large
Load Diff
@ -68,7 +68,7 @@ ContestEffectFunc_080E547C: @ 80E547C
|
||||
thumb_func_start ContestEffectFunc_080E5480
|
||||
ContestEffectFunc_080E5480: @ 80E5480
|
||||
push {lr}
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -94,7 +94,7 @@ ContestEffectFunc_080E5480: @ 80E5480
|
||||
thumb_func_start ContestEffectFunc_080E54B0
|
||||
ContestEffectFunc_080E54B0: @ 80E54B0
|
||||
push {lr}
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -119,7 +119,7 @@ ContestEffectFunc_080E54B0: @ 80E54B0
|
||||
|
||||
thumb_func_start ContestEffectFunc_080E54E0
|
||||
ContestEffectFunc_080E54E0: @ 80E54E0
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -165,7 +165,7 @@ ContestEffectFunc_080E54E0: @ 80E54E0
|
||||
thumb_func_start ContestEffectFunc_080E5534
|
||||
ContestEffectFunc_080E5534: @ 80E5534
|
||||
push {lr}
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -189,7 +189,7 @@ ContestEffectFunc_080E5534: @ 80E5534
|
||||
thumb_func_start ContestEffectFunc_080E5560
|
||||
ContestEffectFunc_080E5560: @ 80E5560
|
||||
push {lr}
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -215,7 +215,7 @@ ContestEffectFunc_080E5560: @ 80E5560
|
||||
thumb_func_start ContestEffectFunc_080E5590
|
||||
ContestEffectFunc_080E5590: @ 80E5590
|
||||
push {lr}
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -239,7 +239,7 @@ ContestEffectFunc_080E5590: @ 80E5590
|
||||
thumb_func_start ContestEffectFunc_080E55BC
|
||||
ContestEffectFunc_080E55BC: @ 80E55BC
|
||||
push {lr}
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -266,7 +266,7 @@ ContestEffectFunc_080E55BC: @ 80E55BC
|
||||
ContestEffectFunc_080E55EC: @ 80E55EC
|
||||
push {r4,r5,lr}
|
||||
movs r2, 0
|
||||
ldr r5, =gUnknown_02039F34
|
||||
ldr r5, =gContestResources
|
||||
ldr r0, [r5]
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r4, [r1, 0x11]
|
||||
@ -293,7 +293,7 @@ _080E560A:
|
||||
cmp r0, r1
|
||||
bne _080E560A
|
||||
_080E5622:
|
||||
ldr r1, =gUnknown_02039F34
|
||||
ldr r1, =gContestResources
|
||||
ldr r0, [r1]
|
||||
ldr r0, [r0, 0x8]
|
||||
strb r2, [r0, 0x8]
|
||||
@ -307,14 +307,14 @@ _080E5622:
|
||||
_080E563A:
|
||||
cmp r2, 0
|
||||
bne _080E564C
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
movs r1, 0x36
|
||||
bl sub_80DD3F0
|
||||
_080E564C:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -330,7 +330,7 @@ _080E564C:
|
||||
ContestEffectFunc_080E5664: @ 80E5664
|
||||
push {r4-r6,lr}
|
||||
movs r1, 0
|
||||
ldr r2, =gUnknown_02039F34
|
||||
ldr r2, =gContestResources
|
||||
ldr r0, [r2]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r5, [r0, 0x11]
|
||||
@ -359,7 +359,7 @@ _080E5698:
|
||||
adds r3, 0x1
|
||||
cmp r3, 0x3
|
||||
ble _080E567E
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
adds r0, 0x8
|
||||
@ -372,14 +372,14 @@ _080E5698:
|
||||
_080E56B4:
|
||||
cmp r1, 0
|
||||
bne _080E56C6
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
movs r1, 0x36
|
||||
bl sub_80DD3F0
|
||||
_080E56C6:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -409,7 +409,7 @@ ContestEffectFunc_080E56E0: @ 80E56E0
|
||||
bhi _080E5702
|
||||
movs r1, 0x28
|
||||
_080E5702:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
strh r1, [r0, 0x4]
|
||||
@ -425,7 +425,7 @@ ContestEffectFunc_080E5718: @ 80E5718
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
movs r7, 0
|
||||
ldr r1, =gUnknown_02039F34
|
||||
ldr r1, =gContestResources
|
||||
ldr r0, [r1]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r5, [r0, 0x11]
|
||||
@ -521,7 +521,7 @@ ContestEffectFunc_080E57CC: @ 80E57CC
|
||||
push {r5-r7}
|
||||
movs r0, 0
|
||||
mov r9, r0
|
||||
ldr r1, =gUnknown_02039F34
|
||||
ldr r1, =gContestResources
|
||||
ldr r0, [r1]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -619,7 +619,7 @@ ContestEffectFunc_080E588C: @ 80E588C
|
||||
push {r6,r7}
|
||||
movs r0, 0
|
||||
mov r9, r0
|
||||
ldr r1, =gUnknown_02039F34
|
||||
ldr r1, =gContestResources
|
||||
ldr r0, [r1]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r7, [r0, 0x11]
|
||||
@ -674,7 +674,7 @@ _080E58DA:
|
||||
_080E5900:
|
||||
adds r6, 0x1C
|
||||
adds r5, 0x1
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
cmp r5, 0x3
|
||||
ble _080E58B0
|
||||
_080E590A:
|
||||
@ -704,7 +704,7 @@ _080E5928:
|
||||
thumb_func_start ContestEffectFunc_080E5938
|
||||
ContestEffectFunc_080E5938: @ 80E5938
|
||||
push {r4,lr}
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r1, [r4]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -732,7 +732,7 @@ ContestEffectFunc_080E5938: @ 80E5938
|
||||
thumb_func_start ContestEffectFunc_080E5970
|
||||
ContestEffectFunc_080E5970: @ 80E5970
|
||||
push {r4,lr}
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r1, [r4]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -765,7 +765,7 @@ ContestEffectFunc_080E59B0: @ 80E59B0
|
||||
push {lr}
|
||||
movs r0, 0
|
||||
bl sub_80E6934
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -781,7 +781,7 @@ ContestEffectFunc_080E59D0: @ 80E59D0
|
||||
push {lr}
|
||||
movs r0, 0x1
|
||||
bl sub_80E6934
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -797,7 +797,7 @@ ContestEffectFunc_080E59F0: @ 80E59F0
|
||||
push {lr}
|
||||
movs r0, 0x2
|
||||
bl sub_80E6934
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -813,7 +813,7 @@ ContestEffectFunc_080E5A10: @ 80E5A10
|
||||
push {lr}
|
||||
movs r0, 0x3
|
||||
bl sub_80E6934
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -829,7 +829,7 @@ ContestEffectFunc_080E5A30: @ 80E5A30
|
||||
push {lr}
|
||||
movs r0, 0x4
|
||||
bl sub_80E6934
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -844,7 +844,7 @@ ContestEffectFunc_080E5A30: @ 80E5A30
|
||||
ContestEffectFunc_080E5A50: @ 80E5A50
|
||||
push {r4-r6,lr}
|
||||
movs r4, 0
|
||||
ldr r2, =gUnknown_02039F34
|
||||
ldr r2, =gContestResources
|
||||
ldr r0, [r2]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r1, [r0, 0x11]
|
||||
@ -855,7 +855,7 @@ ContestEffectFunc_080E5A50: @ 80E5A50
|
||||
beq _080E5AB0
|
||||
movs r5, 0
|
||||
_080E5A68:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r0, [r1, 0x11]
|
||||
@ -932,7 +932,7 @@ ContestEffectFunc_080E5AD4: @ 80E5AD4
|
||||
mov r10, r3
|
||||
movs r6, 0
|
||||
_080E5B00:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r2, [r0]
|
||||
ldr r1, [r2, 0x8]
|
||||
ldrb r0, [r1, 0x11]
|
||||
@ -1000,7 +1000,7 @@ _080E5B76:
|
||||
bge _080E5B76
|
||||
_080E5B7E:
|
||||
movs r5, 0
|
||||
ldr r7, =gUnknown_02039F34
|
||||
ldr r7, =gContestResources
|
||||
movs r6, 0
|
||||
mov r4, r10
|
||||
_080E5B86:
|
||||
@ -1125,7 +1125,7 @@ _080E5C70:
|
||||
lsrs r0, 24
|
||||
mov r9, r0
|
||||
_080E5C86:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
adds r0, 0xD
|
||||
@ -1139,7 +1139,7 @@ _080E5C86:
|
||||
cmp r0, 0xFF
|
||||
bne _080E5C16
|
||||
_080E5CA0:
|
||||
ldr r6, =gUnknown_02039F34
|
||||
ldr r6, =gContestResources
|
||||
ldr r0, [r6]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -1173,7 +1173,7 @@ ContestEffectFunc_080E5CD4: @ 80E5CD4
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
movs r6, 0
|
||||
ldr r7, =gUnknown_02039F34
|
||||
ldr r7, =gContestResources
|
||||
movs r5, 0
|
||||
_080E5CE4:
|
||||
ldr r2, [r7]
|
||||
@ -1228,7 +1228,7 @@ _080E5D46:
|
||||
adds r6, 0x1
|
||||
cmp r6, 0x3
|
||||
ble _080E5CE4
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r0, [r4]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -1256,7 +1256,7 @@ ContestEffectFunc_080E5D7C: @ 80E5D7C
|
||||
push {r4-r7,lr}
|
||||
movs r7, 0
|
||||
movs r4, 0
|
||||
ldr r5, =gUnknown_02039F34
|
||||
ldr r5, =gContestResources
|
||||
movs r6, 0
|
||||
_080E5D86:
|
||||
ldr r3, [r5]
|
||||
@ -1301,7 +1301,7 @@ _080E5DD2:
|
||||
adds r4, 0x1
|
||||
cmp r4, 0x3
|
||||
ble _080E5D86
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r0, [r4]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -1325,7 +1325,7 @@ _080E5DF8:
|
||||
ContestEffectFunc_080E5E04: @ 80E5E04
|
||||
push {r4,lr}
|
||||
ldr r1, =gUnknown_02039F26
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r4, [r0]
|
||||
ldr r0, [r4, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -1366,7 +1366,7 @@ _080E5E46:
|
||||
ContestEffectFunc_080E5E5C: @ 80E5E5C
|
||||
push {r4,lr}
|
||||
ldr r1, =gUnknown_02039F26
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r4, [r0]
|
||||
ldr r0, [r4, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -1408,7 +1408,7 @@ ContestEffectFunc_080E5EB4: @ 80E5EB4
|
||||
push {r4-r7,lr}
|
||||
movs r1, 0
|
||||
movs r5, 0
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r4, [r0]
|
||||
ldr r2, [r4, 0x8]
|
||||
ldrb r0, [r2, 0x11]
|
||||
@ -1434,7 +1434,7 @@ _080E5EDA:
|
||||
bge _080E5EE8
|
||||
movs r5, 0
|
||||
_080E5EE8:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r3, [r0]
|
||||
ldr r0, [r3, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -1467,7 +1467,7 @@ _080E5F0C:
|
||||
movs r1, 0x11
|
||||
bl sub_80DD3D4
|
||||
_080E5F2C:
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r1, [r4]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -1498,7 +1498,7 @@ _080E5F2C:
|
||||
ContestEffectFunc_080E5F64: @ 80E5F64
|
||||
push {r4-r7,lr}
|
||||
movs r6, 0
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r4, [r0]
|
||||
ldr r2, [r4, 0x8]
|
||||
ldrb r1, [r2, 0x11]
|
||||
@ -1567,7 +1567,7 @@ _080E5FDE:
|
||||
thumb_func_start ContestEffectFunc_080E5FE4
|
||||
ContestEffectFunc_080E5FE4: @ 80E5FE4
|
||||
push {r4,r5,lr}
|
||||
ldr r1, =gUnknown_02039F34
|
||||
ldr r1, =gContestResources
|
||||
ldr r3, [r1]
|
||||
ldr r0, [r3, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -1647,7 +1647,7 @@ ContestEffectFunc_080E6068: @ 80E6068
|
||||
cmp r0, 0x2
|
||||
bhi _080E6098
|
||||
movs r4, 0xA
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -1659,7 +1659,7 @@ _080E6098:
|
||||
cmp r0, 0x5
|
||||
bhi _080E60B4
|
||||
movs r4, 0x14
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -1671,7 +1671,7 @@ _080E60B4:
|
||||
cmp r0, 0x7
|
||||
bhi _080E60D0
|
||||
movs r4, 0x28
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -1683,7 +1683,7 @@ _080E60D0:
|
||||
cmp r1, 0x8
|
||||
bhi _080E60EC
|
||||
movs r4, 0x3C
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -1693,14 +1693,14 @@ _080E60D0:
|
||||
.pool
|
||||
_080E60EC:
|
||||
movs r4, 0x50
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
movs r1, 0x1E
|
||||
bl sub_80DD3D4
|
||||
_080E60FC:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -1721,7 +1721,7 @@ ContestEffectFunc_080E611C: @ 80E611C
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
ldr r2, =gUnknown_02039F34
|
||||
ldr r2, =gContestResources
|
||||
ldr r0, [r2]
|
||||
ldr r3, [r0, 0x8]
|
||||
ldrb r0, [r3, 0x11]
|
||||
@ -1743,7 +1743,7 @@ _080E6140:
|
||||
adds r5, r0, 0
|
||||
cmp r6, r1
|
||||
beq _080E616A
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
_080E614E:
|
||||
lsls r0, r2, 24
|
||||
movs r2, 0x80
|
||||
@ -1845,7 +1845,7 @@ ContestEffectFunc_080E620C: @ 80E620C
|
||||
mov r7, r9
|
||||
mov r6, r8
|
||||
push {r6,r7}
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r3, [r0]
|
||||
ldr r1, [r3, 0x8]
|
||||
ldrb r2, [r1, 0x11]
|
||||
@ -1928,7 +1928,7 @@ _080E62AC:
|
||||
thumb_func_start ContestEffectFunc_080E62B8
|
||||
ContestEffectFunc_080E62B8: @ 80E62B8
|
||||
push {r4-r7,lr}
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r1, [r0, 0x11]
|
||||
@ -1939,7 +1939,7 @@ ContestEffectFunc_080E62B8: @ 80E62B8
|
||||
movs r5, 0
|
||||
movs r6, 0
|
||||
_080E62CE:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r4, [r0]
|
||||
ldr r1, [r4, 0x8]
|
||||
ldrb r2, [r1, 0x11]
|
||||
@ -1994,7 +1994,7 @@ _080E632E:
|
||||
thumb_func_start ContestEffectFunc_080E6334
|
||||
ContestEffectFunc_080E6334: @ 80E6334
|
||||
push {r4,lr}
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r1, [r4]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -2046,7 +2046,7 @@ _080E6390:
|
||||
thumb_func_start ContestEffectFunc_080E6398
|
||||
ContestEffectFunc_080E6398: @ 80E6398
|
||||
push {lr}
|
||||
ldr r3, =gUnknown_02039F34
|
||||
ldr r3, =gContestResources
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -2090,7 +2090,7 @@ _080E63E4:
|
||||
ContestEffectFunc_080E63E8: @ 80E63E8
|
||||
push {r4-r7,lr}
|
||||
sub sp, 0x4
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r2, [r0]
|
||||
ldr r1, [r2]
|
||||
ldrb r1, [r1, 0x1]
|
||||
@ -2258,7 +2258,7 @@ ContestEffectFunc_080E6520: @ 80E6520
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r2, [r0]
|
||||
ldr r1, [r2]
|
||||
ldrb r1, [r1, 0x1]
|
||||
@ -2434,7 +2434,7 @@ ContestEffectFunc_080E6664: @ 80E6664
|
||||
ContestEffectFunc_080E6668: @ 80E6668
|
||||
push {r4-r7,lr}
|
||||
sub sp, 0x8
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r1]
|
||||
ldrb r0, [r0, 0x1]
|
||||
@ -2517,7 +2517,7 @@ _080E66FC:
|
||||
cmp r0, 0x3
|
||||
ble _080E66AA
|
||||
movs r6, 0
|
||||
ldr r5, =gUnknown_02039F34
|
||||
ldr r5, =gContestResources
|
||||
adds r4, r5, 0
|
||||
_080E6712:
|
||||
ldr r0, [r4]
|
||||
@ -2576,7 +2576,7 @@ _080E676C:
|
||||
ContestEffectFunc_080E6778: @ 80E6778
|
||||
push {lr}
|
||||
ldr r3, =gContestMoves
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -2613,7 +2613,7 @@ ContestEffectFunc_080E67BC: @ 80E67BC
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
movs r4, 0
|
||||
ldr r5, =gUnknown_02039F34
|
||||
ldr r5, =gContestResources
|
||||
movs r6, 0
|
||||
_080E67CC:
|
||||
ldr r3, [r5]
|
||||
@ -2672,14 +2672,14 @@ _080E682E:
|
||||
mov r7, r8
|
||||
cmp r7, 0
|
||||
bne _080E684A
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
movs r1, 0x36
|
||||
bl sub_80DD3F0
|
||||
_080E684A:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -2696,7 +2696,7 @@ _080E684A:
|
||||
thumb_func_start ContestEffectFunc_080E6868
|
||||
ContestEffectFunc_080E6868: @ 80E6868
|
||||
push {r4,lr}
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r1]
|
||||
ldrb r0, [r0, 0x13]
|
||||
@ -2745,7 +2745,7 @@ _080E68C2:
|
||||
movs r1, 0x1E
|
||||
bl sub_80DD3D4
|
||||
_080E68CE:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldrb r2, [r0, 0x11]
|
||||
@ -2764,7 +2764,7 @@ _080E68CE:
|
||||
thumb_func_start ContestEffectFunc_080E68EC
|
||||
ContestEffectFunc_080E68EC: @ 80E68EC
|
||||
push {r4,lr}
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r0, [r4]
|
||||
ldr r2, [r0, 0x10]
|
||||
ldrb r1, [r2, 0x1]
|
||||
@ -2811,7 +2811,7 @@ sub_80E6934: @ 80E6934
|
||||
mov r8, r0
|
||||
movs r7, 0
|
||||
movs r4, 0
|
||||
ldr r6, =gUnknown_02039F34
|
||||
ldr r6, =gContestResources
|
||||
ldr r0, =gContestMoves
|
||||
mov r9, r0
|
||||
movs r5, 0
|
||||
@ -2861,7 +2861,7 @@ _080E699E:
|
||||
ble _080E694E
|
||||
cmp r7, 0
|
||||
bne _080E69B8
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x11]
|
||||
@ -2882,7 +2882,7 @@ sub_80E69C8: @ 80E69C8
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
ldr r2, =gUnknown_02039F34
|
||||
ldr r2, =gContestResources
|
||||
ldr r0, [r2]
|
||||
ldr r0, [r0, 0x8]
|
||||
adds r0, 0xD
|
||||
@ -2945,7 +2945,7 @@ sub_80E6A2C: @ 80E6A2C
|
||||
movs r2, 0x8
|
||||
bl memset
|
||||
movs r7, 0
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r0, [r4]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldrb r0, [r0, 0x8]
|
||||
@ -3040,7 +3040,7 @@ _080E6AD6:
|
||||
strh r0, [r1]
|
||||
_080E6AFE:
|
||||
adds r7, 0x1
|
||||
ldr r4, =gUnknown_02039F34
|
||||
ldr r4, =gContestResources
|
||||
ldr r0, [r4]
|
||||
ldr r0, [r0, 0x8]
|
||||
adds r0, 0x8
|
||||
@ -3081,7 +3081,7 @@ sub_80E6B3C: @ 80E6B3C
|
||||
lsrs r0, 24
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
ldr r2, =gUnknown_02039F34
|
||||
ldr r2, =gContestResources
|
||||
ldr r4, [r2]
|
||||
ldr r3, [r4, 0x4]
|
||||
lsls r2, r0, 3
|
||||
|
@ -657,7 +657,7 @@ _080FCA30:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080FCAB2
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r2, [r0]
|
||||
ldr r0, =gUnknown_02039F25
|
||||
ldrb r0, [r0]
|
||||
@ -688,7 +688,7 @@ _080FCA68:
|
||||
ldrb r0, [r6]
|
||||
cmp r2, r0
|
||||
bge _080FCAA4
|
||||
ldr r1, =gUnknown_02039F34
|
||||
ldr r1, =gContestResources
|
||||
mov r8, r1
|
||||
ldr r4, =gBlockRecvBuffer
|
||||
movs r3, 0
|
||||
@ -955,7 +955,7 @@ _080FCCE8:
|
||||
bne _080FCCF4
|
||||
b _080FCE42
|
||||
_080FCCF4:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x4]
|
||||
movs r1, 0x70
|
||||
@ -968,7 +968,7 @@ _080FCD04:
|
||||
bne _080FCD10
|
||||
b _080FCE42
|
||||
_080FCD10:
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x4]
|
||||
ldr r1, =gUnknown_02039F2B
|
||||
@ -1004,7 +1004,7 @@ _080FCD54:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080FCE42
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
movs r1, 0x14
|
||||
@ -1015,7 +1015,7 @@ _080FCD6C:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080FCE42
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x8]
|
||||
ldr r1, =gUnknown_02039F2B
|
||||
@ -1031,7 +1031,7 @@ _080FCD98:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080FCE42
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x10]
|
||||
b _080FCDD4
|
||||
@ -1041,7 +1041,7 @@ _080FCDB0:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080FCE42
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x10]
|
||||
b _080FCE04
|
||||
|
@ -75,7 +75,7 @@ _080326B8:
|
||||
ldr r0, =gBattleExecBuffer
|
||||
movs r5, 0
|
||||
str r5, [r0]
|
||||
bl sub_80A3934
|
||||
bl ClearBattleAnimationVars
|
||||
bl ClearBattleMonForms
|
||||
movs r0, 0xF
|
||||
bl BattleAI_HandleItemUseBeforeAISetup
|
||||
|
@ -74,7 +74,7 @@ _080A5D00:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A5D28
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r2, [r0, 0x18]
|
||||
ldrb r1, [r2, 0x4]
|
||||
@ -180,7 +180,7 @@ _080A5DDA:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A5E04
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r2, [r0, 0x18]
|
||||
ldrb r1, [r2, 0x4]
|
||||
@ -531,7 +531,7 @@ sub_80A60AC: @ 80A60AC
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A60E8
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r2, [r0, 0x18]
|
||||
ldrb r1, [r2, 0x4]
|
||||
@ -554,7 +554,7 @@ _080A60E8:
|
||||
ldrh r0, [r1, 0x2]
|
||||
cmp r0, 0
|
||||
bne _080A610C
|
||||
ldr r1, =gUnknown_02038438
|
||||
ldr r1, =gAnimSpeciesByBanks
|
||||
lsls r0, r4, 1
|
||||
adds r0, r1
|
||||
ldrh r1, [r0]
|
||||
@ -724,9 +724,9 @@ GetAnimBankSpriteId: @ 80A6240
|
||||
adds r1, r0, 0
|
||||
cmp r0, 0
|
||||
bne _080A6268
|
||||
ldr r4, =gAnimationBankAttacker
|
||||
ldr r4, =gAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A62B6
|
||||
@ -737,9 +737,9 @@ GetAnimBankSpriteId: @ 80A6240
|
||||
_080A6268:
|
||||
cmp r0, 0x1
|
||||
bne _080A6288
|
||||
ldr r4, =gAnimationBankTarget
|
||||
ldr r4, =gAnimBankTarget
|
||||
ldrb r0, [r4]
|
||||
bl sub_80A6A90
|
||||
bl AnimBankSpriteExists
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A62B6
|
||||
@ -750,22 +750,22 @@ _080A6268:
|
||||
_080A6288:
|
||||
cmp r1, 0x2
|
||||
bne _080A62A4
|
||||
ldr r5, =gAnimationBankAttacker
|
||||
ldr r5, =gAnimBankAttacker
|
||||
ldrb r0, [r5]
|
||||
movs r4, 0x2
|
||||
eors r0, r4
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A62B6
|
||||
b _080A62C0
|
||||
.pool
|
||||
_080A62A4:
|
||||
ldr r5, =gAnimationBankTarget
|
||||
ldr r5, =gAnimBankTarget
|
||||
ldrb r0, [r5]
|
||||
movs r4, 0x2
|
||||
eors r0, r4
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A62C0
|
||||
@ -1242,7 +1242,7 @@ sub_80A65EC: @ 80A65EC
|
||||
ldrh r1, [r4, 0x22]
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x34]
|
||||
ldr r5, =gAnimationBankTarget
|
||||
ldr r5, =gAnimBankTarget
|
||||
ldrb r0, [r5]
|
||||
movs r1, 0x2
|
||||
bl sub_80A5C6C
|
||||
@ -1421,7 +1421,7 @@ move_anim_8074EE0: @ 80A674C
|
||||
adds r4, r0, 0
|
||||
bl FreeSpriteOamMatrix
|
||||
adds r0, r4, 0
|
||||
bl move_anim_8072740
|
||||
bl DestroyAnimSprite
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -1439,7 +1439,7 @@ sub_80A6760: @ 80A6760
|
||||
ldrh r1, [r4, 0x22]
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x34]
|
||||
ldr r5, =gAnimationBankAttacker
|
||||
ldr r5, =gAnimBankAttacker
|
||||
ldrb r0, [r5]
|
||||
movs r1, 0x2
|
||||
bl sub_80A5C6C
|
||||
@ -1518,7 +1518,7 @@ sub_80A67F4: @ 80A67F4
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
adds r0, r4, 0
|
||||
bl move_anim_8072740
|
||||
bl DestroyAnimSprite
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -1537,7 +1537,7 @@ sub_80A6814: @ 80A6814
|
||||
movs r1, 0
|
||||
bl SetGpuReg
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -1547,7 +1547,7 @@ sub_80A6814: @ 80A6814
|
||||
sub_80A6838: @ 80A6838
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
ldr r4, =gAnimationBankAttacker
|
||||
ldr r4, =gAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl sub_80A5C6C
|
||||
@ -1575,13 +1575,13 @@ sub_80A6864: @ 80A6864
|
||||
lsls r1, 16
|
||||
lsrs r5, r1, 16
|
||||
mov r8, r5
|
||||
ldr r7, =gAnimationBankAttacker
|
||||
ldr r7, =gAnimBankAttacker
|
||||
ldrb r0, [r7]
|
||||
movs r1, 0
|
||||
bl sub_80A5C6C
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
movs r1, 0
|
||||
bl sub_80A5C6C
|
||||
@ -1729,7 +1729,7 @@ sub_80A6980: @ 80A6980
|
||||
lsls r1, 24
|
||||
cmp r1, 0
|
||||
bne _080A69A8
|
||||
ldr r4, =gAnimationBankTarget
|
||||
ldr r4, =gAnimBankTarget
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0
|
||||
bl sub_80A60AC
|
||||
@ -1765,7 +1765,7 @@ sub_80A69CC: @ 80A69CC
|
||||
lsls r1, 24
|
||||
cmp r1, 0
|
||||
bne _080A69F0
|
||||
ldr r4, =gAnimationBankAttacker
|
||||
ldr r4, =gAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0
|
||||
bl sub_80A60AC
|
||||
@ -1777,7 +1777,7 @@ sub_80A69CC: @ 80A69CC
|
||||
b _080A6A04
|
||||
.pool
|
||||
_080A69F0:
|
||||
ldr r4, =gAnimationBankAttacker
|
||||
ldr r4, =gAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl sub_80A60AC
|
||||
@ -1862,8 +1862,8 @@ _080A6A7E:
|
||||
.pool
|
||||
thumb_func_end GetBankByIdentity
|
||||
|
||||
thumb_func_start sub_80A6A90
|
||||
sub_80A6A90: @ 80A6A90
|
||||
thumb_func_start AnimBankSpriteExists
|
||||
AnimBankSpriteExists: @ 80A6A90
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
@ -1872,11 +1872,11 @@ sub_80A6A90: @ 80A6A90
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A6ABC
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
cmp r0, r4
|
||||
beq _080A6B0A
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
cmp r0, r4
|
||||
beq _080A6B0A
|
||||
@ -1926,7 +1926,7 @@ _080A6B1A:
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_80A6A90
|
||||
thumb_func_end AnimBankSpriteExists
|
||||
|
||||
thumb_func_start IsDoubleBattle
|
||||
IsDoubleBattle: @ 80A6B20
|
||||
@ -2061,7 +2061,7 @@ sub_80A6BFC: @ 80A6BFC
|
||||
b _080A6C60
|
||||
.pool
|
||||
_080A6C30:
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankIdentity_permutated
|
||||
lsls r0, 24
|
||||
@ -2271,21 +2271,21 @@ _080A6DBE:
|
||||
movs r0, 0x3
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
movs r0, 0x3
|
||||
movs r1, 0x1
|
||||
movs r2, 0x1
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
b _080A6DE8
|
||||
_080A6DD4:
|
||||
movs r0, 0x3
|
||||
movs r1, 0
|
||||
movs r2, 0x1
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
movs r0, 0x3
|
||||
movs r1, 0x1
|
||||
movs r2, 0
|
||||
bl lcd_bg_operations
|
||||
bl SetAnimBgAttribute
|
||||
_080A6DE8:
|
||||
pop {r0}
|
||||
bx r0
|
||||
@ -2934,7 +2934,7 @@ sub_80A7270: @ 80A7270
|
||||
cmp r0, 0
|
||||
bne _080A72A6
|
||||
adds r0, r7, 0
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A72B4
|
||||
@ -3372,7 +3372,7 @@ _080A75F6:
|
||||
_080A7602:
|
||||
cmp r7, 0
|
||||
beq _080A7614
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r1, r0, 0
|
||||
adds r1, 0x10
|
||||
@ -3383,7 +3383,7 @@ _080A7614:
|
||||
mov r0, r8
|
||||
cmp r0, 0
|
||||
beq _080A7628
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
adds r1, r0, 0
|
||||
adds r1, 0x10
|
||||
@ -3394,11 +3394,11 @@ _080A7628:
|
||||
mov r0, r9
|
||||
cmp r0, 0
|
||||
beq _080A764E
|
||||
ldr r6, =gAnimationBankAttacker
|
||||
ldr r6, =gAnimBankAttacker
|
||||
ldrb r0, [r6]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A764E
|
||||
@ -3413,11 +3413,11 @@ _080A764E:
|
||||
mov r0, r10
|
||||
cmp r0, 0
|
||||
beq _080A7674
|
||||
ldr r6, =gAnimationBankTarget
|
||||
ldr r6, =gAnimBankTarget
|
||||
ldrb r0, [r6]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A7674
|
||||
@ -3499,7 +3499,7 @@ _080A76F2:
|
||||
bl GetBankByIdentity
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A771A
|
||||
@ -3517,7 +3517,7 @@ _080A771A:
|
||||
bl GetBankByIdentity
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A7746
|
||||
@ -3537,7 +3537,7 @@ _080A7746:
|
||||
bl GetBankByIdentity
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A7772
|
||||
@ -3558,7 +3558,7 @@ _080A7772:
|
||||
bl GetBankByIdentity
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A77A0
|
||||
@ -3670,7 +3670,7 @@ _080A7838:
|
||||
_080A7842:
|
||||
adds r0, r5, 0
|
||||
bl sub_80A69CC
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -3682,7 +3682,7 @@ _080A7842:
|
||||
_080A785C:
|
||||
ldrh r0, [r6, 0x8]
|
||||
strh r0, [r5, 0x2E]
|
||||
ldr r4, =gAnimationBankTarget
|
||||
ldr r4, =gAnimBankTarget
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl sub_80A5C6C
|
||||
@ -3701,7 +3701,7 @@ _080A785C:
|
||||
strh r0, [r5, 0x36]
|
||||
ldr r0, =sub_80A6EEC
|
||||
str r0, [r5, 0x1C]
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
adds r0, r5, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
pop {r4-r7}
|
||||
@ -3716,7 +3716,7 @@ sub_80A78AC: @ 80A78AC
|
||||
adds r6, r0, 0
|
||||
movs r1, 0x1
|
||||
bl sub_80A69CC
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -3730,7 +3730,7 @@ _080A78CC:
|
||||
ldr r4, =gBattleAnimArgs
|
||||
ldrh r0, [r4, 0x8]
|
||||
strh r0, [r6, 0x2E]
|
||||
ldr r5, =gAnimationBankTarget
|
||||
ldr r5, =gAnimBankTarget
|
||||
ldrb r0, [r5]
|
||||
movs r1, 0x2
|
||||
bl sub_80A5C6C
|
||||
@ -3768,7 +3768,7 @@ sub_80A791C: @ 80A791C
|
||||
cmp r0, 0
|
||||
beq _080A7930
|
||||
adds r0, r4, 0
|
||||
bl move_anim_8072740
|
||||
bl DestroyAnimSprite
|
||||
_080A7930:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
@ -3799,17 +3799,17 @@ _080A7954:
|
||||
adds r0, r5, 0
|
||||
adds r1, r4, 0
|
||||
bl sub_80A69CC
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
b _080A7976
|
||||
.pool
|
||||
_080A796C:
|
||||
adds r0, r5, 0
|
||||
adds r1, r4, 0
|
||||
bl sub_80A6980
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
_080A7976:
|
||||
ldrb r6, [r0]
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -3844,7 +3844,7 @@ _080A798E:
|
||||
strh r0, [r5, 0x36]
|
||||
ldr r0, =sub_80A6EEC
|
||||
str r0, [r5, 0x1C]
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
adds r0, r5, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
pop {r4-r7}
|
||||
@ -4070,7 +4070,7 @@ _080A7B60:
|
||||
cmp r1, r0
|
||||
bne _080A7B90
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080A7B90:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -4090,7 +4090,7 @@ sub_80A7B98: @ 80A7B98
|
||||
cmp r3, 0xFF
|
||||
bne _080A7BBC
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080A7BE2
|
||||
.pool
|
||||
_080A7BBC:
|
||||
@ -4210,7 +4210,7 @@ _080A7C78:
|
||||
b _080A7CAC
|
||||
_080A7CA6:
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080A7CAC:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -4230,7 +4230,7 @@ sub_80A7CB4: @ 80A7CB4
|
||||
cmp r2, 0xFF
|
||||
bne _080A7CD8
|
||||
adds r0, r4, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
b _080A7CEE
|
||||
.pool
|
||||
_080A7CD8:
|
||||
@ -4554,7 +4554,7 @@ _080A7F42:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A7F78
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, 0x18]
|
||||
ldrh r2, [r0]
|
||||
@ -4807,7 +4807,7 @@ sub_80A8140: @ 80A8140
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r0, =gHappinessMoveAnim
|
||||
ldr r0, =gAnimFriendship
|
||||
ldrb r0, [r0]
|
||||
movs r1, 0
|
||||
cmp r0, 0x1E
|
||||
@ -4823,7 +4823,7 @@ _080A815E:
|
||||
ldr r0, =gBattleAnimArgs
|
||||
strh r1, [r0, 0xE]
|
||||
adds r0, r2, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.pool
|
||||
@ -4837,9 +4837,9 @@ sub_80A8174: @ 80A8174
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r7, r4, 0
|
||||
ldr r6, =gAnimationBankTarget
|
||||
ldr r6, =gAnimBankTarget
|
||||
ldrb r0, [r6]
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A81B4
|
||||
@ -4863,10 +4863,10 @@ sub_80A8174: @ 80A8174
|
||||
orrs r0, r2
|
||||
strb r0, [r1, 0x5]
|
||||
_080A81B4:
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
mov r8, r0
|
||||
ldrb r0, [r0]
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A81EC
|
||||
@ -4894,7 +4894,7 @@ _080A81EC:
|
||||
ldrb r0, [r6]
|
||||
movs r5, 0x2
|
||||
eors r0, r5
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A8224
|
||||
@ -4922,7 +4922,7 @@ _080A8224:
|
||||
mov r1, r8
|
||||
ldrb r0, [r1]
|
||||
eors r0, r5
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A825C
|
||||
@ -4968,7 +4968,7 @@ _080A8286:
|
||||
lsls r0, r5, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r0, r4, 0
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A82C8
|
||||
@ -5416,7 +5416,7 @@ sub_80A861C: @ 80A861C
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080A86C4
|
||||
ldr r0, =gUnknown_02039F34
|
||||
ldr r0, =gContestResources
|
||||
ldr r0, [r0]
|
||||
ldr r2, [r0, 0x18]
|
||||
ldrb r1, [r2, 0x4]
|
||||
@ -5941,7 +5941,7 @@ sub_80A8A6C: @ 80A8A6C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_80A6838
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -5998,7 +5998,7 @@ _080A8AB6:
|
||||
sub_80A8AEC: @ 80A8AEC
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -6054,7 +6054,7 @@ sub_80A8B64: @ 80A8B64
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_80A6838
|
||||
ldr r0, =gAnimationBankAttacker
|
||||
ldr r0, =gAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -6081,7 +6081,7 @@ _080A8B9C:
|
||||
strh r0, [r4, 0x22]
|
||||
ldr r0, =sub_80A67D8
|
||||
str r0, [r4, 0x1C]
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
adds r0, r4, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
pop {r4}
|
||||
@ -6106,7 +6106,7 @@ sub_80A8BC4: @ 80A8BC4
|
||||
lsrs r0, 24
|
||||
movs r6, 0
|
||||
strh r0, [r5, 0x8]
|
||||
ldr r7, =gAnimationBankAttacker
|
||||
ldr r7, =gAnimBankAttacker
|
||||
ldrb r0, [r7]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -6283,7 +6283,7 @@ _080A8D58:
|
||||
ldr r0, =0x00002771
|
||||
bl FreeSpritePaletteByTag
|
||||
adds r0, r5, 0
|
||||
bl move_anim_task_del
|
||||
bl DestroyAnimVisualTask
|
||||
_080A8D6C:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -6389,7 +6389,7 @@ _080A8E26:
|
||||
sub_80A8E30: @ 80A8E30
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
ldr r4, =gAnimationBankAttacker
|
||||
ldr r4, =gAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl sub_80A5C6C
|
||||
@ -6465,7 +6465,7 @@ _080A8EC4:
|
||||
cmp r0, r1
|
||||
bge _080A8EDC
|
||||
adds r0, r4, 0
|
||||
bl move_anim_8072740
|
||||
bl DestroyAnimSprite
|
||||
_080A8EDC:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
@ -6487,7 +6487,7 @@ sub_80A8EE4: @ 80A8EE4
|
||||
ldrh r1, [r4, 0x22]
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x36]
|
||||
ldr r0, =gAnimationBankTarget
|
||||
ldr r0, =gAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@ -6514,7 +6514,7 @@ _080A8F32:
|
||||
strh r0, [r4, 0x22]
|
||||
ldr r0, =sub_80A6EEC
|
||||
str r0, [r4, 0x1C]
|
||||
ldr r1, =move_anim_8072740
|
||||
ldr r1, =DestroyAnimSprite
|
||||
adds r0, r4, 0
|
||||
bl StoreSpriteCallbackInData6
|
||||
pop {r4,r5}
|
||||
|
@ -6,7 +6,7 @@
|
||||
gUnknown_082C8D64:: @ 82C8D64
|
||||
.incbin "baserom.gba", 0x2c8d64, 0x8
|
||||
|
||||
gUnknown_082C8D6C:: @ 82C8D6C
|
||||
gBattleAnims_Moves:: @ 82C8D6C
|
||||
.incbin "baserom.gba", 0x2c8d6c, 0x590
|
||||
|
||||
gUnknown_082C92FC:: @ 82C92FC
|
||||
|
@ -294,7 +294,7 @@ gUnknown_08524B3C:: @ 8524B3C
|
||||
.byte 0x00, 0x87, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
|
||||
|
||||
.align 2
|
||||
gUnknown_08524B44:: @ 8524B44
|
||||
gBattleAnimPicTable:: @ 8524B44
|
||||
obj_tiles 0x08c02538, 0x0200, 0x2710
|
||||
obj_tiles 0x08c1c6e0, 0x0300, 0x2711
|
||||
obj_tiles 0x08c20784, 0x0200, 0x2712
|
||||
@ -597,6 +597,8 @@ gUnknown_085253AC:: @ 85253AC
|
||||
obj_tiles 0x08c0a3ec, 0x1000, 0x282f
|
||||
obj_tiles 0x08c1bee4, 0x0100, 0x2830
|
||||
|
||||
.align 2
|
||||
gBattleAnimPaletteTable:: @ 852544C
|
||||
obj_pal 0x08c028cc, 0x2710
|
||||
obj_pal 0x08c1c794, 0x2711
|
||||
obj_pal 0x08c20868, 0x2712
|
||||
@ -930,18 +932,18 @@ gUnknown_08525D54:: @ 8525D54
|
||||
.4byte 0x08c25bec, 0x08d91074, 0x08c27324
|
||||
|
||||
.align 2
|
||||
gUnknown_08525E98:: @ 8525E98
|
||||
.4byte ma00_load_graphics
|
||||
.4byte ma01_080728D0
|
||||
.4byte ma02_instanciate_template
|
||||
.4byte sub_80A3ECC
|
||||
.4byte ma04_wait_countdown
|
||||
.4byte sub_80A3F88
|
||||
.4byte nullsub_6
|
||||
.4byte nullsub_7
|
||||
.4byte sub_80A3FC4
|
||||
.4byte ma09_play_sound
|
||||
.4byte sub_80A41D8
|
||||
sScriptCmdTable:: @ 8525E98
|
||||
.4byte ScriptCmd_loadspritegfx
|
||||
.4byte ScriptCmd_unloadspritegfx
|
||||
.4byte ScriptCmd_createsprite
|
||||
.4byte ScriptCmd_createvisualtask
|
||||
.4byte ScriptCmd_delay
|
||||
.4byte ScriptCmd_waitforvisualfinish
|
||||
.4byte ScriptCmd_hang1
|
||||
.4byte ScriptCmd_hang2
|
||||
.4byte ScriptCmd_end
|
||||
.4byte ScriptCmd_playse
|
||||
.4byte ScriptCmd_monbg
|
||||
.4byte ma0B_0807324C
|
||||
.4byte ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument
|
||||
.4byte ma0D_reset_BLDCNT_and_BLDALPHA
|
||||
|
48
include/battle_anim.h
Normal file
48
include/battle_anim.h
Normal file
@ -0,0 +1,48 @@
|
||||
#ifndef GUARD_BATTLE_ANIM_H
|
||||
#define GUARD_BATTLE_ANIM_H
|
||||
|
||||
enum
|
||||
{
|
||||
ANIM_BANK_ATTACKER,
|
||||
ANIM_BANK_TARGET,
|
||||
ANIM_BANK_ATK_PARTNER,
|
||||
ANIM_BANK_DEF_PARTNER,
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
BG_ANIM_SCREEN_SIZE,
|
||||
BG_ANIM_AREA_OVERFLOW_MODE,
|
||||
BG_ANIM2,
|
||||
BG_ANIM3,
|
||||
BG_ANIM_PRIORITY,
|
||||
BG_ANIM_5,
|
||||
BG_ANIM_6
|
||||
};
|
||||
|
||||
struct UnknownAnimStruct2
|
||||
{
|
||||
void *unk0;
|
||||
u16 *unk4;
|
||||
u8 unk8;
|
||||
u8 unk9;
|
||||
u16 unkA;
|
||||
u16 unkC;
|
||||
};
|
||||
|
||||
void ClearBattleAnimationVars(void);
|
||||
void DoMoveAnim(u16 move);
|
||||
void DoBattleAnim(const u8 *const animsTable[], u16 tableId, bool8 isMoveAnim);
|
||||
void DestroyAnimSprite(struct Sprite *sprite);
|
||||
void DestroyAnimVisualTask(u8 taskId);
|
||||
void DestroyAnimSoundTask(u8 taskId);
|
||||
bool8 IsAnimBankSpriteVisible(u8 bank);
|
||||
void sub_80A438C(u8 bank, bool8 toBG_2, bool8 setSpriteInvisible);
|
||||
|
||||
bool8 IsContest(void);
|
||||
|
||||
// battle_anim_80FE840.s
|
||||
void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value);
|
||||
void sub_8118FBC(u8 arg0, u8 arg1, u8 arg2, u8 bankIdentity, u8 arg4, void *arg5, u16 *arg6, u16 arg7);
|
||||
|
||||
#endif // GUARD_BATTLE_ANIM_H
|
@ -24,5 +24,6 @@ void SetHealthboxSpriteVisible(u8 healthboxSpriteId);
|
||||
void SetHealthboxSpriteInvisible(u8 healthboxSpriteId);
|
||||
void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elementId);
|
||||
void nullsub_30(u8 healthboxSpriteId, bool8 isDoubleBattleBankOnly);
|
||||
void sub_8072A88(u8 arg0);
|
||||
|
||||
#endif // GUARD_BATTLE_INTERFACE_H
|
||||
|
@ -1,7 +1,8 @@
|
||||
#ifndef GUARD_CONTEST_H
|
||||
#define GUARD_CONTEST_H
|
||||
|
||||
struct ContestStruct_02039E00 {
|
||||
struct ContestStruct_02039E00
|
||||
{
|
||||
u16 unk_00;
|
||||
u8 unk_02[11];
|
||||
u8 unk_0d[8];
|
||||
@ -11,8 +12,29 @@ struct ContestStruct_02039E00 {
|
||||
|
||||
extern struct ContestStruct_02039E00 gUnknown_02039E00[4];
|
||||
extern u8 gUnknown_02039F24;
|
||||
extern EWRAM_DATA u16 gScriptContestCategory;
|
||||
extern EWRAM_DATA u8 gUnknown_02039F2E;
|
||||
extern EWRAM_DATA u8 gUnknown_02039F30;
|
||||
extern u16 gScriptContestCategory;
|
||||
extern u8 gUnknown_02039F2E;
|
||||
extern u8 gUnknown_02039F30;
|
||||
|
||||
struct ContestStruct_field_18
|
||||
{
|
||||
// unknown size
|
||||
u16 field_0;
|
||||
};
|
||||
|
||||
struct ContestResources
|
||||
{
|
||||
void *field_0;
|
||||
void *field_4;
|
||||
void *field_8;
|
||||
void *field_C;
|
||||
void *field_10;
|
||||
void *field_14;
|
||||
struct ContestStruct_field_18 *field_18;
|
||||
};
|
||||
|
||||
extern struct ContestResources *gContestResources;
|
||||
|
||||
bool8 IsSpeciesNotUnown(u16 species);
|
||||
|
||||
#endif //GUARD_CONTEST_H
|
||||
|
@ -8,7 +8,7 @@ void LZDecompressVram(const void *src, void *dest);
|
||||
|
||||
u16 LoadCompressedObjectPic(const struct CompressedSpriteSheet *src);
|
||||
void LoadCompressedObjectPicOverrideBuffer(const struct CompressedSpriteSheet *src, void *buffer);
|
||||
bool8 LoadCompressedObjectPicUsingHeap(struct CompressedSpriteSheet* src);
|
||||
bool8 LoadCompressedObjectPicUsingHeap(const struct CompressedSpriteSheet* src);
|
||||
|
||||
void LoadCompressedObjectPalette(const struct CompressedSpritePalette *src);
|
||||
void LoadCompressedObjectPaletteOverrideBuffer(const struct CompressedSpritePalette *a, void *buffer);
|
||||
|
@ -251,7 +251,7 @@ void BuildOamBuffer(void);
|
||||
u8 CreateSprite(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
|
||||
u8 CreateSpriteAtEnd(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
|
||||
u8 CreateInvisibleSprite(void (*callback)(struct Sprite *));
|
||||
u8 CreateSpriteAndAnimate(struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
|
||||
u8 CreateSpriteAndAnimate(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority);
|
||||
void DestroySprite(struct Sprite *sprite);
|
||||
void ResetOamRange(u8 a, u8 b);
|
||||
void LoadOam(void);
|
||||
|
@ -113,6 +113,7 @@ SECTIONS {
|
||||
src/tileset_anims.o(.text);
|
||||
src/palette.o(.text);
|
||||
src/sound.o(.text);
|
||||
src/battle_anim.o(.text);
|
||||
asm/battle_anim.o(.text);
|
||||
asm/rom_80A5C6C.o(.text);
|
||||
src/task.o(.text);
|
||||
|
650
src/battle_anim.c
Normal file
650
src/battle_anim.c
Normal file
@ -0,0 +1,650 @@
|
||||
#include "global.h"
|
||||
#include "battle.h"
|
||||
#include "battle_anim.h"
|
||||
#include "sprite.h"
|
||||
#include "contest.h"
|
||||
#include "m4a.h"
|
||||
#include "pokemon.h"
|
||||
#include "battle_interface.h"
|
||||
#include "task.h"
|
||||
#include "decompress.h"
|
||||
#include "sound.h"
|
||||
#include "dma3.h"
|
||||
#include "bg.h"
|
||||
#include "gpu_regs.h"
|
||||
#include "palette.h"
|
||||
|
||||
// sprites start at 10000 and thus must be subtracted of 10000 to account for the true index.
|
||||
#define GET_TRUE_SPRITE_INDEX(i) ((i - 10000))
|
||||
#define SCRIPT_READ_32(ptr) ((ptr)[0] | (ptr)[1] << 8 | (ptr)[2] << 16 | (ptr)[3] << 24)
|
||||
#define SCRIPT_READ_32_(ptr) (((ptr)[0]) + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24))
|
||||
#define SCRIPT_READ_16(ptr) ((ptr)[0] | ((ptr)[1] << 8))
|
||||
#define SCRIPT_READ_16_(ptr) ((ptr)[0] + ((ptr)[1] << 8))
|
||||
|
||||
#define ANIM_SPRITE_INDEX_COUNT 8
|
||||
#define ANIM_ARGS_COUNT 8
|
||||
|
||||
extern u8 gBankAttacker;
|
||||
extern u8 gBankTarget;
|
||||
extern u16 gBattle_WIN0H;
|
||||
extern u16 gBattle_WIN0V;
|
||||
extern u16 gBattle_WIN1H;
|
||||
extern u16 gBattle_WIN1V;
|
||||
extern u16 gBattle_BG1_X;
|
||||
extern u16 gBattle_BG1_Y;
|
||||
extern u16 gBattle_BG2_X;
|
||||
extern u16 gBattle_BG2_Y;
|
||||
extern u16 gBattlePartyID[BATTLE_BANKS_COUNT];
|
||||
extern u8 gBankSpriteIds[BATTLE_BANKS_COUNT];
|
||||
extern struct MusicPlayerInfo gMPlay_BGM;
|
||||
extern struct MusicPlayerInfo gMPlay_SE1;
|
||||
extern struct MusicPlayerInfo gMPlay_SE2;
|
||||
|
||||
EWRAM_DATA const u8 *gBattleAnimScriptPtr = NULL;
|
||||
EWRAM_DATA const u8 *gBattleAnimScriptRetAddr = NULL;
|
||||
EWRAM_DATA void (*gAnimScriptCallback)(void) = NULL;
|
||||
EWRAM_DATA s8 gAnimFramesToWait = 0;
|
||||
EWRAM_DATA bool8 gAnimScriptActive = FALSE;
|
||||
EWRAM_DATA u8 gAnimVisualTaskCount = 0;
|
||||
EWRAM_DATA u8 gAnimSoundTaskCount = 0;
|
||||
EWRAM_DATA struct DisableStruct *gAnimDisableStructPtr = NULL;
|
||||
EWRAM_DATA u32 gAnimMoveDmg = 0;
|
||||
EWRAM_DATA u16 gAnimMovePower = 0;
|
||||
EWRAM_DATA u16 gAnimSpriteIndexArray[ANIM_SPRITE_INDEX_COUNT] = {0};
|
||||
EWRAM_DATA u8 gAnimFriendship = 0;
|
||||
EWRAM_DATA u16 gWeatherMoveAnim = 0;
|
||||
EWRAM_DATA s16 gBattleAnimArgs[ANIM_ARGS_COUNT] = {0};
|
||||
EWRAM_DATA u16 gSoundAnimFramesToWait = 0;
|
||||
EWRAM_DATA u8 gMonAnimTaskIdArray[2] = {0};
|
||||
EWRAM_DATA u8 gUnknown_02038432 = 0;
|
||||
EWRAM_DATA u8 gUnknown_02038433 = 0;
|
||||
EWRAM_DATA u16 gAnimMoveIndex = 0; // set but unused.
|
||||
EWRAM_DATA u8 gAnimBankAttacker = 0;
|
||||
EWRAM_DATA u8 gAnimBankTarget = 0;
|
||||
EWRAM_DATA u16 gAnimSpeciesByBanks[BATTLE_BANKS_COUNT] = {0};
|
||||
EWRAM_DATA u8 gUnknown_02038440 = 0;
|
||||
|
||||
extern void (* const sScriptCmdTable[])(void);
|
||||
extern const u16 gUnknown_082C8D64[];
|
||||
extern const u8 * const gBattleAnims_Moves[];
|
||||
extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
|
||||
extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
|
||||
|
||||
extern void sub_80A8278(void); // rom_80A5C6C.s
|
||||
extern void sub_80A6B30(struct UnknownAnimStruct2*); // rom_80A5C6C.s
|
||||
extern void sub_80A6B90(struct UnknownAnimStruct2*, u32 arg1); // rom_80A5C6C.s
|
||||
extern u8 sub_80A82E4(u8 bank); // rom_80A5C6C.s
|
||||
extern u8 sub_80A5C6C(u8 bank, u8 attributeId); // rom_80A5C6C.s
|
||||
extern bool8 AnimBankSpriteExists(u8 bank); // rom_80A5C6C.s
|
||||
|
||||
// this file's functions
|
||||
void RunAnimScriptCommand(void);
|
||||
void task_pA_ma0A_obj_to_bg_pal(u8 taskId);
|
||||
void sub_80A46A0(void);
|
||||
|
||||
void ClearBattleAnimationVars(void)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
gAnimFramesToWait = 0;
|
||||
gAnimScriptActive = FALSE;
|
||||
gAnimVisualTaskCount = 0;
|
||||
gAnimSoundTaskCount = 0;
|
||||
gAnimDisableStructPtr = NULL;
|
||||
gAnimMoveDmg = 0;
|
||||
gAnimMovePower = 0;
|
||||
gAnimFriendship = 0;
|
||||
|
||||
// clear index array.
|
||||
for (i = 0; i < ANIM_SPRITE_INDEX_COUNT; i++)
|
||||
gAnimSpriteIndexArray[i] |= 0xFFFF;
|
||||
|
||||
// clear anim args.
|
||||
for (i = 0; i < ANIM_ARGS_COUNT; i++)
|
||||
gBattleAnimArgs[i] = 0;
|
||||
|
||||
gMonAnimTaskIdArray[0] = 0xFF;
|
||||
gMonAnimTaskIdArray[1] = 0xFF;
|
||||
gUnknown_02038432 = 0;
|
||||
gUnknown_02038433 = 0;
|
||||
gAnimMoveIndex = 0;
|
||||
gAnimBankAttacker = 0;
|
||||
gAnimBankTarget = 0;
|
||||
gUnknown_02038440 = 0;
|
||||
}
|
||||
|
||||
void DoMoveAnim(u16 move)
|
||||
{
|
||||
gAnimBankAttacker = gBankAttacker;
|
||||
gAnimBankTarget = gBankTarget;
|
||||
DoBattleAnim(gBattleAnims_Moves, move, TRUE);
|
||||
}
|
||||
|
||||
void DoBattleAnim(const u8 *const animsTable[], u16 tableId, bool8 isMoveAnim)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
if (!IsContest())
|
||||
{
|
||||
sub_80A8278();
|
||||
sub_8072A88(0);
|
||||
for (i = 0; i < BATTLE_BANKS_COUNT; i++)
|
||||
{
|
||||
if (GetBankSide(i) != 0)
|
||||
gAnimSpeciesByBanks[i] = GetMonData(&gEnemyParty[gBattlePartyID[i]], MON_DATA_SPECIES);
|
||||
else
|
||||
gAnimSpeciesByBanks[i] = GetMonData(&gPlayerParty[gBattlePartyID[i]], MON_DATA_SPECIES);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
gAnimSpeciesByBanks[i] = gContestResources->field_18->field_0;
|
||||
}
|
||||
|
||||
if (!isMoveAnim)
|
||||
gAnimMoveIndex = 0;
|
||||
else
|
||||
gAnimMoveIndex = tableId;
|
||||
|
||||
for (i = 0; i < ANIM_ARGS_COUNT; i++)
|
||||
gBattleAnimArgs[i] = 0;
|
||||
|
||||
gMonAnimTaskIdArray[0] = 0xFF;
|
||||
gMonAnimTaskIdArray[1] = 0xFF;
|
||||
gBattleAnimScriptPtr = animsTable[tableId];
|
||||
gAnimScriptActive = TRUE;
|
||||
gAnimFramesToWait = 0;
|
||||
gAnimScriptCallback = RunAnimScriptCommand;
|
||||
|
||||
for (i = 0; i < ANIM_SPRITE_INDEX_COUNT; i++)
|
||||
gAnimSpriteIndexArray[i] |= 0xFFFF;
|
||||
|
||||
if (isMoveAnim)
|
||||
{
|
||||
for (i = 0; gUnknown_082C8D64[i] != 0xFFFF; i++)
|
||||
{
|
||||
if (tableId == gUnknown_082C8D64[i])
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 128);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
gBattle_WIN0H = 0;
|
||||
gBattle_WIN0V = 0;
|
||||
gBattle_WIN1H = 0;
|
||||
gBattle_WIN1V = 0;
|
||||
}
|
||||
|
||||
void DestroyAnimSprite(struct Sprite *sprite)
|
||||
{
|
||||
FreeSpriteOamMatrix(sprite);
|
||||
DestroySprite(sprite);
|
||||
gAnimVisualTaskCount--;
|
||||
}
|
||||
|
||||
void DestroyAnimVisualTask(u8 taskId)
|
||||
{
|
||||
DestroyTask(taskId);
|
||||
gAnimVisualTaskCount--;
|
||||
}
|
||||
|
||||
void DestroyAnimSoundTask(u8 taskId)
|
||||
{
|
||||
DestroyTask(taskId);
|
||||
gAnimSoundTaskCount--;
|
||||
}
|
||||
|
||||
/*static*/ void AddSpriteIndex(u16 index)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < ANIM_SPRITE_INDEX_COUNT; i++)
|
||||
{
|
||||
if (gAnimSpriteIndexArray[i] == 0xFFFF)
|
||||
{
|
||||
gAnimSpriteIndexArray[i] = index;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*static*/ void ClearSpriteIndex(u16 index)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < ANIM_SPRITE_INDEX_COUNT; i++)
|
||||
{
|
||||
if (gAnimSpriteIndexArray[i] == index)
|
||||
{
|
||||
gAnimSpriteIndexArray[i] |= 0xFFFF;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*static*/ void WaitAnimFrameCount(void)
|
||||
{
|
||||
if (gAnimFramesToWait <= 0)
|
||||
{
|
||||
gAnimScriptCallback = RunAnimScriptCommand;
|
||||
gAnimFramesToWait = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
gAnimFramesToWait--;
|
||||
}
|
||||
}
|
||||
|
||||
/*static*/ void RunAnimScriptCommand(void)
|
||||
{
|
||||
do
|
||||
{
|
||||
sScriptCmdTable[gBattleAnimScriptPtr[0]]();
|
||||
} while (gAnimFramesToWait == 0 && gAnimScriptActive);
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_loadspritegfx(void)
|
||||
{
|
||||
u16 index;
|
||||
|
||||
gBattleAnimScriptPtr++;
|
||||
index = SCRIPT_READ_16(gBattleAnimScriptPtr);
|
||||
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)]);
|
||||
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(index)]);
|
||||
gBattleAnimScriptPtr += 2;
|
||||
AddSpriteIndex(GET_TRUE_SPRITE_INDEX(index));
|
||||
gAnimFramesToWait = 1;
|
||||
gAnimScriptCallback = WaitAnimFrameCount;
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_unloadspritegfx(void)
|
||||
{
|
||||
u16 index;
|
||||
|
||||
gBattleAnimScriptPtr++;
|
||||
index = SCRIPT_READ_16(gBattleAnimScriptPtr);
|
||||
FreeSpriteTilesByTag(gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)].tag);
|
||||
FreeSpritePaletteByTag(gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(index)].tag);
|
||||
gBattleAnimScriptPtr += 2;
|
||||
ClearSpriteIndex(GET_TRUE_SPRITE_INDEX(index));
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_createsprite(void)
|
||||
{
|
||||
s32 i;
|
||||
const struct SpriteTemplate *template;
|
||||
u8 argVar;
|
||||
u8 argsCount;
|
||||
s16 subpriority;
|
||||
|
||||
gBattleAnimScriptPtr++;
|
||||
template = (const struct SpriteTemplate *)(SCRIPT_READ_32_(gBattleAnimScriptPtr));
|
||||
gBattleAnimScriptPtr += 4;
|
||||
|
||||
argVar = gBattleAnimScriptPtr[0];
|
||||
gBattleAnimScriptPtr++;
|
||||
|
||||
argsCount = gBattleAnimScriptPtr[0];
|
||||
gBattleAnimScriptPtr++;
|
||||
for (i = 0; i < argsCount; i++)
|
||||
{
|
||||
gBattleAnimArgs[i] = SCRIPT_READ_16(gBattleAnimScriptPtr);
|
||||
gBattleAnimScriptPtr += 2;
|
||||
}
|
||||
|
||||
if (argVar & 0x80)
|
||||
{
|
||||
argVar ^= 0x80;
|
||||
if (argVar >= 0x40)
|
||||
argVar -= 0x40;
|
||||
else
|
||||
argVar *= -1;
|
||||
|
||||
subpriority = sub_80A82E4(gAnimBankTarget) + (s8)(argVar);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (argVar >= 0x40)
|
||||
argVar -= 0x40;
|
||||
else
|
||||
argVar *= -1;
|
||||
|
||||
subpriority = sub_80A82E4(gAnimBankAttacker) + (s8)(argVar);
|
||||
}
|
||||
|
||||
if (subpriority < 3)
|
||||
subpriority = 3;
|
||||
|
||||
CreateSpriteAndAnimate(template, sub_80A5C6C(gAnimBankTarget, 2), sub_80A5C6C(gAnimBankTarget, 3), subpriority);
|
||||
gAnimVisualTaskCount++;
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_createvisualtask(void)
|
||||
{
|
||||
TaskFunc taskFunc;
|
||||
u8 taskPriority;
|
||||
u8 taskId;
|
||||
u8 numArgs;
|
||||
s32 i;
|
||||
|
||||
gBattleAnimScriptPtr++;
|
||||
|
||||
taskFunc = (TaskFunc)SCRIPT_READ_32_(gBattleAnimScriptPtr);
|
||||
gBattleAnimScriptPtr += 4;
|
||||
|
||||
taskPriority = gBattleAnimScriptPtr[0];
|
||||
gBattleAnimScriptPtr++;
|
||||
|
||||
numArgs = gBattleAnimScriptPtr[0];
|
||||
gBattleAnimScriptPtr++;
|
||||
|
||||
for (i = 0; i < numArgs; i++)
|
||||
{
|
||||
gBattleAnimArgs[i] = SCRIPT_READ_16(gBattleAnimScriptPtr);
|
||||
gBattleAnimScriptPtr += 2;
|
||||
}
|
||||
|
||||
taskId = CreateTask(taskFunc, taskPriority);
|
||||
taskFunc(taskId);
|
||||
gAnimVisualTaskCount++;
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_delay(void)
|
||||
{
|
||||
gBattleAnimScriptPtr++;
|
||||
gAnimFramesToWait = gBattleAnimScriptPtr[0];
|
||||
if (gAnimFramesToWait == 0)
|
||||
gAnimFramesToWait = -1;
|
||||
gBattleAnimScriptPtr++;
|
||||
gAnimScriptCallback = WaitAnimFrameCount;
|
||||
}
|
||||
|
||||
// wait for visual tasks to finish.
|
||||
/*static*/ void ScriptCmd_waitforvisualfinish(void)
|
||||
{
|
||||
if (gAnimVisualTaskCount == 0)
|
||||
{
|
||||
gBattleAnimScriptPtr++;
|
||||
gAnimFramesToWait = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
gAnimFramesToWait = 1;
|
||||
}
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_hang1(void)
|
||||
{
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_hang2(void)
|
||||
{
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_end(void)
|
||||
{
|
||||
s32 i;
|
||||
bool32 continuousAnim = FALSE;
|
||||
|
||||
// keep waiting as long as there is animations to be done.
|
||||
if (gAnimVisualTaskCount != 0 || gAnimSoundTaskCount != 0
|
||||
|| gMonAnimTaskIdArray[0] != 0xFF || gMonAnimTaskIdArray[1] != 0xFF)
|
||||
{
|
||||
gSoundAnimFramesToWait = 0;
|
||||
gAnimFramesToWait = 1;
|
||||
return;
|
||||
}
|
||||
|
||||
// finish the sound effects.
|
||||
if (IsSEPlaying())
|
||||
{
|
||||
if (++gSoundAnimFramesToWait <= 90) // wait 90 frames, then halt the sound effect.
|
||||
{
|
||||
gAnimFramesToWait = 1;
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
m4aMPlayStop(&gMPlay_SE1);
|
||||
m4aMPlayStop(&gMPlay_SE2);
|
||||
}
|
||||
}
|
||||
|
||||
// the SE has halted, so set the SE Frame Counter to 0 and continue.
|
||||
gSoundAnimFramesToWait = 0;
|
||||
|
||||
for (i = 0; i < ANIM_SPRITE_INDEX_COUNT; i++)
|
||||
{
|
||||
if (gAnimSpriteIndexArray[i] != 0xFFFF)
|
||||
{
|
||||
FreeSpriteTilesByTag(gBattleAnimPicTable[gAnimSpriteIndexArray[i]].tag);
|
||||
FreeSpritePaletteByTag(gBattleAnimPicTable[gAnimSpriteIndexArray[i]].tag);
|
||||
gAnimSpriteIndexArray[i] |= 0xFFFF; // set terminator.
|
||||
}
|
||||
}
|
||||
|
||||
if (!continuousAnim) // may have been used for debug?
|
||||
{
|
||||
m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 256);
|
||||
if (!IsContest())
|
||||
{
|
||||
sub_80A8278();
|
||||
sub_8072A88(1);
|
||||
}
|
||||
gAnimScriptActive = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_playse(void)
|
||||
{
|
||||
gBattleAnimScriptPtr++;
|
||||
PlaySE(SCRIPT_READ_16(gBattleAnimScriptPtr));
|
||||
gBattleAnimScriptPtr += 2;
|
||||
}
|
||||
|
||||
#define t1_MONBG_BANK 0
|
||||
#define t1_MON_IN_BG2 1
|
||||
#define t1_CREATE_ANOTHER_TASK 2
|
||||
#define t1_IS_SECONDMON_BG 3
|
||||
|
||||
#define t2_BANK_SPRITE_ID 0
|
||||
#define t2_MON_IN_BG2 5
|
||||
#define t2_MONBG_BANK 6
|
||||
|
||||
/*static*/ void sub_80A40F4(u8 taskId)
|
||||
{
|
||||
u8 newTaskId;
|
||||
|
||||
s16 *selfData = gTasks[taskId].data;
|
||||
u8 bankSpriteId = gBankSpriteIds[selfData[t1_MONBG_BANK]];
|
||||
gSprites[bankSpriteId].invisible = 1;
|
||||
|
||||
if (!selfData[t1_CREATE_ANOTHER_TASK])
|
||||
{
|
||||
DestroyAnimVisualTask(taskId);
|
||||
return;
|
||||
}
|
||||
|
||||
newTaskId = CreateTask(task_pA_ma0A_obj_to_bg_pal, 10);
|
||||
gTasks[newTaskId].data[t2_BANK_SPRITE_ID] = bankSpriteId;
|
||||
gTasks[newTaskId].data[1] = gSprites[bankSpriteId].pos1.x + gSprites[bankSpriteId].pos2.x;
|
||||
gTasks[newTaskId].data[2] = gSprites[bankSpriteId].pos1.y + gSprites[bankSpriteId].pos2.y;
|
||||
|
||||
if (!selfData[t1_MON_IN_BG2])
|
||||
{
|
||||
gTasks[newTaskId].data[3] = gBattle_BG1_X;
|
||||
gTasks[newTaskId].data[4] = gBattle_BG1_Y;
|
||||
}
|
||||
else
|
||||
{
|
||||
gTasks[newTaskId].data[3] = gBattle_BG2_X;
|
||||
gTasks[newTaskId].data[4] = gBattle_BG2_Y;
|
||||
}
|
||||
|
||||
gTasks[newTaskId].data[t2_MON_IN_BG2] = selfData[t1_MON_IN_BG2];
|
||||
gTasks[newTaskId].data[t2_MONBG_BANK] = selfData[t1_MONBG_BANK];
|
||||
gMonAnimTaskIdArray[selfData[t1_IS_SECONDMON_BG]] = newTaskId;
|
||||
DestroyAnimVisualTask(taskId);
|
||||
}
|
||||
|
||||
/*static*/ void ScriptCmd_monbg(void)
|
||||
{
|
||||
bool8 toBG_2;
|
||||
u8 taskId;
|
||||
u8 bank;
|
||||
u8 animBank;
|
||||
|
||||
gBattleAnimScriptPtr++;
|
||||
|
||||
animBank = gBattleAnimScriptPtr[0];
|
||||
if (animBank & ANIM_BANK_TARGET)
|
||||
bank = gAnimBankTarget;
|
||||
else
|
||||
bank = gAnimBankAttacker;
|
||||
|
||||
if (IsAnimBankSpriteVisible(bank))
|
||||
{
|
||||
u8 identity = GetBankIdentity(bank);
|
||||
if (identity == IDENTITY_OPPONENT_MON1 || identity == IDENTITY_PLAYER_MON2 || IsContest())
|
||||
toBG_2 = FALSE;
|
||||
else
|
||||
toBG_2 = TRUE;
|
||||
|
||||
sub_80A438C(bank, toBG_2, FALSE);
|
||||
taskId = CreateTask(sub_80A40F4, 10);
|
||||
gAnimVisualTaskCount++;
|
||||
gTasks[taskId].data[t1_MONBG_BANK] = bank;
|
||||
gTasks[taskId].data[t1_MON_IN_BG2] = toBG_2;
|
||||
gTasks[taskId].data[t1_CREATE_ANOTHER_TASK] = TRUE;
|
||||
gTasks[taskId].data[t1_IS_SECONDMON_BG] = 0;
|
||||
|
||||
}
|
||||
|
||||
bank ^= BIT_MON;
|
||||
if (IsAnimBankSpriteVisible(bank))
|
||||
{
|
||||
u8 identity = GetBankIdentity(bank);
|
||||
if (identity == IDENTITY_OPPONENT_MON1 || identity == IDENTITY_PLAYER_MON2 || IsContest())
|
||||
toBG_2 = FALSE;
|
||||
else
|
||||
toBG_2 = TRUE;
|
||||
|
||||
sub_80A438C(bank, toBG_2, FALSE);
|
||||
taskId = CreateTask(sub_80A40F4, 10);
|
||||
gAnimVisualTaskCount++;
|
||||
gTasks[taskId].data[0] = bank;
|
||||
gTasks[taskId].data[1] = toBG_2;
|
||||
gTasks[taskId].data[t1_CREATE_ANOTHER_TASK] = TRUE;
|
||||
gTasks[taskId].data[t1_IS_SECONDMON_BG] = 1;
|
||||
}
|
||||
|
||||
gBattleAnimScriptPtr++;
|
||||
gAnimFramesToWait = 1;
|
||||
gAnimScriptCallback = WaitAnimFrameCount;
|
||||
}
|
||||
|
||||
bool8 IsAnimBankSpriteVisible(u8 bank)
|
||||
{
|
||||
if (IsContest())
|
||||
{
|
||||
if (bank == gAnimBankAttacker)
|
||||
return TRUE;
|
||||
else
|
||||
return FALSE;
|
||||
}
|
||||
if (!AnimBankSpriteExists(bank))
|
||||
return FALSE;
|
||||
if (IsContest())
|
||||
return TRUE; // this line wont ever be reached.
|
||||
if (!gBattleSpritesDataPtr->bankData[bank].invisible || !gSprites[gBankSpriteIds[bank]].invisible)
|
||||
return TRUE;
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void sub_80A438C(u8 bank, bool8 toBG_2, bool8 setSpriteInvisible)
|
||||
{
|
||||
struct UnknownAnimStruct2 unknownStruct;
|
||||
u8 bankSpriteId;
|
||||
|
||||
if (!toBG_2)
|
||||
{
|
||||
u8 bankIdentity;
|
||||
|
||||
if (IsContest() == TRUE)
|
||||
{
|
||||
RequestDma3Fill(0, (void*)(VRAM + 0x8000), 0x2000, 1);
|
||||
RequestDma3Fill(0xFF, (void*)(VRAM + 0xF000), 0x1000, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
RequestDma3Fill(0, (void*)(VRAM + 0x4000), 0x2000, 1);
|
||||
RequestDma3Fill(0xFF, (void*)(VRAM + 0xe000), 0x1000, 0);
|
||||
}
|
||||
|
||||
sub_80A6B30(&unknownStruct);
|
||||
CpuFill16(0, unknownStruct.unk0, 0x1000);
|
||||
CpuFill16(0xFF, unknownStruct.unk4, 0x800);
|
||||
|
||||
SetAnimBgAttribute(1, BG_ANIM_PRIORITY, 2);
|
||||
SetAnimBgAttribute(1, BG_ANIM_SCREEN_SIZE, 1);
|
||||
SetAnimBgAttribute(1, BG_ANIM_AREA_OVERFLOW_MODE, 0);
|
||||
|
||||
bankSpriteId = gBankSpriteIds[bank];
|
||||
|
||||
gBattle_BG1_X = -(gSprites[bankSpriteId].pos1.x + gSprites[bankSpriteId].pos2.x) + 0x20;
|
||||
if (IsContest() && IsSpeciesNotUnown(gContestResources->field_18->field_0))
|
||||
gBattle_BG1_X--;
|
||||
|
||||
gBattle_BG1_Y = -(gSprites[bankSpriteId].pos1.y + gSprites[bankSpriteId].pos2.y) + 0x20;
|
||||
if (setSpriteInvisible)
|
||||
gSprites[gBankSpriteIds[bank]].invisible = 1;
|
||||
|
||||
SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X);
|
||||
SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y);
|
||||
|
||||
LoadPalette(&gPlttBufferUnfaded[0x100 + bank * 16], unknownStruct.unk8 * 16, 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[0x100 + bank * 16], (void*)(BG_PLTT + unknownStruct.unk8 * 32), 0x20);
|
||||
|
||||
if (IsContest())
|
||||
bankIdentity = 0;
|
||||
else
|
||||
bankIdentity = GetBankIdentity(bank);
|
||||
|
||||
sub_8118FBC(1, 0, 0, bankIdentity, unknownStruct.unk8, unknownStruct.unk0, unknownStruct.unk4, unknownStruct.unkA);
|
||||
|
||||
if (IsContest())
|
||||
sub_80A46A0();
|
||||
}
|
||||
else
|
||||
{
|
||||
RequestDma3Fill(0, (void*)(VRAM + 0x6000), 0x2000, 1);
|
||||
RequestDma3Fill(0, (void*)(VRAM + 0xF000), 0x1000, 1);
|
||||
sub_80A6B90(&unknownStruct, 2);
|
||||
CpuFill16(0, unknownStruct.unk0 + 0x1000, 0x1000);
|
||||
CpuFill16(0, unknownStruct.unk4 + 0x400, 0x800);
|
||||
SetAnimBgAttribute(2, BG_ANIM_PRIORITY, 2);
|
||||
SetAnimBgAttribute(2, BG_ANIM_SCREEN_SIZE, 1);
|
||||
SetAnimBgAttribute(2, BG_ANIM_AREA_OVERFLOW_MODE, 0);
|
||||
|
||||
bankSpriteId = gBankSpriteIds[bank];
|
||||
|
||||
gBattle_BG2_X = -(gSprites[bankSpriteId].pos1.x + gSprites[bankSpriteId].pos2.x) + 0x20;
|
||||
gBattle_BG2_Y = -(gSprites[bankSpriteId].pos1.y + gSprites[bankSpriteId].pos2.y) + 0x20;
|
||||
|
||||
if (setSpriteInvisible)
|
||||
gSprites[gBankSpriteIds[bank]].invisible = 1;
|
||||
|
||||
SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X);
|
||||
SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y);
|
||||
|
||||
LoadPalette(&gPlttBufferUnfaded[0x100 + bank * 16], 0x90, 0x20);
|
||||
CpuCopy32(&gPlttBufferUnfaded[0x100 + bank * 16], (void*)(BG_PLTT + 0x120), 0x20);
|
||||
|
||||
sub_8118FBC(2, 0, 0, GetBankIdentity(bank), unknownStruct.unk8, unknownStruct.unk0 + 0x1000, unknownStruct.unk4 + 0x400, unknownStruct.unkA);
|
||||
}
|
||||
}
|
||||
|
@ -465,7 +465,7 @@ u32 sub_8034974(void* ptr)
|
||||
return (ptr_[3] << 16) | (ptr_[2] << 8) | (ptr_[1]);
|
||||
}
|
||||
|
||||
bool8 LoadCompressedObjectPicUsingHeap(struct CompressedSpriteSheet* src)
|
||||
bool8 LoadCompressedObjectPicUsingHeap(const struct CompressedSpriteSheet* src)
|
||||
{
|
||||
struct SpriteSheet dest;
|
||||
void* buffer;
|
||||
|
@ -594,7 +594,7 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y,
|
||||
return index;
|
||||
}
|
||||
|
||||
u8 CreateSpriteAndAnimate(struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority)
|
||||
u8 CreateSpriteAndAnimate(const struct SpriteTemplate *template, s16 x, s16 y, u8 subpriority)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
|
@ -713,77 +713,9 @@ gUnknown_02037622: @ 2037622
|
||||
.include "src/tileset_anims.o"
|
||||
.include "src/palette.o"
|
||||
.include "src/sound.o"
|
||||
|
||||
.align 0x2
|
||||
.include "src/battle_anim.o"
|
||||
|
||||
gBattleAnimScriptPtr: @ 20383F0
|
||||
.space 0x4
|
||||
|
||||
gBattleAnimScriptRetAddr: @ 20383F4
|
||||
.space 0x4
|
||||
|
||||
gAnimScriptCallback: @ 20383F8
|
||||
.space 0x4
|
||||
|
||||
gAnimFramesToWait: @ 20383FC
|
||||
.space 0x1
|
||||
|
||||
gAnimScriptActive: @ 20383FD
|
||||
.space 0x1
|
||||
|
||||
gAnimVisualTaskCount: @ 20383FE
|
||||
.space 0x1
|
||||
|
||||
gAnimSoundTaskCount: @ 20383FF
|
||||
.space 0x1
|
||||
|
||||
gDisableStructMoveAnim: @ 2038400
|
||||
.space 0x4
|
||||
|
||||
gMoveDmgMoveAnim: @ 2038404
|
||||
.space 0x4
|
||||
|
||||
gMovePowerMoveAnim: @ 2038408
|
||||
.space 0x2
|
||||
|
||||
gAnimSpriteIndexArray: @ 203840A
|
||||
.space 0x10
|
||||
|
||||
gHappinessMoveAnim: @ 203841A
|
||||
.space 0x2
|
||||
|
||||
gWeatherMoveAnim: @ 203841C
|
||||
.space 0x2
|
||||
|
||||
gBattleAnimArgs: @ 203841E
|
||||
.space 0x10
|
||||
|
||||
gSoundAnimFramesToWait: @ 203842E
|
||||
.space 0x2
|
||||
|
||||
gUnknown_02038430: @ 2038430
|
||||
.space 0x2
|
||||
|
||||
gUnknown_02038432: @ 2038432
|
||||
.space 0x1
|
||||
|
||||
gUnknown_02038433: @ 2038433
|
||||
.space 0x1
|
||||
|
||||
gAnimMoveIndex: @ 2038434
|
||||
.space 0x2
|
||||
|
||||
gAnimationBankAttacker: @ 2038436
|
||||
.space 0x1
|
||||
|
||||
gAnimationBankTarget: @ 2038437
|
||||
.space 0x1
|
||||
|
||||
gUnknown_02038438: @ 2038438
|
||||
.space 0x8
|
||||
|
||||
gUnknown_02038440: @ 2038440
|
||||
.space 0x4
|
||||
.align 2
|
||||
|
||||
gUnknown_02038444: @ 2038444
|
||||
.space 0x10
|
||||
@ -1058,7 +990,7 @@ gUnknown_02039F30: @ 2039F30
|
||||
gUnknown_02039F31: @ 2039F31
|
||||
.space 0x3
|
||||
|
||||
gUnknown_02039F34: @ 2039F34
|
||||
gContestResources: @ 2039F34
|
||||
.space 0x4
|
||||
|
||||
gUnknown_02039F38: @ 2039F38
|
||||
|
Loading…
Reference in New Issue
Block a user