Overhaul how building and ownership layers are handled at init

This commit is contained in:
2023-11-10 06:38:16 +01:00
parent 60e66bbd67
commit c8c857bdb9
3 changed files with 53 additions and 24 deletions

View File

@@ -15,6 +15,9 @@ typedef struct BzTileObjectGroup BzTileObjectGroup;
typedef void (*BzTileLayerRenderFunc)(BzTileLayer *layer);
typedef void (*BzTileObjectGroupRenderFunc)(BzTileObjectGroup *objectGroup);
extern BzTileLayerRenderFunc BZ_TILE_LAYER_SKIP_RENDER;
extern BzTileObjectGroupRenderFunc BZ_TILE_OBJECTS_SKIP_RENDER;
typedef struct BzTileLayerDesc {
const char *name; // Matches map layer names
BzTileLayerRenderFunc renderer;
@@ -105,6 +108,7 @@ extern BzTileLayerFunc BZ_TILE_LAYER_CLEAR;
extern BzTileObjectsFunc BZ_TILE_OBJECTS_CLEAR;
BzTile bzTileLayerGetTile(BzTileLayer *layer, i32 x, i32 y);
void bzTileLayerSetTile(BzTileLayer *layer, BzTile tile, i32 x, i32 y, i32 w, i32 h);
BzTileset *bzTileLayerGetTileset(BzTileMap *map, BzTileLayer *layer);
BzTileMap bzTileMapCreate(const BzTileMapDesc *desc);