summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorscnorton <scnorton@biociphers.org>2017-09-06 09:42:10 -0400
committerscnorton <scnorton@biociphers.org>2017-09-06 09:42:10 -0400
commitf3f8c5ec2c476aa6db557f30dc830d6b4f9bc741 (patch)
tree9946791dd8e571aabaa03f30f5b0ebaa52e8441e
parent368b0f9ee8500c5f15d511c827d8b59795fab82b (diff)
sub_808D4F4
-rw-r--r--asm/field_map_obj.s29
-rw-r--r--src/field_map_obj.c15
2 files changed, 15 insertions, 29 deletions
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index ccd56427c..6fd4e2005 100644
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -5,35 +5,6 @@
.text
- thumb_func_start sub_808D4F4
-sub_808D4F4: @ 808D4F4
- push {lr}
- movs r1, 0
- ldr r2, =gUnknown_02037350
- ldrb r0, [r2]
- b _0808D518
- .pool
-_0808D504:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bhi _0808D51E
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
-_0808D518:
- lsls r0, 31
- cmp r0, 0
- bne _0808D504
-_0808D51E:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_808D4F4
-
thumb_func_start GetFieldObjectIdByLocalIdAndMap
@ u8 GetFieldObjectIdByLocalIdAndMap(u8 localId, u8 mapId, u8 mapGroupId)
GetFieldObjectIdByLocalIdAndMap: @ 808D524
diff --git a/src/field_map_obj.c b/src/field_map_obj.c
index 7b5731e68..46cc0585c 100644
--- a/src/field_map_obj.c
+++ b/src/field_map_obj.c
@@ -30,6 +30,7 @@
static void npcs_clear_ids_and_state(void)
{
u8 i;
+
for (i = 0; i < ARRAY_COUNT(gUnknown_02037350); i ++)
{
npc_clear_ids_and_state(&gUnknown_02037350[i]);
@@ -60,3 +61,17 @@ void sub_808D438(void)
StartSpriteAffineAnim(&gSprites[spriteIdx], 1);
gSprites[spriteIdx].invisible = TRUE;
}
+
+u8 sub_808D4F4(void)
+{
+ u8 i;
+
+ for (i = 0; i < ARRAY_COUNT(gUnknown_02037350); i ++)
+ {
+ if (!gUnknown_02037350[i].active)
+ {
+ break;
+ }
+ }
+ return i;
+}