Add BzTileID which refers to the tileset
This commit is contained in:
@@ -29,7 +29,7 @@ bool canPlaceBuilding(BzTileMap *map, BuildingType type, BzTile tileX, BzTile ti
|
||||
for (i32 y = tileY; y < tileY + sizeY; y++) {
|
||||
for (i32 x = tileX; x < tileX + sizeX; x++) {
|
||||
BzTile tile = bzTileLayerGetTile(buildLayer, x, y);
|
||||
tile = bzTilesetGetTile(tileset, tile);
|
||||
tile = bzTilesetGetTileID(tileset, tile);
|
||||
tile = getTileBuilding(tile);
|
||||
//if (tile == BUILDINGS_ROAD)
|
||||
// return false;
|
||||
|
||||
@@ -58,7 +58,7 @@ void terrainRender(BzTileMap *map, BzTileLayer *layer) {
|
||||
for (i32 y = 0; y < layer->height; y++) {
|
||||
for (i32 x = 0; x < layer->width; x++) {
|
||||
BzTile tile = bzTileLayerGetTile(layer, x, y);
|
||||
tile = bzTilesetGetTile(tileset, tile);
|
||||
tile = bzTilesetGetTileID(tileset, tile);
|
||||
if (tile != -1) {
|
||||
if (terrainHasAnimation(tile)) {
|
||||
f32 frameDuration = terrainGetAnimationFrame(tile, 0).duration / 1000.0f;
|
||||
@@ -66,7 +66,6 @@ void terrainRender(BzTileMap *map, BzTileLayer *layer) {
|
||||
i32 frameIdx = (i32) (elapsed / frameDuration) % numFrames;
|
||||
tile = terrainGetAnimationFrame(tile, frameIdx).frame;
|
||||
}
|
||||
tile += tileset->startID;
|
||||
Rectangle rec = bzTilesetGetTileRegion(tileset, tile);
|
||||
DrawTextureRec(tileset->tiles, rec, drawPos, WHITE);
|
||||
}
|
||||
|
||||
@@ -63,7 +63,7 @@ bool initBuildingsLayer(BzTileMap *map, BzTileLayer *layer) {
|
||||
for (i32 x = 0; x < layer->width; x++) {
|
||||
BzTile ownerTile = data[y * layer->width + x];
|
||||
BzTile buildingRawTile = buildingData[y * layer->width + x];
|
||||
BzTile buildingTile = bzTilesetGetTile(buildingTileset, buildingRawTile);
|
||||
BzTile buildingTile = bzTilesetGetTileID(buildingTileset, buildingRawTile);
|
||||
buildingTile = getTileBuilding(buildingTile);
|
||||
if (buildingTile == BUILDING_NONE || ownerTile == 0) continue;
|
||||
// We have a building
|
||||
@@ -76,7 +76,7 @@ bool initBuildingsLayer(BzTileMap *map, BzTileLayer *layer) {
|
||||
ecs_entity_t e = ecs_new_id(ECS);
|
||||
ecs_set(ECS, e, Position, {.x = x * tileWidth, .y = y * tileHeight});
|
||||
ecs_set(ECS, e, TileSize, {.sizeX = size.sizeX * tileWidth, .sizeY = size.sizeY * tileHeight});
|
||||
ownerTile = bzTilesetGetTile(buildingTileset, ownerTile);
|
||||
ownerTile = bzTilesetGetTileID(buildingTileset, ownerTile);
|
||||
ownerTile = getTileBuilding(ownerTile);
|
||||
ecs_set(ECS, e, Owner, {.playerID=ownerTile});
|
||||
ecs_add_id(ECS, e, Selectable);
|
||||
@@ -100,7 +100,7 @@ bool initTreesLayer(BzTileMap *map, BzTileLayer *layer) {
|
||||
for (i32 x = 0; x < layer->width; x++) {
|
||||
BzTile tile = layer->data[y * layer->width + x];
|
||||
BzTile layerTile = tile;
|
||||
tile = bzTilesetGetTile(tileset, tile);
|
||||
tile = bzTilesetGetTileID(tileset, tile);
|
||||
if (tile == -1) continue; // Not a tree
|
||||
|
||||
f32 sizeX = tileset->tileWidth;
|
||||
@@ -115,7 +115,8 @@ bool initTreesLayer(BzTileMap *map, BzTileLayer *layer) {
|
||||
ecs_set(ECS, e, Position, {posX, posY});
|
||||
ecs_set(ECS, e, Size, {sizeX, sizeY});
|
||||
ecs_set(ECS, e, Rotation, {0});
|
||||
ecs_set(ECS, e, TextureRegion, {tileset->tiles, bzTilesetGetTileRegion(tileset, layerTile)});
|
||||
BzTile tileID = bzTilesetGetTileID(tileset, layerTile);
|
||||
ecs_set(ECS, e, TextureRegion, {tileset->tiles, bzTilesetGetTileRegion(tileset, tileID)});
|
||||
ecs_set(ECS, e, Resource, {RES_WOOD, 20});
|
||||
ecs_add_id(ECS, e, Selectable);
|
||||
ecs_add_id(ECS, e, Harvestable);
|
||||
|
||||
Reference in New Issue
Block a user