some more

This commit is contained in:
red031000
2024-03-05 07:17:50 +00:00
parent 9f263d2163
commit f2ad9322df
18 changed files with 160 additions and 178 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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:

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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}

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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:

View File

@@ -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

View File

@@ -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;
}