mirror of
https://github.com/pret/pokediamond.git
synced 2026-09-30 12:26:48 -05:00
some more
This commit is contained in:
@@ -2,81 +2,10 @@
|
||||
.include "global.inc"
|
||||
|
||||
.extern UNK_020F6364
|
||||
.extern MapObject_CreateFromObjectEventInternal
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_02057494
|
||||
sub_02057494: ; 0x02057494
|
||||
push {r3-r7, lr}
|
||||
add r6, r1, #0x0
|
||||
add r5, r0, #0x0
|
||||
add r0, r6, #0x0
|
||||
add r7, r2, #0x0
|
||||
bl sub_02058BFC
|
||||
add r4, r0, #0x0
|
||||
add r0, r6, #0x0
|
||||
bl sub_02058CE0
|
||||
cmp r0, #0x0
|
||||
bne _020574C8
|
||||
add r0, r5, #0x0
|
||||
add r1, r4, #0x0
|
||||
add r2, r7, #0x0
|
||||
bl sub_02057C98
|
||||
add r4, r0, #0x0
|
||||
beq _020574E8
|
||||
add r1, r6, #0x0
|
||||
add r2, r7, #0x0
|
||||
bl sub_02058214
|
||||
add r0, r4, #0x0
|
||||
pop {r3-r7, pc}
|
||||
_020574C8:
|
||||
add r0, r6, #0x0
|
||||
bl sub_02058CFC
|
||||
add r2, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
add r1, r4, #0x0
|
||||
bl sub_02058010
|
||||
add r4, r0, #0x0
|
||||
beq _020574E8
|
||||
add r1, r7, #0x0
|
||||
add r2, r6, #0x0
|
||||
bl sub_02058258
|
||||
add r0, r4, #0x0
|
||||
pop {r3-r7, pc}
|
||||
_020574E8:
|
||||
add r0, r5, #0x0
|
||||
bl sub_02057C64
|
||||
add r4, r0, #0x0
|
||||
beq _0205753A
|
||||
add r0, r5, #0x0
|
||||
bl sub_020583E8
|
||||
add r2, r0, #0x0
|
||||
add r0, r4, #0x0
|
||||
add r1, r6, #0x0
|
||||
bl sub_02057D2C
|
||||
add r0, r4, #0x0
|
||||
add r1, r5, #0x0
|
||||
bl sub_02057E90
|
||||
add r0, r4, #0x0
|
||||
add r1, r7, #0x0
|
||||
bl sub_0205844C
|
||||
add r0, r4, #0x0
|
||||
bl sub_020581A4
|
||||
add r0, r4, #0x0
|
||||
bl sub_020581B4
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x4
|
||||
bl sub_02058410
|
||||
add r0, r5, #0x0
|
||||
add r1, r4, #0x0
|
||||
bl sub_02057CF0
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058360
|
||||
bl sub_0205836C
|
||||
add r0, r4, #0x0
|
||||
_0205753A:
|
||||
pop {r3-r7, pc}
|
||||
|
||||
thumb_func_start sub_0205753C
|
||||
sub_0205753C: ; 0x0205753C
|
||||
push {r3-r7, lr}
|
||||
@@ -136,7 +65,7 @@ sub_0205753C: ; 0x0205753C
|
||||
ldr r2, [sp, #0x40]
|
||||
add r0, r5, #0x0
|
||||
add r1, sp, #0x0
|
||||
bl sub_02057494
|
||||
bl MapObject_CreateFromObjectEventInternal
|
||||
add sp, #0x20
|
||||
pop {r3-r7, pc}
|
||||
|
||||
@@ -156,7 +85,7 @@ sub_020575D4: ; 0x020575D4
|
||||
bl sub_02058C1C
|
||||
add r6, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl sub_020583E8
|
||||
bl MapObjectManager_GetFieldSystemPtr
|
||||
lsl r1, r6, #0x10
|
||||
lsr r1, r1, #0x10
|
||||
bl FlagCheck
|
||||
@@ -165,7 +94,7 @@ sub_020575D4: ; 0x020575D4
|
||||
ldr r1, [sp, #0x0]
|
||||
add r0, r5, #0x0
|
||||
add r2, r7, #0x0
|
||||
bl sub_02057494
|
||||
bl MapObject_CreateFromObjectEventInternal
|
||||
add r4, r0, #0x0
|
||||
_02057610:
|
||||
add r0, r4, #0x0
|
||||
@@ -461,7 +390,7 @@ _02057866:
|
||||
tst r0, r1
|
||||
beq _0205788C
|
||||
add r0, r6, #0x0
|
||||
bl sub_02057C64
|
||||
bl MapObjectManager_GetFirstInactiveObject
|
||||
add r4, r0, #0x0
|
||||
bne _0205787C
|
||||
bl GF_AssertFail
|
||||
@@ -759,7 +688,7 @@ sub_02057AEC: ; 0x02057AEC
|
||||
add r0, r4, #0x0
|
||||
bl sub_0205866C
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058360
|
||||
bl MapObjectManager_GetMapObjectManager
|
||||
bl sub_0205836C
|
||||
pop {r3-r5, pc}
|
||||
.balign 4
|
||||
@@ -769,7 +698,7 @@ sub_02057B34: ; 0x02057B34
|
||||
push {r4, lr}
|
||||
mov r1, #0x5
|
||||
add r4, r0, #0x0
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
ldr r1, _02057B50 ; =0x00EF4248
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058418
|
||||
@@ -868,14 +797,14 @@ sub_02057C08: ; 0x02057C08
|
||||
push {r3-r7, lr}
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r5, #0xc]
|
||||
bl sub_020583E8
|
||||
bl MapObjectManager_GetFieldSystemPtr
|
||||
add r6, r5, #0x0
|
||||
ldr r4, [r5, #0x10]
|
||||
add r7, r0, #0x0
|
||||
add r6, #0x8
|
||||
_02057C1A:
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058CE0
|
||||
bl ObjectEvent_ScriptIdIsUnset
|
||||
cmp r0, #0x1
|
||||
beq _02057C30
|
||||
ldrh r1, [r4, #0x8]
|
||||
@@ -887,7 +816,7 @@ _02057C30:
|
||||
ldr r0, [r5, #0xc]
|
||||
ldr r2, [r5, #0x0]
|
||||
add r1, r4, #0x0
|
||||
bl sub_02057494
|
||||
bl MapObject_CreateFromObjectEventInternal
|
||||
cmp r0, #0x0
|
||||
bne _02057C42
|
||||
bl GF_AssertFail
|
||||
@@ -908,8 +837,8 @@ _02057C42:
|
||||
bl FreeToHeapExplicit
|
||||
pop {r3-r7, pc}
|
||||
|
||||
thumb_func_start sub_02057C64
|
||||
sub_02057C64: ; 0x02057C64
|
||||
thumb_func_start MapObjectManager_GetFirstInactiveObject
|
||||
MapObjectManager_GetFirstInactiveObject: ; 0x02057C64
|
||||
push {r3-r7, lr}
|
||||
add r5, r0, #0x0
|
||||
mov r4, #0x0
|
||||
@@ -1011,14 +940,14 @@ _02057D1C:
|
||||
nop
|
||||
_02057D28: .word sub_0205832C
|
||||
|
||||
thumb_func_start sub_02057D2C
|
||||
sub_02057D2C: ; 0x02057D2C
|
||||
thumb_func_start MapObject_InitFromObjectEvent
|
||||
MapObject_InitFromObjectEvent: ; 0x02057D2C
|
||||
push {r4-r6, lr}
|
||||
add r4, r1, #0x0
|
||||
add r5, r0, #0x0
|
||||
add r0, r4, #0x0
|
||||
add r6, r2, #0x0
|
||||
bl sub_02058BFC
|
||||
bl ObjectEvent_GetID
|
||||
add r1, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058444
|
||||
@@ -1162,7 +1091,7 @@ sub_02057E90: ; 0x02057E90
|
||||
add r4, r1, #0x0
|
||||
ldr r1, _02057EDC ; =0x00001801
|
||||
add r5, r0, #0x0
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
bl sub_020581F8
|
||||
cmp r0, #0x1
|
||||
@@ -1278,18 +1207,18 @@ sub_02057F90: ; 0x02057F90
|
||||
beq _0205800A
|
||||
_02057F9E:
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058BFC
|
||||
bl ObjectEvent_GetID
|
||||
add r7, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl MapObject_GetID
|
||||
cmp r7, r0
|
||||
bne _02058002
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058CE0
|
||||
bl ObjectEvent_ScriptIdIsUnset
|
||||
cmp r0, #0x1
|
||||
bne _02057FE8
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058CFC
|
||||
bl ObjectEvent_GetFlagID_AssertScriptIdIsUnset
|
||||
add r7, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl sub_020589CC
|
||||
@@ -1497,7 +1426,7 @@ sub_02058148: ; 0x02058148
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
mov r1, #0x4
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
bl sub_0205815C
|
||||
pop {r4, pc}
|
||||
@@ -1640,7 +1569,7 @@ sub_02058258: ; 0x02058258
|
||||
add r5, r0, #0x0
|
||||
add r0, r6, #0x0
|
||||
add r4, r1, #0x0
|
||||
bl sub_02058CE0
|
||||
bl ObjectEvent_ScriptIdIsUnset
|
||||
cmp r0, #0x1
|
||||
beq _0205826E
|
||||
bl GF_AssertFail
|
||||
@@ -1654,7 +1583,7 @@ _0205826E:
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058494
|
||||
add r0, r6, #0x0
|
||||
bl sub_02058CFC
|
||||
bl ObjectEvent_GetFlagID_AssertScriptIdIsUnset
|
||||
add r1, r0, #0x0
|
||||
add r0, r5, #0x0
|
||||
bl sub_0205848C
|
||||
@@ -1769,8 +1698,8 @@ sub_02058348: ; 0x02058348
|
||||
_0205835E:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_02058360
|
||||
sub_02058360: ; 0x02058360
|
||||
thumb_func_start MapObjectManager_GetMapObjectManager
|
||||
MapObjectManager_GetMapObjectManager: ; 0x02058360
|
||||
bx lr
|
||||
.balign 4
|
||||
|
||||
@@ -1894,8 +1823,8 @@ MapObjectManager_SetFieldSystemPtr: ; 0x020583E0
|
||||
str r1, [r0, r2]
|
||||
bx lr
|
||||
|
||||
thumb_func_start sub_020583E8
|
||||
sub_020583E8: ; 0x020583E8
|
||||
thumb_func_start MapObjectManager_GetFieldSystemPtr
|
||||
MapObjectManager_GetFieldSystemPtr: ; 0x020583E8
|
||||
mov r1, #0x4a
|
||||
lsl r1, r1, #0x2
|
||||
ldr r0, [r0, r1]
|
||||
@@ -1929,8 +1858,8 @@ sub_0205840C: ; 0x0205840C
|
||||
ldr r0, [r0, #0x0]
|
||||
bx lr
|
||||
|
||||
thumb_func_start sub_02058410
|
||||
sub_02058410: ; 0x02058410
|
||||
thumb_func_start MapObject_SetFlagsBits
|
||||
MapObject_SetFlagsBits: ; 0x02058410
|
||||
ldr r2, [r0, #0x0]
|
||||
orr r1, r2
|
||||
str r1, [r0, #0x0]
|
||||
@@ -2245,12 +2174,12 @@ sub_02058578: ; 0x02058578
|
||||
|
||||
thumb_func_start sub_02058580
|
||||
sub_02058580: ; 0x02058580
|
||||
ldr r3, _02058588 ; =sub_02058360
|
||||
ldr r3, _02058588 ; =MapObjectManager_GetMapObjectManager
|
||||
add r0, #0xb4
|
||||
ldr r0, [r0, #0x0]
|
||||
bx r3
|
||||
.balign 4
|
||||
_02058588: .word sub_02058360
|
||||
_02058588: .word MapObjectManager_GetMapObjectManager
|
||||
|
||||
thumb_func_start sub_0205858C
|
||||
sub_0205858C: ; 0x0205858C
|
||||
@@ -2562,7 +2491,7 @@ sub_02058730: ; 0x02058730
|
||||
MapObject_GetFieldSysPtr: ; 0x02058738
|
||||
push {r3, lr}
|
||||
bl sub_02058580
|
||||
bl sub_020583E8
|
||||
bl MapObjectManager_GetFieldSystemPtr
|
||||
pop {r3, pc}
|
||||
|
||||
thumb_func_start sub_02058744
|
||||
@@ -2710,11 +2639,11 @@ _02058838: .word MapObject_TestFlagsBits
|
||||
|
||||
thumb_func_start sub_0205883C
|
||||
sub_0205883C: ; 0x0205883C
|
||||
ldr r3, _02058844 ; =sub_02058410
|
||||
ldr r3, _02058844 ; =MapObject_SetFlagsBits
|
||||
mov r1, #0x2
|
||||
bx r3
|
||||
nop
|
||||
_02058844: .word sub_02058410
|
||||
_02058844: .word MapObject_SetFlagsBits
|
||||
|
||||
thumb_func_start sub_02058848
|
||||
sub_02058848: ; 0x02058848
|
||||
@@ -2734,11 +2663,11 @@ _0205885C: .word MapObject_TestFlagsBits
|
||||
|
||||
thumb_func_start sub_02058860
|
||||
sub_02058860: ; 0x02058860
|
||||
ldr r3, _02058868 ; =sub_02058410
|
||||
ldr r3, _02058868 ; =MapObject_SetFlagsBits
|
||||
mov r1, #0x4
|
||||
bx r3
|
||||
nop
|
||||
_02058868: .word sub_02058410
|
||||
_02058868: .word MapObject_SetFlagsBits
|
||||
|
||||
thumb_func_start sub_0205886C
|
||||
sub_0205886C: ; 0x0205886C
|
||||
@@ -2750,12 +2679,12 @@ _02058874: .word sub_02058418
|
||||
|
||||
thumb_func_start sub_02058878
|
||||
sub_02058878: ; 0x02058878
|
||||
ldr r3, _02058880 ; =sub_02058410
|
||||
ldr r3, _02058880 ; =MapObject_SetFlagsBits
|
||||
mov r1, #0x1
|
||||
lsl r1, r1, #0xe
|
||||
bx r3
|
||||
.balign 4
|
||||
_02058880: .word sub_02058410
|
||||
_02058880: .word MapObject_SetFlagsBits
|
||||
|
||||
thumb_func_start sub_02058884
|
||||
sub_02058884: ; 0x02058884
|
||||
@@ -2782,7 +2711,7 @@ MapObject_SetVisible: ; 0x0205889C
|
||||
bne _020588AC
|
||||
mov r1, #0x2
|
||||
lsl r1, r1, #0x8
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_020588AC:
|
||||
mov r1, #0x2
|
||||
@@ -2803,7 +2732,7 @@ sub_020588B8: ; 0x020588B8
|
||||
_020588C8:
|
||||
mov r1, #0x1
|
||||
lsl r1, r1, #0x12
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
.balign 4
|
||||
|
||||
@@ -2829,7 +2758,7 @@ sub_020588EC: ; 0x020588EC
|
||||
bne _020588FC
|
||||
mov r1, #0x2
|
||||
lsl r1, r1, #0x12
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_020588FC:
|
||||
mov r1, #0x2
|
||||
@@ -2840,11 +2769,11 @@ _020588FC:
|
||||
|
||||
thumb_func_start sub_02058908
|
||||
sub_02058908: ; 0x02058908
|
||||
ldr r3, _02058910 ; =sub_02058410
|
||||
ldr r3, _02058910 ; =MapObject_SetFlagsBits
|
||||
mov r1, #0x40
|
||||
bx r3
|
||||
nop
|
||||
_02058910: .word sub_02058410
|
||||
_02058910: .word MapObject_SetFlagsBits
|
||||
|
||||
thumb_func_start sub_02058914
|
||||
sub_02058914: ; 0x02058914
|
||||
@@ -2898,7 +2827,7 @@ sub_02058960: ; 0x02058960
|
||||
bne _02058970
|
||||
mov r1, #0x2
|
||||
lsl r1, r1, #0x16
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_02058970:
|
||||
mov r1, #0x2
|
||||
@@ -2929,7 +2858,7 @@ sub_02058994: ; 0x02058994
|
||||
bne _020589A4
|
||||
mov r1, #0x1
|
||||
lsl r1, r1, #0xa
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_020589A4:
|
||||
mov r1, #0x1
|
||||
@@ -2945,7 +2874,7 @@ sub_020589B0: ; 0x020589B0
|
||||
bne _020589C0
|
||||
mov r1, #0x2
|
||||
lsl r1, r1, #0x18
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_020589C0:
|
||||
mov r1, #0x2
|
||||
@@ -2976,7 +2905,7 @@ sub_020589E4: ; 0x020589E4
|
||||
bne _020589F4
|
||||
mov r1, #0x1
|
||||
lsl r1, r1, #0x1a
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_020589F4:
|
||||
mov r1, #0x1
|
||||
@@ -3007,7 +2936,7 @@ sub_02058A18: ; 0x02058A18
|
||||
bne _02058A28
|
||||
mov r1, #0x2
|
||||
lsl r1, r1, #0x1a
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_02058A28:
|
||||
mov r1, #0x2
|
||||
@@ -3038,7 +2967,7 @@ sub_02058A4C: ; 0x02058A4C
|
||||
bne _02058A5C
|
||||
mov r1, #0x1
|
||||
lsl r1, r1, #0x1c
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_02058A5C:
|
||||
mov r1, #0x1
|
||||
@@ -3069,7 +2998,7 @@ sub_02058A80: ; 0x02058A80
|
||||
bne _02058A90
|
||||
mov r1, #0x1
|
||||
lsl r1, r1, #0x18
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_02058A90:
|
||||
mov r1, #0x1
|
||||
@@ -3113,7 +3042,7 @@ sub_02058AC8: ; 0x02058AC8
|
||||
bne _02058AD8
|
||||
mov r1, #0x2
|
||||
lsl r1, r1, #0x1c
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_02058AD8:
|
||||
mov r1, #0x2
|
||||
@@ -3363,8 +3292,8 @@ sub_02058BF8: ; 0x02058BF8
|
||||
strh r1, [r0, #0x0]
|
||||
bx lr
|
||||
|
||||
thumb_func_start sub_02058BFC
|
||||
sub_02058BFC: ; 0x02058BFC
|
||||
thumb_func_start ObjectEvent_GetID
|
||||
ObjectEvent_GetID: ; 0x02058BFC
|
||||
ldrh r0, [r0, #0x0]
|
||||
bx lr
|
||||
|
||||
@@ -3542,11 +3471,11 @@ sub_02058CAC: ; 0x02058CAC
|
||||
add r5, r2, #0x0
|
||||
_02058CB8:
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058CE0
|
||||
bl ObjectEvent_ScriptIdIsUnset
|
||||
cmp r0, #0x0
|
||||
bne _02058CD4
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058BFC
|
||||
bl ObjectEvent_GetID
|
||||
cmp r6, r0
|
||||
bne _02058CD4
|
||||
ldr r0, [sp, #0x0]
|
||||
@@ -3561,8 +3490,8 @@ _02058CD4:
|
||||
mov r0, #0x0
|
||||
pop {r3-r7, pc}
|
||||
|
||||
thumb_func_start sub_02058CE0
|
||||
sub_02058CE0: ; 0x02058CE0
|
||||
thumb_func_start ObjectEvent_ScriptIdIsUnset
|
||||
ObjectEvent_ScriptIdIsUnset: ; 0x02058CE0
|
||||
push {r3, lr}
|
||||
bl sub_02058C24
|
||||
lsl r0, r0, #0x10
|
||||
@@ -3578,11 +3507,11 @@ _02058CF4:
|
||||
.balign 4
|
||||
_02058CF8: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start sub_02058CFC
|
||||
sub_02058CFC: ; 0x02058CFC
|
||||
thumb_func_start ObjectEvent_GetFlagID_AssertScriptIdIsUnset
|
||||
ObjectEvent_GetFlagID_AssertScriptIdIsUnset: ; 0x02058CFC
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bl sub_02058CE0
|
||||
bl ObjectEvent_ScriptIdIsUnset
|
||||
cmp r0, #0x1
|
||||
beq _02058D0C
|
||||
bl GF_AssertFail
|
||||
@@ -3746,7 +3675,7 @@ sub_02058DBC: ; 0x02058DBC
|
||||
bl sub_0205AE80
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x4
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0xa
|
||||
bl sub_02058418
|
||||
@@ -3789,7 +3718,7 @@ sub_02058E28: ; 0x02058E28
|
||||
bl sub_020584A4
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x4
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0xa
|
||||
bl sub_02058418
|
||||
|
||||
@@ -2427,7 +2427,7 @@ _0204DD5E:
|
||||
bl sub_02055304
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x80
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
_0204DDB4:
|
||||
add r0, r4, #0x0
|
||||
bl sub_0205AE28
|
||||
@@ -3018,11 +3018,11 @@ sub_0204E214: ; 0x0204E214
|
||||
bl PlayerAvatar_GetMapObject
|
||||
mov r1, #0x80
|
||||
add r6, r0, #0x0
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
mov r1, #0x1
|
||||
add r0, r6, #0x0
|
||||
lsl r1, r1, #0x8
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
ldr r0, _0204E24C ; =UNK_021C5A68
|
||||
ldr r0, [r0, #0x0]
|
||||
add r1, r0, r5
|
||||
|
||||
@@ -60,7 +60,7 @@ sub_020550A4: ; 0x020550A4
|
||||
mov r1, #0x9
|
||||
add r0, r4, #0x0
|
||||
lsl r1, r1, #0xa
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
mov r1, #0x6
|
||||
add r0, r4, #0x0
|
||||
lsl r1, r1, #0x6
|
||||
@@ -245,7 +245,7 @@ _02055228:
|
||||
mov r1, #0x9
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0xa
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
mov r1, #0x6
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0x6
|
||||
@@ -407,7 +407,7 @@ sub_0205537C: ; 0x0205537C
|
||||
_02055392:
|
||||
mov r1, #0x2
|
||||
lsl r1, r1, #0x8
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0205539C
|
||||
|
||||
@@ -629,7 +629,7 @@ _02055CE4:
|
||||
mov r1, #0x6
|
||||
add r0, r4, #0x0
|
||||
lsl r1, r1, #0x6
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r6, #0x0
|
||||
mov r1, #0x8
|
||||
bl sub_0205AFDC
|
||||
@@ -676,7 +676,7 @@ _02055D54:
|
||||
mov r1, #0x6
|
||||
add r0, r4, #0x0
|
||||
lsl r1, r1, #0x6
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r6, #0x0
|
||||
mov r1, #0x8
|
||||
bl sub_0205AFDC
|
||||
@@ -700,7 +700,7 @@ _02055D8E:
|
||||
mov r1, #0x6
|
||||
add r0, r4, #0x0
|
||||
lsl r1, r1, #0x6
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
add r1, r6, #0x0
|
||||
bl sub_020560D0
|
||||
@@ -762,7 +762,7 @@ _02055E18:
|
||||
mov r1, #0x6
|
||||
add r0, r6, #0x0
|
||||
lsl r1, r1, #0x6
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x8
|
||||
bl sub_0205AFDC
|
||||
@@ -824,7 +824,7 @@ _02055EAC:
|
||||
mov r1, #0x6
|
||||
add r0, r6, #0x0
|
||||
lsl r1, r1, #0x6
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x8
|
||||
bl sub_0205AFDC
|
||||
|
||||
@@ -1980,7 +1980,7 @@ _02059578:
|
||||
mov r1, #0x1
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r4-r6, pc}
|
||||
_02059584:
|
||||
mov r1, #0x2
|
||||
@@ -1994,7 +1994,7 @@ _02059584:
|
||||
mov r1, #0x2
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0xe
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
_020595A2:
|
||||
pop {r4-r6, pc}
|
||||
|
||||
@@ -2050,7 +2050,7 @@ _02059614:
|
||||
mov r1, #0x1
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r4-r6, pc}
|
||||
_02059620:
|
||||
mov r1, #0x1
|
||||
@@ -3026,7 +3026,7 @@ _02059DA2:
|
||||
mov r1, #0x1
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0xc
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
_02059DAC:
|
||||
add r0, r4, #0x0
|
||||
add sp, #0x18
|
||||
@@ -3071,7 +3071,7 @@ sub_02059DB4: ; 0x02059DB4
|
||||
mov r1, #0x2
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0xa
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
mov r0, #0x0
|
||||
pop {r3-r7, pc}
|
||||
_02059E18:
|
||||
|
||||
@@ -1998,7 +1998,7 @@ _0205AD6E:
|
||||
bl sub_020584AC
|
||||
add r0, r7, #0x0
|
||||
mov r1, #0x80
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3-r7, pc}
|
||||
nop
|
||||
_0205AD84: .word UNK_020F6964
|
||||
|
||||
@@ -64,7 +64,7 @@ _0205ADEA:
|
||||
bl sub_020586F8
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x10
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x20
|
||||
bl sub_02058418
|
||||
@@ -141,7 +141,7 @@ sub_0205AE80: ; 0x0205AE80
|
||||
bl sub_02058418
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x20
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0xff
|
||||
bl sub_020586E8
|
||||
@@ -466,7 +466,7 @@ _0205B0C4: .word UNK_020F6440
|
||||
sub_0205B0C8: ; 0x0205B0C8
|
||||
push {r3, lr}
|
||||
mov r1, #0x20
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
mov r0, #0x0
|
||||
pop {r3, pc}
|
||||
|
||||
@@ -544,7 +544,7 @@ sub_0205B124: ; 0x0205B124
|
||||
bl sub_02058544
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x4
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058700
|
||||
pop {r3-r7, pc}
|
||||
@@ -574,7 +574,7 @@ sub_0205B16C: ; 0x0205B16C
|
||||
_0205B198:
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x28
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
bl sub_02059C60
|
||||
add r0, r5, #0x0
|
||||
@@ -977,7 +977,7 @@ sub_0205B43C: ; 0x0205B43C
|
||||
_0205B456:
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x20
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0x0
|
||||
bl sub_02058544
|
||||
@@ -1218,7 +1218,7 @@ _0205B5E2:
|
||||
_0205B5EA:
|
||||
ldr r1, _0205B614 ; =0x00010004
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
add r1, r4, #0x0
|
||||
bl sub_020584D8
|
||||
@@ -1264,7 +1264,7 @@ sub_0205B61C: ; 0x0205B61C
|
||||
bl sub_02059C0C
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x4
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
_0205B65E:
|
||||
ldr r1, [r4, #0x0]
|
||||
cmp r1, #0x0
|
||||
@@ -1323,7 +1323,7 @@ _0205B6B8:
|
||||
bl sub_02058B94
|
||||
ldr r1, _0205B6FC ; =0x00020028
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
bl sub_02059C60
|
||||
add r0, r5, #0x0
|
||||
@@ -1922,7 +1922,7 @@ sub_0205BB08: ; 0x0205BB08
|
||||
mov r1, #0x2
|
||||
add r4, r0, #0x0
|
||||
lsl r1, r1, #0x8
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058700
|
||||
mov r0, #0x1
|
||||
@@ -1947,7 +1947,7 @@ sub_0205BB38: ; 0x0205BB38
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
mov r1, #0x80
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058700
|
||||
mov r0, #0x1
|
||||
@@ -1970,7 +1970,7 @@ sub_0205BB60: ; 0x0205BB60
|
||||
mov r1, #0x1
|
||||
add r4, r0, #0x0
|
||||
lsl r1, r1, #0x8
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058700
|
||||
mov r0, #0x1
|
||||
@@ -2067,7 +2067,7 @@ sub_0205BBF4: ; 0x0205BBF4
|
||||
bl sub_02058544
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x4
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058700
|
||||
pop {r3-r7, pc}
|
||||
@@ -2104,7 +2104,7 @@ sub_0205BC34: ; 0x0205BC34
|
||||
_0205BC6E:
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x28
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
bl sub_02059C60
|
||||
add r0, r5, #0x0
|
||||
@@ -2342,7 +2342,7 @@ _0205BDFE:
|
||||
bl ov06_0224D2E0
|
||||
ldr r1, _0205BE34 ; =0x00010004
|
||||
add r0, r4, #0x0
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
mov r1, #0x1
|
||||
add r0, r4, #0x0
|
||||
lsl r1, r1, #0x14
|
||||
@@ -2391,7 +2391,7 @@ _0205BE70:
|
||||
bl sub_02058B94
|
||||
ldr r1, _0205BE9C ; =0x00020028
|
||||
add r0, r5, #0x0
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
add r0, r5, #0x0
|
||||
bl sub_0205EB2C
|
||||
add r0, r5, #0x0
|
||||
|
||||
@@ -215,7 +215,7 @@ _0205C4C0:
|
||||
mov r1, #0x2
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3-r5, pc}
|
||||
|
||||
thumb_func_start sub_0205C4D8
|
||||
|
||||
@@ -778,7 +778,7 @@ _0205CB44:
|
||||
bl ov05_021F1EC0
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x40
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
mov r0, #0x2
|
||||
str r0, [r4, #0x0]
|
||||
mov r0, #0x1
|
||||
|
||||
@@ -670,7 +670,7 @@ sub_0205E9C8: ; 0x0205E9C8
|
||||
mov r1, #0x1
|
||||
add r0, r4, #0x0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
ldr r5, _0205EA0C ; =UNK_020F7398
|
||||
add r3, sp, #0x0
|
||||
ldmia r5!, {r0-r1}
|
||||
|
||||
@@ -4017,7 +4017,7 @@
|
||||
.extern sub_020583D4
|
||||
.extern sub_020583F0
|
||||
.extern sub_020583F4
|
||||
.extern sub_02058410
|
||||
.extern MapObject_SetFlagsBits
|
||||
.extern sub_02058418
|
||||
.extern sub_02058424
|
||||
.extern MapObject_TestFlagsBits
|
||||
|
||||
@@ -152,7 +152,7 @@ _021F061C:
|
||||
mov r1, #2
|
||||
add r0, r5, #0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, r4, r5, pc}
|
||||
.balign 4, 0
|
||||
|
||||
@@ -808,7 +808,7 @@ _021F0B44:
|
||||
mov r1, #2
|
||||
add r0, r5, #0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, r4, r5, pc}
|
||||
|
||||
thumb_func_start ov05_021F0B58
|
||||
@@ -1067,7 +1067,7 @@ _021F0D5C:
|
||||
mov r1, #2
|
||||
add r0, r5, #0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, r4, r5, pc}
|
||||
|
||||
thumb_func_start ov05_021F0D70
|
||||
|
||||
@@ -67,7 +67,7 @@ _021F1B76:
|
||||
mov r1, #2
|
||||
add r0, r5, #0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, r4, r5, pc}
|
||||
.balign 4, 0
|
||||
|
||||
|
||||
@@ -281,7 +281,7 @@ ov05_021F1EDC: ; 0x021F1EDC
|
||||
mov r1, #1
|
||||
add r0, r4, #0
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r4, pc}
|
||||
.balign 4, 0
|
||||
|
||||
|
||||
@@ -2030,7 +2030,7 @@ ov05_021F2E0C: ; 0x021F2E0C
|
||||
bne _021F2E1C
|
||||
mov r1, #1
|
||||
lsl r1, r1, #0x16
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r3, pc}
|
||||
_021F2E1C:
|
||||
mov r1, #1
|
||||
|
||||
@@ -12,7 +12,7 @@ extern BOOL sub_02054B3C(u8 param0);
|
||||
extern BOOL sub_02054B48(u8 param0);
|
||||
extern BOOL sub_02054B54(u8 param0);
|
||||
extern UnkStruct021E7358 *TaskManager_GetEnvironment(UnkStruct021E7358 *param0);
|
||||
extern void sub_02058410(u32 param0, u32 param1);
|
||||
extern void MapObject_SetFlagsBits(u32 param0, u32 param1);
|
||||
extern BOOL sub_02057254(u32 param0);
|
||||
extern u32 sub_0205AFDC(u32 param0, u32 param1);
|
||||
extern void sub_02057260(u32 param0, u32 param1);
|
||||
@@ -84,7 +84,7 @@ BOOL ov05_021E73B4(UnkStruct021E7358 *param0)
|
||||
switch (strct->Unk08)
|
||||
{
|
||||
case 0:
|
||||
sub_02058410(res, 1 << 8);
|
||||
MapObject_SetFlagsBits(res, 1 << 8);
|
||||
strct->Unk08++;
|
||||
break;
|
||||
case 1:
|
||||
|
||||
@@ -314,7 +314,7 @@ ov06_022398D8: ; 0x022398D8
|
||||
bne _022398F0
|
||||
mov r1, #1
|
||||
lsl r1, r1, #0x14
|
||||
bl sub_02058410
|
||||
bl MapObject_SetFlagsBits
|
||||
pop {r4, pc}
|
||||
_022398F0:
|
||||
mov r1, #1
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "heap.h"
|
||||
|
||||
static MapObjectManager *MapObjectManager_New(u32 objectCount);
|
||||
/*static*/ LocalMapObject *MapObject_CreateFromObjectEventInternal(MapObjectManager *manager, ObjectEvent *objectEvent, u32 mapNo);
|
||||
|
||||
extern void MapObjectManager_SetFieldSystemPtr(MapObjectManager *manager, FieldSystem *fieldSystem);
|
||||
extern void MapObjectManager_SetObjectCount(MapObjectManager *manager, u32 objectCount);
|
||||
@@ -18,6 +19,24 @@ extern u32 sub_02058450(LocalMapObject *object);
|
||||
extern BOOL MapObject_TestFlagsBits(LocalMapObject *object, u32 flags);
|
||||
extern u32 sub_02057F90(LocalMapObject *object, u32 a2, u32 objectCount, ObjectEvent *objectEvents);
|
||||
extern void MapObjectManager_SetObjects(MapObjectManager *manager, LocalMapObject *objects);
|
||||
extern u32 ObjectEvent_GetID(ObjectEvent *objectEvent);
|
||||
extern BOOL ObjectEvent_ScriptIdIsUnset(ObjectEvent *objectEvent);
|
||||
extern LocalMapObject *sub_02057C98(MapObjectManager *manager, u32 objectId, u32 mapNo);
|
||||
extern void sub_02058214(LocalMapObject *object, ObjectEvent *objectEvent, u32 mapNo);
|
||||
extern u16 ObjectEvent_GetFlagID_AssertScriptIdIsUnset(ObjectEvent *objectEvent);
|
||||
extern LocalMapObject *sub_02058010(MapObjectManager *manager, u32 objectId, u16 flagId);
|
||||
extern void sub_02058258(LocalMapObject *object, u32 mapNo, ObjectEvent *objectEvent);
|
||||
extern LocalMapObject *MapObjectManager_GetFirstInactiveObject(MapObjectManager *manager);
|
||||
extern FieldSystem *MapObjectManager_GetFieldSystemPtr(MapObjectManager *manager);
|
||||
extern void MapObject_InitFromObjectEvent(LocalMapObject *object, ObjectEvent *objectEvent, FieldSystem *fieldSystem);
|
||||
extern void sub_02057E90(LocalMapObject *object, MapObjectManager *manager);
|
||||
extern void sub_0205844C(LocalMapObject *object, u32 mapNo);
|
||||
extern void sub_020581A4(LocalMapObject *object);
|
||||
extern void sub_020581B4(LocalMapObject *object);
|
||||
extern void MapObject_SetFlagsBits(LocalMapObject *object, u32 flag);
|
||||
extern void sub_02057CF0(MapObjectManager *manager, LocalMapObject *object);
|
||||
extern MapObjectManager *MapObjectManager_GetMapObjectManager(MapObjectManager *manager);
|
||||
extern void sub_0205836C(MapObjectManager *manager);
|
||||
|
||||
MapObjectManager *MapObjectManager_Init(FieldSystem *fieldSystem, u32 objectCount, HeapID heapId) {
|
||||
MapObjectManager *ret = MapObjectManager_New(objectCount);
|
||||
@@ -71,3 +90,37 @@ static MapObjectManager *MapObjectManager_New(u32 objectCount) {
|
||||
|
||||
return manager;
|
||||
}
|
||||
|
||||
/*static*/ LocalMapObject *MapObject_CreateFromObjectEventInternal(MapObjectManager *manager, ObjectEvent *objectEvent, u32 mapNo) {
|
||||
LocalMapObject *ret;
|
||||
|
||||
u32 objectId = ObjectEvent_GetID(objectEvent);
|
||||
if (!ObjectEvent_ScriptIdIsUnset(objectEvent)) {
|
||||
ret = sub_02057C98(manager, objectId, mapNo);
|
||||
if (ret != NULL) {
|
||||
sub_02058214(ret, objectEvent, mapNo);
|
||||
return ret;
|
||||
}
|
||||
} else {
|
||||
ret = sub_02058010(manager, objectId, ObjectEvent_GetFlagID_AssertScriptIdIsUnset(objectEvent));
|
||||
if (ret != NULL) {
|
||||
sub_02058258(ret, mapNo, objectEvent);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
ret = MapObjectManager_GetFirstInactiveObject(manager);
|
||||
if (ret == NULL) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
MapObject_InitFromObjectEvent(ret, objectEvent, MapObjectManager_GetFieldSystemPtr(manager));
|
||||
sub_02057E90(ret, manager);
|
||||
sub_0205844C(ret, mapNo);
|
||||
sub_020581A4(ret);
|
||||
sub_020581B4(ret);
|
||||
MapObject_SetFlagsBits(ret, MAPOBJECTFLAG_UNK2);
|
||||
sub_02057CF0(manager, ret);
|
||||
sub_0205836C(MapObjectManager_GetMapObjectManager(manager));
|
||||
return ret;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user