ported battle_controllers from pokeem
This commit is contained in:
+216
-216
File diff suppressed because it is too large
Load Diff
@@ -40,7 +40,7 @@ ShouldSwitchIfPerishSong: @ 8039188
|
||||
movs r0, 0x1
|
||||
movs r1, 0x2
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
movs r0, 0x1
|
||||
b _080391E6
|
||||
.align 2, 0
|
||||
@@ -84,7 +84,7 @@ _08039208:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x2
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
movs r0, 0x1
|
||||
b _0803935E
|
||||
.align 2, 0
|
||||
@@ -407,7 +407,7 @@ _080394A0:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x2
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
movs r0, 0x1
|
||||
b _0803958A
|
||||
.align 2, 0
|
||||
@@ -628,7 +628,7 @@ _08039668:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x2
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
_08039686:
|
||||
movs r0, 0x1
|
||||
_08039688:
|
||||
@@ -951,7 +951,7 @@ _080398EC:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x2
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
movs r0, 0x1
|
||||
b _08039A56
|
||||
.align 2, 0
|
||||
@@ -1518,7 +1518,7 @@ _08039D96:
|
||||
lsls r2, 8
|
||||
movs r0, 0x1
|
||||
movs r1, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
_08039DA8:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
@@ -2604,7 +2604,7 @@ _0803A5FC:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x1
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
ldr r0, _0803A630 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
lsrs r0, 1
|
||||
|
||||
+2
-2
@@ -111,7 +111,7 @@ DoMoveAnim: @ 807259C
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
ldr r2, _080725C0 @ =gBattleAnimAttacker
|
||||
ldr r0, _080725C4 @ =sBattler_AI
|
||||
ldr r0, _080725C4 @ =gBattlerAttacker
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r2]
|
||||
ldr r2, _080725C8 @ =gBattleAnimTarget
|
||||
@@ -125,7 +125,7 @@ DoMoveAnim: @ 807259C
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080725C0: .4byte gBattleAnimAttacker
|
||||
_080725C4: .4byte sBattler_AI
|
||||
_080725C4: .4byte gBattlerAttacker
|
||||
_080725C8: .4byte gBattleAnimTarget
|
||||
_080725CC: .4byte gBattlerTarget
|
||||
_080725D0: .4byte gUnknown_81C68F4
|
||||
|
||||
+14
-14
@@ -1054,7 +1054,7 @@ sub_80EF490: @ 80EF490
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r0, _080EF4B4 @ =gUnknown_2023D68
|
||||
ldr r0, _080EF4B4 @ =gLastUsedItem
|
||||
ldrh r0, [r0]
|
||||
bl ItemIdToBallId
|
||||
lsls r0, 24
|
||||
@@ -1066,7 +1066,7 @@ sub_80EF490: @ 80EF490
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080EF4B4: .4byte gUnknown_2023D68
|
||||
_080EF4B4: .4byte gLastUsedItem
|
||||
thumb_func_end sub_80EF490
|
||||
|
||||
thumb_func_start sub_80EF4B8
|
||||
@@ -1075,7 +1075,7 @@ sub_80EF4B8: @ 80EF4B8
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r0, _080EF4DC @ =gUnknown_2023D68
|
||||
ldr r0, _080EF4DC @ =gLastUsedItem
|
||||
ldrh r0, [r0]
|
||||
bl ItemIdToBallId
|
||||
lsls r0, 24
|
||||
@@ -1087,7 +1087,7 @@ sub_80EF4B8: @ 80EF4B8
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080EF4DC: .4byte gUnknown_2023D68
|
||||
_080EF4DC: .4byte gLastUsedItem
|
||||
thumb_func_end sub_80EF4B8
|
||||
|
||||
thumb_func_start sub_80EF4E0
|
||||
@@ -1210,7 +1210,7 @@ sub_80EF5AC: @ 80EF5AC
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r10, r0
|
||||
ldr r0, _080EF674 @ =gUnknown_2023D68
|
||||
ldr r0, _080EF674 @ =gLastUsedItem
|
||||
ldrh r0, [r0]
|
||||
bl ItemIdToBallId
|
||||
adds r1, r0, 0
|
||||
@@ -1297,7 +1297,7 @@ sub_80EF5AC: @ 80EF5AC
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080EF674: .4byte gUnknown_2023D68
|
||||
_080EF674: .4byte gLastUsedItem
|
||||
_080EF678: .4byte gUnknown_82606F4
|
||||
_080EF67C: .4byte gSprites
|
||||
_080EF680: .4byte gBattleAnimTarget
|
||||
@@ -1369,7 +1369,7 @@ _080EF6F8:
|
||||
bne _080EF708
|
||||
movs r6, 0xD
|
||||
_080EF708:
|
||||
ldr r0, _080EF7C8 @ =gUnknown_2023D68
|
||||
ldr r0, _080EF7C8 @ =gLastUsedItem
|
||||
ldrh r0, [r0]
|
||||
bl ItemIdToBallId
|
||||
adds r4, r0, 0
|
||||
@@ -1457,7 +1457,7 @@ _080EF708:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080EF7C4: .4byte gSaveBlock2Ptr
|
||||
_080EF7C8: .4byte gUnknown_2023D68
|
||||
_080EF7C8: .4byte gLastUsedItem
|
||||
_080EF7CC: .4byte gUnknown_82606F4
|
||||
_080EF7D0: .4byte gSprites
|
||||
_080EF7D4: .4byte gBattleAnimTarget
|
||||
@@ -1654,7 +1654,7 @@ _080EF954:
|
||||
strh r0, [r4, 0x38]
|
||||
ldr r0, _080EF9A8 @ =sub_80EF9B4
|
||||
str r0, [r4, 0x1C]
|
||||
ldr r0, _080EF9AC @ =gUnknown_2023D68
|
||||
ldr r0, _080EF9AC @ =gLastUsedItem
|
||||
ldrh r0, [r0]
|
||||
bl ItemIdToBallId
|
||||
lsls r0, 24
|
||||
@@ -1687,7 +1687,7 @@ _080EF99E:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080EF9A8: .4byte sub_80EF9B4
|
||||
_080EF9AC: .4byte gUnknown_2023D68
|
||||
_080EF9AC: .4byte gLastUsedItem
|
||||
_080EF9B0: .4byte gBattleAnimTarget
|
||||
thumb_func_end sub_80EF8F0
|
||||
|
||||
@@ -2873,7 +2873,7 @@ sub_80F02B0: @ 80F02B0
|
||||
bl StartSpriteAffineAnim
|
||||
ldr r0, _080F0364 @ =sub_80F0378
|
||||
str r0, [r4, 0x1C]
|
||||
ldr r0, _080F0368 @ =gUnknown_2023D68
|
||||
ldr r0, _080F0368 @ =gLastUsedItem
|
||||
ldrh r0, [r0]
|
||||
bl ItemIdToBallId
|
||||
lsls r0, 24
|
||||
@@ -2949,7 +2949,7 @@ _080F0302:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080F0364: .4byte sub_80F0378
|
||||
_080F0368: .4byte gUnknown_2023D68
|
||||
_080F0368: .4byte gLastUsedItem
|
||||
_080F036C: .4byte gBattleAnimTarget
|
||||
_080F0370: .4byte gSprites
|
||||
_080F0374: .4byte gBattlerSpriteIds
|
||||
@@ -5446,7 +5446,7 @@ sub_80F1700: @ 80F1700
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _080F1718 @ =gBattleAnimTarget
|
||||
ldr r1, _080F171C @ =gUnknown_2023D6E
|
||||
ldr r1, _080F171C @ =gEffectBattler
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r2]
|
||||
bl DestroyAnimVisualTask
|
||||
@@ -5454,7 +5454,7 @@ sub_80F1700: @ 80F1700
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080F1718: .4byte gBattleAnimTarget
|
||||
_080F171C: .4byte gUnknown_2023D6E
|
||||
_080F171C: .4byte gEffectBattler
|
||||
thumb_func_end sub_80F1700
|
||||
|
||||
thumb_func_start sub_80F1720
|
||||
|
||||
@@ -3078,7 +3078,7 @@ sub_80BC060: @ 80BC060
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080BC088 @ =gBattleAnimTarget
|
||||
ldr r1, _080BC08C @ =gUnknown_2023D6E
|
||||
ldr r1, _080BC08C @ =gEffectBattler
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r2]
|
||||
bl DestroyAnimVisualTask
|
||||
@@ -3088,7 +3088,7 @@ sub_80BC060: @ 80BC060
|
||||
_080BC080: .4byte gBattleAnimAttacker
|
||||
_080BC084: .4byte gBattlerTarget
|
||||
_080BC088: .4byte gBattleAnimTarget
|
||||
_080BC08C: .4byte gUnknown_2023D6E
|
||||
_080BC08C: .4byte gEffectBattler
|
||||
thumb_func_end sub_80BC060
|
||||
|
||||
thumb_func_start sub_80BC090
|
||||
@@ -3151,11 +3151,11 @@ sub_80BC0FC: @ 80BC0FC
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _080BC11C @ =gBattleAnimAttacker
|
||||
ldr r1, _080BC120 @ =sBattler_AI
|
||||
ldr r1, _080BC120 @ =gBattlerAttacker
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080BC124 @ =gBattleAnimTarget
|
||||
ldr r1, _080BC128 @ =gUnknown_2023D6E
|
||||
ldr r1, _080BC128 @ =gEffectBattler
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r2]
|
||||
bl DestroyAnimVisualTask
|
||||
@@ -3163,9 +3163,9 @@ sub_80BC0FC: @ 80BC0FC
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BC11C: .4byte gBattleAnimAttacker
|
||||
_080BC120: .4byte sBattler_AI
|
||||
_080BC120: .4byte gBattlerAttacker
|
||||
_080BC124: .4byte gBattleAnimTarget
|
||||
_080BC128: .4byte gUnknown_2023D6E
|
||||
_080BC128: .4byte gEffectBattler
|
||||
thumb_func_end sub_80BC0FC
|
||||
|
||||
thumb_func_start sub_80BC12C
|
||||
|
||||
@@ -10,8 +10,8 @@ nullsub_19: @ 803A664
|
||||
bx lr
|
||||
thumb_func_end nullsub_19
|
||||
|
||||
thumb_func_start sub_803A668
|
||||
sub_803A668: @ 803A668
|
||||
thumb_func_start SetControllerToLinkOpponent
|
||||
SetControllerToLinkOpponent: @ 803A668
|
||||
ldr r1, _0803A678 @ =gBattlerControllerFuncs
|
||||
ldr r0, _0803A67C @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
@@ -24,7 +24,7 @@ sub_803A668: @ 803A668
|
||||
_0803A678: .4byte gBattlerControllerFuncs
|
||||
_0803A67C: .4byte gActiveBattler
|
||||
_0803A680: .4byte sub_803A684
|
||||
thumb_func_end sub_803A668
|
||||
thumb_func_end SetControllerToLinkOpponent
|
||||
|
||||
thumb_func_start sub_803A684
|
||||
sub_803A684: @ 803A684
|
||||
@@ -1440,7 +1440,7 @@ _0803B1F6:
|
||||
lsrs r1, 16
|
||||
movs r0, 0x1
|
||||
mov r2, sp
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl RecordedOpponentBufferExecCompleted
|
||||
add sp, 0x100
|
||||
pop {r4-r6}
|
||||
|
||||
@@ -10,8 +10,8 @@ nullsub_77: @ 80D4200
|
||||
bx lr
|
||||
thumb_func_end nullsub_77
|
||||
|
||||
thumb_func_start sub_80D4204
|
||||
sub_80D4204: @ 80D4204
|
||||
thumb_func_start SetControllerToLinkPartner
|
||||
SetControllerToLinkPartner: @ 80D4204
|
||||
ldr r1, _080D4214 @ =gBattlerControllerFuncs
|
||||
ldr r0, _080D4218 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
@@ -24,7 +24,7 @@ sub_80D4204: @ 80D4204
|
||||
_080D4214: .4byte gBattlerControllerFuncs
|
||||
_080D4218: .4byte gActiveBattler
|
||||
_080D421C: .4byte LinkPartnerBufferRunCommand
|
||||
thumb_func_end sub_80D4204
|
||||
thumb_func_end SetControllerToLinkPartner
|
||||
|
||||
thumb_func_start LinkPartnerBufferRunCommand
|
||||
LinkPartnerBufferRunCommand: @ 80D4220
|
||||
@@ -1144,7 +1144,7 @@ _080D4B1A:
|
||||
lsrs r1, 16
|
||||
movs r0, 0x1
|
||||
mov r2, sp
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl sub_80D49E8
|
||||
add sp, 0x100
|
||||
pop {r4-r6}
|
||||
|
||||
+14
-14
@@ -10,8 +10,8 @@ nullsub_81: @ 80E75AC
|
||||
bx lr
|
||||
thumb_func_end nullsub_81
|
||||
|
||||
thumb_func_start sub_80E75B0
|
||||
sub_80E75B0: @ 80E75B0
|
||||
thumb_func_start SetControllerToOakOrOldman
|
||||
SetControllerToOakOrOldman: @ 80E75B0
|
||||
ldr r1, _080E75DC @ =gBattlerControllerFuncs
|
||||
ldr r0, _080E75E0 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
@@ -39,7 +39,7 @@ _080E75DC: .4byte gBattlerControllerFuncs
|
||||
_080E75E0: .4byte gActiveBattler
|
||||
_080E75E4: .4byte sub_80E75EC
|
||||
_080E75E8: .4byte gBattleStruct
|
||||
thumb_func_end sub_80E75B0
|
||||
thumb_func_end SetControllerToOakOrOldman
|
||||
|
||||
thumb_func_start sub_80E75EC
|
||||
sub_80E75EC: @ 80E75EC
|
||||
@@ -154,7 +154,7 @@ _080E76C8:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x3
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
b _080E781A
|
||||
_080E76D4:
|
||||
movs r0, 0x20
|
||||
@@ -316,7 +316,7 @@ _080E780A:
|
||||
movs r1, 0xC
|
||||
_080E7814:
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
_080E781A:
|
||||
bl WallyBufferExecCompleted
|
||||
b _080E7838
|
||||
@@ -410,7 +410,7 @@ _080E78B4:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x1
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
bl WallyBufferExecCompleted
|
||||
_080E78D8:
|
||||
pop {r4}
|
||||
@@ -598,7 +598,7 @@ sub_80E7A14: @ 80E7A14
|
||||
ldrb r1, [r0]
|
||||
ldr r2, _080E7A58 @ =gUnknown_203B0DC
|
||||
movs r0, 0x1
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
b _080E7A66
|
||||
.align 2, 0
|
||||
_080E7A44: .4byte gMain
|
||||
@@ -611,7 +611,7 @@ _080E7A5C:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x6
|
||||
movs r2, 0
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
_080E7A66:
|
||||
bl WallyBufferExecCompleted
|
||||
_080E7A6A:
|
||||
@@ -710,7 +710,7 @@ _080E7B34:
|
||||
ldr r0, _080E7B48 @ =gSpecialVar_ItemId
|
||||
ldrh r1, [r0]
|
||||
movs r0, 0x1
|
||||
bl EmitOneReturnValue
|
||||
bl BtlController_EmitOneReturnValue
|
||||
bl WallyBufferExecCompleted
|
||||
_080E7B42:
|
||||
pop {r0}
|
||||
@@ -1145,7 +1145,7 @@ _080E7E4A:
|
||||
lsrs r2, 16
|
||||
movs r0, 0x1
|
||||
movs r1, 0xB
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
strb r5, [r4]
|
||||
bl IsDoubleBattle
|
||||
lsls r0, 24
|
||||
@@ -1437,7 +1437,7 @@ _080E807C:
|
||||
lsrs r2, 16
|
||||
movs r0, 0x1
|
||||
movs r1, 0xB
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
strb r5, [r4]
|
||||
ldr r0, _080E8158 @ =sub_80E8190
|
||||
str r0, [r6]
|
||||
@@ -2344,7 +2344,7 @@ _080E8880:
|
||||
ldr r0, _080E88B8 @ =gSpecialVar_ItemId
|
||||
ldrh r1, [r0]
|
||||
movs r0, 0x1
|
||||
bl EmitOneReturnValue
|
||||
bl BtlController_EmitOneReturnValue
|
||||
bl WallyBufferExecCompleted
|
||||
ldr r0, _080E88BC @ =gBattleStruct
|
||||
ldr r0, [r0]
|
||||
@@ -2733,7 +2733,7 @@ _080E8B9E:
|
||||
lsrs r1, 16
|
||||
movs r0, 0x1
|
||||
mov r2, sp
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl WallyBufferExecCompleted
|
||||
add sp, 0x100
|
||||
pop {r4-r6}
|
||||
@@ -6161,7 +6161,7 @@ _080EA83E:
|
||||
lsls r2, 1
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
bl WallyBufferExecCompleted
|
||||
_080EA866:
|
||||
pop {r4}
|
||||
|
||||
@@ -10,8 +10,8 @@ nullsub_17: @ 8035A78
|
||||
bx lr
|
||||
thumb_func_end nullsub_17
|
||||
|
||||
thumb_func_start sub_8035A7C
|
||||
sub_8035A7C: @ 8035A7C
|
||||
thumb_func_start SetControllerToOpponent
|
||||
SetControllerToOpponent: @ 8035A7C
|
||||
ldr r1, _08035A8C @ =gBattlerControllerFuncs
|
||||
ldr r0, _08035A90 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
@@ -24,7 +24,7 @@ sub_8035A7C: @ 8035A7C
|
||||
_08035A8C: .4byte gBattlerControllerFuncs
|
||||
_08035A90: .4byte gActiveBattler
|
||||
_08035A94: .4byte sub_8035A98
|
||||
thumb_func_end sub_8035A7C
|
||||
thumb_func_end SetControllerToOpponent
|
||||
|
||||
thumb_func_start sub_8035A98
|
||||
sub_8035A98: @ 8035A98
|
||||
@@ -1406,7 +1406,7 @@ _080365C2:
|
||||
lsrs r1, 16
|
||||
movs r0, 0x1
|
||||
mov r2, sp
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl OpponentBufferExecCompleted
|
||||
add sp, 0x100
|
||||
pop {r4-r6}
|
||||
@@ -2403,7 +2403,7 @@ _08036DDE:
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x1
|
||||
adds r2, r4, 0
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl OpponentBufferExecCompleted
|
||||
add sp, 0x58
|
||||
pop {r4-r7}
|
||||
@@ -5261,7 +5261,7 @@ _080385F0:
|
||||
movs r1, 0x3
|
||||
_080385F4:
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
b _08038668
|
||||
_080385FC:
|
||||
ldr r3, _08038670 @ =gBattleMoves
|
||||
@@ -5316,7 +5316,7 @@ _08038656:
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
adds r2, r4, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
_08038668:
|
||||
bl OpponentBufferExecCompleted
|
||||
b _08038712
|
||||
@@ -5353,7 +5353,7 @@ _08038682:
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
adds r2, r4, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
b _0803870E
|
||||
.align 2, 0
|
||||
_080386BC: .4byte gBattleMoves
|
||||
@@ -5378,7 +5378,7 @@ _080386C4:
|
||||
orrs r2, r4
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
b _0803870E
|
||||
.align 2, 0
|
||||
_080386F4: .4byte gBattleTypeFlags
|
||||
@@ -5391,7 +5391,7 @@ _080386F8:
|
||||
orrs r2, r4
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
_0803870E:
|
||||
bl OpponentBufferExecCompleted
|
||||
_08038712:
|
||||
@@ -5413,7 +5413,7 @@ sub_8038718: @ 8038718
|
||||
adds r0, 0xC0
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x1
|
||||
bl EmitOneReturnValue
|
||||
bl BtlController_EmitOneReturnValue
|
||||
bl OpponentBufferExecCompleted
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -5528,7 +5528,7 @@ _0803880A:
|
||||
lsrs r1, 24
|
||||
movs r0, 0x1
|
||||
movs r2, 0
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
bl OpponentBufferExecCompleted
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
|
||||
@@ -10,8 +10,8 @@ nullsub_13: @ 802E310
|
||||
bx lr
|
||||
thumb_func_end nullsub_13
|
||||
|
||||
thumb_func_start SetBankFuncToPlayerBufferRunCommand
|
||||
SetBankFuncToPlayerBufferRunCommand: @ 802E314
|
||||
thumb_func_start SetControllerToPlayer
|
||||
SetControllerToPlayer: @ 802E314
|
||||
ldr r1, _0802E32C @ =gBattlerControllerFuncs
|
||||
ldr r0, _0802E330 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
@@ -28,7 +28,7 @@ _0802E32C: .4byte gBattlerControllerFuncs
|
||||
_0802E330: .4byte gActiveBattler
|
||||
_0802E334: .4byte PlayerBufferRunCommand
|
||||
_0802E338: .4byte gDoingBattleAnim
|
||||
thumb_func_end SetBankFuncToPlayerBufferRunCommand
|
||||
thumb_func_end SetControllerToPlayer
|
||||
|
||||
thumb_func_start PlayerBufferExecCompleted
|
||||
PlayerBufferExecCompleted: @ 802E33C
|
||||
@@ -227,7 +227,7 @@ _0802E4C4:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x3
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
b _0802E616
|
||||
_0802E4D0:
|
||||
movs r0, 0x20
|
||||
@@ -389,7 +389,7 @@ _0802E606:
|
||||
movs r1, 0xC
|
||||
_0802E610:
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
_0802E616:
|
||||
bl PlayerBufferExecCompleted
|
||||
b _0802E634
|
||||
@@ -492,7 +492,7 @@ _0802E6B6:
|
||||
adds r0, r2
|
||||
ldr r1, _0802E720 @ =sub_8012098
|
||||
str r1, [r0]
|
||||
ldr r1, _0802E724 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802E724 @ =gMoveSelectionCursor
|
||||
ldr r0, _0802E728 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@@ -502,7 +502,7 @@ _0802E6B6:
|
||||
orrs r2, r0
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl dp11b_obj_free
|
||||
@@ -516,7 +516,7 @@ _0802E714: .4byte gMain
|
||||
_0802E718: .4byte gSprites
|
||||
_0802E71C: .4byte gBattlerSpriteIds
|
||||
_0802E720: .4byte sub_8012098
|
||||
_0802E724: .4byte gUnknown_2023FFC
|
||||
_0802E724: .4byte gMoveSelectionCursor
|
||||
_0802E728: .4byte gActiveBattler
|
||||
_0802E72C:
|
||||
movs r0, 0x2
|
||||
@@ -665,7 +665,7 @@ _0802E846:
|
||||
muls r0, r1
|
||||
ldr r1, _0802E8AC @ =gPlayerParty
|
||||
adds r0, r1
|
||||
ldr r1, _0802E8B0 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802E8B0 @ =gMoveSelectionCursor
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
adds r1, 0xD
|
||||
@@ -703,7 +703,7 @@ _0802E89C:
|
||||
_0802E8A4: .4byte gActiveBattler
|
||||
_0802E8A8: .4byte gBattlerPartyIndexes
|
||||
_0802E8AC: .4byte gPlayerParty
|
||||
_0802E8B0: .4byte gUnknown_2023FFC
|
||||
_0802E8B0: .4byte gMoveSelectionCursor
|
||||
_0802E8B4: .4byte gBattleMoves
|
||||
_0802E8B8: .4byte gAbsentBattlerFlags
|
||||
_0802E8BC: .4byte gBitTable
|
||||
@@ -806,7 +806,7 @@ _0802E96A:
|
||||
muls r0, r1
|
||||
ldr r1, _0802E9EC @ =gPlayerParty
|
||||
adds r0, r1
|
||||
ldr r1, _0802E9F0 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802E9F0 @ =gMoveSelectionCursor
|
||||
adds r2, r1
|
||||
ldrb r1, [r2]
|
||||
adds r1, 0xD
|
||||
@@ -861,7 +861,7 @@ _0802E9DC:
|
||||
_0802E9E4: .4byte gActiveBattler
|
||||
_0802E9E8: .4byte gBattlerPartyIndexes
|
||||
_0802E9EC: .4byte gPlayerParty
|
||||
_0802E9F0: .4byte gUnknown_2023FFC
|
||||
_0802E9F0: .4byte gMoveSelectionCursor
|
||||
_0802E9F4: .4byte gBattleMoves
|
||||
_0802E9F8: .4byte gAbsentBattlerFlags
|
||||
_0802E9FC: .4byte gBitTable
|
||||
@@ -896,7 +896,7 @@ sub_802EA10: @ 802EA10
|
||||
_0802EA3A:
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r1, _0802EA78 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802EA78 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
@@ -922,7 +922,7 @@ _0802EA3A:
|
||||
_0802EA6C: .4byte gActiveBattler
|
||||
_0802EA70: .4byte gUnknown_2022BC8
|
||||
_0802EA74: .4byte gMain
|
||||
_0802EA78: .4byte gUnknown_2023FFC
|
||||
_0802EA78: .4byte gMoveSelectionCursor
|
||||
_0802EA7C:
|
||||
ldr r2, _0802EA9C @ =gBattleMoves
|
||||
ldrh r1, [r1]
|
||||
@@ -991,7 +991,7 @@ _0802EAF8:
|
||||
movs r0, 0x1
|
||||
add r8, r0
|
||||
_0802EB04:
|
||||
ldr r0, _0802EB78 @ =gUnknown_2023FFC
|
||||
ldr r0, _0802EB78 @ =gMoveSelectionCursor
|
||||
adds r0, r2, r0
|
||||
adds r1, r7, 0
|
||||
adds r1, 0x8
|
||||
@@ -1030,7 +1030,7 @@ _0802EB3A:
|
||||
mov r0, r8
|
||||
cmp r0, 0
|
||||
bne _0802EB88
|
||||
ldr r1, _0802EB78 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802EB78 @ =gMoveSelectionCursor
|
||||
ldr r0, _0802EB84 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@@ -1041,11 +1041,11 @@ _0802EB3A:
|
||||
orrs r2, r0
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
bl PlayerBufferExecCompleted
|
||||
b _0802EDBA
|
||||
.align 2, 0
|
||||
_0802EB78: .4byte gUnknown_2023FFC
|
||||
_0802EB78: .4byte gMoveSelectionCursor
|
||||
_0802EB7C: .4byte gUnknown_3004FF4
|
||||
_0802EB80: .4byte 0x00007fff
|
||||
_0802EB84: .4byte gActiveBattler
|
||||
@@ -1123,7 +1123,7 @@ _0802EC10:
|
||||
ldr r2, _0802EC34 @ =0x0000ffff
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
bl PlayerBufferExecCompleted
|
||||
bl ResetPaletteFadeControl
|
||||
b _0802ED2C
|
||||
@@ -1134,7 +1134,7 @@ _0802EC38:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802EC68
|
||||
ldr r4, _0802EC64 @ =gUnknown_2023FFC
|
||||
ldr r4, _0802EC64 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r6]
|
||||
adds r2, r0, r4
|
||||
ldrb r1, [r2]
|
||||
@@ -1153,13 +1153,13 @@ _0802EC52:
|
||||
eors r0, r2
|
||||
b _0802ED10
|
||||
.align 2, 0
|
||||
_0802EC64: .4byte gUnknown_2023FFC
|
||||
_0802EC64: .4byte gMoveSelectionCursor
|
||||
_0802EC68:
|
||||
movs r0, 0x10
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802ECAC
|
||||
ldr r4, _0802ECA4 @ =gUnknown_2023FFC
|
||||
ldr r4, _0802ECA4 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r6]
|
||||
adds r3, r0, r4
|
||||
ldrb r2, [r3]
|
||||
@@ -1186,14 +1186,14 @@ _0802EC92:
|
||||
eors r0, r7
|
||||
b _0802ED10
|
||||
.align 2, 0
|
||||
_0802ECA4: .4byte gUnknown_2023FFC
|
||||
_0802ECA4: .4byte gMoveSelectionCursor
|
||||
_0802ECA8: .4byte gUnknown_3004FF8
|
||||
_0802ECAC:
|
||||
movs r0, 0x40
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802ECDC
|
||||
ldr r4, _0802ECD8 @ =gUnknown_2023FFC
|
||||
ldr r4, _0802ECD8 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r6]
|
||||
adds r2, r0, r4
|
||||
ldrb r1, [r2]
|
||||
@@ -1212,13 +1212,13 @@ _0802ECC6:
|
||||
eors r0, r2
|
||||
b _0802ED10
|
||||
.align 2, 0
|
||||
_0802ECD8: .4byte gUnknown_2023FFC
|
||||
_0802ECD8: .4byte gMoveSelectionCursor
|
||||
_0802ECDC:
|
||||
movs r0, 0x80
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802ED4C
|
||||
ldr r4, _0802ED40 @ =gUnknown_2023FFC
|
||||
ldr r4, _0802ED40 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r6]
|
||||
adds r3, r0, r4
|
||||
ldrb r2, [r3]
|
||||
@@ -1261,7 +1261,7 @@ _0802ED2C:
|
||||
bl BeginNormalPaletteFade
|
||||
b _0802EDBA
|
||||
.align 2, 0
|
||||
_0802ED40: .4byte gUnknown_2023FFC
|
||||
_0802ED40: .4byte gMoveSelectionCursor
|
||||
_0802ED44: .4byte gUnknown_3004FF8
|
||||
_0802ED48: .4byte 0x00007fff
|
||||
_0802ED4C:
|
||||
@@ -1278,7 +1278,7 @@ _0802ED4C:
|
||||
ands r5, r7
|
||||
cmp r5, 0
|
||||
bne _0802EDBA
|
||||
ldr r4, _0802ED8C @ =gUnknown_2023FFC
|
||||
ldr r4, _0802ED8C @ =gMoveSelectionCursor
|
||||
ldrb r0, [r6]
|
||||
adds r0, r4
|
||||
ldrb r0, [r0]
|
||||
@@ -1295,7 +1295,7 @@ _0802ED4C:
|
||||
.align 2, 0
|
||||
_0802ED84: .4byte gUnknown_3004FF8
|
||||
_0802ED88: .4byte gBattleTypeFlags
|
||||
_0802ED8C: .4byte gUnknown_2023FFC
|
||||
_0802ED8C: .4byte gMoveSelectionCursor
|
||||
_0802ED90: .4byte gUnknown_3004FF4
|
||||
_0802ED94:
|
||||
ldr r1, _0802EDC8 @ =gUnknown_3004FF4
|
||||
@@ -1369,7 +1369,7 @@ _0802EE18:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802EE58
|
||||
ldr r5, _0802EF4C @ =gUnknown_2023FFC
|
||||
ldr r5, _0802EF4C @ =gMoveSelectionCursor
|
||||
ldr r4, _0802EF50 @ =gActiveBattler
|
||||
ldrb r0, [r4]
|
||||
adds r2, r0, r5
|
||||
@@ -1400,7 +1400,7 @@ _0802EE58:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802EEA6
|
||||
ldr r5, _0802EF4C @ =gUnknown_2023FFC
|
||||
ldr r5, _0802EF4C @ =gMoveSelectionCursor
|
||||
ldr r4, _0802EF50 @ =gActiveBattler
|
||||
ldrb r0, [r4]
|
||||
adds r3, r0, r5
|
||||
@@ -1437,7 +1437,7 @@ _0802EEA6:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802EEE8
|
||||
ldr r5, _0802EF4C @ =gUnknown_2023FFC
|
||||
ldr r5, _0802EF4C @ =gMoveSelectionCursor
|
||||
ldr r4, _0802EF50 @ =gActiveBattler
|
||||
ldrb r0, [r4]
|
||||
adds r2, r0, r5
|
||||
@@ -1468,7 +1468,7 @@ _0802EEE8:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _0802EF36
|
||||
ldr r5, _0802EF4C @ =gUnknown_2023FFC
|
||||
ldr r5, _0802EF4C @ =gMoveSelectionCursor
|
||||
ldr r4, _0802EF50 @ =gActiveBattler
|
||||
ldrb r0, [r4]
|
||||
adds r3, r0, r5
|
||||
@@ -1507,7 +1507,7 @@ _0802EF36:
|
||||
_0802EF40: .4byte gMain
|
||||
_0802EF44: .4byte gBattle_BG0_X
|
||||
_0802EF48: .4byte gBattle_BG0_Y
|
||||
_0802EF4C: .4byte gUnknown_2023FFC
|
||||
_0802EF4C: .4byte gMoveSelectionCursor
|
||||
_0802EF50: .4byte gActiveBattler
|
||||
_0802EF54: .4byte gUnknown_3004FF8
|
||||
thumb_func_end sub_802EDDC
|
||||
@@ -1530,7 +1530,7 @@ sub_802EF58: @ 802EF58
|
||||
_0802EF72:
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r0, _0802F2E8 @ =gUnknown_2023FFC
|
||||
ldr r0, _0802F2E8 @ =gMoveSelectionCursor
|
||||
mov r10, r0
|
||||
ldr r1, _0802F2EC @ =gActiveBattler
|
||||
mov r8, r1
|
||||
@@ -1667,7 +1667,7 @@ _0802F06E:
|
||||
adds r6, 0x1
|
||||
cmp r6, 0x3
|
||||
ble _0802F06E
|
||||
ldr r1, _0802F2E8 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802F2E8 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r7]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
@@ -1831,7 +1831,7 @@ _0802F1B2:
|
||||
adds r6, 0x1
|
||||
cmp r6, 0x3
|
||||
ble _0802F1B2
|
||||
ldr r4, _0802F2E8 @ =gUnknown_2023FFC
|
||||
ldr r4, _0802F2E8 @ =gMoveSelectionCursor
|
||||
ldr r3, _0802F2EC @ =gActiveBattler
|
||||
ldrb r0, [r3]
|
||||
adds r0, r4
|
||||
@@ -1973,7 +1973,7 @@ _0802F2C8:
|
||||
b _0802F324
|
||||
.align 2, 0
|
||||
_0802F2E4: .4byte gMain
|
||||
_0802F2E8: .4byte gUnknown_2023FFC
|
||||
_0802F2E8: .4byte gMoveSelectionCursor
|
||||
_0802F2EC: .4byte gActiveBattler
|
||||
_0802F2F0: .4byte gUnknown_3004FF4
|
||||
_0802F2F4: .4byte gUnknown_2022BC8
|
||||
@@ -1995,7 +1995,7 @@ _0802F318:
|
||||
_0802F324:
|
||||
str r1, [r0]
|
||||
adds r7, r2, 0
|
||||
ldr r2, _0802F39C @ =gUnknown_2023FFC
|
||||
ldr r2, _0802F39C @ =gMoveSelectionCursor
|
||||
ldrb r0, [r7]
|
||||
adds r0, r2
|
||||
ldr r1, _0802F3A0 @ =gUnknown_3004FF4
|
||||
@@ -2021,7 +2021,7 @@ _0802F34C:
|
||||
ldr r0, _0802F3A0 @ =gUnknown_3004FF4
|
||||
ldrb r0, [r0]
|
||||
bl MoveSelectionDestroyCursorAt
|
||||
ldr r1, _0802F39C @ =gUnknown_2023FFC
|
||||
ldr r1, _0802F39C @ =gMoveSelectionCursor
|
||||
ldr r4, _0802F394 @ =gActiveBattler
|
||||
ldrb r0, [r4]
|
||||
adds r0, r1
|
||||
@@ -2044,7 +2044,7 @@ _0802F34C:
|
||||
_0802F390: .4byte gBattlerControllerFuncs
|
||||
_0802F394: .4byte gActiveBattler
|
||||
_0802F398: .4byte sub_802EA10
|
||||
_0802F39C: .4byte gUnknown_2023FFC
|
||||
_0802F39C: .4byte gMoveSelectionCursor
|
||||
_0802F3A0: .4byte gUnknown_3004FF4
|
||||
_0802F3A4: .4byte gMain
|
||||
_0802F3A8: .4byte gBattleTypeFlags
|
||||
@@ -2073,7 +2073,7 @@ _0802F3C8:
|
||||
ands r0, r2
|
||||
cmp r0, 0
|
||||
beq _0802F454
|
||||
ldr r0, _0802F408 @ =gUnknown_2023FFC
|
||||
ldr r0, _0802F408 @ =gMoveSelectionCursor
|
||||
ldr r1, _0802F40C @ =gActiveBattler
|
||||
ldrb r1, [r1]
|
||||
adds r1, r0
|
||||
@@ -2089,7 +2089,7 @@ _0802F3F8: .4byte gBattlerControllerFuncs
|
||||
_0802F3FC: .4byte sub_802EA10
|
||||
_0802F400: .4byte gMain
|
||||
_0802F404: .4byte gUnknown_3004FF4
|
||||
_0802F408: .4byte gUnknown_2023FFC
|
||||
_0802F408: .4byte gMoveSelectionCursor
|
||||
_0802F40C: .4byte gActiveBattler
|
||||
_0802F410:
|
||||
ldrb r0, [r3]
|
||||
@@ -2102,7 +2102,7 @@ _0802F416:
|
||||
strb r0, [r4]
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r1, _0802F444 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802F444 @ =gMoveSelectionCursor
|
||||
ldr r0, _0802F448 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@@ -2116,7 +2116,7 @@ _0802F416:
|
||||
b _0802F454
|
||||
.align 2, 0
|
||||
_0802F440: .4byte gUnknown_3004FF4
|
||||
_0802F444: .4byte gUnknown_2023FFC
|
||||
_0802F444: .4byte gMoveSelectionCursor
|
||||
_0802F448: .4byte gActiveBattler
|
||||
_0802F44C:
|
||||
ldrb r0, [r4]
|
||||
@@ -2141,7 +2141,7 @@ _0802F454:
|
||||
ldrb r1, [r1]
|
||||
cmp r0, r1
|
||||
bcs _0802F4E8
|
||||
ldr r0, _0802F49C @ =gUnknown_2023FFC
|
||||
ldr r0, _0802F49C @ =gMoveSelectionCursor
|
||||
ldr r1, _0802F4A0 @ =gActiveBattler
|
||||
ldrb r1, [r1]
|
||||
adds r1, r0
|
||||
@@ -2156,7 +2156,7 @@ _0802F454:
|
||||
_0802F490: .4byte gMain
|
||||
_0802F494: .4byte gUnknown_3004FF4
|
||||
_0802F498: .4byte gUnknown_3004FF8
|
||||
_0802F49C: .4byte gUnknown_2023FFC
|
||||
_0802F49C: .4byte gMoveSelectionCursor
|
||||
_0802F4A0: .4byte gActiveBattler
|
||||
_0802F4A4:
|
||||
ldrb r0, [r3]
|
||||
@@ -2169,7 +2169,7 @@ _0802F4AA:
|
||||
strb r0, [r4]
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r1, _0802F4D8 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802F4D8 @ =gMoveSelectionCursor
|
||||
ldr r0, _0802F4DC @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@@ -2183,7 +2183,7 @@ _0802F4AA:
|
||||
b _0802F4E8
|
||||
.align 2, 0
|
||||
_0802F4D4: .4byte gUnknown_3004FF4
|
||||
_0802F4D8: .4byte gUnknown_2023FFC
|
||||
_0802F4D8: .4byte gMoveSelectionCursor
|
||||
_0802F4DC: .4byte gActiveBattler
|
||||
_0802F4E0:
|
||||
ldrb r0, [r4]
|
||||
@@ -2202,7 +2202,7 @@ _0802F4E8:
|
||||
ands r0, r2
|
||||
cmp r0, 0
|
||||
beq _0802F56C
|
||||
ldr r0, _0802F520 @ =gUnknown_2023FFC
|
||||
ldr r0, _0802F520 @ =gMoveSelectionCursor
|
||||
ldr r1, _0802F524 @ =gActiveBattler
|
||||
ldrb r1, [r1]
|
||||
adds r1, r0
|
||||
@@ -2216,7 +2216,7 @@ _0802F4E8:
|
||||
.align 2, 0
|
||||
_0802F518: .4byte gMain
|
||||
_0802F51C: .4byte gUnknown_3004FF4
|
||||
_0802F520: .4byte gUnknown_2023FFC
|
||||
_0802F520: .4byte gMoveSelectionCursor
|
||||
_0802F524: .4byte gActiveBattler
|
||||
_0802F528:
|
||||
ldrb r0, [r3]
|
||||
@@ -2229,7 +2229,7 @@ _0802F52E:
|
||||
strb r0, [r4]
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r1, _0802F55C @ =gUnknown_2023FFC
|
||||
ldr r1, _0802F55C @ =gMoveSelectionCursor
|
||||
ldr r0, _0802F560 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@@ -2243,7 +2243,7 @@ _0802F52E:
|
||||
b _0802F56C
|
||||
.align 2, 0
|
||||
_0802F558: .4byte gUnknown_3004FF4
|
||||
_0802F55C: .4byte gUnknown_2023FFC
|
||||
_0802F55C: .4byte gMoveSelectionCursor
|
||||
_0802F560: .4byte gActiveBattler
|
||||
_0802F564:
|
||||
ldrb r0, [r4]
|
||||
@@ -2268,7 +2268,7 @@ _0802F56C:
|
||||
ldrb r1, [r1]
|
||||
cmp r0, r1
|
||||
bcs _0802F600
|
||||
ldr r0, _0802F5B4 @ =gUnknown_2023FFC
|
||||
ldr r0, _0802F5B4 @ =gMoveSelectionCursor
|
||||
ldr r1, _0802F5B8 @ =gActiveBattler
|
||||
ldrb r1, [r1]
|
||||
adds r1, r0
|
||||
@@ -2283,7 +2283,7 @@ _0802F56C:
|
||||
_0802F5A8: .4byte gMain
|
||||
_0802F5AC: .4byte gUnknown_3004FF4
|
||||
_0802F5B0: .4byte gUnknown_3004FF8
|
||||
_0802F5B4: .4byte gUnknown_2023FFC
|
||||
_0802F5B4: .4byte gMoveSelectionCursor
|
||||
_0802F5B8: .4byte gActiveBattler
|
||||
_0802F5BC:
|
||||
ldrb r0, [r3]
|
||||
@@ -2296,7 +2296,7 @@ _0802F5C2:
|
||||
strb r0, [r4]
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r1, _0802F5F0 @ =gUnknown_2023FFC
|
||||
ldr r1, _0802F5F0 @ =gMoveSelectionCursor
|
||||
ldr r0, _0802F5F4 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@@ -2310,7 +2310,7 @@ _0802F5C2:
|
||||
b _0802F600
|
||||
.align 2, 0
|
||||
_0802F5EC: .4byte gUnknown_3004FF4
|
||||
_0802F5F0: .4byte gUnknown_2023FFC
|
||||
_0802F5F0: .4byte gMoveSelectionCursor
|
||||
_0802F5F4: .4byte gActiveBattler
|
||||
_0802F5F8:
|
||||
ldrb r0, [r4]
|
||||
@@ -2363,7 +2363,7 @@ _0802F658: .4byte 0x00000439
|
||||
_0802F65C: .4byte gPreBattleCallback1
|
||||
_0802F660: .4byte sub_8011A1C
|
||||
_0802F664:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0802F694
|
||||
@@ -3474,7 +3474,7 @@ _0802FEF2:
|
||||
lsrs r2, 16
|
||||
movs r0, 0x1
|
||||
movs r1, 0xB
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
strb r5, [r4]
|
||||
bl IsDoubleBattle
|
||||
lsls r0, 24
|
||||
@@ -3766,7 +3766,7 @@ _08030124:
|
||||
lsrs r2, 16
|
||||
movs r0, 0x1
|
||||
movs r1, 0xB
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
strb r5, [r4]
|
||||
ldr r0, _08030200 @ =sub_8030238
|
||||
str r0, [r6]
|
||||
@@ -4355,7 +4355,7 @@ sub_8030684: @ 8030684
|
||||
ldrb r1, [r0]
|
||||
ldr r2, _080306C8 @ =gUnknown_203B0DC
|
||||
movs r0, 0x1
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
b _080306D6
|
||||
.align 2, 0
|
||||
_080306B4: .4byte gMain
|
||||
@@ -4368,7 +4368,7 @@ _080306CC:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x6
|
||||
movs r2, 0
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
_080306D6:
|
||||
ldr r1, _080306F8 @ =gBattleBufferA
|
||||
ldr r0, _080306FC @ =gActiveBattler
|
||||
@@ -4438,7 +4438,7 @@ CompleteWhenChoseItem: @ 803073C
|
||||
ldr r0, _08030774 @ =gSpecialVar_ItemId
|
||||
ldrh r1, [r0]
|
||||
movs r0, 0x1
|
||||
bl EmitOneReturnValue
|
||||
bl BtlController_EmitOneReturnValue
|
||||
bl PlayerBufferExecCompleted
|
||||
_08030762:
|
||||
pop {r0}
|
||||
@@ -4638,7 +4638,7 @@ MoveSelectionDisplayPpNumber: @ 80308CC
|
||||
adds r0, r5, 0x4
|
||||
adds r4, r0
|
||||
ldr r6, _08030938 @ =gDisplayedStringBattle
|
||||
ldr r5, _0803093C @ =gUnknown_2023FFC
|
||||
ldr r5, _0803093C @ =gMoveSelectionCursor
|
||||
adds r1, r5
|
||||
adds r0, r4, 0
|
||||
adds r0, 0x8
|
||||
@@ -4672,7 +4672,7 @@ _08030928:
|
||||
_08030930: .4byte gBattleBufferA
|
||||
_08030934: .4byte gActiveBattler
|
||||
_08030938: .4byte gDisplayedStringBattle
|
||||
_0803093C: .4byte gUnknown_2023FFC
|
||||
_0803093C: .4byte gMoveSelectionCursor
|
||||
thumb_func_end MoveSelectionDisplayPpNumber
|
||||
|
||||
thumb_func_start MoveSelectionDisplayMoveType
|
||||
@@ -4702,7 +4702,7 @@ MoveSelectionDisplayMoveType: @ 8030940
|
||||
bl StringCopy
|
||||
adds r3, r0, 0
|
||||
ldr r2, _080309C0 @ =gBattleMoves
|
||||
ldr r1, _080309C4 @ =gUnknown_2023FFC
|
||||
ldr r1, _080309C4 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r5]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
@@ -4733,7 +4733,7 @@ _080309B4: .4byte gDisplayedStringBattle
|
||||
_080309B8: .4byte gUnknown_83FE76A
|
||||
_080309BC: .4byte gUnknown_83FE770
|
||||
_080309C0: .4byte gBattleMoves
|
||||
_080309C4: .4byte gUnknown_2023FFC
|
||||
_080309C4: .4byte gMoveSelectionCursor
|
||||
_080309C8: .4byte gUnknown_824F1A0
|
||||
thumb_func_end MoveSelectionDisplayMoveType
|
||||
|
||||
@@ -5032,7 +5032,7 @@ _08030BEA:
|
||||
lsrs r1, 16
|
||||
movs r0, 0x1
|
||||
mov r2, sp
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl PlayerBufferExecCompleted
|
||||
add sp, 0x100
|
||||
pop {r4-r6}
|
||||
@@ -6029,7 +6029,7 @@ _08031406:
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x1
|
||||
adds r2, r4, 0
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl PlayerBufferExecCompleted
|
||||
add sp, 0x58
|
||||
pop {r4-r7}
|
||||
@@ -7366,7 +7366,7 @@ PlayerHandleSwitchInAnim: @ 8031F68
|
||||
ldrb r0, [r5]
|
||||
adds r0, r1
|
||||
strb r4, [r0]
|
||||
ldr r1, _08031FE8 @ =gUnknown_2023FFC
|
||||
ldr r1, _08031FE8 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r5]
|
||||
adds r0, r1
|
||||
strb r4, [r0]
|
||||
@@ -7390,7 +7390,7 @@ _08031FD8: .4byte gBattleBufferA
|
||||
_08031FDC: .4byte gBattlerPartyIndexes
|
||||
_08031FE0: .4byte gPlayerParty
|
||||
_08031FE4: .4byte gActionSelectionCursor
|
||||
_08031FE8: .4byte gUnknown_2023FFC
|
||||
_08031FE8: .4byte gMoveSelectionCursor
|
||||
_08031FEC: .4byte gBattlerControllerFuncs
|
||||
_08031FF0: .4byte sub_802FD18
|
||||
thumb_func_end PlayerHandleSwitchInAnim
|
||||
@@ -8961,7 +8961,7 @@ sub_8032CB4: @ 8032CB4
|
||||
ldr r1, _08032CE0 @ =gUnknown_3004FF4
|
||||
movs r0, 0xFF
|
||||
strb r0, [r1]
|
||||
ldr r1, _08032CE4 @ =gUnknown_2023FFC
|
||||
ldr r1, _08032CE4 @ =gMoveSelectionCursor
|
||||
ldr r0, _08032CE8 @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
@@ -8975,7 +8975,7 @@ sub_8032CB4: @ 8032CB4
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08032CE0: .4byte gUnknown_3004FF4
|
||||
_08032CE4: .4byte gUnknown_2023FFC
|
||||
_08032CE4: .4byte gMoveSelectionCursor
|
||||
_08032CE8: .4byte gActiveBattler
|
||||
thumb_func_end sub_8032CB4
|
||||
|
||||
@@ -9629,7 +9629,7 @@ PlayerHandleTwoReturnValues: @ 8033230
|
||||
movs r0, 0x1
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
bl PlayerBufferExecCompleted
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -9641,7 +9641,7 @@ PlayerHandleChosenMonReturnValue: @ 8033244
|
||||
movs r0, 0x1
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
bl PlayerBufferExecCompleted
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -9652,7 +9652,7 @@ PlayerHandleOneReturnValue: @ 8033258
|
||||
push {lr}
|
||||
movs r0, 0x1
|
||||
movs r1, 0
|
||||
bl EmitOneReturnValue
|
||||
bl BtlController_EmitOneReturnValue
|
||||
bl PlayerBufferExecCompleted
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -9663,7 +9663,7 @@ PlayerHandleOneReturnValue_Duplicate: @ 803326C
|
||||
push {lr}
|
||||
movs r0, 0x1
|
||||
movs r1, 0
|
||||
bl EmitOneReturnValue_Duplicate
|
||||
bl BtlController_EmitOneReturnValue_Duplicate
|
||||
bl PlayerBufferExecCompleted
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -10640,21 +10640,21 @@ _08033A3E:
|
||||
ldr r0, _08033A50 @ =gActionSelectionCursor
|
||||
adds r0, r3, r0
|
||||
strb r2, [r0]
|
||||
ldr r1, _08033A54 @ =gUnknown_2023FFC
|
||||
ldr r1, _08033A54 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r4]
|
||||
adds r0, r1
|
||||
strb r2, [r0]
|
||||
b _08033A68
|
||||
.align 2, 0
|
||||
_08033A50: .4byte gActionSelectionCursor
|
||||
_08033A54: .4byte gUnknown_2023FFC
|
||||
_08033A54: .4byte gMoveSelectionCursor
|
||||
_08033A58:
|
||||
ldr r0, _08033A5C @ =gActionSelectionCursor
|
||||
b _08033A62
|
||||
.align 2, 0
|
||||
_08033A5C: .4byte gActionSelectionCursor
|
||||
_08033A60:
|
||||
ldr r0, _08033A74 @ =gUnknown_2023FFC
|
||||
ldr r0, _08033A74 @ =gMoveSelectionCursor
|
||||
_08033A62:
|
||||
adds r0, r3, r0
|
||||
movs r1, 0
|
||||
@@ -10665,7 +10665,7 @@ _08033A68:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08033A74: .4byte gUnknown_2023FFC
|
||||
_08033A74: .4byte gMoveSelectionCursor
|
||||
thumb_func_end PlayerHandleResetActionMoveSelection
|
||||
|
||||
thumb_func_start PlayerHandlecmd55
|
||||
@@ -10726,7 +10726,7 @@ _08033ADE:
|
||||
lsls r2, r1, 9
|
||||
ldr r0, _08033B1C @ =gUnknown_2022BC8
|
||||
adds r2, r0
|
||||
ldr r0, _08033B20 @ =gUnknown_2023FFC
|
||||
ldr r0, _08033B20 @ =gMoveSelectionCursor
|
||||
adds r1, r0
|
||||
ldrb r0, [r1]
|
||||
lsls r0, 1
|
||||
@@ -10751,7 +10751,7 @@ _08033ADE:
|
||||
_08033B14: .4byte gBattleTypeFlags
|
||||
_08033B18: .4byte gActiveBattler
|
||||
_08033B1C: .4byte gUnknown_2022BC8
|
||||
_08033B20: .4byte gUnknown_2023FFC
|
||||
_08033B20: .4byte gMoveSelectionCursor
|
||||
_08033B24:
|
||||
ldr r1, _08033B40 @ =gBattleMoves
|
||||
lsls r0, r4, 1
|
||||
|
||||
@@ -10,8 +10,8 @@ nullsub_99: @ 81560A0
|
||||
bx lr
|
||||
thumb_func_end nullsub_99
|
||||
|
||||
thumb_func_start sub_81560A4
|
||||
sub_81560A4: @ 81560A4
|
||||
thumb_func_start SetControllerToPokedude
|
||||
SetControllerToPokedude: @ 81560A4
|
||||
ldr r1, _081560C8 @ =gBattlerControllerFuncs
|
||||
ldr r0, _081560CC @ =gActiveBattler
|
||||
ldrb r0, [r0]
|
||||
@@ -36,7 +36,7 @@ _081560CC: .4byte gActiveBattler
|
||||
_081560D0: .4byte sub_81560DC
|
||||
_081560D4: .4byte gBattleStruct
|
||||
_081560D8: .4byte gSpecialVar_0x8004
|
||||
thumb_func_end sub_81560A4
|
||||
thumb_func_end SetControllerToPokedude
|
||||
|
||||
thumb_func_start sub_81560DC
|
||||
sub_81560DC: @ 81560DC
|
||||
@@ -603,7 +603,7 @@ sub_8156538: @ 8156538
|
||||
ldrb r1, [r0]
|
||||
ldr r2, _0815657C @ =gUnknown_203B0DC
|
||||
movs r0, 0x1
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
b _0815658A
|
||||
.align 2, 0
|
||||
_08156568: .4byte gMain
|
||||
@@ -616,7 +616,7 @@ _08156580:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x6
|
||||
movs r2, 0
|
||||
bl EmitChosenMonReturnValue
|
||||
bl BtlController_EmitChosenMonReturnValue
|
||||
_0815658A:
|
||||
bl PlayerPartnerBufferExecCompleted
|
||||
_0815658E:
|
||||
@@ -683,7 +683,7 @@ sub_81565E8: @ 81565E8
|
||||
ldr r0, _08156620 @ =gSpecialVar_ItemId
|
||||
ldrh r1, [r0]
|
||||
movs r0, 0x1
|
||||
bl EmitOneReturnValue
|
||||
bl BtlController_EmitOneReturnValue
|
||||
bl PlayerPartnerBufferExecCompleted
|
||||
_0815660E:
|
||||
pop {r0}
|
||||
@@ -1121,7 +1121,7 @@ _08156922:
|
||||
lsrs r2, 16
|
||||
movs r0, 0x1
|
||||
movs r1, 0xB
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
strb r5, [r4]
|
||||
bl IsDoubleBattle
|
||||
lsls r0, 24
|
||||
@@ -1413,7 +1413,7 @@ _08156B54:
|
||||
lsrs r2, 16
|
||||
movs r0, 0x1
|
||||
movs r1, 0xB
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
strb r5, [r4]
|
||||
ldr r0, _08156C30 @ =sub_8156C68
|
||||
str r0, [r6]
|
||||
@@ -2102,7 +2102,7 @@ _08157186:
|
||||
lsrs r1, 16
|
||||
movs r0, 0x1
|
||||
mov r2, sp
|
||||
bl EmitDataTransfer
|
||||
bl BtlController_EmitDataTransfer
|
||||
bl PlayerPartnerBufferExecCompleted
|
||||
add sp, 0x100
|
||||
pop {r4-r6}
|
||||
@@ -4080,7 +4080,7 @@ sub_815823C: @ 815823C
|
||||
ldrb r0, [r5]
|
||||
adds r0, r1
|
||||
strb r4, [r0]
|
||||
ldr r1, _081582B4 @ =gUnknown_2023FFC
|
||||
ldr r1, _081582B4 @ =gMoveSelectionCursor
|
||||
ldrb r0, [r5]
|
||||
adds r0, r1
|
||||
strb r4, [r0]
|
||||
@@ -4101,7 +4101,7 @@ _081582A4: .4byte gBattleBufferA
|
||||
_081582A8: .4byte gBattlerPartyIndexes
|
||||
_081582AC: .4byte gPlayerParty
|
||||
_081582B0: .4byte gActionSelectionCursor
|
||||
_081582B4: .4byte gUnknown_2023FFC
|
||||
_081582B4: .4byte gMoveSelectionCursor
|
||||
_081582B8: .4byte gBattlerControllerFuncs
|
||||
_081582BC: .4byte sub_81563A8
|
||||
thumb_func_end sub_815823C
|
||||
@@ -6839,13 +6839,13 @@ _081598DA:
|
||||
movs r1, 0x2
|
||||
_081598DE:
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
b _081598F0
|
||||
_081598E6:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x3
|
||||
movs r2, 0
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
_081598F0:
|
||||
bl PlayerPartnerBufferExecCompleted
|
||||
ldr r3, _08159924 @ =gUnknown_3005EE0
|
||||
@@ -6984,7 +6984,7 @@ _081599DE:
|
||||
orrs r2, r1
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
bl EmitTwoReturnValues
|
||||
bl BtlController_EmitTwoReturnValues
|
||||
bl PlayerPartnerBufferExecCompleted
|
||||
ldrb r0, [r6]
|
||||
lsls r0, 2
|
||||
@@ -7012,7 +7012,7 @@ _08159A3C: .4byte gBattleStruct
|
||||
_08159A40: .4byte gUnknown_3005EE0
|
||||
_08159A44: .4byte gActiveBattler
|
||||
_08159A48:
|
||||
ldr r5, _08159AAC @ =gUnknown_2023FFC
|
||||
ldr r5, _08159AAC @ =gMoveSelectionCursor
|
||||
adds r1, r2, r5
|
||||
ldrb r0, [r3]
|
||||
ldrb r1, [r1]
|
||||
@@ -7061,7 +7061,7 @@ _08159AA0:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08159AAC: .4byte gUnknown_2023FFC
|
||||
_08159AAC: .4byte gMoveSelectionCursor
|
||||
_08159AB0: .4byte gUnknown_3005EE0
|
||||
_08159AB4: .4byte gActiveBattler
|
||||
thumb_func_end sub_8159998
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+30
-30
@@ -23,7 +23,7 @@ BufferStringBattle: @ 80D7274
|
||||
ldr r0, _080D7338 @ =gUnknown_2022BC8
|
||||
adds r1, r0
|
||||
str r1, [r4]
|
||||
ldr r2, _080D733C @ =gUnknown_2023D68
|
||||
ldr r2, _080D733C @ =gLastUsedItem
|
||||
ldrh r0, [r1, 0x4]
|
||||
strh r0, [r2]
|
||||
ldr r2, _080D7340 @ =gLastUsedAbility
|
||||
@@ -71,7 +71,7 @@ _080D72D6:
|
||||
mov r8, r0
|
||||
ldr r3, _080D7330 @ =gUnknown_2039A34
|
||||
ldr r5, _080D7358 @ =gBattleTextBuff2
|
||||
ldr r4, _080D735C @ =gUnknown_2022AD8
|
||||
ldr r4, _080D735C @ =gBattleTextBuff3
|
||||
_080D72F4:
|
||||
mov r0, r8
|
||||
adds r1, r2, r0
|
||||
@@ -108,7 +108,7 @@ _080D7326:
|
||||
_080D7330: .4byte gUnknown_2039A34
|
||||
_080D7334: .4byte gActiveBattler
|
||||
_080D7338: .4byte gUnknown_2022BC8
|
||||
_080D733C: .4byte gUnknown_2023D68
|
||||
_080D733C: .4byte gLastUsedItem
|
||||
_080D7340: .4byte gLastUsedAbility
|
||||
_080D7344: .4byte gBattleScripting
|
||||
_080D7348: .4byte gBattleStruct
|
||||
@@ -116,7 +116,7 @@ _080D734C: .4byte gPotentialItemEffectBattler
|
||||
_080D7350: .4byte gBattleTextBuff1
|
||||
_080D7354: .4byte gUnknown_2039A30
|
||||
_080D7358: .4byte gBattleTextBuff2
|
||||
_080D735C: .4byte gUnknown_2022AD8
|
||||
_080D735C: .4byte gBattleTextBuff3
|
||||
_080D7360: .4byte _080D7364
|
||||
.align 2, 0
|
||||
_080D7364:
|
||||
@@ -890,7 +890,7 @@ _080D79A2:
|
||||
_080D79B0: .4byte gBattleTextBuff2
|
||||
_080D79B4: .4byte gStringVar2
|
||||
_080D79B8:
|
||||
ldr r1, _080D79D0 @ =gUnknown_2022AD8
|
||||
ldr r1, _080D79D0 @ =gBattleTextBuff3
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0xFD
|
||||
bne _080D79D8
|
||||
@@ -902,7 +902,7 @@ _080D79C4:
|
||||
bl ExpandBattleTextBuffPlaceholders
|
||||
bl _080D8382
|
||||
.align 2, 0
|
||||
_080D79D0: .4byte gUnknown_2022AD8
|
||||
_080D79D0: .4byte gBattleTextBuff3
|
||||
_080D79D4: .4byte gStringVar3
|
||||
_080D79D8:
|
||||
adds r4, r1, 0
|
||||
@@ -1073,7 +1073,7 @@ _080D7B40: .4byte gBattlerPartyIndexes
|
||||
_080D7B44: .4byte gLinkPlayers
|
||||
_080D7B48: .4byte gEnemyParty
|
||||
_080D7B4C:
|
||||
ldr r4, _080D7B70 @ =sBattler_AI
|
||||
ldr r4, _080D7B70 @ =gBattlerAttacker
|
||||
ldrb r0, [r4]
|
||||
bl GetBattlerSide
|
||||
lsls r0, 24
|
||||
@@ -1090,7 +1090,7 @@ _080D7B4C:
|
||||
ldr r4, _080D7B7C @ =gUnknown_83FD55B
|
||||
b _080D7B8A
|
||||
.align 2, 0
|
||||
_080D7B70: .4byte sBattler_AI
|
||||
_080D7B70: .4byte gBattlerAttacker
|
||||
_080D7B74: .4byte gBattleTypeFlags
|
||||
_080D7B78: .4byte gUnknown_83FD555
|
||||
_080D7B7C: .4byte gUnknown_83FD55B
|
||||
@@ -1140,7 +1140,7 @@ _080D7BC0:
|
||||
.align 2, 0
|
||||
_080D7BDC: .4byte gBattlerPartyIndexes
|
||||
_080D7BE0:
|
||||
ldr r4, _080D7C14 @ =sBattler_AI
|
||||
ldr r4, _080D7C14 @ =gBattlerAttacker
|
||||
ldrb r0, [r4]
|
||||
bl GetBattlerSide
|
||||
lsls r0, 24
|
||||
@@ -1164,7 +1164,7 @@ _080D7BE0:
|
||||
adds r0, r1
|
||||
b _080D82AA
|
||||
.align 2, 0
|
||||
_080D7C14: .4byte sBattler_AI
|
||||
_080D7C14: .4byte gBattlerAttacker
|
||||
_080D7C18: .4byte gBattlerPartyIndexes
|
||||
_080D7C1C: .4byte gPlayerParty
|
||||
_080D7C20:
|
||||
@@ -1188,7 +1188,7 @@ _080D7C20:
|
||||
_080D7C44: .4byte gBattlerPartyIndexes
|
||||
_080D7C48: .4byte gEnemyParty
|
||||
_080D7C4C:
|
||||
ldr r5, _080D7C98 @ =sBattler_AI
|
||||
ldr r5, _080D7C98 @ =gBattlerAttacker
|
||||
ldrb r0, [r5]
|
||||
bl GetBattlerSide
|
||||
lsls r0, 24
|
||||
@@ -1228,7 +1228,7 @@ _080D7C8C:
|
||||
ldrh r1, [r0]
|
||||
b _080D82A4
|
||||
.align 2, 0
|
||||
_080D7C98: .4byte sBattler_AI
|
||||
_080D7C98: .4byte gBattlerAttacker
|
||||
_080D7C9C: .4byte gBattleTypeFlags
|
||||
_080D7CA0: .4byte gUnknown_83FD555
|
||||
_080D7CA4: .4byte gUnknown_83FD55B
|
||||
@@ -1300,7 +1300,7 @@ _080D7D24:
|
||||
.align 2, 0
|
||||
_080D7D30: .4byte gBattlerPartyIndexes
|
||||
_080D7D34:
|
||||
ldr r5, _080D7D80 @ =gUnknown_2023D6E
|
||||
ldr r5, _080D7D80 @ =gEffectBattler
|
||||
ldrb r0, [r5]
|
||||
bl GetBattlerSide
|
||||
lsls r0, 24
|
||||
@@ -1340,7 +1340,7 @@ _080D7D74:
|
||||
ldrh r1, [r0]
|
||||
b _080D82A4
|
||||
.align 2, 0
|
||||
_080D7D80: .4byte gUnknown_2023D6E
|
||||
_080D7D80: .4byte gEffectBattler
|
||||
_080D7D84: .4byte gBattleTypeFlags
|
||||
_080D7D88: .4byte gUnknown_83FD555
|
||||
_080D7D8C: .4byte gUnknown_83FD55B
|
||||
@@ -1517,7 +1517,7 @@ _080D7EE4:
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _080D7F9C
|
||||
ldr r2, _080D7F20 @ =gUnknown_2023D68
|
||||
ldr r2, _080D7F20 @ =gLastUsedItem
|
||||
ldrh r0, [r2]
|
||||
cmp r0, 0xAF
|
||||
bne _080D7F98
|
||||
@@ -1540,7 +1540,7 @@ _080D7EE4:
|
||||
b _080D7F90
|
||||
.align 2, 0
|
||||
_080D7F1C: .4byte gBattleTypeFlags
|
||||
_080D7F20: .4byte gUnknown_2023D68
|
||||
_080D7F20: .4byte gLastUsedItem
|
||||
_080D7F24: .4byte gBattleStruct
|
||||
_080D7F28: .4byte gPotentialItemEffectBattler
|
||||
_080D7F2C:
|
||||
@@ -1600,7 +1600,7 @@ _080D7F98:
|
||||
ldrh r0, [r2]
|
||||
b _080D7FA0
|
||||
_080D7F9C:
|
||||
ldr r0, _080D7FAC @ =gUnknown_2023D68
|
||||
ldr r0, _080D7FAC @ =gLastUsedItem
|
||||
ldrh r0, [r0]
|
||||
_080D7FA0:
|
||||
mov r1, sp
|
||||
@@ -1608,7 +1608,7 @@ _080D7FA0:
|
||||
mov r4, sp
|
||||
b _080D8382
|
||||
.align 2, 0
|
||||
_080D7FAC: .4byte gUnknown_2023D68
|
||||
_080D7FAC: .4byte gLastUsedItem
|
||||
_080D7FB0:
|
||||
ldr r0, _080D7FB4 @ =gLastUsedAbility
|
||||
b _080D7FF0
|
||||
@@ -1616,11 +1616,11 @@ _080D7FB0:
|
||||
_080D7FB4: .4byte gLastUsedAbility
|
||||
_080D7FB8:
|
||||
ldr r1, _080D7FC0 @ =gUnknown_2039A30
|
||||
ldr r0, _080D7FC4 @ =sBattler_AI
|
||||
ldr r0, _080D7FC4 @ =gBattlerAttacker
|
||||
b _080D7FEC
|
||||
.align 2, 0
|
||||
_080D7FC0: .4byte gUnknown_2039A30
|
||||
_080D7FC4: .4byte sBattler_AI
|
||||
_080D7FC4: .4byte gBattlerAttacker
|
||||
_080D7FC8:
|
||||
ldr r1, _080D7FD0 @ =gUnknown_2039A30
|
||||
ldr r0, _080D7FD4 @ =gBattlerTarget
|
||||
@@ -1638,7 +1638,7 @@ _080D7FE0: .4byte gUnknown_2039A30
|
||||
_080D7FE4: .4byte gBattleScripting
|
||||
_080D7FE8:
|
||||
ldr r1, _080D7FFC @ =gUnknown_2039A30
|
||||
ldr r0, _080D8000 @ =gUnknown_2023D6E
|
||||
ldr r0, _080D8000 @ =gEffectBattler
|
||||
_080D7FEC:
|
||||
ldrb r0, [r0]
|
||||
_080D7FEE:
|
||||
@@ -1652,7 +1652,7 @@ _080D7FF0:
|
||||
b _080D8382
|
||||
.align 2, 0
|
||||
_080D7FFC: .4byte gUnknown_2039A30
|
||||
_080D8000: .4byte gUnknown_2023D6E
|
||||
_080D8000: .4byte gEffectBattler
|
||||
_080D8004: .4byte gUnknown_824FC40
|
||||
_080D8008:
|
||||
ldr r3, _080D8020 @ =gTrainerBattleOpponent_A
|
||||
@@ -2045,10 +2045,10 @@ _080D830C: .4byte 0x00000834
|
||||
_080D8310: .4byte gUnknown_83FD81A
|
||||
_080D8314: .4byte gUnknown_83FD824
|
||||
_080D8318:
|
||||
ldr r0, _080D831C @ =sBattler_AI
|
||||
ldr r0, _080D831C @ =gBattlerAttacker
|
||||
b _080D8322
|
||||
.align 2, 0
|
||||
_080D831C: .4byte sBattler_AI
|
||||
_080D831C: .4byte gBattlerAttacker
|
||||
_080D8320:
|
||||
ldr r0, _080D8334 @ =gBattlerTarget
|
||||
_080D8322:
|
||||
@@ -2065,10 +2065,10 @@ _080D8334: .4byte gBattlerTarget
|
||||
_080D8338: .4byte gUnknown_83FD569
|
||||
_080D833C: .4byte gUnknown_83FD56D
|
||||
_080D8340:
|
||||
ldr r0, _080D8344 @ =sBattler_AI
|
||||
ldr r0, _080D8344 @ =gBattlerAttacker
|
||||
b _080D834A
|
||||
.align 2, 0
|
||||
_080D8344: .4byte sBattler_AI
|
||||
_080D8344: .4byte gBattlerAttacker
|
||||
_080D8348:
|
||||
ldr r0, _080D835C @ =gBattlerTarget
|
||||
_080D834A:
|
||||
@@ -2085,10 +2085,10 @@ _080D835C: .4byte gBattlerTarget
|
||||
_080D8360: .4byte gUnknown_83FD560
|
||||
_080D8364: .4byte gUnknown_83FD564
|
||||
_080D8368:
|
||||
ldr r0, _080D836C @ =sBattler_AI
|
||||
ldr r0, _080D836C @ =gBattlerAttacker
|
||||
b _080D8372
|
||||
.align 2, 0
|
||||
_080D836C: .4byte sBattler_AI
|
||||
_080D836C: .4byte gBattlerAttacker
|
||||
_080D8370:
|
||||
ldr r0, _080D83D4 @ =gBattlerTarget
|
||||
_080D8372:
|
||||
@@ -2946,7 +2946,7 @@ SetPpNumbersPaletteInMoveSelection: @ 80D89DC
|
||||
ldr r0, _080D8A3C @ =gUnknown_2022BC8
|
||||
adds r1, r0
|
||||
ldr r4, _080D8A40 @ =gUnknown_8D2FBB4
|
||||
ldr r0, _080D8A44 @ =gUnknown_2023FFC
|
||||
ldr r0, _080D8A44 @ =gMoveSelectionCursor
|
||||
adds r2, r0
|
||||
ldrb r2, [r2]
|
||||
adds r0, r1, 0
|
||||
@@ -2985,7 +2985,7 @@ SetPpNumbersPaletteInMoveSelection: @ 80D89DC
|
||||
_080D8A38: .4byte gActiveBattler
|
||||
_080D8A3C: .4byte gUnknown_2022BC8
|
||||
_080D8A40: .4byte gUnknown_8D2FBB4
|
||||
_080D8A44: .4byte gUnknown_2023FFC
|
||||
_080D8A44: .4byte gMoveSelectionCursor
|
||||
_080D8A48: .4byte gPlttBufferUnfaded
|
||||
_080D8A4C: .4byte gPlttBufferFaded + 0xB8
|
||||
thumb_func_end SetPpNumbersPaletteInMoveSelection
|
||||
|
||||
+583
-583
File diff suppressed because it is too large
Load Diff
+169
-169
File diff suppressed because it is too large
Load Diff
+18
-18
@@ -146,7 +146,7 @@ _0814BC44:
|
||||
bl sub_80FA42C
|
||||
b _0814BC66
|
||||
_0814BC4A:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0814BC66
|
||||
@@ -362,7 +362,7 @@ _0814BDCC:
|
||||
bl sub_80FA42C
|
||||
b _0814BDFC
|
||||
_0814BDD2:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814BE02
|
||||
@@ -497,7 +497,7 @@ _0814BED4:
|
||||
bl sub_80FA42C
|
||||
b _0814BFC0
|
||||
_0814BEDA:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814BFC6
|
||||
@@ -519,7 +519,7 @@ _0814BEDA:
|
||||
bl SendBlock
|
||||
b _0814BFC0
|
||||
_0814BF0A:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814BFC6
|
||||
@@ -653,7 +653,7 @@ _0814C008:
|
||||
bl sub_80FA42C
|
||||
b _0814C108
|
||||
_0814C01A:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814C10E
|
||||
@@ -725,7 +725,7 @@ _0814C080:
|
||||
.align 2, 0
|
||||
_0814C0AC: .4byte sub_814DB84
|
||||
_0814C0B0:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814C10E
|
||||
@@ -751,7 +751,7 @@ _0814C0D2:
|
||||
bl sub_80FA42C
|
||||
b _0814C108
|
||||
_0814C0E4:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814C10E
|
||||
@@ -907,7 +907,7 @@ _0814C1FC:
|
||||
bl sub_80FA42C
|
||||
b _0814C23C
|
||||
_0814C21E:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814C242
|
||||
@@ -951,7 +951,7 @@ _0814C262:
|
||||
beq _0814C298
|
||||
b _0814C2EC
|
||||
_0814C26C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814C2F2
|
||||
@@ -972,7 +972,7 @@ _0814C292:
|
||||
bl sub_80FA42C
|
||||
b _0814C2EC
|
||||
_0814C298:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814C2F2
|
||||
@@ -2070,7 +2070,7 @@ _0814CADA:
|
||||
strh r0, [r4, 0x10]
|
||||
b _0814CB12
|
||||
_0814CAF4:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814CB18
|
||||
@@ -2172,7 +2172,7 @@ _0814CB8A:
|
||||
bl SetGpuReg
|
||||
b _0814CBFC
|
||||
_0814CBBC:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814CC02
|
||||
@@ -2273,7 +2273,7 @@ _0814CC72:
|
||||
bl SendBlock
|
||||
b _0814CF8E
|
||||
_0814CC8A:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0814CC96
|
||||
@@ -2618,7 +2618,7 @@ _0814CF24:
|
||||
bl SendBlock
|
||||
b _0814CF8E
|
||||
_0814CF30:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814CF94
|
||||
@@ -2849,7 +2849,7 @@ _0814D100:
|
||||
bl sub_80FA42C
|
||||
b _0814D178
|
||||
_0814D106:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814D17E
|
||||
@@ -3031,7 +3031,7 @@ _0814D260:
|
||||
bl sub_80FA42C
|
||||
b _0814D30C
|
||||
_0814D266:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814D312
|
||||
@@ -3047,7 +3047,7 @@ _0814D266:
|
||||
bl SendBlock
|
||||
b _0814D30C
|
||||
_0814D288:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814D312
|
||||
@@ -3319,7 +3319,7 @@ _0814D482:
|
||||
bl sub_80FA42C
|
||||
b _0814D4B8
|
||||
_0814D488:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814D4BE
|
||||
|
||||
+1
-1
@@ -341,7 +341,7 @@ _0814D8D4:
|
||||
bl sub_80FA42C
|
||||
b _0814D9BA
|
||||
_0814D8DA:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0814D9C0
|
||||
|
||||
+8
-8
@@ -439,7 +439,7 @@ sub_8080A4C: @ 8080A4C
|
||||
adds r4, r0, r1
|
||||
movs r0, 0
|
||||
strh r0, [r4, 0xE]
|
||||
bl sub_800AA48
|
||||
bl IsLinkMaster
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -644,7 +644,7 @@ _08080C3C:
|
||||
beq _08080C5C
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
bl sub_800A5BC
|
||||
bl CheckShouldAdvanceLinkState
|
||||
ldr r0, _08080C64 @ =gTasks
|
||||
lsls r1, r6, 2
|
||||
adds r1, r6
|
||||
@@ -1367,7 +1367,7 @@ sub_80811FC: @ 80811FC
|
||||
ldrsh r2, [r4, r3]
|
||||
cmp r2, 0
|
||||
bne _08081230
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_800A270
|
||||
ldr r0, _0808122C @ =sub_8081A90
|
||||
movs r1, 0x50
|
||||
@@ -1405,7 +1405,7 @@ sub_808124C: @ 808124C
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bls _08081292
|
||||
bl sub_800AA48
|
||||
bl IsLinkMaster
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -1450,7 +1450,7 @@ sub_80812A0: @ 80812A0
|
||||
lsls r0, 24
|
||||
cmp r4, r0
|
||||
bne _080812CA
|
||||
bl sub_800A5BC
|
||||
bl CheckShouldAdvanceLinkState
|
||||
ldr r0, _080812D0 @ =gTasks
|
||||
lsls r1, r5, 2
|
||||
adds r1, r5
|
||||
@@ -1790,7 +1790,7 @@ _08081560:
|
||||
strh r0, [r6]
|
||||
b _0808160A
|
||||
_0808156A:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0808160A
|
||||
@@ -1901,7 +1901,7 @@ _08081640:
|
||||
strb r0, [r4]
|
||||
b _0808165C
|
||||
_0808164C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0808165C
|
||||
@@ -2283,7 +2283,7 @@ _08081950:
|
||||
.align 2, 0
|
||||
_08081958: .4byte gUnknown_2031DA4
|
||||
_0808195C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08081970
|
||||
|
||||
@@ -385,7 +385,7 @@ _08150B08:
|
||||
bl sub_80FA42C
|
||||
b _08150BDC
|
||||
_08150B16:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08150BFC
|
||||
@@ -652,7 +652,7 @@ _08150D28:
|
||||
bl sub_815F138
|
||||
b _08150D52
|
||||
_08150D3A:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08150D74
|
||||
@@ -673,7 +673,7 @@ _08150D52:
|
||||
.align 2, 0
|
||||
_08150D60: .4byte gUnknown_203F3E0
|
||||
_08150D64:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08150D74
|
||||
@@ -1025,7 +1025,7 @@ _08150FFE:
|
||||
ldr r1, [r6]
|
||||
b _0815106A
|
||||
_08151010:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08151092
|
||||
@@ -1131,7 +1131,7 @@ _081510BE:
|
||||
ldr r1, [r6]
|
||||
b _08151140
|
||||
_081510DA:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0815118A
|
||||
@@ -1276,7 +1276,7 @@ _081511DC:
|
||||
ldr r1, [r6]
|
||||
b _0815128A
|
||||
_08151202:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081512AA
|
||||
@@ -1463,7 +1463,7 @@ _0815136A:
|
||||
.align 2, 0
|
||||
_08151388: .4byte gUnknown_203F3E0
|
||||
_0815138C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08151480
|
||||
@@ -1984,7 +1984,7 @@ _0815177E:
|
||||
_081517A0: .4byte gUnknown_203F3E0
|
||||
_081517A4: .4byte 0x0000318c
|
||||
_081517A8:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08151836
|
||||
|
||||
+2
-2
@@ -266,7 +266,7 @@ sub_80B7448: @ 80B7448
|
||||
ldr r0, _080B74A0 @ =gBattleAnimArgs
|
||||
ldrh r0, [r0]
|
||||
strh r0, [r6, 0x3A]
|
||||
ldr r4, _080B74A4 @ =sBattler_AI
|
||||
ldr r4, _080B74A4 @ =gBattlerAttacker
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0
|
||||
bl sub_8076B2C
|
||||
@@ -284,7 +284,7 @@ sub_80B7448: @ 80B7448
|
||||
.align 2, 0
|
||||
_080B749C: .4byte gBattleAnimAttacker
|
||||
_080B74A0: .4byte gBattleAnimArgs
|
||||
_080B74A4: .4byte sBattler_AI
|
||||
_080B74A4: .4byte gBattlerAttacker
|
||||
_080B74A8:
|
||||
lsrs r0, r1, 17
|
||||
_080B74AA:
|
||||
|
||||
@@ -406,7 +406,7 @@ _0807DE1E:
|
||||
bl sub_800AB9C
|
||||
b _0807DE32
|
||||
_0807DE24:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0807DE50
|
||||
|
||||
+4
-4
@@ -1037,7 +1037,7 @@ sub_80B107C: @ 80B107C
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _080B10D8
|
||||
ldr r4, _080B10CC @ =sBattler_AI
|
||||
ldr r4, _080B10CC @ =gBattlerAttacker
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl GetBattlerSpriteCoord
|
||||
@@ -1066,7 +1066,7 @@ sub_80B107C: @ 80B107C
|
||||
b _080B10F4
|
||||
.align 2, 0
|
||||
_080B10C8: .4byte gBattleAnimArgs
|
||||
_080B10CC: .4byte sBattler_AI
|
||||
_080B10CC: .4byte gBattlerAttacker
|
||||
_080B10D0: .4byte gBattleAnimAttacker
|
||||
_080B10D4: .4byte gBattleAnimTarget
|
||||
_080B10D8:
|
||||
@@ -1341,7 +1341,7 @@ sub_80B12E8: @ 80B12E8
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, 0
|
||||
bne _080B132C
|
||||
ldr r4, _080B1320 @ =sBattler_AI
|
||||
ldr r4, _080B1320 @ =gBattlerAttacker
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl GetBattlerSpriteCoord
|
||||
@@ -1360,7 +1360,7 @@ sub_80B12E8: @ 80B12E8
|
||||
b _080B1332
|
||||
.align 2, 0
|
||||
_080B131C: .4byte gBattleAnimArgs
|
||||
_080B1320: .4byte sBattler_AI
|
||||
_080B1320: .4byte gBattlerAttacker
|
||||
_080B1324: .4byte gBattleAnimTarget
|
||||
_080B1328: .4byte gBattleAnimAttacker
|
||||
_080B132C:
|
||||
|
||||
+14
-14
@@ -236,7 +236,7 @@ sub_8009640: @ 8009640
|
||||
ldr r2, _080096DC @ =0x00001111
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
ldr r0, _080096E0 @ =gMain
|
||||
ldrh r0, [r0, 0x24]
|
||||
bl SeedRng
|
||||
@@ -431,8 +431,8 @@ _080097FC: .4byte gTasks
|
||||
_08009800: .4byte gUnknown_3003F84
|
||||
thumb_func_end task02_080097CC
|
||||
|
||||
thumb_func_start sub_8009804
|
||||
sub_8009804: @ 8009804
|
||||
thumb_func_start OpenLink
|
||||
OpenLink: @ 8009804
|
||||
push {r4-r6,lr}
|
||||
ldr r0, _0800984C @ =gWirelessCommType
|
||||
ldrb r4, [r0]
|
||||
@@ -505,7 +505,7 @@ _080098A8: .4byte gReceivedRemoteLinkPlayers
|
||||
_080098AC: .4byte gUnknown_3003EB8
|
||||
_080098B0: .4byte gUnknown_3003F30
|
||||
_080098B4: .4byte gUnknown_3003F2C
|
||||
thumb_func_end sub_8009804
|
||||
thumb_func_end OpenLink
|
||||
|
||||
thumb_func_start CloseLink
|
||||
CloseLink: @ 80098B8
|
||||
@@ -1556,7 +1556,7 @@ sub_800A0B4: @ 800A0B4
|
||||
str r1, [r0]
|
||||
ldr r0, _0800A0CC @ =gLinkTimeOutCounter
|
||||
strh r1, [r0]
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
@@ -2115,8 +2115,8 @@ _0800A4B4: .4byte gUnknown_3003F90
|
||||
_0800A4B8: .4byte 0x0000cccc
|
||||
thumb_func_end sub_800A474
|
||||
|
||||
thumb_func_start sub_800A4BC
|
||||
sub_800A4BC: @ 800A4BC
|
||||
thumb_func_start IsLinkTaskFinished
|
||||
IsLinkTaskFinished: @ 800A4BC
|
||||
push {lr}
|
||||
ldr r0, _0800A4D0 @ =gWirelessCommType
|
||||
ldrb r0, [r0]
|
||||
@@ -2142,7 +2142,7 @@ _0800A4E2:
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0800A4E8: .4byte gUnknown_3003F80
|
||||
thumb_func_end sub_800A4BC
|
||||
thumb_func_end IsLinkTaskFinished
|
||||
|
||||
thumb_func_start GetBlockReceivedStatus
|
||||
GetBlockReceivedStatus: @ 800A4EC
|
||||
@@ -2265,8 +2265,8 @@ _0800A5B2:
|
||||
_0800A5B8: .4byte gUnknown_3003EBC
|
||||
thumb_func_end ResetBlockReceivedFlag
|
||||
|
||||
thumb_func_start sub_800A5BC
|
||||
sub_800A5BC: @ 800A5BC
|
||||
thumb_func_start CheckShouldAdvanceLinkState
|
||||
CheckShouldAdvanceLinkState: @ 800A5BC
|
||||
push {lr}
|
||||
ldr r0, _0800A5DC @ =gUnknown_3003F20
|
||||
ldr r1, [r0]
|
||||
@@ -2287,7 +2287,7 @@ _0800A5D8:
|
||||
.align 2, 0
|
||||
_0800A5DC: .4byte gUnknown_3003F20
|
||||
_0800A5E0: .4byte gUnknown_3003F84
|
||||
thumb_func_end sub_800A5BC
|
||||
thumb_func_end CheckShouldAdvanceLinkState
|
||||
|
||||
thumb_func_start LinkTestCalcBlockChecksum
|
||||
LinkTestCalcBlockChecksum: @ 800A5E4
|
||||
@@ -2883,8 +2883,8 @@ GetLinkPlayerCount_2: @ 800AA38
|
||||
_0800AA44: .4byte gUnknown_3003F20
|
||||
thumb_func_end GetLinkPlayerCount_2
|
||||
|
||||
thumb_func_start sub_800AA48
|
||||
sub_800AA48: @ 800AA48
|
||||
thumb_func_start IsLinkMaster
|
||||
IsLinkMaster: @ 800AA48
|
||||
push {lr}
|
||||
ldr r0, _0800AA60 @ =gWirelessCommType
|
||||
ldrb r0, [r0]
|
||||
@@ -2906,7 +2906,7 @@ _0800AA68:
|
||||
_0800AA70:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_800AA48
|
||||
thumb_func_end IsLinkMaster
|
||||
|
||||
thumb_func_start sub_800AA74
|
||||
sub_800AA74: @ 800AA74
|
||||
|
||||
+3
-3
@@ -4996,7 +4996,7 @@ _080FAC58:
|
||||
.align 2, 0
|
||||
_080FAC74: .4byte 0x0000099d
|
||||
_080FAC78:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080FACD6
|
||||
@@ -5103,7 +5103,7 @@ _080FAD3A:
|
||||
.align 2, 0
|
||||
_080FAD50: .4byte gBlockSendBuffer
|
||||
_080FAD54:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080FAD8A
|
||||
@@ -6875,7 +6875,7 @@ sub_80FBA78: @ 80FBA78
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
ldr r0, _080FBB00 @ =gMain
|
||||
ldrh r0, [r0, 0x24]
|
||||
bl SeedRng
|
||||
|
||||
+15
-15
@@ -317,7 +317,7 @@ _08115B0C:
|
||||
movs r2, 0
|
||||
bl sub_80FAF58
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
ldrb r1, [r4]
|
||||
movs r0, 0xF
|
||||
ands r0, r1
|
||||
@@ -1841,7 +1841,7 @@ _081167C0:
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r1]
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_80FBBD8
|
||||
movs r0, 0x70
|
||||
bl AllocZeroed
|
||||
@@ -2595,7 +2595,7 @@ _08116E70:
|
||||
movs r2, 0
|
||||
bl sub_80FAF58
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_80FBBD8
|
||||
movs r0, 0x1
|
||||
bl sub_80FB128
|
||||
@@ -3864,7 +3864,7 @@ _08117968:
|
||||
.align 2, 0
|
||||
_08117970: .4byte gPaletteFade
|
||||
_08117974:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08117988
|
||||
@@ -3999,7 +3999,7 @@ _08117A7C:
|
||||
movs r1, 0
|
||||
bl sub_80FAF74
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
movs r0, 0x2
|
||||
bl sub_80FBB8C
|
||||
movs r0, 0x1
|
||||
@@ -4477,7 +4477,7 @@ _08117EB2:
|
||||
strb r0, [r5, 0xC]
|
||||
b _08117ECA
|
||||
_08117EBA:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08117ECA
|
||||
@@ -4571,7 +4571,7 @@ _08117F7C:
|
||||
movs r2, 0
|
||||
bl sub_80FAF58
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_80FBBD8
|
||||
movs r0, 0x70
|
||||
bl AllocZeroed
|
||||
@@ -4897,7 +4897,7 @@ _0811826C:
|
||||
bl sub_800AB9C
|
||||
b _08118288
|
||||
_08118278:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08118288
|
||||
@@ -4990,7 +4990,7 @@ _08118340:
|
||||
movs r2, 0
|
||||
bl sub_80FAF58
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_80FBBD8
|
||||
movs r0, 0x70
|
||||
bl AllocZeroed
|
||||
@@ -5302,7 +5302,7 @@ _081185E8:
|
||||
bl sub_800AB9C
|
||||
b _08118604
|
||||
_081185F4:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08118604
|
||||
@@ -5582,7 +5582,7 @@ _0811887C:
|
||||
ldrh r2, [r2, 0xC]
|
||||
bl sub_80FAFA0
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_80FBC00
|
||||
ldr r0, [r6, 0x8]
|
||||
movs r1, 0x1
|
||||
@@ -6274,7 +6274,7 @@ _08118EAC:
|
||||
.align 2, 0
|
||||
_08118EC4: .4byte gStringVar4
|
||||
_08118EC8:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08118ED6
|
||||
@@ -6796,7 +6796,7 @@ _08119354:
|
||||
movs r0, 0xF
|
||||
b _081198DA
|
||||
_0811935C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08119368
|
||||
@@ -7640,7 +7640,7 @@ _08119A3E:
|
||||
movs r2, 0
|
||||
bl sub_80FAF58
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_80FBC00
|
||||
movs r0, 0x1
|
||||
bl sub_80FB128
|
||||
@@ -13134,7 +13134,7 @@ _0811C48C:
|
||||
.align 2, 0
|
||||
_0811C4A4: .4byte gMain
|
||||
_0811C4A8:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0811C516
|
||||
|
||||
+1
-1
@@ -18290,7 +18290,7 @@ _08127BD8:
|
||||
ldrb r0, [r0, 0xB]
|
||||
cmp r0, 0x4
|
||||
bne _08127BEC
|
||||
bl sub_8044348
|
||||
bl SetMonPreventsSwitchingString
|
||||
b _08127C8A
|
||||
.align 2, 0
|
||||
_08127BE8: .4byte gUnknown_203B0A0
|
||||
|
||||
@@ -470,7 +470,7 @@ _08147E3C:
|
||||
.align 2, 0
|
||||
_08147E60: .4byte gUnknown_203F3D4
|
||||
_08147E64:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08147F04
|
||||
|
||||
+16
-16
@@ -263,7 +263,7 @@ _0804C80A:
|
||||
cmp r0, 0
|
||||
beq _0804C880
|
||||
bl sub_800B1F4
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
bl sub_80FBB20
|
||||
b _0804C892
|
||||
.align 2, 0
|
||||
@@ -275,7 +275,7 @@ _0804C874: .4byte 0x00001122
|
||||
_0804C878: .4byte gUnknown_2031DA8
|
||||
_0804C87C: .4byte gWirelessCommType
|
||||
_0804C880:
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
ldr r1, _0804C8A8 @ =gMain
|
||||
movs r7, 0x87
|
||||
lsls r7, 3
|
||||
@@ -341,7 +341,7 @@ _0804C8F4:
|
||||
bcs _0804C908
|
||||
b _0804CEE6
|
||||
_0804C908:
|
||||
bl sub_800AA48
|
||||
bl IsLinkMaster
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0804C940
|
||||
@@ -357,7 +357,7 @@ _0804C908:
|
||||
bhi _0804C928
|
||||
b _0804CEE6
|
||||
_0804C928:
|
||||
bl sub_800A5BC
|
||||
bl CheckShouldAdvanceLinkState
|
||||
ldr r1, _0804C93C @ =gMain
|
||||
movs r3, 0x87
|
||||
lsls r3, 3
|
||||
@@ -2201,7 +2201,7 @@ _0804D8D8: .4byte gBlockSendBuffer
|
||||
_0804D8DC: .4byte gPlayerParty
|
||||
_0804D8E0: .4byte gUnknown_2031DA8
|
||||
_0804D8E4:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0804D8F0
|
||||
@@ -3875,7 +3875,7 @@ _0804E61C:
|
||||
adds r0, 0x80
|
||||
ldr r1, _0804E64C @ =0x0000bbbb
|
||||
strh r1, [r0]
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0804E668
|
||||
@@ -3944,7 +3944,7 @@ _0804E6B0:
|
||||
movs r0, 0x3
|
||||
movs r1, 0x1
|
||||
bl sub_804F488
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0804E6DE
|
||||
@@ -4285,7 +4285,7 @@ sub_804E944: @ 804E944
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _0804E988
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0804E9AA
|
||||
@@ -7508,7 +7508,7 @@ _08050240:
|
||||
adds r0, r1
|
||||
movs r1, 0x1
|
||||
strb r1, [r0]
|
||||
bl sub_8009804
|
||||
bl OpenLink
|
||||
ldr r1, _08050278 @ =gMain
|
||||
movs r2, 0x87
|
||||
lsls r2, 3
|
||||
@@ -7549,7 +7549,7 @@ _08050298:
|
||||
.align 2, 0
|
||||
_080502A4: .4byte gUnknown_2031DAC
|
||||
_080502A8:
|
||||
bl sub_800AA48
|
||||
bl IsLinkMaster
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080502B4
|
||||
@@ -7571,7 +7571,7 @@ _080502B4:
|
||||
bhi _080502D6
|
||||
b _08050472
|
||||
_080502D6:
|
||||
bl sub_800A5BC
|
||||
bl CheckShouldAdvanceLinkState
|
||||
ldr r1, _080502E8 @ =gMain
|
||||
movs r2, 0x87
|
||||
lsls r2, 3
|
||||
@@ -8274,7 +8274,7 @@ sub_80508F4: @ 80508F4
|
||||
.align 2, 0
|
||||
_08050908: .4byte gUnknown_2031DAC
|
||||
_0805090C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08050932
|
||||
@@ -14405,7 +14405,7 @@ _08054080:
|
||||
strb r1, [r0]
|
||||
str r2, [r3, 0x64]
|
||||
_0805409C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080540A8
|
||||
@@ -14420,7 +14420,7 @@ _080540A8:
|
||||
_080540B4: .4byte gUnknown_2031DAC
|
||||
_080540B8: .4byte gMain
|
||||
_080540BC:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080540C8
|
||||
@@ -14637,7 +14637,7 @@ _08054278:
|
||||
str r0, [r1, 0x64]
|
||||
b _08054396
|
||||
_0805427E:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805428A
|
||||
@@ -14672,7 +14672,7 @@ _080542A0:
|
||||
.align 2, 0
|
||||
_080542C0: .4byte gUnknown_2031DAC
|
||||
_080542C4:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08054396
|
||||
|
||||
@@ -295,7 +295,7 @@ _08128662:
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x6]
|
||||
_08128674:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081286BC
|
||||
@@ -321,7 +321,7 @@ _08128674:
|
||||
.align 2, 0
|
||||
_081286A8: .4byte gUnknown_203B0E0
|
||||
_081286AC:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081286BC
|
||||
@@ -765,7 +765,7 @@ _08128A36:
|
||||
.align 2, 0
|
||||
_08128A40: .4byte gUnknown_203B0E0
|
||||
_08128A44:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08128A94
|
||||
@@ -888,7 +888,7 @@ _08128B28:
|
||||
.align 2, 0
|
||||
_08128B48: .4byte gUnknown_203B0E0
|
||||
_08128B4C:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08128BFC
|
||||
@@ -925,7 +925,7 @@ _08128B80:
|
||||
.align 2, 0
|
||||
_08128B9C: .4byte gUnknown_203B0E0
|
||||
_08128BA0:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08128BFC
|
||||
@@ -1016,7 +1016,7 @@ _08128C44:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08128CA2
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08128CA2
|
||||
@@ -1134,7 +1134,7 @@ _08128D30:
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _08128D9C
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08128D9C
|
||||
@@ -1231,7 +1231,7 @@ _08128DEC:
|
||||
adds r0, 0x1
|
||||
strh r0, [r1, 0x6]
|
||||
_08128E00:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -1277,7 +1277,7 @@ _08128E52:
|
||||
.align 2, 0
|
||||
_08128E5C: .4byte gUnknown_203B0E0
|
||||
_08128E60:
|
||||
bl sub_800A4BC
|
||||
bl IsLinkTaskFinished
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08128E70
|
||||
|
||||
+19
-11
@@ -29,9 +29,9 @@
|
||||
#define SIDE_PLAYER 0x0
|
||||
#define SIDE_OPPONENT 0x1
|
||||
|
||||
#define GET_BANK_IDENTITY(bank)((gBanksByIdentity[bank]))
|
||||
#define GET_BANK_SIDE(bank)((GetBattlerPosition(bank) & BIT_SIDE))
|
||||
#define GET_BANK_SIDE2(bank)((GET_BANK_IDENTITY(bank) & BIT_SIDE))
|
||||
#define GET_BATTLER_POSITION(battler)((gBattlerPositions[battler]))
|
||||
#define GET_BATTLER_SIDE(battler)((GetBattlerPosition(battler) & BIT_SIDE))
|
||||
#define GET_BATTLER_SIDE2(battler)((GET_BATTLER_POSITION(battler) & BIT_SIDE))
|
||||
|
||||
#define TRAINER_OPPONENT_3FE 0x3FE
|
||||
#define TRAINER_OPPONENT_C00 0xC00
|
||||
@@ -567,11 +567,11 @@ struct BattleStruct
|
||||
u8 field_A6;
|
||||
u8 field_A7;
|
||||
u16 hpOnSwitchout[2];
|
||||
u32 savedBattleTypeFlags;
|
||||
u8 abilityPreventingSwitchout;
|
||||
u8 hpScale;
|
||||
u8 synchronizeMoveEffect;
|
||||
u8 field_B3;
|
||||
u8 field_AF;
|
||||
u32 savedBattleTypeFlags; // TODO: Is it correct to place it here?
|
||||
u8 field_B4;
|
||||
u8 field_B5;
|
||||
u8 field_B6;
|
||||
@@ -780,13 +780,13 @@ struct BattleScripting
|
||||
u8 animArg2;
|
||||
u16 tripleKickPower;
|
||||
u8 atk49_state;
|
||||
u8 bankWithAbility;
|
||||
u8 battlerWithAbility;
|
||||
u8 multihitMoveEffect;
|
||||
u8 bank;
|
||||
u8 battler;
|
||||
u8 animTurn;
|
||||
u8 animTargetsHit;
|
||||
u8 statChanger;
|
||||
u8 field_1B;
|
||||
bool8 statAnimPlayed;
|
||||
u8 atk23_state;
|
||||
u8 battleStyle;
|
||||
u8 atk6C_state;
|
||||
@@ -795,12 +795,10 @@ struct BattleScripting
|
||||
u8 reshowMainState;
|
||||
u8 reshowHelperState;
|
||||
u8 field_23;
|
||||
u8 field_24;
|
||||
u8 windowsType; // TODO: what does this field do in firered?
|
||||
u8 multiplayerId;
|
||||
};
|
||||
|
||||
extern struct BattleScripting gBattleScripting;
|
||||
|
||||
// functions
|
||||
|
||||
// battle_1
|
||||
@@ -954,6 +952,8 @@ extern u16 gMoveToLearn;
|
||||
extern u16 gBattleMovePower;
|
||||
extern struct BattleEnigmaBerry gEnigmaBerries[MAX_BATTLERS_COUNT];
|
||||
extern u16 gCurrentMove;
|
||||
extern u16 gChosenMove;
|
||||
extern u16 gCalledMove;
|
||||
extern u8 gCritMultiplier;
|
||||
extern u16 gBattleWeather;
|
||||
extern u8 gLastUsedAbility;
|
||||
@@ -978,5 +978,13 @@ extern bool8 gDoingBattleAnim;
|
||||
extern void *gUnknown_3005EE0[];
|
||||
extern u8 *gUnknown_2022BB8;
|
||||
extern u8 *gUnknown_2022BBC;
|
||||
extern void (*gBattleMainFunc)(void);
|
||||
extern u8 gMoveSelectionCursor[MAX_BATTLERS_COUNT];
|
||||
extern u32 gUnknown_2022B54;
|
||||
extern u8 gUnknown_2023DDC;
|
||||
extern u8 gBattlerAttacker;
|
||||
extern u8 gEffectBattler;
|
||||
extern u8 gUnknown_2023D72;
|
||||
extern struct BattleScripting gBattleScripting;
|
||||
|
||||
#endif // GUARD_BATTLE_H
|
||||
|
||||
@@ -47,6 +47,7 @@ bool8 TryRunFromBattle(u8 bank);
|
||||
void sub_800FD9C(void);
|
||||
void sub_80120C4(struct Sprite *);
|
||||
void sub_8012100(struct Sprite *);
|
||||
void nullsub_12(void);
|
||||
|
||||
extern const u8 gStatusConditionString_PoisonJpn[8];
|
||||
extern const u8 gStatusConditionString_SleepJpn[8];
|
||||
|
||||
@@ -3,9 +3,7 @@
|
||||
|
||||
#include "global.h"
|
||||
|
||||
extern u8 sBattler_AI;
|
||||
|
||||
void BattleAI_HandleItemUseBeforeAISetup(u8 defaultScoreMoves);
|
||||
void BattleAI_HandleItemUseBeforeAISetup(void);
|
||||
void BattleAI_SetupAIData(u8 defaultScoreMoves);
|
||||
u8 BattleAI_ChooseMoveOrAction(void);
|
||||
void ClearBankMoveHistory(u8 bank);
|
||||
|
||||
@@ -162,8 +162,8 @@ enum
|
||||
CONTROLLER_INTROSLIDE,
|
||||
CONTROLLER_INTROTRAINERBALLTHROW,
|
||||
CONTROLLER_DRAWPARTYSTATUSSUMMARY,
|
||||
CONTROLLER_49,
|
||||
CONTROLLER_50,
|
||||
CONTROLLER_HIDEPARTYSTATUSSUMMARY,
|
||||
CONTROLLER_ENDBOUNCE,
|
||||
CONTROLLER_SPRITEINVISIBILITY,
|
||||
CONTROLLER_BATTLEANIMATION,
|
||||
CONTROLLER_LINKSTANDBYMSG,
|
||||
@@ -177,68 +177,53 @@ enum
|
||||
|
||||
// general functions
|
||||
void HandleLinkBattleSetup(void);
|
||||
void SetUpBattleVarsAndBirchZigzagoon(void);
|
||||
void sub_8032768(void);
|
||||
void sub_8033648(void);
|
||||
void SetUpBattleVars(void);
|
||||
void sub_800D30C(void);
|
||||
void sub_800DD28(void);
|
||||
void PrepareBufferDataTransferLink(u8 bufferId, u16 size, u8 *data);
|
||||
|
||||
// emitters
|
||||
void BtlController_EmitGetMonData(u8 bufferId, u8 requestId, u8 monToCheck);
|
||||
void EmitGetRawMonData(u8 bufferId, u8 monId, u8 bytes); // unused
|
||||
void EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 bytes, void *data);
|
||||
void EmitSetRawMonData(u8 bufferId, u8 monId, u8 bytes, void *data); // unused
|
||||
void EmitLoadMonSprite(u8 bufferId);
|
||||
void EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit);
|
||||
void EmitReturnMonToBall(u8 bufferId, u8 arg1);
|
||||
void EmitDrawTrainerPic(u8 bufferId);
|
||||
void EmitTrainerSlide(u8 bufferId);
|
||||
void EmitTrainerSlideBack(u8 bufferId);
|
||||
void EmitFaintAnimation(u8 bufferId);
|
||||
void EmitPaletteFade(u8 bufferId); // unused
|
||||
void EmitSuccessBallThrowAnim(u8 bufferId); // unused
|
||||
void EmitBallThrowAnim(u8 bufferId, u8 caseId);
|
||||
void EmitPause(u8 bufferId, u8 toWait, void *data); // unused
|
||||
void EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 movePower, s32 dmg, u8 friendship, struct DisableStruct *disableStructPtr, u8 multihit);
|
||||
void EmitPrintString(u8 bufferId, u16 stringId);
|
||||
void EmitPrintSelectionString(u8 bufferId, u16 stringId);
|
||||
void EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void EmitUnknownYesNoBox(u8 bufferId);
|
||||
void EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData);
|
||||
void EmitChooseItem(u8 bufferId, u8* arg1);
|
||||
void EmitChoosePokemon(u8 bufferId, u8 caseId, u8 arg2, u8 abilityId, u8* arg4);
|
||||
void EmitCmd23(u8 bufferId); // unused
|
||||
void EmitHealthBarUpdate(u8 bufferId, u16 hpValue);
|
||||
void EmitExpUpdate(u8 bufferId, u8 partyId, u16 expPoints);
|
||||
void EmitStatusIconUpdate(u8 bufferId, u32 status1, u32 status2);
|
||||
void EmitStatusAnimation(u8 bufferId, bool8 status2, u32 status);
|
||||
void EmitStatusXor(u8 bufferId, u8 b); // unused
|
||||
void EmitDataTransfer(u8 bufferId, u16 size, void *data);
|
||||
void EmitDMA3Transfer(u8 bufferId, void *dst, u16 size, void *data); // unused
|
||||
void EmitPlayBGM(u8 bufferId, u16 songId, void *unusedDumbDataParameter); // unused
|
||||
void EmitCmd32(u8 bufferId, u16 size, void *c); // unused
|
||||
void EmitTwoReturnValues(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void EmitChosenMonReturnValue(u8 bufferId, u8 b, u8 *c);
|
||||
void EmitOneReturnValue(u8 bufferId, u16 arg1);
|
||||
void EmitOneReturnValue_Duplicate(u8 bufferId, u16 b);
|
||||
void EmitCmd37(u8 bufferId); // unused
|
||||
void EmitCmd38(u8 bufferId, u8 b); // unused
|
||||
void EmitCmd39(u8 bufferId); // unused
|
||||
void EmitCmd40(u8 bufferId); // unused
|
||||
void EmitHitAnimation(u8 bufferId);
|
||||
void EmitCmd42(u8 bufferId);
|
||||
void EmitPlaySE(u8 bufferId, u16 songId);
|
||||
void EmitPlayFanfareOrBGM(u8 bufferId, u16 songId, bool8 playBGM);
|
||||
void EmitFaintingCry(u8 bufferId);
|
||||
void EmitIntroSlide(u8 bufferId, u8 terrainId);
|
||||
void EmitIntroTrainerBallThrow(u8 bufferId);
|
||||
void EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 arg2);
|
||||
void EmitCmd49(u8 bufferId);
|
||||
void EmitCmd50(u8 bufferId);
|
||||
void EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
|
||||
void EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument);
|
||||
void EmitLinkStandbyMsg(u8 bufferId, u8 arg1, bool32 arg2);
|
||||
void EmitResetActionMoveSelection(u8 bufferId, u8 caseId);
|
||||
void EmitCmd55(u8 bufferId, u8 arg1);
|
||||
void BtlController_EmitSetMonData(u8 bufferId, u8 requestId, u8 monToCheck, u8 bytes, void *data);
|
||||
void BtlController_EmitLoadMonSprite(u8 bufferId);
|
||||
void BtlController_EmitSwitchInAnim(u8 bufferId, u8 partyId, bool8 dontClearSubstituteBit);
|
||||
void BtlController_EmitReturnMonToBall(u8 bufferId, u8 arg1);
|
||||
void BtlController_EmitDrawTrainerPic(u8 bufferId);
|
||||
void BtlController_EmitTrainerSlide(u8 bufferId);
|
||||
void BtlController_EmitTrainerSlideBack(u8 bufferId);
|
||||
void BtlController_EmitFaintAnimation(u8 bufferId);
|
||||
void BtlController_EmitBallThrowAnim(u8 bufferId, u8 caseId);
|
||||
void BtlController_EmitMoveAnimation(u8 bufferId, u16 move, u8 turnOfMove, u16 movePower, s32 dmg, u8 friendship, struct DisableStruct *disableStructPtr);
|
||||
void BtlController_EmitPrintString(u8 bufferId, u16 stringId);
|
||||
void BtlController_EmitPrintSelectionString(u8 bufferId, u16 stringId);
|
||||
void BtlController_EmitChooseAction(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void BtlController_EmitChooseMove(u8 bufferId, bool8 isDoubleBattle, bool8 NoPpNumber, struct ChooseMoveStruct *movePpData);
|
||||
void BtlController_EmitChooseItem(u8 bufferId, u8* arg1);
|
||||
void BtlController_EmitChoosePokemon(u8 bufferId, u8 caseId, u8 arg2, u8 abilityId, u8* arg4);
|
||||
void BtlController_EmitHealthBarUpdate(u8 bufferId, u16 hpValue);
|
||||
void BtlController_EmitExpUpdate(u8 bufferId, u8 partyId, u16 expPoints);
|
||||
void BtlController_EmitStatusIconUpdate(u8 bufferId, u32 status1, u32 status2);
|
||||
void BtlController_EmitStatusAnimation(u8 bufferId, bool8 status2, u32 status);
|
||||
void BtlController_EmitDataTransfer(u8 bufferId, u16 size, void *data);
|
||||
void BtlController_EmitTwoReturnValues(u8 bufferId, u8 arg1, u16 arg2);
|
||||
void BtlController_EmitChosenMonReturnValue(u8 bufferId, u8 b, u8 *c);
|
||||
void BtlController_EmitOneReturnValue(u8 bufferId, u16 arg1);
|
||||
void BtlController_EmitOneReturnValue_Duplicate(u8 bufferId, u16 b);
|
||||
void BtlController_EmitHitAnimation(u8 bufferId);
|
||||
void BtlController_EmitCmd42(u8 bufferId);
|
||||
void BtlController_EmitPlaySE(u8 bufferId, u16 songId);
|
||||
void BtlController_EmitPlayFanfare(u8 bufferId, u16 songId);
|
||||
void BtlController_EmitFaintingCry(u8 bufferId);
|
||||
void BtlController_EmitIntroSlide(u8 bufferId, u8 terrainId);
|
||||
void BtlController_EmitIntroTrainerBallThrow(u8 bufferId);
|
||||
void BtlController_EmitDrawPartyStatusSummary(u8 bufferId, struct HpAndStatus* hpAndStatus, u8 arg2);
|
||||
void BtlController_EmitHidePartyStatusSummary(u8 bufferId);
|
||||
void BtlController_EmitEndBounceEffect(u8 bufferId);
|
||||
void BtlController_EmitSpriteInvisibility(u8 bufferId, bool8 isInvisible);
|
||||
void BtlController_EmitBattleAnimation(u8 bufferId, u8 animationId, u16 argument);
|
||||
void BtlController_EmitLinkStandbyMsg(u8 bufferId, u8 arg1);
|
||||
void BtlController_EmitResetActionMoveSelection(u8 bufferId, u8 caseId);
|
||||
void BtlController_EmitCmd55(u8 bufferId, u8 arg1);
|
||||
|
||||
// player controller
|
||||
void SetControllerToPlayer(void);
|
||||
@@ -251,6 +236,7 @@ void c3_0802FDF4(u8 taskId);
|
||||
void ActionSelectionCreateCursorAt(u8 cursorPos, u8 unused);
|
||||
void ActionSelectionDestroyCursorAt(u8 cursorPos);
|
||||
void InitMoveSelectionsVarsAndStrings(void);
|
||||
void nullsub_13(void);
|
||||
|
||||
// recorded player controller
|
||||
void SetControllerToRecordedPlayer(void);
|
||||
@@ -264,11 +250,11 @@ void SetControllerToPlayerPartner(void);
|
||||
// safari controller
|
||||
void SetControllerToSafari(void);
|
||||
|
||||
// wally controller
|
||||
void SetControllerToWally(void);
|
||||
// pokedude controller
|
||||
void SetControllerToPokedude(void);
|
||||
|
||||
// recorded opponent controller
|
||||
void SetControllerToRecordedOpponent(void);
|
||||
// oak controller
|
||||
void SetControllerToOakOrOldman(void);
|
||||
|
||||
// link opponent
|
||||
void SetControllerToLinkOpponent(void);
|
||||
|
||||
@@ -35,11 +35,11 @@
|
||||
#define B_TXT_EFF_ABILITY 0x1B
|
||||
#define B_TXT_TRAINER1_CLASS 0x1C
|
||||
#define B_TXT_TRAINER1_NAME 0x1D
|
||||
#define B_TXT_1E 0x1E // trainer name for a link player
|
||||
#define B_TXT_1F 0x1F // trainer name for a link player
|
||||
#define B_TXT_20 0x20 // trainer name for a link player
|
||||
#define B_TXT_21 0x21 // trainer name for a link player
|
||||
#define B_TXT_22 0x22 // trainer name for a link player
|
||||
#define B_TXT_LINK_PLAYER_NAME 0x1E
|
||||
#define B_TXT_LINK_PARTNER_NAME 0x1F
|
||||
#define B_TXT_LINK_OPPONENT1_NAME 0x20
|
||||
#define B_TXT_LINK_OPPONENT2_NAME 0x21
|
||||
#define B_TXT_LINK_SCR_TRAINER_NAME 0x22
|
||||
#define B_TXT_PLAYER_NAME 0x23
|
||||
#define B_TXT_TRAINER1_LOSE_TEXT 0x24
|
||||
#define B_TXT_TRAINER1_WIN_TEXT 0x25
|
||||
@@ -196,7 +196,7 @@
|
||||
textVar[4] = B_BUFF_EOS; \
|
||||
}
|
||||
|
||||
struct StringInfoBattle
|
||||
struct BattleMsgData
|
||||
{
|
||||
u16 currentMove;
|
||||
u16 originallyUsedMove;
|
||||
@@ -205,7 +205,7 @@ struct StringInfoBattle
|
||||
u8 scrActive;
|
||||
u8 unk1605E;
|
||||
u8 hpScale;
|
||||
u8 StringBank;
|
||||
u8 itemEffectBattler;
|
||||
u8 moveType;
|
||||
u8 abilities[4];
|
||||
u8 textBuffs[3][0x10];
|
||||
@@ -220,6 +220,8 @@ u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp);
|
||||
void BattlePutTextOnWindow(const u8* text, u8 arg1);
|
||||
bool8 sub_80D89B0(u16);
|
||||
|
||||
extern struct BattleMsgData *gBattleMsgDataPtr;
|
||||
|
||||
#define TEXT_BUFF_ARRAY_COUNT 16
|
||||
|
||||
extern u8 gDisplayedStringBattle[300];
|
||||
|
||||
@@ -88,5 +88,6 @@ u8 GetMoveTarget(u16 move, u8 useMoveTarget);
|
||||
u8 IsMonDisobedient(void);
|
||||
void MarkBufferBankForExecution(u8 battlerId);
|
||||
void sub_80174B8(u8 battlerId);
|
||||
void sub_8017298(u8 battlerId);
|
||||
|
||||
#endif // GUARD_BATTLE_UTIL_H
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
#ifndef GUARD_CABLE_CLUB_H
|
||||
#define GUARD_CABLE_CLUB_H
|
||||
|
||||
#include "task.h"
|
||||
|
||||
// Exported type declarations
|
||||
|
||||
// Exported RAM declarations
|
||||
|
||||
// Exported ROM declarations
|
||||
void sub_8081A90(u8 taskId);
|
||||
|
||||
#endif //GUARD_CABLE_CLUB_H
|
||||
@@ -53,7 +53,7 @@
|
||||
#define BATTLE_TYPE_MULTI 0x0040
|
||||
#define BATTLE_TYPE_SAFARI 0x0080
|
||||
#define BATTLE_TYPE_BATTLE_TOWER 0x0100
|
||||
#define BATTLE_TYPE_WALLY_TUTORIAL 0x0200
|
||||
#define BATTLE_TYPE_OLDMAN_TUTORIAL 0x0200
|
||||
#define BATTLE_TYPE_ROAMER 0x0400
|
||||
#define BATTLE_TYPE_EREADER_TRAINER 0x0800
|
||||
#define BATTLE_TYPE_KYOGRE_GROUDON 0x1000
|
||||
|
||||
+6
-4
@@ -145,6 +145,7 @@ extern struct LinkPlayer gLinkPlayers[];
|
||||
extern u16 word_3002910[];
|
||||
extern bool8 gReceivedRemoteLinkPlayers;
|
||||
extern bool8 gLinkVSyncDisabled;
|
||||
extern u8 gWirelessCommType;
|
||||
|
||||
extern u8 gUnknown_3003F84;
|
||||
extern u64 gSioMlt_Recv;
|
||||
@@ -199,15 +200,16 @@ void sub_8011BD0(void);
|
||||
u8 sub_800ABAC(void);
|
||||
u8 sub_800ABBC(void);
|
||||
void sub_800AC34(void);
|
||||
void sub_8009804(void);
|
||||
bool8 sub_800AA48(void);
|
||||
void sub_800A5BC(void);
|
||||
void OpenLink(void);
|
||||
bool8 IsLinkMaster(void);
|
||||
void CheckShouldAdvanceLinkState(void);
|
||||
void sub_800AA80(u8);
|
||||
void sub_80098D8(void);
|
||||
void CloseLink(void);
|
||||
bool8 sub_800A4BC(void);
|
||||
bool8 IsLinkTaskFinished(void);
|
||||
bool32 sub_800B270(void);
|
||||
void sub_800B388(void);
|
||||
void sub_8054A28(void);
|
||||
void sub_800B1F4(void);
|
||||
|
||||
#endif // GUARD_LINK_H
|
||||
|
||||
@@ -18,5 +18,6 @@ void MEvent_CreateTask_CardOrNewsOverWireless(u8);
|
||||
void MEvent_CreateTask_Leader(u8);
|
||||
void sub_80F9E2C(void * data);
|
||||
u8 sub_8116DE0(void);
|
||||
void sub_80FBB4C(void);
|
||||
|
||||
#endif //GUARD_LINK_RFU_H
|
||||
|
||||
@@ -63,5 +63,6 @@ void ItemUseCB_Medicine(u8 taskId, TaskFunc followUpFunc);
|
||||
u8 GetItemEffectType(u16 itemId);
|
||||
u8 pokemon_order_func(u8);
|
||||
void sub_8127CAC(void);
|
||||
void sub_8127DA8(u8 battlerId, u8 multiplayerFlag);
|
||||
|
||||
#endif // GUARD_PARTY_MENU_H
|
||||
|
||||
+1
-1
@@ -651,7 +651,7 @@ bool8 IsTradedMon(struct Pokemon *mon);
|
||||
bool8 IsOtherTrainer(u32 otId, u8 *otName);
|
||||
void MonRestorePP(struct Pokemon *mon);
|
||||
void BoxMonRestorePP(struct BoxPokemon *boxMon);
|
||||
void sub_8044348(void);
|
||||
void SetMonPreventsSwitchingString(void);
|
||||
void SetWildMonHeldItem(void);
|
||||
bool8 IsMonShiny(struct Pokemon *mon);
|
||||
u8 *GetTrainerPartnerName(void);
|
||||
|
||||
+1
-1
@@ -63,7 +63,7 @@ SECTIONS {
|
||||
asm/link.o(.text);
|
||||
src/multiboot.o(.text);
|
||||
asm/main_menu.o(.text);
|
||||
asm/battle_controllers.o(.text);
|
||||
src/battle_controllers.o(.text);
|
||||
src/decompress.o(.text);
|
||||
asm/battle_1.o(.text);
|
||||
asm/battle_2.o(.text);
|
||||
|
||||
@@ -249,7 +249,7 @@ static const u16 sDiscouragedPowerfulMoveEffects[] =
|
||||
};
|
||||
|
||||
// TODO: move these
|
||||
extern u8 sBattler_AI;
|
||||
extern u8 gBattlerAttacker;
|
||||
extern const u32 gBitTable[]; // util.h
|
||||
extern u32 gStatuses3[]; // battle_2.h
|
||||
extern u16 gSideAffecting[2];
|
||||
@@ -318,7 +318,7 @@ void BattleAI_SetupAIData(void)
|
||||
}
|
||||
|
||||
gBattleResources->AI_ScriptsStack->size = 0;
|
||||
sBattler_AI = gActiveBattler;
|
||||
gBattlerAttacker = gActiveBattler;
|
||||
|
||||
// Decide a random target battlerId in doubles.
|
||||
if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE)
|
||||
@@ -331,7 +331,7 @@ void BattleAI_SetupAIData(void)
|
||||
// There's only one choice in single battles.
|
||||
else
|
||||
{
|
||||
gBattlerTarget = sBattler_AI ^ BIT_SIDE;
|
||||
gBattlerTarget = gBattlerAttacker ^ BIT_SIDE;
|
||||
}
|
||||
|
||||
// Choose proper trainer ai scripts.
|
||||
@@ -425,13 +425,13 @@ void BattleAI_DoAIProcessing(void)
|
||||
break;
|
||||
case AIState_SettingUp:
|
||||
gAIScriptPtr = BattleAIs[AI_THINKING_STRUCT->aiLogicId]; // set the AI ptr.
|
||||
if (gBattleMons[sBattler_AI].pp[AI_THINKING_STRUCT->movesetIndex] == 0)
|
||||
if (gBattleMons[gBattlerAttacker].pp[AI_THINKING_STRUCT->movesetIndex] == 0)
|
||||
{
|
||||
AI_THINKING_STRUCT->moveConsidered = 0; // don't consider a move you have 0 PP for, idiot.
|
||||
}
|
||||
else
|
||||
{
|
||||
AI_THINKING_STRUCT->moveConsidered = gBattleMons[sBattler_AI].moves[AI_THINKING_STRUCT->movesetIndex];
|
||||
AI_THINKING_STRUCT->moveConsidered = gBattleMons[gBattlerAttacker].moves[AI_THINKING_STRUCT->movesetIndex];
|
||||
}
|
||||
AI_THINKING_STRUCT->aiState++;
|
||||
break;
|
||||
@@ -544,7 +544,7 @@ static void BattleAICmd_if_hp_less_than(void)
|
||||
u16 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -559,7 +559,7 @@ static void BattleAICmd_if_hp_more_than(void)
|
||||
u16 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -574,7 +574,7 @@ static void BattleAICmd_if_hp_equal(void)
|
||||
u16 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -589,7 +589,7 @@ static void BattleAICmd_if_hp_not_equal(void)
|
||||
u16 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -605,7 +605,7 @@ static void BattleAICmd_if_status(void)
|
||||
u32 arg;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -623,7 +623,7 @@ static void BattleAICmd_if_not_status(void)
|
||||
u32 arg;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -641,7 +641,7 @@ static void BattleAICmd_if_status2(void)
|
||||
u32 arg;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -659,7 +659,7 @@ static void BattleAICmd_if_not_status2(void)
|
||||
u32 arg;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -677,7 +677,7 @@ static void BattleAICmd_if_status3(void)
|
||||
u32 arg;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -695,7 +695,7 @@ static void BattleAICmd_if_not_status3(void)
|
||||
u32 arg;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -713,7 +713,7 @@ static void BattleAICmd_if_status4(void)
|
||||
u32 arg1, arg2;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -732,7 +732,7 @@ static void BattleAICmd_if_not_status4(void)
|
||||
u32 arg1, arg2;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -907,8 +907,8 @@ static void BattleAICmd_if_user_can_damage(void)
|
||||
|
||||
for (i = 0; i < MAX_MON_MOVES; i++)
|
||||
{
|
||||
if (gBattleMons[sBattler_AI].moves[i] != 0
|
||||
&& gBattleMoves[gBattleMons[sBattler_AI].moves[i]].power != 0)
|
||||
if (gBattleMons[gBattlerAttacker].moves[i] != 0
|
||||
&& gBattleMoves[gBattleMons[gBattlerAttacker].moves[i]].power != 0)
|
||||
break;
|
||||
}
|
||||
if (i == MAX_MON_MOVES)
|
||||
@@ -923,8 +923,8 @@ static void BattleAICmd_if_user_cant_damage(void)
|
||||
|
||||
for (i = 0; i < MAX_MON_MOVES; i++)
|
||||
{
|
||||
if (gBattleMons[sBattler_AI].moves[i] != 0
|
||||
&& gBattleMoves[gBattleMons[sBattler_AI].moves[i]].power != 0)
|
||||
if (gBattleMons[gBattlerAttacker].moves[i] != 0
|
||||
&& gBattleMoves[gBattleMons[gBattlerAttacker].moves[i]].power != 0)
|
||||
break;
|
||||
}
|
||||
if (i != MAX_MON_MOVES)
|
||||
@@ -944,13 +944,13 @@ static void BattleAICmd_get_type(void)
|
||||
switch (gAIScriptPtr[1])
|
||||
{
|
||||
case 1: // player primary type
|
||||
AI_THINKING_STRUCT->funcResult = gBattleMons[sBattler_AI].type1;
|
||||
AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerAttacker].type1;
|
||||
break;
|
||||
case 0: // enemy primary type
|
||||
AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerTarget].type1;
|
||||
break;
|
||||
case 3: // player secondary type
|
||||
AI_THINKING_STRUCT->funcResult = gBattleMons[sBattler_AI].type2;
|
||||
AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerAttacker].type2;
|
||||
break;
|
||||
case 2: // enemy secondary type
|
||||
AI_THINKING_STRUCT->funcResult = gBattleMons[gBattlerTarget].type2;
|
||||
@@ -992,17 +992,17 @@ static void BattleAICmd_is_most_powerful_move(void)
|
||||
{
|
||||
for (i = 0; sDiscouragedPowerfulMoveEffects[i] != 0xFFFF; i++)
|
||||
{
|
||||
if (gBattleMoves[gBattleMons[sBattler_AI].moves[checkedMove]].effect == sDiscouragedPowerfulMoveEffects[i])
|
||||
if (gBattleMoves[gBattleMons[gBattlerAttacker].moves[checkedMove]].effect == sDiscouragedPowerfulMoveEffects[i])
|
||||
break;
|
||||
}
|
||||
|
||||
if (gBattleMons[sBattler_AI].moves[checkedMove] != MOVE_NONE
|
||||
if (gBattleMons[gBattlerAttacker].moves[checkedMove] != MOVE_NONE
|
||||
&& sDiscouragedPowerfulMoveEffects[i] == 0xFFFF
|
||||
&& gBattleMoves[gBattleMons[sBattler_AI].moves[checkedMove]].power > 1)
|
||||
&& gBattleMoves[gBattleMons[gBattlerAttacker].moves[checkedMove]].power > 1)
|
||||
{
|
||||
gCurrentMove = gBattleMons[sBattler_AI].moves[checkedMove];
|
||||
AI_CalcDmg(sBattler_AI, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
gCurrentMove = gBattleMons[gBattlerAttacker].moves[checkedMove];
|
||||
AI_CalcDmg(gBattlerAttacker, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, gBattlerAttacker, gBattlerTarget);
|
||||
moveDmgs[checkedMove] = gBattleMoveDamage * AI_THINKING_STRUCT->simulatedRNG[checkedMove] / 100;
|
||||
if (moveDmgs[checkedMove] == 0)
|
||||
moveDmgs[checkedMove] = 1;
|
||||
@@ -1035,7 +1035,7 @@ static void BattleAICmd_is_most_powerful_move(void)
|
||||
static void BattleAICmd_get_move(void)
|
||||
{
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
AI_THINKING_STRUCT->funcResult = gLastUsedMove[sBattler_AI];
|
||||
AI_THINKING_STRUCT->funcResult = gLastUsedMove[gBattlerAttacker];
|
||||
else
|
||||
AI_THINKING_STRUCT->funcResult = gLastUsedMove[gBattlerTarget];
|
||||
|
||||
@@ -1060,7 +1060,7 @@ static void BattleAICmd_if_arg_not_equal(void)
|
||||
|
||||
static void BattleAICmd_if_would_go_first(void)
|
||||
{
|
||||
if (GetWhoStrikesFirst(sBattler_AI, gBattlerTarget, TRUE) == gAIScriptPtr[1])
|
||||
if (GetWhoStrikesFirst(gBattlerAttacker, gBattlerTarget, TRUE) == gAIScriptPtr[1])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
|
||||
else
|
||||
gAIScriptPtr += 6;
|
||||
@@ -1068,7 +1068,7 @@ static void BattleAICmd_if_would_go_first(void)
|
||||
|
||||
static void BattleAICmd_if_would_not_go_first(void)
|
||||
{
|
||||
if (GetWhoStrikesFirst(sBattler_AI, gBattlerTarget, TRUE) != gAIScriptPtr[1])
|
||||
if (GetWhoStrikesFirst(gBattlerAttacker, gBattlerTarget, TRUE) != gAIScriptPtr[1])
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
|
||||
else
|
||||
gAIScriptPtr += 6;
|
||||
@@ -1092,7 +1092,7 @@ static void BattleAICmd_count_alive_pokemon(void)
|
||||
AI_THINKING_STRUCT->funcResult = 0;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1145,7 +1145,7 @@ static void BattleAICmd_get_ability(void)
|
||||
u8 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1218,11 +1218,11 @@ static void BattleAICmd_get_highest_possible_damage(void)
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
gBattleMoveDamage = 40;
|
||||
gCurrentMove = gBattleMons[sBattler_AI].moves[i];
|
||||
gCurrentMove = gBattleMons[gBattlerAttacker].moves[i];
|
||||
|
||||
if (gCurrentMove != 0)
|
||||
{
|
||||
TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, gBattlerAttacker, gBattlerTarget);
|
||||
|
||||
if (gBattleMoveDamage == 120) // Super effective STAB.
|
||||
gBattleMoveDamage = AI_EFFECTIVENESS_x2;
|
||||
@@ -1257,7 +1257,7 @@ static void BattleAICmd_if_type_effectiveness(void)
|
||||
gBattleMoveDamage = AI_EFFECTIVENESS_x1;
|
||||
gCurrentMove = AI_THINKING_STRUCT->moveConsidered;
|
||||
|
||||
TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, gBattlerAttacker, gBattlerTarget);
|
||||
|
||||
if (gBattleMoveDamage == 120) // Super effective STAB.
|
||||
gBattleMoveDamage = AI_EFFECTIVENESS_x2;
|
||||
@@ -1402,7 +1402,7 @@ static void BattleAICmd_if_stat_level_less_than(void)
|
||||
u32 party;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
party = sBattler_AI;
|
||||
party = gBattlerAttacker;
|
||||
else
|
||||
party = gBattlerTarget;
|
||||
|
||||
@@ -1417,7 +1417,7 @@ static void BattleAICmd_if_stat_level_more_than(void)
|
||||
u32 party;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
party = sBattler_AI;
|
||||
party = gBattlerAttacker;
|
||||
else
|
||||
party = gBattlerTarget;
|
||||
|
||||
@@ -1432,7 +1432,7 @@ static void BattleAICmd_if_stat_level_equal(void)
|
||||
u32 party;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
party = sBattler_AI;
|
||||
party = gBattlerAttacker;
|
||||
else
|
||||
party = gBattlerTarget;
|
||||
|
||||
@@ -1447,7 +1447,7 @@ static void BattleAICmd_if_stat_level_not_equal(void)
|
||||
u32 party;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
party = sBattler_AI;
|
||||
party = gBattlerAttacker;
|
||||
else
|
||||
party = gBattlerTarget;
|
||||
|
||||
@@ -1471,8 +1471,8 @@ static void BattleAICmd_if_can_faint(void)
|
||||
gMoveResultFlags = 0;
|
||||
gCritMultiplier = 1;
|
||||
gCurrentMove = AI_THINKING_STRUCT->moveConsidered;
|
||||
AI_CalcDmg(sBattler_AI, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
AI_CalcDmg(gBattlerAttacker, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, gBattlerAttacker, gBattlerTarget);
|
||||
|
||||
gBattleMoveDamage = gBattleMoveDamage * AI_THINKING_STRUCT->simulatedRNG[AI_THINKING_STRUCT->movesetIndex] / 100;
|
||||
|
||||
@@ -1500,8 +1500,8 @@ static void BattleAICmd_if_cant_faint(void)
|
||||
gMoveResultFlags = 0;
|
||||
gCritMultiplier = 1;
|
||||
gCurrentMove = AI_THINKING_STRUCT->moveConsidered;
|
||||
AI_CalcDmg(sBattler_AI, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, sBattler_AI, gBattlerTarget);
|
||||
AI_CalcDmg(gBattlerAttacker, gBattlerTarget);
|
||||
TypeCalc(gCurrentMove, gBattlerAttacker, gBattlerTarget);
|
||||
|
||||
gBattleMoveDamage = gBattleMoveDamage * AI_THINKING_STRUCT->simulatedRNG[AI_THINKING_STRUCT->movesetIndex] / 100;
|
||||
|
||||
@@ -1524,7 +1524,7 @@ static void BattleAICmd_if_has_move(void)
|
||||
case 3:
|
||||
for (i = 0; i < MAX_MON_MOVES; i++)
|
||||
{
|
||||
if (gBattleMons[sBattler_AI].moves[i] == *temp_ptr)
|
||||
if (gBattleMons[gBattlerAttacker].moves[i] == *temp_ptr)
|
||||
break;
|
||||
}
|
||||
if (i == MAX_MON_MOVES)
|
||||
@@ -1558,7 +1558,7 @@ static void BattleAICmd_if_dont_have_move(void)
|
||||
case 3:
|
||||
for (i = 0; i < MAX_MON_MOVES; i++)
|
||||
{
|
||||
if (gBattleMons[sBattler_AI].moves[i] == *temp_ptr)
|
||||
if (gBattleMons[gBattlerAttacker].moves[i] == *temp_ptr)
|
||||
break;
|
||||
}
|
||||
if (i != MAX_MON_MOVES)
|
||||
@@ -1591,7 +1591,7 @@ static void BattleAICmd_if_move_effect(void)
|
||||
case 3:
|
||||
for (i = 0; i < MAX_MON_MOVES; i++)
|
||||
{
|
||||
if (gBattleMons[sBattler_AI].moves[i] != 0 && gBattleMoves[gBattleMons[sBattler_AI].moves[i]].effect == gAIScriptPtr[2])
|
||||
if (gBattleMons[gBattlerAttacker].moves[i] != 0 && gBattleMoves[gBattleMons[gBattlerAttacker].moves[i]].effect == gAIScriptPtr[2])
|
||||
break;
|
||||
}
|
||||
if (i != MAX_MON_MOVES)
|
||||
@@ -1603,7 +1603,7 @@ static void BattleAICmd_if_move_effect(void)
|
||||
case 2:
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
if (gBattleMons[sBattler_AI].moves[i] != 0 && gBattleMoves[BATTLE_HISTORY->usedMoves[gBattlerTarget >> 1][i]].effect == gAIScriptPtr[2])
|
||||
if (gBattleMons[gBattlerAttacker].moves[i] != 0 && gBattleMoves[BATTLE_HISTORY->usedMoves[gBattlerTarget >> 1][i]].effect == gAIScriptPtr[2])
|
||||
break;
|
||||
}
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 3);
|
||||
@@ -1620,7 +1620,7 @@ static void BattleAICmd_if_not_move_effect(void)
|
||||
case 3:
|
||||
for (i = 0; i < MAX_MON_MOVES; i++)
|
||||
{
|
||||
if (gBattleMons[sBattler_AI].moves[i] != 0 && gBattleMoves[gBattleMons[sBattler_AI].moves[i]].effect == gAIScriptPtr[2])
|
||||
if (gBattleMons[gBattlerAttacker].moves[i] != 0 && gBattleMoves[gBattleMons[gBattlerAttacker].moves[i]].effect == gAIScriptPtr[2])
|
||||
break;
|
||||
}
|
||||
if (i != MAX_MON_MOVES)
|
||||
@@ -1644,7 +1644,7 @@ static void BattleAICmd_if_last_move_did_damage(void)
|
||||
u8 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1739,7 +1739,7 @@ static void BattleAICmd_get_hold_effect(void)
|
||||
u16 side;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1759,7 +1759,7 @@ static void BattleAICmd_get_gender(void)
|
||||
u8 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1773,7 +1773,7 @@ static void BattleAICmd_is_first_turn(void)
|
||||
u8 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1787,7 +1787,7 @@ static void BattleAICmd_get_stockpile_count(void)
|
||||
u8 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1808,7 +1808,7 @@ static void BattleAICmd_get_used_held_item(void)
|
||||
u8 battlerId;
|
||||
|
||||
if (gAIScriptPtr[1] == AI_USER)
|
||||
battlerId = sBattler_AI;
|
||||
battlerId = gBattlerAttacker;
|
||||
else
|
||||
battlerId = gBattlerTarget;
|
||||
|
||||
@@ -1848,7 +1848,7 @@ static void BattleAICmd_get_protect_count(void)
|
||||
u8 index;
|
||||
|
||||
if (gAIScriptPtr[1] == USER)
|
||||
index = sBattler_AI;
|
||||
index = gBattlerAttacker;
|
||||
else
|
||||
index = gBattlerTarget;
|
||||
|
||||
@@ -1903,7 +1903,7 @@ static void BattleAICmd_if_level_compare(void)
|
||||
switch (gAIScriptPtr[1])
|
||||
{
|
||||
case 0: // greater than
|
||||
if (gBattleMons[sBattler_AI].level > gBattleMons[gBattlerTarget].level)
|
||||
if (gBattleMons[gBattlerAttacker].level > gBattleMons[gBattlerTarget].level)
|
||||
{
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
|
||||
return;
|
||||
@@ -1911,7 +1911,7 @@ static void BattleAICmd_if_level_compare(void)
|
||||
gAIScriptPtr += 6;
|
||||
return;
|
||||
case 1: // less than
|
||||
if (gBattleMons[sBattler_AI].level < gBattleMons[gBattlerTarget].level)
|
||||
if (gBattleMons[gBattlerAttacker].level < gBattleMons[gBattlerTarget].level)
|
||||
{
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
|
||||
return;
|
||||
@@ -1919,7 +1919,7 @@ static void BattleAICmd_if_level_compare(void)
|
||||
gAIScriptPtr += 6;
|
||||
return;
|
||||
case 2: // equal
|
||||
if (gBattleMons[sBattler_AI].level == gBattleMons[gBattlerTarget].level)
|
||||
if (gBattleMons[gBattlerAttacker].level == gBattleMons[gBattlerTarget].level)
|
||||
{
|
||||
gAIScriptPtr = T1_READ_PTR(gAIScriptPtr + 2);
|
||||
return;
|
||||
|
||||
@@ -176,16 +176,16 @@ static void HandleInputChooseAction(void)
|
||||
switch (gActionSelectionCursor[gActiveBattler])
|
||||
{
|
||||
case 0:
|
||||
EmitTwoReturnValues(1, B_ACTION_SAFARI_BALL, 0);
|
||||
BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_BALL, 0);
|
||||
break;
|
||||
case 1:
|
||||
EmitTwoReturnValues(1, B_ACTION_SAFARI_POKEBLOCK, 0);
|
||||
BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_POKEBLOCK, 0);
|
||||
break;
|
||||
case 2:
|
||||
EmitTwoReturnValues(1, B_ACTION_SAFARI_GO_NEAR, 0);
|
||||
BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_GO_NEAR, 0);
|
||||
break;
|
||||
case 3:
|
||||
EmitTwoReturnValues(1, B_ACTION_SAFARI_RUN, 0);
|
||||
BtlController_EmitTwoReturnValues(1, B_ACTION_SAFARI_RUN, 0);
|
||||
break;
|
||||
}
|
||||
SafariBufferExecCompleted();
|
||||
@@ -276,7 +276,7 @@ static void CompleteWhenChosePokeblock(void)
|
||||
{
|
||||
if (gMain.callback2 == BattleMainCB2 && !gPaletteFade.active)
|
||||
{
|
||||
EmitOneReturnValue(1, gSpecialVar_ItemId);
|
||||
BtlController_EmitOneReturnValue(1, gSpecialVar_ItemId);
|
||||
SafariBufferExecCompleted();
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -758,6 +758,7 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 notTransform)
|
||||
void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite)
|
||||
{
|
||||
u8 position;
|
||||
// variable i is actually u8, but needs to be 32-bit to make the inline ASM match.
|
||||
s32 i;
|
||||
u32 palOffset;
|
||||
const void *substitutePal;
|
||||
|
||||
+4
-4
@@ -134,7 +134,7 @@ static void ResetTTDataBuffer(void)
|
||||
{
|
||||
memset(gDecompressionBuffer, 0, 0x2000);
|
||||
gLinkType = 0x5502;
|
||||
sub_8009804();
|
||||
OpenLink();
|
||||
SetSuppressLinkErrorMessage(TRUE);
|
||||
}
|
||||
|
||||
@@ -156,7 +156,7 @@ bool32 sub_81436EC(void)
|
||||
|
||||
static bool32 IsEReaderConnectionSane(void)
|
||||
{
|
||||
if (sub_800AA48() && GetLinkPlayerCount_2() == 2)
|
||||
if (IsLinkMaster() && GetLinkPlayerCount_2() == 2)
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
@@ -171,7 +171,7 @@ u32 sub_8143770(u8 * r4, u16 * r5)
|
||||
switch (*r4)
|
||||
{
|
||||
case 0:
|
||||
if (sub_800AA48() && GetLinkPlayerCount_2() > 1)
|
||||
if (IsLinkMaster() && GetLinkPlayerCount_2() > 1)
|
||||
{
|
||||
*r4 = 1;
|
||||
;
|
||||
@@ -193,7 +193,7 @@ u32 sub_8143770(u8 * r4, u16 * r5)
|
||||
if (GetLinkPlayerCount_2() == 2)
|
||||
{
|
||||
PlaySE(SE_TOY_G);
|
||||
sub_800A5BC();
|
||||
CheckShouldAdvanceLinkState();
|
||||
*r5 = 0;
|
||||
*r4 = 3;
|
||||
}
|
||||
|
||||
@@ -155,7 +155,7 @@ static bool32 mevent_send_func(struct mevent_srv_sub * svr)
|
||||
switch (svr->seqno)
|
||||
{
|
||||
case 0:
|
||||
if (sub_800A4BC())
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
header.ident = svr->sendIdent;
|
||||
header.size = svr->sendSize;
|
||||
@@ -167,7 +167,7 @@ static bool32 mevent_send_func(struct mevent_srv_sub * svr)
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (sub_800A4BC())
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
if (mevent_has_received(svr->sendPlayerNo))
|
||||
{
|
||||
@@ -189,7 +189,7 @@ static bool32 mevent_send_func(struct mevent_srv_sub * svr)
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (sub_800A4BC())
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
if (CalcCRC16WithTable(svr->sendBfr, svr->sendSize) != svr->sendCRC)
|
||||
sub_80FA190();
|
||||
|
||||
+5
-12
@@ -19,7 +19,6 @@
|
||||
#include "evolution_scene.h"
|
||||
#include "battle_message.h"
|
||||
#include "battle_util.h"
|
||||
#include "battle_ai_script_commands.h"
|
||||
#include "link.h"
|
||||
#include "m4a.h"
|
||||
#include "sound.h"
|
||||
@@ -2592,7 +2591,7 @@ u8 CountAliveMonsInBattle(u8 caseId)
|
||||
case BATTLE_ALIVE_ATK_SIDE:
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
if (GetBattlerSide(i) == GetBattlerSide(sBattler_AI) && !(gAbsentBattlerFlags & gBitTable[i]))
|
||||
if (GetBattlerSide(i) == GetBattlerSide(gBattlerAttacker) && !(gAbsentBattlerFlags & gBitTable[i]))
|
||||
retVal++;
|
||||
}
|
||||
break;
|
||||
@@ -6106,7 +6105,7 @@ const u8 *Battle_PrintStatBoosterEffectMessage(u16 itemId)
|
||||
}
|
||||
else
|
||||
{
|
||||
sBattler_AI = gBattlerInMenuId;
|
||||
gBattlerAttacker = gBattlerInMenuId;
|
||||
BattleStringExpandPlaceholdersToDisplayedString(BattleText_GetPumped);
|
||||
}
|
||||
}
|
||||
@@ -6114,7 +6113,7 @@ const u8 *Battle_PrintStatBoosterEffectMessage(u16 itemId)
|
||||
|
||||
if (itemEffect[3] & 0x80)
|
||||
{
|
||||
sBattler_AI = gBattlerInMenuId;
|
||||
gBattlerAttacker = gBattlerInMenuId;
|
||||
BattleStringExpandPlaceholdersToDisplayedString(BattleText_MistShroud);
|
||||
}
|
||||
|
||||
@@ -7075,15 +7074,9 @@ void BoxMonRestorePP(struct BoxPokemon *boxMon)
|
||||
}
|
||||
}
|
||||
|
||||
// SetMonPreventsSwitchingString
|
||||
void sub_8044348(void)
|
||||
void SetMonPreventsSwitchingString(void)
|
||||
{
|
||||
#ifdef NONMATCHING
|
||||
gLastUsedAbility = gBattleStruct -> abilityPreventingSwitchout; // fixed from the original
|
||||
#else
|
||||
gLastUsedAbility = ((u8 *) gBattleStruct)[0xac]; // huh? why is this wrong?
|
||||
#endif
|
||||
|
||||
gLastUsedAbility = gBattleStruct -> abilityPreventingSwitchout;
|
||||
gBattleTextBuff1[0] = B_BUFF_PLACEHOLDER_BEGIN;
|
||||
gBattleTextBuff1[1] = B_BUFF_MON_NICK_WITH_PREFIX;
|
||||
gBattleTextBuff1[2] = gBattleStruct->battlerPreventingSwitchout;
|
||||
|
||||
@@ -26,7 +26,7 @@ void sub_812C334(s32 *, s32 *);
|
||||
|
||||
void sub_812BFDC(void)
|
||||
{
|
||||
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_WALLY_TUTORIAL | BATTLE_TYPE_POKEDUDE)) && (gBattleOutcome == B_OUTCOME_WON || gBattleOutcome == B_OUTCOME_CAUGHT))
|
||||
if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_OLDMAN_TUTORIAL | BATTLE_TYPE_POKEDUDE)) && (gBattleOutcome == B_OUTCOME_WON || gBattleOutcome == B_OUTCOME_CAUGHT))
|
||||
{
|
||||
struct QuestLogStruct_TrainerBattleRecord * questLogTrainerBattleRecord = Alloc(sizeof(struct QuestLogStruct_TrainerBattleRecord));
|
||||
struct QuestLogStruct_WildBattleRecord * questLogWildBattleRecord = Alloc(sizeof(struct QuestLogStruct_WildBattleRecord));
|
||||
|
||||
+4
-4
@@ -68,7 +68,7 @@ const struct SaveSectionOffsets gSaveSectionOffsets[] =
|
||||
|
||||
extern void DoSaveFailedScreen(u8 saveType); // save_failed_screen
|
||||
extern void sub_800AB9C(void); // link
|
||||
extern bool8 sub_800A4BC(void); // link
|
||||
extern bool8 IsLinkTaskFinished(void); // link
|
||||
extern void save_serialize_map(void); // fieldmap
|
||||
extern void sub_804C1C0(void); // load_save
|
||||
extern void sav2_gender2_inplace_and_xFE(void); // load_save
|
||||
@@ -865,7 +865,7 @@ void sub_80DA634(u8 taskId)
|
||||
gTasks[taskId].data[0] = 2;
|
||||
break;
|
||||
case 2:
|
||||
if (sub_800A4BC())
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
save_serialize_map();
|
||||
gTasks[taskId].data[0] = 3;
|
||||
@@ -899,7 +899,7 @@ void sub_80DA634(u8 taskId)
|
||||
gTasks[taskId].data[0] = 8;
|
||||
break;
|
||||
case 8:
|
||||
if (sub_800A4BC())
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
sub_80DA434();
|
||||
gTasks[taskId].data[0] = 9;
|
||||
@@ -910,7 +910,7 @@ void sub_80DA634(u8 taskId)
|
||||
gTasks[taskId].data[0] = 10;
|
||||
break;
|
||||
case 10:
|
||||
if (sub_800A4BC())
|
||||
if (IsLinkTaskFinished())
|
||||
gTasks[taskId].data[0]++;
|
||||
break;
|
||||
case 11:
|
||||
|
||||
+1
-1
@@ -108,7 +108,7 @@ gUnknown_3004F74: @ 3004F74
|
||||
gPreBattleCallback1: @ 3004F80
|
||||
.space 0x4
|
||||
|
||||
gUnknown_3004F84: @ 3004F84
|
||||
gBattleMainFunc: @ 3004F84
|
||||
.space 0xC
|
||||
|
||||
gBattleResults: @ 3004F90
|
||||
|
||||
+8
-21
@@ -79,20 +79,7 @@ gUnknown_2022860: @ 2022860
|
||||
.space 0xC
|
||||
|
||||
@ .include "src/link_rfu.o"
|
||||
gUnknown_202286C: @ 202286C
|
||||
.space 0x1
|
||||
|
||||
gUnknown_202286D: @ 202286D
|
||||
.space 0x1
|
||||
|
||||
gUnknown_202286E: @ 202286E
|
||||
.space 0x2
|
||||
|
||||
gUnknown_2022870: @ 2022870
|
||||
.space 0x4
|
||||
|
||||
gUnknown_2022874: @ 2022874
|
||||
.space 0x100
|
||||
.include "src/battle_controllers.o"
|
||||
|
||||
gBattle_BG0_X: @ 2022974
|
||||
.space 0x2
|
||||
@@ -139,7 +126,7 @@ gBattleTextBuff1: @ 2022AB8
|
||||
gBattleTextBuff2: @ 2022AC8
|
||||
.space 0x10
|
||||
|
||||
gUnknown_2022AD8: @ 2022AD8
|
||||
gBattleTextBuff3: @ 2022AD8
|
||||
.space 0x10
|
||||
|
||||
gUnknown_2022AE8: @ 2022AE8
|
||||
@@ -178,7 +165,7 @@ gUnknown_2022BC7: @ 2022BC7
|
||||
gUnknown_2022BC8: @ 2022BC8
|
||||
.space 0x7FC
|
||||
|
||||
gUnknown_20233C4: @ 20233C4
|
||||
gBattleBufferB: @ 20233C4
|
||||
.space 0x4
|
||||
|
||||
gUnknown_20233C8: @ 20233C8
|
||||
@@ -244,7 +231,7 @@ gUnknown_2023D49: @ 2023D49
|
||||
gCurrentMove: @ 2023D4A
|
||||
.space 0x2
|
||||
|
||||
gUnknown_2023D4C: @ 2023D4C
|
||||
gChosenMove: @ 2023D4C
|
||||
.space 0x2
|
||||
|
||||
gUnknown_2023D4E: @ 2023D4E
|
||||
@@ -259,13 +246,13 @@ gUnknown_2023D54: @ 2023D54
|
||||
gUnknown_2023D58: @ 2023D58
|
||||
.space 0x10
|
||||
|
||||
gUnknown_2023D68: @ 2023D68
|
||||
gLastUsedItem: @ 2023D68
|
||||
.space 0x2
|
||||
|
||||
gLastUsedAbility: @ 2023D6A
|
||||
.space 0x1
|
||||
|
||||
sBattler_AI: @ 2023D6B
|
||||
gBattlerAttacker: @ 2023D6B
|
||||
.space 0x1
|
||||
|
||||
gBattlerTarget: @ 2023D6C
|
||||
@@ -274,7 +261,7 @@ gBattlerTarget: @ 2023D6C
|
||||
gUnknown_2023D6D: @ 2023D6D
|
||||
.space 0x1
|
||||
|
||||
gUnknown_2023D6E: @ 2023D6E
|
||||
gEffectBattler: @ 2023D6E
|
||||
.space 0x1
|
||||
|
||||
gPotentialItemEffectBattler: @ 2023D6F
|
||||
@@ -415,7 +402,7 @@ gBattleResources: @ 2023FF4
|
||||
gActionSelectionCursor: @ 2023FF8
|
||||
.space 0x4
|
||||
|
||||
gUnknown_2023FFC: @ 2023FFC
|
||||
gMoveSelectionCursor: @ 2023FFC
|
||||
.space 0x4
|
||||
|
||||
gUnknown_2024000: @ 2024000
|
||||
|
||||
Reference in New Issue
Block a user