You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
970 B

#ifndef ISOMETRICMAP_H_
#define ISOMETRICMAP_H_
#include "raylib.h"
#include "tile.c"
typedef struct IsometricMap{
Texture2D tileTextures[10];
Tile **tiles;
int sizeX;
int sizeY;
int originX;
int originY;
int width;
int height;
} IsometricMap;
// TODO:
void IsometricMapAddTile(IsometricMap *isometricMap, int x, int y, int textureId);
Tile * IsometricMapGetTileFromWorldCoordinates(IsometricMap *isometricMap, float x, float y);
// World Coordinates -> Screen Coordinates
Vector2 IsometricMapUnproject(IsometricMap *isometricMap, Camera2D *camera, int x, int y);
// Working
IsometricMap * IsometricMapInit(int x, int y);
Vector2 * IsometricMapCalcOffsetForTileAt(int x, int y, int textureSize);
Tile * IsometricMapGetTileFromArrayPosition(IsometricMap *isometricMap, int x, int y);
// Screen Coordinates -> World Coordinates
void IsometricMapProject(IsometricMap *isometricMap, Camera2D *camera, int x, int y, Vector2 *tmp);
#endif