Add tower
This commit is contained in:
@@ -161,6 +161,11 @@ void getBuildingCost(BuildingType type, i32 cost[RES_COUNT]) {
|
||||
case BUILDING_WAREHOUSE:
|
||||
cost[RES_WOOD] = 100;
|
||||
break;
|
||||
case BUILDING_TOWER:
|
||||
cost[RES_WOOD] = 400;
|
||||
cost[RES_FOOD] = 100;
|
||||
cost[RES_GOLD] = 500;
|
||||
break;
|
||||
case BUILDING_NONE:
|
||||
case BUILDING_KEEP:
|
||||
case BUILDING_COUNT:
|
||||
|
||||
@@ -331,6 +331,7 @@ typedef enum BuildingType {
|
||||
BUILDING_KEEP,
|
||||
BUILDING_MARKET,
|
||||
BUILDING_MILL,
|
||||
BUILDING_TOWER,
|
||||
BUILDING_WAREHOUSE,
|
||||
BUILDING_WHEAT_0,
|
||||
BUILDING_WHEAT_1,
|
||||
@@ -341,6 +342,8 @@ static BuildingType getTileBuilding(BzTileID tile) {
|
||||
switch (tile) {
|
||||
case 5638:
|
||||
return BUILDING_BARRACKS;
|
||||
case 5650:
|
||||
return BUILDING_TOWER;
|
||||
case 5654:
|
||||
case 5655:
|
||||
case 5910:
|
||||
@@ -387,6 +390,7 @@ static BuildingType getTileBuilding(BzTileID tile) {
|
||||
static BzTileID getBuildingTile(BuildingType type) {
|
||||
switch (type) {
|
||||
case BUILDING_BARRACKS: return 5638;
|
||||
case BUILDING_TOWER: return 5650;
|
||||
case BUILDING_KEEP: return 5654;
|
||||
case BUILDING_WHEAT_1: return 6400;
|
||||
case BUILDING_WHEAT_0: return 6401;
|
||||
@@ -411,6 +415,7 @@ static BzTileID getBuildingTile(BuildingType type) {
|
||||
static const char *getBuildingStr(BuildingType type) {
|
||||
switch (type) {
|
||||
case BUILDING_BARRACKS: return "barracks";
|
||||
case BUILDING_TOWER: return "tower";
|
||||
case BUILDING_KEEP: return "keep";
|
||||
case BUILDING_WHEAT_1: return "wheat_1";
|
||||
case BUILDING_WHEAT_0: return "wheat_0";
|
||||
@@ -438,6 +443,10 @@ static BuildingType getBuildingSize(BuildingType type, i32 *outWidth, i32 *outHe
|
||||
if (outWidth) *outWidth = 1;
|
||||
if (outHeight) *outHeight = 1;
|
||||
break;
|
||||
case BUILDING_TOWER:
|
||||
if (outWidth) *outWidth = 1;
|
||||
if (outHeight) *outHeight = 1;
|
||||
break;
|
||||
case BUILDING_KEEP:
|
||||
if (outWidth) *outWidth = 2;
|
||||
if (outHeight) *outHeight = 2;
|
||||
|
||||
@@ -54,24 +54,24 @@ void drawGameUI(Game *game, f32 dt) {
|
||||
InputState *input = ecs_singleton_get_mut(ECS, InputState);
|
||||
|
||||
const BuildingType buildingOrder[] = {
|
||||
BUILDING_HOUSE_01,
|
||||
BUILDING_WHEAT_0,
|
||||
BUILDING_HOUSE_05,
|
||||
BUILDING_GRANARY,
|
||||
BUILDING_WAREHOUSE,
|
||||
BUILDING_MARKET,
|
||||
BUILDING_MILL,
|
||||
BUILDING_WHEAT_0,
|
||||
BUILDING_BARRACKS,
|
||||
BUILDING_ARCHERY_RANGE
|
||||
BUILDING_TOWER
|
||||
};
|
||||
const char *buildingNames[] = {
|
||||
"Farm",
|
||||
"House",
|
||||
"Granary",
|
||||
"Warehouse",
|
||||
"Market",
|
||||
"Mill",
|
||||
"Farm",
|
||||
"Barracks",
|
||||
"Archery Range"
|
||||
"Tower"
|
||||
};
|
||||
i32 numBuildings = sizeof(buildingOrder) / sizeof(*buildingOrder);
|
||||
|
||||
|
||||
@@ -6859,7 +6859,8 @@
|
||||
"name":"player",
|
||||
"type":"int",
|
||||
"value":0
|
||||
}]
|
||||
}],
|
||||
"type":"tower"
|
||||
},
|
||||
{
|
||||
"id":5651,
|
||||
|
||||
@@ -2508,7 +2508,7 @@
|
||||
<property name="player" type="int" value="0"/>
|
||||
</properties>
|
||||
</tile>
|
||||
<tile id="5650">
|
||||
<tile id="5650" type="tower">
|
||||
<properties>
|
||||
<property name="building" value=""/>
|
||||
<property name="player" type="int" value="0"/>
|
||||
|
||||
Reference in New Issue
Block a user