through ScrCmd_checkdecor
This commit is contained in:
@@ -308,7 +308,7 @@ _080E77AC:
|
||||
bhi _080E7838
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
_080E780A:
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
|
||||
@@ -381,7 +381,7 @@ _0802E5A8:
|
||||
bhi _0802E634
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
_0802E606:
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
|
||||
+2
-2
@@ -104,7 +104,7 @@ sub_807F6CC: @ 807F6CC
|
||||
bhi _0807F6FC
|
||||
ldr r0, _0807F6F8 @ =0x00000167
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0807F6FC
|
||||
@@ -356,7 +356,7 @@ sub_807F904: @ 807F904
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, _0807F94C @ =0x00000167
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0807F958
|
||||
|
||||
+1
-1
@@ -3218,7 +3218,7 @@ sub_80E724C: @ 80E724C
|
||||
adds r1, r0
|
||||
ldrh r0, [r1]
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x1
|
||||
|
||||
+2
-2
@@ -2497,7 +2497,7 @@ _0813E18A:
|
||||
ldr r0, _0813E1F4 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldrh r1, [r5, 0x10]
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
movs r0, 0x9
|
||||
bl sub_813EA98
|
||||
ldrb r0, [r5]
|
||||
@@ -3250,7 +3250,7 @@ sub_813E7F0: @ 813E7F0
|
||||
ldrh r0, [r5]
|
||||
mov r2, r8
|
||||
ldrh r1, [r2, 0x10]
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
ldr r7, _0813E8C4 @ =gSaveBlock1Ptr
|
||||
ldr r4, [r7]
|
||||
movs r3, 0xA4
|
||||
|
||||
@@ -967,7 +967,7 @@ _0812B98C: .4byte 0x00000829
|
||||
_0812B990:
|
||||
ldr r0, _0812B99C @ =0x00000169
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
b _0812BAF6
|
||||
.align 2, 0
|
||||
_0812B99C: .4byte 0x00000169
|
||||
|
||||
+22
-22
@@ -252,8 +252,8 @@ _08099F3C:
|
||||
bx r1
|
||||
thumb_func_end sub_8099F08
|
||||
|
||||
thumb_func_start sub_8099F40
|
||||
sub_8099F40: @ 8099F40
|
||||
thumb_func_start CheckBagHasItem
|
||||
CheckBagHasItem: @ 8099F40
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
@@ -310,14 +310,14 @@ _08099FA6:
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8099F40
|
||||
thumb_func_end CheckBagHasItem
|
||||
|
||||
thumb_func_start sub_8099FAC
|
||||
sub_8099FAC: @ 8099FAC
|
||||
push {r4,lr}
|
||||
ldr r0, _08099FC0 @ =0x0000016d
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
lsrs r1, r0, 24
|
||||
cmp r1, 0
|
||||
@@ -338,7 +338,7 @@ _08099FD4:
|
||||
_08099FD6:
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
lsrs r1, r0, 24
|
||||
cmp r1, 0
|
||||
@@ -360,8 +360,8 @@ _08099FF6:
|
||||
_08099FFC: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_8099FAC
|
||||
|
||||
thumb_func_start sub_809A000
|
||||
sub_809A000: @ 809A000
|
||||
thumb_func_start CheckBagHasSpace
|
||||
CheckBagHasSpace: @ 809A000
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
@@ -428,10 +428,10 @@ _0809A07C:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_809A000
|
||||
thumb_func_end CheckBagHasSpace
|
||||
|
||||
thumb_func_start sub_809A084
|
||||
sub_809A084: @ 809A084
|
||||
thumb_func_start AddBagItem
|
||||
AddBagItem: @ 809A084
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
@@ -494,7 +494,7 @@ _0809A0F4:
|
||||
lsls r4, 1
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0809A132
|
||||
@@ -522,7 +522,7 @@ _0809A132:
|
||||
ldr r4, _0809A1B0 @ =0x0000016d
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0809A174
|
||||
@@ -595,10 +595,10 @@ _0809A1CC:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_809A084
|
||||
thumb_func_end AddBagItem
|
||||
|
||||
thumb_func_start sub_809A1D8
|
||||
sub_809A1D8: @ 809A1D8
|
||||
thumb_func_start RemoveBagItem
|
||||
RemoveBagItem: @ 809A1D8
|
||||
push {r4-r7,lr}
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
@@ -667,7 +667,7 @@ _0809A25A:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_809A1D8
|
||||
thumb_func_end RemoveBagItem
|
||||
|
||||
thumb_func_start GetPocketByItemId
|
||||
GetPocketByItemId: @ 809A260
|
||||
@@ -832,8 +832,8 @@ _0809A35C:
|
||||
_0809A370: .4byte gSaveBlock1Ptr
|
||||
thumb_func_end sub_809A33C
|
||||
|
||||
thumb_func_start sub_809A374
|
||||
sub_809A374: @ 809A374
|
||||
thumb_func_start CheckPCHasItem
|
||||
CheckPCHasItem: @ 809A374
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 16
|
||||
lsrs r6, r0, 16
|
||||
@@ -875,10 +875,10 @@ _0809A3C0:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_809A374
|
||||
thumb_func_end CheckPCHasItem
|
||||
|
||||
thumb_func_start sub_809A3C8
|
||||
sub_809A3C8: @ 809A3C8
|
||||
thumb_func_start AddPCItem
|
||||
AddPCItem: @ 809A3C8
|
||||
push {r4-r7,lr}
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
@@ -955,7 +955,7 @@ _0809A458:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_809A3C8
|
||||
thumb_func_end AddPCItem
|
||||
|
||||
thumb_func_start sub_809A460
|
||||
sub_809A460: @ 809A460
|
||||
|
||||
+13
-13
@@ -4200,7 +4200,7 @@ _08109F6E:
|
||||
ldr r0, _08109FF4 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldrh r1, [r7, 0x10]
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
movs r0, 0x6
|
||||
bl sub_810BA3C
|
||||
ldrb r0, [r7]
|
||||
@@ -5464,7 +5464,7 @@ sub_810A9D4: @ 810A9D4
|
||||
ldrh r0, [r5]
|
||||
mov r2, r8
|
||||
ldrh r1, [r2, 0x10]
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
ldr r3, _0810AAE0 @ =gSaveBlock1Ptr
|
||||
ldr r4, [r3]
|
||||
movs r7, 0xA4
|
||||
@@ -5744,7 +5744,7 @@ sub_810AC40: @ 810AC40
|
||||
ldr r5, _0810ACD0 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r5]
|
||||
ldrh r1, [r7, 0x10]
|
||||
bl sub_809A3C8
|
||||
bl AddPCItem
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
cmp r6, 0x1
|
||||
@@ -5839,7 +5839,7 @@ _0810AD1E:
|
||||
cmp r0, 0
|
||||
beq _0810AD98
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
cmp r6, 0x1
|
||||
@@ -6120,10 +6120,10 @@ sub_810AF74: @ 810AF74
|
||||
bl sub_810ADD8
|
||||
movs r0, 0xD
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
movs r0, 0x4
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
ldr r2, _0810AF98 @ =sub_8030AEC
|
||||
movs r0, 0x6
|
||||
movs r1, 0
|
||||
@@ -6317,27 +6317,27 @@ sub_810B108: @ 810B108
|
||||
bl sub_810ADD8
|
||||
movs r0, 0xD
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
movs r0, 0xE
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
movs r0, 0xB7
|
||||
lsls r0, 1
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
movs r0, 0xB6
|
||||
lsls r0, 1
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
movs r0, 0x4
|
||||
movs r1, 0x5
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
movs r0, 0x3
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
movs r0, 0x8
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
cmp r4, 0x7
|
||||
beq _0810B160
|
||||
cmp r4, 0x8
|
||||
|
||||
+1
-1
@@ -2036,7 +2036,7 @@ sub_810E418: @ 810E418
|
||||
lsrs r4, r0, 16
|
||||
ldrh r1, [r5, 0x10]
|
||||
adds r0, r4, 0
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
|
||||
+3
-3
@@ -1361,7 +1361,7 @@ sub_80A1A44: @ 80A1A44
|
||||
ldr r4, _080A1A84 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
ldrh r0, [r4]
|
||||
bl ItemId_GetPocket
|
||||
lsls r0, 24
|
||||
@@ -1844,7 +1844,7 @@ sub_80A1E1C: @ 80A1E1C
|
||||
ldr r0, _080A1E44 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
bl sub_8108CB4
|
||||
adds r0, r4, 0
|
||||
bl sub_8108B50
|
||||
@@ -1959,7 +1959,7 @@ sub_80A1EF4: @ 80A1EF4
|
||||
bl PlaySE
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
adds r0, r4, 0
|
||||
bl sub_8042DA4
|
||||
adds r2, r0, 0
|
||||
|
||||
+23
-23
@@ -3582,7 +3582,7 @@ sub_8120610: @ 8120610
|
||||
b _0812064E
|
||||
_0812062C:
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0812064C
|
||||
@@ -9943,7 +9943,7 @@ _081237CC:
|
||||
beq _081237F8
|
||||
ldrh r0, [r6]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
movs r0, 0x9
|
||||
ldrsb r0, [r5, r0]
|
||||
mov r1, r8
|
||||
@@ -10016,7 +10016,7 @@ sub_8123824: @ 8123824
|
||||
bl sub_81205C8
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
ldr r1, _0812389C @ =gTasks
|
||||
lsls r0, r7, 2
|
||||
adds r0, r7
|
||||
@@ -10133,17 +10133,17 @@ _08123956:
|
||||
ldr r5, _08123998 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r5]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
ldr r6, _0812399C @ =gUnknown_203B0D8
|
||||
ldrh r0, [r6]
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _081239AC
|
||||
ldrh r0, [r5]
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
ldrh r0, [r6]
|
||||
bl sub_8120658
|
||||
ldr r0, _081239A0 @ =gStringVar4
|
||||
@@ -10330,10 +10330,10 @@ sub_8123ACC: @ 8123ACC
|
||||
bl SetMonData
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
mov r0, r8
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
ldrb r0, [r6, 0x8]
|
||||
lsls r0, 28
|
||||
lsrs r0, 28
|
||||
@@ -10903,7 +10903,7 @@ _08123FAA:
|
||||
lsrs r4, r0, 16
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -12735,7 +12735,7 @@ sub_8124E48: @ 8124E48
|
||||
bhi _08124EB0
|
||||
adds r0, r1, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
_08124EB0:
|
||||
mov r1, r8
|
||||
ldr r0, [r1]
|
||||
@@ -12828,7 +12828,7 @@ sub_8124EFC: @ 8124EFC
|
||||
bhi _08124F7C
|
||||
adds r0, r1, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
_08124F7C:
|
||||
mov r1, r8
|
||||
ldr r0, [r1]
|
||||
@@ -13418,7 +13418,7 @@ _0812544C:
|
||||
beq _0812547E
|
||||
adds r0, r6, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
b _0812547E
|
||||
.align 2, 0
|
||||
_08125474: .4byte gUnknown_203B0C0
|
||||
@@ -13963,7 +13963,7 @@ sub_8125898: @ 8125898
|
||||
bl PlaySE
|
||||
ldrh r0, [r6]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
movs r2, 0xE
|
||||
ldrsh r1, [r5, r2]
|
||||
adds r1, 0xD
|
||||
@@ -14065,7 +14065,7 @@ _081259A0:
|
||||
bl PlaySE
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
movs r0, 0
|
||||
ldrsh r1, [r7, r0]
|
||||
adds r1, 0xD
|
||||
@@ -14406,7 +14406,7 @@ sub_8125C48: @ 8125C48
|
||||
bhi _08125C84
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
_08125C84:
|
||||
ldr r1, _08125CD8 @ =gStringVar1
|
||||
adds r0, r5, 0
|
||||
@@ -15276,7 +15276,7 @@ sub_8126350: @ 8126350
|
||||
bl sub_8126440
|
||||
ldrh r0, [r5]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
ldr r1, _08126428 @ =gStringVar1
|
||||
adds r0, r4, 0
|
||||
bl GetMonNickname
|
||||
@@ -16117,7 +16117,7 @@ _08126AB4:
|
||||
ldr r0, _08126ADC @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
_08126ABE:
|
||||
ldr r1, _08126AE4 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
@@ -16269,7 +16269,7 @@ sub_8126BD4: @ 8126BD4
|
||||
bl sub_80A2294
|
||||
ldrh r0, [r5]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -16971,7 +16971,7 @@ sub_812713C: @ 812713C
|
||||
bl SetMonData
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
adds r0, r7, 0
|
||||
bl sub_81273AC
|
||||
ldr r0, [r6]
|
||||
@@ -17117,7 +17117,7 @@ _0812728E:
|
||||
ldr r6, _081272C4 @ =gUnknown_203B0D8
|
||||
ldrh r0, [r6]
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _081272CC
|
||||
@@ -17240,7 +17240,7 @@ _0812739C: .4byte gUnknown_203B0A0
|
||||
_081273A0:
|
||||
adds r0, r1, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
_081273A8:
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -17257,14 +17257,14 @@ sub_81273AC: @ 81273AC
|
||||
beq _081273C8
|
||||
adds r0, r1, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A3C8
|
||||
bl AddPCItem
|
||||
b _081273D0
|
||||
.align 2, 0
|
||||
_081273C4: .4byte gUnknown_203B0A0
|
||||
_081273C8:
|
||||
adds r0, r1, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
_081273D0:
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
|
||||
+2
-2
@@ -25,7 +25,7 @@ _080EB672:
|
||||
ldrh r0, [r0]
|
||||
adds r1, r6
|
||||
ldrh r1, [r1]
|
||||
bl sub_809A3C8
|
||||
bl AddPCItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -1649,7 +1649,7 @@ sub_80EC364: @ 80EC364
|
||||
adds r5, r1, r0
|
||||
ldrh r0, [r5, 0x20]
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080EC3B4
|
||||
|
||||
@@ -5151,7 +5151,7 @@ _0808E2E8:
|
||||
adds r0, r1
|
||||
ldrh r0, [r0]
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0808E314
|
||||
@@ -5504,7 +5504,7 @@ _0808E5E0:
|
||||
adds r0, r1
|
||||
ldrh r0, [r0]
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -6643,7 +6643,7 @@ _0808EF56:
|
||||
mov r0, sp
|
||||
ldrh r0, [r0]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
_0808EF60:
|
||||
add sp, 0x4
|
||||
pop {r0}
|
||||
|
||||
-563
@@ -5,569 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start ScrCmd_setorcopyvar
|
||||
ScrCmd_setorcopyvar: @ 806A3E0
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl GetVarPointer
|
||||
adds r5, r0, 0
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
strh r0, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_setorcopyvar
|
||||
|
||||
thumb_func_start compare_012
|
||||
compare_012: @ 806A40C
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
cmp r0, r1
|
||||
bcs _0806A41E
|
||||
movs r0, 0
|
||||
b _0806A428
|
||||
_0806A41E:
|
||||
cmp r0, r1
|
||||
beq _0806A426
|
||||
movs r0, 0x2
|
||||
b _0806A428
|
||||
_0806A426:
|
||||
movs r0, 0x1
|
||||
_0806A428:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end compare_012
|
||||
|
||||
thumb_func_start ScrCmd_compare_local_to_local
|
||||
ScrCmd_compare_local_to_local: @ 806A42C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r2, [r4, 0x8]
|
||||
ldrb r0, [r2]
|
||||
lsls r0, 2
|
||||
adds r3, r4, 0
|
||||
adds r3, 0x64
|
||||
adds r0, r3, r0
|
||||
ldrb r0, [r0]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
ldrb r1, [r2]
|
||||
lsls r1, 2
|
||||
adds r3, r1
|
||||
ldrb r1, [r3]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_local_to_local
|
||||
|
||||
thumb_func_start ScrCmd_compare_local_to_value
|
||||
ScrCmd_compare_local_to_value: @ 806A45C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r2, [r4, 0x8]
|
||||
ldrb r1, [r2]
|
||||
lsls r1, 2
|
||||
adds r0, 0x64
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
ldrb r1, [r2]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_local_to_value
|
||||
|
||||
thumb_func_start ScrCmd_compare_local_to_addr
|
||||
ScrCmd_compare_local_to_addr: @ 806A484
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r2, [r4, 0x8]
|
||||
ldrb r1, [r2]
|
||||
lsls r1, 2
|
||||
adds r0, 0x64
|
||||
adds r0, r1
|
||||
ldrb r5, [r0]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadWord
|
||||
ldrb r1, [r0]
|
||||
adds r0, r5, 0
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_local_to_addr
|
||||
|
||||
thumb_func_start ScrCmd_compare_addr_to_local
|
||||
ScrCmd_compare_addr_to_local: @ 806A4B0
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadWord
|
||||
ldrb r0, [r0]
|
||||
ldr r3, [r4, 0x8]
|
||||
ldrb r2, [r3]
|
||||
lsls r2, 2
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x64
|
||||
adds r1, r2
|
||||
ldrb r1, [r1]
|
||||
adds r3, 0x1
|
||||
str r3, [r4, 0x8]
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_addr_to_local
|
||||
|
||||
thumb_func_start ScrCmd_compare_addr_to_value
|
||||
ScrCmd_compare_addr_to_value: @ 806A4DC
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadWord
|
||||
ldrb r0, [r0]
|
||||
ldr r2, [r4, 0x8]
|
||||
ldrb r1, [r2]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_addr_to_value
|
||||
|
||||
thumb_func_start ScrCmd_compare_addr_to_addr
|
||||
ScrCmd_compare_addr_to_addr: @ 806A4FC
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadWord
|
||||
ldrb r5, [r0]
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadWord
|
||||
ldrb r1, [r0]
|
||||
adds r0, r5, 0
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_addr_to_addr
|
||||
|
||||
thumb_func_start ScrCmd_compare_var_to_value
|
||||
ScrCmd_compare_var_to_value: @ 806A520
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl GetVarPointer
|
||||
ldrh r5, [r0]
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadHalfword
|
||||
adds r1, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
adds r0, r5, 0
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_var_to_value
|
||||
|
||||
thumb_func_start ScrCmd_compare_var_to_var
|
||||
ScrCmd_compare_var_to_var: @ 806A550
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl GetVarPointer
|
||||
adds r5, r0, 0
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl GetVarPointer
|
||||
ldrh r2, [r5]
|
||||
ldrh r1, [r0]
|
||||
adds r0, r2, 0
|
||||
bl compare_012
|
||||
strb r0, [r4, 0x2]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_compare_var_to_var
|
||||
|
||||
thumb_func_start ScrCmd_addvar
|
||||
ScrCmd_addvar: @ 806A584
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl GetVarPointer
|
||||
adds r4, r0, 0
|
||||
adds r0, r5, 0
|
||||
bl ScriptReadHalfword
|
||||
ldrh r1, [r4]
|
||||
adds r0, r1
|
||||
strh r0, [r4]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_addvar
|
||||
|
||||
thumb_func_start ScrCmd_subvar
|
||||
ScrCmd_subvar: @ 806A5AC
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl GetVarPointer
|
||||
adds r5, r0, 0
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
ldrh r1, [r5]
|
||||
subs r1, r0
|
||||
strh r1, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_subvar
|
||||
|
||||
thumb_func_start ScrCmd_random
|
||||
ScrCmd_random: @ 806A5DC
|
||||
push {r4,r5,lr}
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
ldr r5, _0806A60C @ =gSpecialVar_Result
|
||||
bl Random
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
adds r1, r4, 0
|
||||
bl __umodsi3
|
||||
strh r0, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A60C: .4byte gSpecialVar_Result
|
||||
thumb_func_end ScrCmd_random
|
||||
|
||||
thumb_func_start sub_806A610
|
||||
sub_806A610: @ 806A610
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r5, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r1, r0, 0
|
||||
ldr r5, _0806A658 @ =gSpecialVar_Result
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_809A084
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5]
|
||||
adds r0, r4, 0
|
||||
bl sub_809A824
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A658: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_806A610
|
||||
|
||||
thumb_func_start ScrCmd_takeitem
|
||||
ScrCmd_takeitem: @ 806A65C
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r5, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r1, r0, 0
|
||||
ldr r5, _0806A69C @ =gSpecialVar_Result
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_809A1D8
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A69C: .4byte gSpecialVar_Result
|
||||
thumb_func_end ScrCmd_takeitem
|
||||
|
||||
thumb_func_start sub_806A6A0
|
||||
sub_806A6A0: @ 806A6A0
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r5, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r1, r0, 0
|
||||
ldr r5, _0806A6E0 @ =gSpecialVar_Result
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_809A000
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A6E0: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_806A6A0
|
||||
|
||||
thumb_func_start sub_806A6E4
|
||||
sub_806A6E4: @ 806A6E4
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r5, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r1, r0, 0
|
||||
ldr r5, _0806A724 @ =gSpecialVar_Result
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_8099F40
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A724: .4byte gSpecialVar_Result
|
||||
thumb_func_end sub_806A6E4
|
||||
|
||||
thumb_func_start ScrCmd_checkitemtype
|
||||
ScrCmd_checkitemtype: @ 806A728
|
||||
push {r4,lr}
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r4, _0806A750 @ =gSpecialVar_Result
|
||||
bl GetPocketByItemId
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r4]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A750: .4byte gSpecialVar_Result
|
||||
thumb_func_end ScrCmd_checkitemtype
|
||||
|
||||
thumb_func_start ScrCmd_givepcitem
|
||||
ScrCmd_givepcitem: @ 806A754
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r5, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r1, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
ldr r5, _0806A794 @ =gSpecialVar_Result
|
||||
adds r0, r4, 0
|
||||
bl sub_809A3C8
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A794: .4byte gSpecialVar_Result
|
||||
thumb_func_end ScrCmd_givepcitem
|
||||
|
||||
thumb_func_start ScrCmd_checkpcitem
|
||||
ScrCmd_checkpcitem: @ 806A798
|
||||
push {r4,r5,lr}
|
||||
adds r5, r0, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r5, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r1, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
ldr r5, _0806A7D8 @ =gSpecialVar_Result
|
||||
adds r0, r4, 0
|
||||
bl sub_809A374
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5]
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806A7D8: .4byte gSpecialVar_Result
|
||||
thumb_func_end ScrCmd_checkpcitem
|
||||
|
||||
thumb_func_start sub_806A7DC
|
||||
sub_806A7DC: @ 806A7DC
|
||||
push {lr}
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_806A7DC
|
||||
|
||||
thumb_func_start sub_806A7F0
|
||||
sub_806A7F0: @ 806A7F0
|
||||
push {lr}
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_806A7F0
|
||||
|
||||
thumb_func_start sub_806A804
|
||||
sub_806A804: @ 806A804
|
||||
push {lr}
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_806A804
|
||||
|
||||
thumb_func_start sub_806A818
|
||||
sub_806A818: @ 806A818
|
||||
push {lr}
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_806A818
|
||||
|
||||
thumb_func_start ScrCmd_setflag
|
||||
ScrCmd_setflag: @ 806A82C
|
||||
push {lr}
|
||||
|
||||
+1
-1
@@ -2485,7 +2485,7 @@ sub_809BEA4: @ 809BEA4
|
||||
bl PutWindowTilemap
|
||||
ldrh r0, [r4, 0xA]
|
||||
ldrh r1, [r4, 0x2]
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
|
||||
+2
-2
@@ -398,7 +398,7 @@ sub_815AEE8: @ 815AEE8
|
||||
movs r0, 0xB6
|
||||
lsls r0, 1
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0815AF30
|
||||
@@ -443,7 +443,7 @@ sub_815AF5C: @ 815AF5C
|
||||
movs r0, 0xB6
|
||||
lsls r0, 1
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0815AF84
|
||||
|
||||
+5
-5
@@ -2568,7 +2568,7 @@ sub_8132D34: @ 8132D34
|
||||
ldrh r0, [r5]
|
||||
mov r2, r8
|
||||
ldrh r1, [r2, 0x10]
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
ldr r7, _08132DFC @ =gSaveBlock1Ptr
|
||||
ldr r4, [r7]
|
||||
movs r3, 0xA4
|
||||
@@ -2729,16 +2729,16 @@ sub_8132E64: @ 8132E64
|
||||
bl sub_81320AC
|
||||
ldr r0, _08132F0C @ =0x00000121
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
ldr r0, _08132F10 @ =0x00000123
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
ldr r0, _08132F14 @ =0x00000129
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
ldr r0, _08132F18 @ =0x00000143
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
ldr r1, _08132F1C @ =sub_815ABFC
|
||||
movs r0, 0x4
|
||||
movs r2, 0
|
||||
|
||||
+1
-1
@@ -518,7 +518,7 @@ _0815E458: .4byte gSpecialVar_Result
|
||||
_0815E45C:
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
|
||||
+1
-1
@@ -180,7 +180,7 @@ sub_810C4EC: @ 810C4EC
|
||||
movs r0, 0xB5
|
||||
lsls r0, 1
|
||||
movs r1, 0x1
|
||||
bl sub_8099F40
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
|
||||
+3
-3
@@ -2300,14 +2300,14 @@ _08148BFC:
|
||||
beq _08148C54
|
||||
ldrh r0, [r1, 0x3E]
|
||||
ldrh r1, [r2]
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08148C54
|
||||
ldr r0, [r4]
|
||||
ldrh r0, [r0, 0x3E]
|
||||
movs r1, 0x1
|
||||
bl sub_809A000
|
||||
bl CheckBagHasSpace
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08148C4C
|
||||
@@ -4162,7 +4162,7 @@ _0814998A:
|
||||
beq _0814999C
|
||||
adds r0, r5, 0
|
||||
adds r1, r4, 0
|
||||
bl sub_809A000
|
||||
bl CheckBagHasSpace
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08149984
|
||||
|
||||
+1
-1
@@ -204,7 +204,7 @@ _0814B878: .4byte gSpecialVar_ItemId
|
||||
_0814B87C:
|
||||
ldrh r0, [r1]
|
||||
movs r1, 0x1
|
||||
bl sub_809A1D8
|
||||
bl RemoveBagItem
|
||||
_0814B884:
|
||||
ldr r4, _0814B8E0 @ =gUnknown_203F3DC
|
||||
ldr r2, [r4]
|
||||
|
||||
+3
-3
@@ -6240,7 +6240,7 @@ _08153754: .4byte gUnknown_203F3E0
|
||||
_08153758:
|
||||
adds r0, r5, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A000
|
||||
bl CheckBagHasSpace
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0815376A
|
||||
@@ -6249,10 +6249,10 @@ _08153758:
|
||||
_0815376A:
|
||||
adds r0, r6, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A084
|
||||
bl AddBagItem
|
||||
adds r0, r6, 0
|
||||
movs r1, 0x1
|
||||
bl sub_809A000
|
||||
bl CheckBagHasSpace
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08153784
|
||||
|
||||
@@ -69,17 +69,17 @@ gScriptCmdTable:: @ 815F9B4
|
||||
.4byte sub_806AF10
|
||||
.4byte ScrCmd_getplayerxy
|
||||
.4byte ScrCmd_getpartysize
|
||||
.4byte sub_806A610
|
||||
.4byte ScrCmd_giveitem
|
||||
.4byte ScrCmd_takeitem
|
||||
.4byte sub_806A6A0
|
||||
.4byte sub_806A6E4
|
||||
.4byte ScrCmd_checkitemspace
|
||||
.4byte ScrCmd_checkitem
|
||||
.4byte ScrCmd_checkitemtype
|
||||
.4byte ScrCmd_givepcitem
|
||||
.4byte ScrCmd_checkpcitem
|
||||
.4byte sub_806A7DC
|
||||
.4byte sub_806A7F0
|
||||
.4byte sub_806A818
|
||||
.4byte sub_806A804
|
||||
.4byte ScrCmd_givedecoration
|
||||
.4byte ScrCmd_takedecoration
|
||||
.4byte ScrCmd_checkdecor
|
||||
.4byte ScrCmd_checkdecorspace
|
||||
.4byte ScrCmd_applymovement
|
||||
.4byte ScrCmd_applymovement_at
|
||||
.4byte ScrCmd_waitmovement
|
||||
|
||||
@@ -63,5 +63,6 @@ u16 itemid_get_market_price(u16 itemId);
|
||||
void sub_809A2DC(void);
|
||||
void sub_809A2A4(void);
|
||||
void sub_8099E90(u16, u8 *);
|
||||
void sub_809A824(u16 itemId);
|
||||
|
||||
#endif // ITEM_H
|
||||
|
||||
+211
@@ -3,6 +3,8 @@
|
||||
#include "script.h"
|
||||
#include "mystery_event_script.h"
|
||||
#include "event_data.h"
|
||||
#include "random.h"
|
||||
#include "item.h"
|
||||
|
||||
extern u16 (*const gSpecials[])(void);
|
||||
extern u16 (*const gSpecialsEnd[])(void);
|
||||
@@ -311,9 +313,218 @@ SCRCMD_DEF(ScrCmd_copyvar)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_setorcopyvar)
|
||||
{
|
||||
u16 * destPtr = GetVarPointer(ScriptReadHalfword(ctx));
|
||||
*destPtr = VarGet(ScriptReadHalfword(ctx));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
u8 * const sScriptStringVars[] =
|
||||
{
|
||||
gStringVar1,
|
||||
gStringVar2,
|
||||
gStringVar3,
|
||||
};
|
||||
|
||||
u8 compare_012(u16 left, u16 right)
|
||||
{
|
||||
if (left < right)
|
||||
return 0;
|
||||
else if (left == right)
|
||||
return 1;
|
||||
else
|
||||
return 2;
|
||||
}
|
||||
|
||||
// comparelocaltolocal
|
||||
SCRCMD_DEF(ScrCmd_compare_local_to_local)
|
||||
{
|
||||
const u8 value1 = ctx->data[ScriptReadByte(ctx)];
|
||||
const u8 value2 = ctx->data[ScriptReadByte(ctx)];
|
||||
|
||||
ctx->comparisonResult = compare_012(value1, value2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// comparelocaltoimm
|
||||
SCRCMD_DEF(ScrCmd_compare_local_to_value)
|
||||
{
|
||||
const u8 value1 = ctx->data[ScriptReadByte(ctx)];
|
||||
const u8 value2 = ScriptReadByte(ctx);
|
||||
|
||||
ctx->comparisonResult = compare_012(value1, value2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_compare_local_to_addr)
|
||||
{
|
||||
const u8 value1 = ctx->data[ScriptReadByte(ctx)];
|
||||
const u8 value2 = *(const u8 *)ScriptReadWord(ctx);
|
||||
|
||||
ctx->comparisonResult = compare_012(value1, value2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_compare_addr_to_local)
|
||||
{
|
||||
const u8 value1 = *(const u8 *)ScriptReadWord(ctx);
|
||||
const u8 value2 = ctx->data[ScriptReadByte(ctx)];
|
||||
|
||||
ctx->comparisonResult = compare_012(value1, value2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_compare_addr_to_value)
|
||||
{
|
||||
const u8 value1 = *(const u8 *)ScriptReadWord(ctx);
|
||||
const u8 value2 = ScriptReadByte(ctx);
|
||||
|
||||
ctx->comparisonResult = compare_012(value1, value2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_compare_addr_to_addr)
|
||||
{
|
||||
const u8 value1 = *(const u8 *)ScriptReadWord(ctx);
|
||||
const u8 value2 = *(const u8 *)ScriptReadWord(ctx);
|
||||
|
||||
ctx->comparisonResult = compare_012(value1, value2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_compare_var_to_value)
|
||||
{
|
||||
const u16 value1 = *GetVarPointer(ScriptReadHalfword(ctx));
|
||||
const u16 value2 = ScriptReadHalfword(ctx);
|
||||
|
||||
ctx->comparisonResult = compare_012(value1, value2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_compare_var_to_var)
|
||||
{
|
||||
const u16 *ptr1 = GetVarPointer(ScriptReadHalfword(ctx));
|
||||
const u16 *ptr2 = GetVarPointer(ScriptReadHalfword(ctx));
|
||||
|
||||
ctx->comparisonResult = compare_012(*ptr1, *ptr2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_addvar)
|
||||
{
|
||||
u16 *ptr = GetVarPointer(ScriptReadHalfword(ctx));
|
||||
*ptr += ScriptReadHalfword(ctx);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_subvar)
|
||||
{
|
||||
u16 *ptr = GetVarPointer(ScriptReadHalfword(ctx));
|
||||
*ptr -= VarGet(ScriptReadHalfword(ctx));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_random)
|
||||
{
|
||||
u16 max = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = Random() % max;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_giveitem)
|
||||
{
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
u32 quantity = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = AddBagItem(itemId, (u8)quantity);
|
||||
sub_809A824(itemId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_takeitem)
|
||||
{
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
u32 quantity = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = RemoveBagItem(itemId, (u8)quantity);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_checkitemspace)
|
||||
{
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
u32 quantity = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = CheckBagHasSpace(itemId, (u8)quantity);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_checkitem)
|
||||
{
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
u32 quantity = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = CheckBagHasItem(itemId, (u8)quantity);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_checkitemtype)
|
||||
{
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = GetPocketByItemId(itemId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_givepcitem)
|
||||
{
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
u16 quantity = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = AddPCItem(itemId, quantity);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_checkpcitem)
|
||||
{
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
u16 quantity = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
gSpecialVar_Result = CheckPCHasItem(itemId, quantity);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_givedecoration)
|
||||
{
|
||||
u32 decorId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
// gSpecialVar_Result = DecorationAdd(decorId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_takedecoration)
|
||||
{
|
||||
u32 decorId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
// gSpecialVar_Result = DecorationRemove(decorId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_checkdecorspace)
|
||||
{
|
||||
u32 decorId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
// gSpecialVar_Result = DecorationCheckSpace(decorId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(ScrCmd_checkdecor)
|
||||
{
|
||||
u32 decorId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
// gSpecialVar_Result = CheckHasDecoration(decorId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user