PocketEmpires/Camera.h

57 lines
1.5 KiB
C

#ifndef __CAM_HEADER__
#define __CAM_HEADER__
/* *************************************
* Includes
* *************************************/
#include "Global_Inc.h"
#include "Gfx.h"
#ifdef __cplusplus
extern "C"
{
#endif //__cplusplus
/* *************************************
* Defines
* *************************************/
/* *************************************
* Structs and enums
* *************************************/
typedef struct t_Camera
{
int16_t X_Offset;
int16_t Y_Offset;
int8_t X_Speed;
int8_t Y_Speed;
uint8_t Speed_Timer;
bool locked;
}TYPE_CAMERA;
typedef struct t_sprite TYPE_SPRITE;
/* *************************************
* Global prototypes
* *************************************/
void CameraInit(TYPE_CAMERA* ptrCamera);
void CameraHandler(TYPE_CAMERA* ptrCamera);
void CameraSetLock(TYPE_CAMERA* ptrCamera, bool value);
void CameraApplyCoordinatesToSprite( TYPE_CAMERA* ptrCamera,
TYPE_SPRITE * spr,
uint16_t x,
uint16_t y );
TYPE_COLLISION_BLOCK CameraApplyCoordinatesToCoordinates( TYPE_CAMERA* ptrCamera,
uint16_t x,
uint16_t y );
#ifdef __cplusplus
}
#endif //__cplusplus
#endif //__CAM_HEADER__