From 189ecf754d0c8131464bfdff98fb56e7752556b1 Mon Sep 17 00:00:00 2001 From: Xavier Del Campo Date: Sat, 4 Feb 2017 14:49:08 +0100 Subject: Initial commit --- Pseudocode/GameCartesianToIsometricPos.c | 41 ++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 Pseudocode/GameCartesianToIsometricPos.c (limited to 'Pseudocode/GameCartesianToIsometricPos.c') diff --git a/Pseudocode/GameCartesianToIsometricPos.c b/Pseudocode/GameCartesianToIsometricPos.c new file mode 100755 index 0000000..c1dd050 --- /dev/null +++ b/Pseudocode/GameCartesianToIsometricPos.c @@ -0,0 +1,41 @@ +#define TILE_WIDTH 64 +#define TILE_WIDTH_HALF 32 +#define TILE_HEIGHT 64 +#define TILE_HEIGHT_HALF 32 + +struct t_CartToIso +{ + u8 u8TileX; + u8 u8TileY; + s16 s16IsoX; + s16 s16IsoY; +} + +/* ****************************************************** + * void GameCartesianToIsometricPosition(TYPE_CartToIso * CTI) + * + * BRIEF: + * * Transforms (X,Y,Z) position buffer to Isometric position + * + * PARAMETERS: + * * TYPE_GXYZTOISO * t_GXYZTOISO + * + * RETURNS: + * + * * void + * + * DATE: + * 1/January/2016 + * + * ******************************************************* */ + +/* + * screen.x = map.x * TILE_WIDTH_HALF - map.y * TILE_WIDTH_HALF; + screen.y = map.x * TILE_HEIGHT_HALF + map.y * TILE_HEIGHT_HALF; +* */ + +void GameCartesianToIsometricPosition(TYPE_CartToIso * CTI) +{ + CTI->u16IsoX = (CTI->u8TileX * TILE_WIDTH_HALF) - (CTI->u8TileY * TILE_WIDTH_HALF); + CTI->u16IsoY = (CTI->u8TileX * TILE_HEIGHT_HALF) - (CTI->u8TileY * TILE_HEIGHT_HALF) +} -- cgit v1.2.3