summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorscnorton <scnorton@biociphers.org>2017-09-10 16:02:20 -0400
committerscnorton <scnorton@biociphers.org>2017-09-10 16:02:20 -0400
commit9e0a17109840593a034bd42e96ffbcf73bc16b1c (patch)
tree68a8661fb276c29fb3a144155e71111add83c0be
parent5a5ea8c740ba17a542c55aa81a576af18cf76b45 (diff)
AddCameraObject
-rw-r--r--asm/field_map_obj.s34
-rw-r--r--include/data3.h1
-rw-r--r--src/field_map_obj.c10
3 files changed, 11 insertions, 34 deletions
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index 400fec15a..d31a53f78 100644
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -5,40 +5,6 @@
.text
- thumb_func_start AddCameraObject
-@ u8 AddCameraObject(u8 followedObjectId)
-AddCameraObject: @ 808ED34
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_084975D4
- movs r1, 0
- movs r2, 0
- movs r3, 0x4
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r2, 0x3E
- adds r2, r1
- mov r12, r2
- ldrb r2, [r2]
- movs r3, 0x4
- orrs r2, r3
- mov r3, r12
- strb r2, [r3]
- strh r4, [r1, 0x2E]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end AddCameraObject
-
thumb_func_start ObjectCB_CameraObject
@ void ObjectCB_CameraObject(struct obj *object)
ObjectCB_CameraObject: @ 808ED78
diff --git a/include/data3.h b/include/data3.h
index f44a61263..343f145c0 100644
--- a/include/data3.h
+++ b/include/data3.h
@@ -14,5 +14,6 @@ extern const struct SpritePalette gUnknown_0850BBC8[];
extern const struct PairedPalettes gUnknown_0850BD00[15];
extern const struct PairedPalettes gUnknown_0850BD78[15];
extern u8 gUnknown_084975C4[0x10];
+extern const struct SpriteTemplate gUnknown_084975D4;
#endif //POKEEMERALD_DATA3_H
diff --git a/src/field_map_obj.c b/src/field_map_obj.c
index 8214c5efa..933908886 100644
--- a/src/field_map_obj.c
+++ b/src/field_map_obj.c
@@ -1336,3 +1336,13 @@ void UpdateFieldObjectsForCameraUpdate(s16 x, s16 y)
SpawnFieldObjectsInView(x, y);
RemoveFieldObjectsOutsideView();
}
+
+u8 AddCameraObject(u8 data0)
+{
+ u8 spriteId;
+
+ spriteId = CreateSprite(&gUnknown_084975D4, 0, 0, 4);
+ gSprites[spriteId].invisible = TRUE;
+ gSprites[spriteId].data0 = data0;
+ return spriteId;
+}