Functions operating on the camera object

This commit is contained in:
scnorton
2017-09-10 16:36:19 -04:00
parent 4dfae8b9e4
commit a89da3ae31
2 changed files with 42 additions and 65 deletions

View File

@@ -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;
}