|
|
|
@ -64,15 +64,19 @@ Tile * IsometricMapGetTileFromArrayPosition(IsometricMap *map, int x, int y){
|
|
|
|
|
|
|
|
|
|
|
|
void IsometricMapProject(IsometricMap *isometricMap, Camera2D *camera, int x, int y, Vector2 *tmp){
|
|
|
|
void IsometricMapProject(IsometricMap *isometricMap, Camera2D *camera, int x, int y, Vector2 *tmp){
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int mouseAdjustmentX = -8;
|
|
|
|
|
|
|
|
int mouseAdjustmentY = -4;
|
|
|
|
|
|
|
|
|
|
|
|
float tileWidthHalf = isometricMap->tileTextures[0].width / 2;
|
|
|
|
float tileWidthHalf = isometricMap->tileTextures[0].width / 2;
|
|
|
|
float tileHeightHalf = isometricMap->tileTextures[0].height / 2;
|
|
|
|
float tileHeightHalf = isometricMap->tileTextures[0].height / 4;
|
|
|
|
|
|
|
|
|
|
|
|
x += camera->target.x;
|
|
|
|
x += camera->target.x + mouseAdjustmentX;
|
|
|
|
y += camera->target.y;
|
|
|
|
y += camera->target.y + mouseAdjustmentY;
|
|
|
|
|
|
|
|
|
|
|
|
float xPos = (float) x;
|
|
|
|
float xPos = (float) x;
|
|
|
|
float yPos = (float) y;
|
|
|
|
float yPos = (float) y;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int isoX = 0.5 * ( xPos / tileWidthHalf + yPos / tileHeightHalf);
|
|
|
|
int isoX = 0.5 * ( xPos / tileWidthHalf + yPos / tileHeightHalf);
|
|
|
|
int isoY = 0.5 * ( -xPos / tileWidthHalf + yPos / tileHeightHalf);
|
|
|
|
int isoY = 0.5 * ( -xPos / tileWidthHalf + yPos / tileHeightHalf);
|
|
|
|
|
|
|
|
|
|
|
|
|