summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorscnorton <scnorton@biociphers.org>2017-09-10 16:36:19 -0400
committerscnorton <scnorton@biociphers.org>2017-09-10 16:36:19 -0400
commita89da3ae31144d032f942fb963acc34f23818a91 (patch)
treecf8aa29e28897e9f17cd4fba66e64416dd5aac4e /src
parent4dfae8b9e450467942b227895853c37043bee401 (diff)
Functions operating on the camera object
Diffstat (limited to 'src')
-rw-r--r--src/field_map_obj.c43
1 files changed, 42 insertions, 1 deletions
diff --git a/src/field_map_obj.c b/src/field_map_obj.c
index f600db934..40b12b1b3 100644
--- a/src/field_map_obj.c
+++ b/src/field_map_obj.c
@@ -1388,7 +1388,7 @@ void ObjectCB_CameraObject(struct Sprite *sprite)
sprite->data3 = 0;
}
-/*static*/ struct Sprite *FindCameraObject(void)
+static struct Sprite *FindCameraObject(void)
{
u8 spriteId;
@@ -1401,3 +1401,44 @@ void ObjectCB_CameraObject(struct Sprite *sprite)
}
return NULL;
}
+
+void CameraObjectReset1(void)
+{
+ struct Sprite *cameraObject;
+
+ cameraObject = FindCameraObject();
+ if (cameraObject != NULL)
+ {
+ cameraObject->data1 = 0;
+ cameraObject->callback(cameraObject);
+ }
+}
+
+void CameraObjectSetFollowedObjectId(u8 objectId)
+{
+ struct Sprite *cameraObject;
+
+ cameraObject = FindCameraObject();
+ if (cameraObject != NULL)
+ {
+ cameraObject->data0 = objectId;
+ CameraObjectReset1();
+ }
+}
+
+u8 CameraObjectGetFollowedObjectId(void)
+{
+ struct Sprite *cameraObject;
+
+ cameraObject = FindCameraObject();
+ if (cameraObject == NULL)
+ {
+ return MAX_SPRITES;
+ }
+ return cameraObject->data0;
+}
+
+void CameraObjectReset2(void)
+{
+ FindCameraObject()->data1 = 2;
+}