diff options
author | scnorton <scnorton@biociphers.org> | 2017-09-10 15:12:48 -0400 |
---|---|---|
committer | scnorton <scnorton@biociphers.org> | 2017-09-10 15:12:48 -0400 |
commit | 1ed1fbab1ca140edebb7ec1ebfabaaaf04f9c054 (patch) | |
tree | f31c24d9cd3dfa9bdf35bb34965a51db79238b96 | |
parent | ba6987b7335d6b3f0a641e0dee62be37bff4ffd8 (diff) |
sub_808EBA8
-rw-r--r-- | asm/field_map_obj.s | 44 | ||||
-rw-r--r-- | src/field_map_obj.c | 12 |
2 files changed, 12 insertions, 44 deletions
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s index d61478b62..bb7c95ef4 100644 --- a/asm/field_map_obj.s +++ b/asm/field_map_obj.s @@ -5,50 +5,6 @@ .text - thumb_func_start sub_808EBA8 -sub_808EBA8: @ 808EBA8 - push {r4,r5,lr} - sub sp, 0x4 - ldr r4, [sp, 0x10] - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 16 - lsrs r5, r3, 16 - lsls r4, 16 - lsrs r4, 16 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _0808EBF0 - lsls r1, r5, 16 - lsls r2, r4, 16 - mov r0, sp - ldrb r3, [r0] - lsls r0, r3, 3 - adds r0, r3 - lsls r0, 2 - ldr r3, =gMapObjects - adds r0, r3 - movs r3, 0xE0 - lsls r3, 11 - adds r1, r3 - asrs r1, 16 - adds r2, r3 - asrs r2, 16 - bl sub_808EB08 -_0808EBF0: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_808EBA8 - thumb_func_start npc_coords_shift_still @ void npc_coords_shift_still(struct npc_state *fieldObject) npc_coords_shift_still: @ 808EBFC diff --git a/src/field_map_obj.c b/src/field_map_obj.c index acfbd60a7..7465370b9 100644 --- a/src/field_map_obj.c +++ b/src/field_map_obj.c @@ -1262,3 +1262,15 @@ void sub_808EB08(struct MapObject *mapObject, s16 x, s16 y) } } +void sub_808EBA8(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y) +{ + u8 mapObjectId; + + if (!TryGetFieldObjectIdByLocalIdAndMap(localId, mapNum, mapGroup, &mapObjectId)) + { + x += 7; + y += 7; + sub_808EB08(&gMapObjects[mapObjectId], x, y); + } +} + |