summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorscnorton <scnorton@biociphers.org>2017-09-06 17:55:36 -0400
committerscnorton <scnorton@biociphers.org>2017-09-06 17:55:36 -0400
commit942400ddbf15ca8ac9d56279e971dd6f4e1c800d (patch)
tree2974b0c2a0c0eb327e55f5cb499f930221a7e3f5
parenta6269f2f0f94d93b834aae8e15a3dea6789b30c0 (diff)
RemoveFieldObject
-rw-r--r--asm/field_map_obj.s14
-rw-r--r--src/field_map_obj.c7
2 files changed, 7 insertions, 14 deletions
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index f9366b2e9..5be423e0a 100644
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -5,20 +5,6 @@
.text
- thumb_func_start RemoveFieldObject
-@ void RemoveFieldObject(npc_state *fieldObject)
-RemoveFieldObject: @ 808D8B0
- push {lr}
- ldrb r2, [r0]
- movs r1, 0x2
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- bl RemoveFieldObjectInternal
- pop {r0}
- bx r0
- thumb_func_end RemoveFieldObject
-
thumb_func_start RemoveFieldObjectByLocalIdAndMap
@ void RemoveFieldObjectByLocalIdAndMap(u8 localId, u8 mapNum, u8 mapBank)
RemoveFieldObjectByLocalIdAndMap: @ 808D8C4
diff --git a/src/field_map_obj.c b/src/field_map_obj.c
index 0a2f6dbea..7420895ab 100644
--- a/src/field_map_obj.c
+++ b/src/field_map_obj.c
@@ -20,6 +20,7 @@ static u8 GetFieldObjectIdByLocalId(u8);
static u8 GetFieldObjectIdByLocalIdAndMapInternal(u8, u8, u8);
static bool8 GetAvailableFieldObjectSlot(u16, u8, u8, u8 *);
/*static*/ void FieldObjectHandleDynamicGraphicsId(struct MapObject *);
+/*static*/ void RemoveFieldObjectInternal (struct MapObject *);
// ROM data
@@ -415,3 +416,9 @@ static bool8 GetAvailableFieldObjectSlot(u16 localId, u8 mapNum, u8 mapGroup, u8
} while (i < ARRAY_COUNT(gMapObjects));
return FALSE;
}
+
+void RemoveFieldObject(struct MapObject *mapObject)
+{
+ mapObject->active = FALSE;
+ RemoveFieldObjectInternal(mapObject);
+}