--- a/src/table/build_industry.h Mon Mar 19 09:33:17 2007 +0000
+++ b/src/table/build_industry.h Mon Mar 19 12:38:16 2007 +0000
@@ -1,5 +1,7 @@
/* $Id$ */
+/** @file build_industry.h */
+
#ifndef BUILD_INDUSTRY_H
#define BUILD_INDUSTRY_H
@@ -1068,7 +1070,7 @@
/* Procedures that can be run to check whether an industry may
* build at location the given to the procedure */
-typedef enum CheckProcs {
+enum CheckProc {
CHECK_NOTHING = 0,
CHECK_FOREST = 1,
CHECK_REFINERY = 2,
@@ -1079,11 +1081,11 @@
CHECK_BUBBLEGEN = 7,
CHECK_OIL_RIG = 8,
CHECK_END,
-} CheckProc;
+};
-#define MK(tbl, d, c1, c2, c3, proc, p1, r1, p2, r2, m, a1, a2, a3, pr, clim, in, s1, s2, s3) \
+#define MK(tbl, d, c1, c2, c3, proc, p1, r1, p2, r2, m, a1, a2, a3, pr, clim, in, intx, s1, s2, s3) \
{tbl, lengthof(tbl), d, {c1, c2, c3}, proc, {p1, p2}, {r1, r2}, m, \
- {a1, a2, a3}, pr, clim, in, s1, s2, s3}
+ {a1, a2, a3}, pr, clim, in, intx, s1, s2, s3}
static const IndustrySpec _industry_specs[] = {
/* Format:
@@ -1092,14 +1094,14 @@
(produced cargo + rate) (twice) minimum cargo moved to station
3 accepted cargo
industry life climate availability
- industry name
+ industry name building text
messages : Closure production up production down */
MK(_tile_table_coal_mine, 210,
IT_POWER_STATION, IT_INVALID, IT_INVALID, CHECK_NOTHING,
CT_COAL, 15, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_NORMAL | 1 << LT_HILLY,
- STR_4802_COAL_MINE,
+ STR_4802_COAL_MINE, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4836_NEW_COAL_SEAM_FOUND_AT, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_power_station, 30,
@@ -1107,7 +1109,7 @@
CT_INVALID, 0, CT_INVALID, 0, 5,
CT_COAL, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_NOT_CLOSABLE, 1 << LT_NORMAL | 1 << LT_HILLY,
- STR_4803_POWER_STATION,
+ STR_4803_POWER_STATION, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_sawmill, 28,
@@ -1115,7 +1117,7 @@
CT_GOODS, 0, CT_INVALID, 0, 5,
CT_WOOD, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_NORMAL,
- STR_4804_SAWMILL,
+ STR_4804_SAWMILL, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_forest, 200,
@@ -1123,7 +1125,7 @@
CT_WOOD, 13, CT_INVALID, 0, 30,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_NORMAL | 1 << LT_HILLY,
- STR_4805_FOREST,
+ STR_4805_FOREST, STR_482E_NEW_BEING_PLANTED_NEAR,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_483A_INSECT_INFESTATION_CAUSES),
MK(_tile_table_oil_refinery, 31,
@@ -1131,7 +1133,7 @@
CT_GOODS, 0, CT_INVALID, 0, 5,
CT_OIL, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_NORMAL | 1 << LT_HILLY | 1 << LT_DESERT,
- STR_4806_OIL_REFINERY,
+ STR_4806_OIL_REFINERY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_oil_rig, 240,
@@ -1139,7 +1141,7 @@
CT_OIL, 15, CT_PASSENGERS, 2, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_NORMAL,
- STR_4807_OIL_RIG,
+ STR_4807_OIL_RIG, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4837_NEW_OIL_RESERVES_FOUND, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_factory, 26,
@@ -1147,7 +1149,7 @@
CT_GOODS, 0, CT_INVALID, 0, 5,
CT_LIVESTOCK, CT_GRAIN, CT_STEEL,
INDUSTRYLIFE_CLOSABLE, 1 << LT_NORMAL,
- STR_4808_FACTORY,
+ STR_4808_FACTORY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_printing_works, 26,
@@ -1155,7 +1157,7 @@
CT_GOODS, 0, CT_INVALID, 0, 5,
CT_PAPER, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_HILLY,
- STR_4809_PRINTING_WORKS,
+ STR_4809_PRINTING_WORKS, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_steel_mill, 27,
@@ -1163,7 +1165,7 @@
CT_STEEL, 0, CT_INVALID, 0, 5,
CT_IRON_ORE, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_NORMAL,
- STR_480A_STEEL_MILL,
+ STR_480A_STEEL_MILL, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_farm, 250,
@@ -1171,7 +1173,7 @@
CT_GRAIN, 10, CT_LIVESTOCK, 10, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_NORMAL | 1 << LT_HILLY,
- STR_480B_FARM,
+ STR_480B_FARM, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4838_IMPROVED_FARMING_METHODS, STR_483A_INSECT_INFESTATION_CAUSES),
MK(_tile_table_copper_mine, 205,
@@ -1179,7 +1181,7 @@
CT_COPPER_ORE, 10, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_DESERT,
- STR_480C_COPPER_ORE_MINE,
+ STR_480C_COPPER_ORE_MINE, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_oil_well, 220,
@@ -1187,7 +1189,7 @@
CT_OIL, 12, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_NORMAL | 1 << LT_HILLY | 1 << LT_DESERT,
- STR_480D_OIL_WELLS,
+ STR_480D_OIL_WELLS, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4837_NEW_OIL_RESERVES_FOUND, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_bank, 193,
@@ -1195,7 +1197,7 @@
CT_VALUABLES, 6, CT_INVALID, 0, 5,
CT_VALUABLES, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_NOT_CLOSABLE, 1 << LT_NORMAL,
- STR_480E_BANK,
+ STR_480E_BANK, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_food_process, 26,
@@ -1203,7 +1205,7 @@
CT_FOOD, 0, CT_INVALID, 0, 5,
CT_FRUIT, CT_MAIZE, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_HILLY | 1 << LT_DESERT,
- STR_480F_FOOD_PROCESSING_PLANT,
+ STR_480F_FOOD_PROCESSING_PLANT, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_paper_mill, 28,
@@ -1211,7 +1213,7 @@
CT_PAPER, 0, CT_INVALID, 0, 5,
CT_WOOD, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_HILLY,
- STR_4810_PAPER_MILL,
+ STR_4810_PAPER_MILL, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_gold_mine, 208,
@@ -1219,7 +1221,7 @@
CT_GOLD, 7, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_DESERT,
- STR_4811_GOLD_MINE,
+ STR_4811_GOLD_MINE, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_bank2, 19,
@@ -1227,7 +1229,7 @@
CT_INVALID, 0, CT_INVALID, 0, 5,
CT_GOLD, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_NOT_CLOSABLE, 1 << LT_HILLY | 1 << LT_DESERT,
- STR_4812_BANK,
+ STR_4812_BANK, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_diamond_mine, 213,
@@ -1235,7 +1237,7 @@
CT_DIAMONDS, 7, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_DESERT,
- STR_4813_DIAMOND_MINE,
+ STR_4813_DIAMOND_MINE, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_iron_mine, 220,
@@ -1243,7 +1245,7 @@
CT_IRON_ORE, 10, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_NORMAL,
- STR_4814_IRON_ORE_MINE,
+ STR_4814_IRON_ORE_MINE, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_fruit_plantation, 225,
@@ -1251,7 +1253,7 @@
CT_FRUIT, 10, CT_INVALID, 0, 15,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_DESERT,
- STR_4815_FRUIT_PLANTATION,
+ STR_4815_FRUIT_PLANTATION, STR_482E_NEW_BEING_PLANTED_NEAR,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4838_IMPROVED_FARMING_METHODS, STR_483A_INSECT_INFESTATION_CAUSES),
MK(_tile_table_rubber_plantation, 218,
@@ -1259,7 +1261,7 @@
CT_RUBBER, 10, CT_INVALID, 0, 15,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_DESERT,
- STR_4816_RUBBER_PLANTATION,
+ STR_4816_RUBBER_PLANTATION, STR_482E_NEW_BEING_PLANTED_NEAR,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4838_IMPROVED_FARMING_METHODS, STR_483A_INSECT_INFESTATION_CAUSES),
MK(_tile_table_water_supply, 199,
@@ -1267,7 +1269,7 @@
CT_WATER, 12, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_DESERT,
- STR_4817_WATER_SUPPLY,
+ STR_4817_WATER_SUPPLY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_water_tower, 14,
@@ -1275,7 +1277,7 @@
CT_INVALID, 0, CT_INVALID, 0, 5,
CT_WATER, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_NOT_CLOSABLE, 1 << LT_DESERT,
- STR_4818_WATER_TOWER,
+ STR_4818_WATER_TOWER, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_factory2, 26,
@@ -1283,7 +1285,7 @@
CT_GOODS, 0, CT_INVALID, 0, 5,
CT_RUBBER, CT_COPPER_ORE, CT_WOOD,
INDUSTRYLIFE_CLOSABLE, 1 << LT_DESERT,
- STR_4819_FACTORY,
+ STR_4819_FACTORY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_farm2, 250,
@@ -1291,7 +1293,7 @@
CT_MAIZE, 11, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_DESERT,
- STR_481A_FARM,
+ STR_481A_FARM, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4838_IMPROVED_FARMING_METHODS, STR_483A_INSECT_INFESTATION_CAUSES),
MK(_tile_table_lumber_mill, 17,
@@ -1299,7 +1301,7 @@
CT_WOOD, 0, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_DESERT,
- STR_481B_LUMBER_MILL,
+ STR_481B_LUMBER_MILL, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4834_LACK_OF_NEARBY_TREES_CAUSES, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_cotton_candy, 195,
@@ -1307,7 +1309,7 @@
CT_COTTON_CANDY, 13, CT_INVALID, 0, 30,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_CANDY,
- STR_481C_COTTON_CANDY_FOREST,
+ STR_481C_COTTON_CANDY_FOREST, STR_482E_NEW_BEING_PLANTED_NEAR,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4838_IMPROVED_FARMING_METHODS, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_candy_factory, 26,
@@ -1315,7 +1317,7 @@
CT_CANDY, 0, CT_INVALID, 0, 5,
CT_SUGAR, CT_TOFFEE, CT_COTTON_CANDY,
INDUSTRYLIFE_CLOSABLE, 1 << LT_CANDY,
- STR_481D_CANDY_FACTORY,
+ STR_481D_CANDY_FACTORY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_battery_farm, 187,
@@ -1323,7 +1325,7 @@
CT_BATTERIES, 11, CT_INVALID, 0, 30,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_CANDY,
- STR_481E_BATTERY_FARM,
+ STR_481E_BATTERY_FARM, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4838_IMPROVED_FARMING_METHODS, STR_483A_INSECT_INFESTATION_CAUSES),
MK(_tile_table_cola_wells, 193,
@@ -1331,7 +1333,7 @@
CT_COLA, 12, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_CANDY,
- STR_481F_COLA_WELLS,
+ STR_481F_COLA_WELLS, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_toy_shop, 17,
@@ -1339,7 +1341,7 @@
CT_INVALID, 0, CT_INVALID, 0, 5,
CT_TOYS, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_NOT_CLOSABLE, 1 << LT_CANDY,
- STR_4820_TOY_SHOP,
+ STR_4820_TOY_SHOP, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_toy_factory, 20,
@@ -1347,7 +1349,7 @@
CT_TOYS, 0, CT_INVALID, 0, 5,
CT_PLASTIC, CT_BATTERIES, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_CANDY,
- STR_4821_TOY_FACTORY,
+ STR_4821_TOY_FACTORY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_plastic_fountain, 192,
@@ -1355,7 +1357,7 @@
CT_PLASTIC, 14, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_CANDY,
- STR_4822_PLASTIC_FOUNTAINS,
+ STR_4822_PLASTIC_FOUNTAINS, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_fizzy_drink, 22,
@@ -1363,7 +1365,7 @@
CT_FIZZY_DRINKS, 0, CT_INVALID, 0, 5,
CT_COLA, CT_BUBBLES, CT_INVALID,
INDUSTRYLIFE_CLOSABLE, 1 << LT_CANDY,
- STR_4823_FIZZY_DRINK_FACTORY,
+ STR_4823_FIZZY_DRINK_FACTORY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4833_SUPPLY_PROBLEMS_CAUSE_TO, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_bubble_generator, 203,
@@ -1371,7 +1373,7 @@
CT_BUBBLES, 13, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_CANDY,
- STR_4824_BUBBLE_GENERATOR,
+ STR_4824_BUBBLE_GENERATOR, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_toffee_quarry, 213,
@@ -1379,7 +1381,7 @@
CT_TOFFEE, 10, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_CANDY,
- STR_4825_TOFFEE_QUARRY,
+ STR_4825_TOFFEE_QUARRY, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
MK(_tile_table_sugar_mine, 210,
@@ -1387,7 +1389,7 @@
CT_SUGAR, 11, CT_INVALID, 0, 5,
CT_INVALID, CT_INVALID, CT_INVALID,
INDUSTRYLIFE_PRODUCTION, 1 << LT_CANDY,
- STR_4826_SUGAR_MINE,
+ STR_4826_SUGAR_MINE, STR_482D_NEW_UNDER_CONSTRUCTION,
STR_4832_ANNOUNCES_IMMINENT_CLOSURE, STR_4835_INCREASES_PRODUCTION, STR_4839_PRODUCTION_DOWN_BY_50),
};
#undef MK
@@ -1461,256 +1463,263 @@
_industry_create_table_3,
};
-#define MK(c1, c2, c3, sl) \
- {{c1, c2, c3}, sl}
-
+/** Writes the properties of a industry tile into the IndustryTileSpec struct.
+ * @param c1 first type of cargo accepted for this tile
+ * @param c2 second cargo
+ * @param c3 and third cargo. Those three are in an array
+ * @param s1 slope refused upon choosing a place to build
+ * @param a1 animation frame on production
+ * @param a2 next frame of animation
+ * @param a3 chosses between animation of construction state
+ */
+#define MK(c1, c2, c3, sl, a1, a2, a3) {{c1, c2, c3}, sl, a1, a2, a3}
static const IndustryTileSpec _industry_tile_specs[] = {
/* Coal Mine */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Power Station */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_COAL, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_COAL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Sawmill */
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Forest Artic, temperate */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 17, INDUTILE_NOANIM, false), // Chopping forest
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 16, false), // Growing forest
/* Oil refinery */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_OIL, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_OIL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* oil Rig */
- MK(CT_INVALID, CT_INVALID, CT_PASSENGERS, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_MAIL, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_PASSENGERS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_MAIL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Oil Wells artic, temperate */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ),
/* Farm tropic, arctic and temperate */
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Factory temperate */
- MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP),
- MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP),
- MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP),
- MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP),
+ MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Printing works */
- MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Copper ore mine */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Steel mill */
- MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP),
- MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP),
+ MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Bank temperate*/
- MK(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_E),
- MK(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_S),
+ MK(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_E, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_S, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Food processing plant, tropic and arctic. CT_MAIZE or CT_WHEAT, CT_LIVESTOCK or CT_FRUIT*/
- MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP),
- MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP),
- MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP),
- MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP),
+ MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Paper mill */
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Gold mine */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Bank Sub Arctic */
- MK(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_E),
- MK(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_S),
+ MK(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_E, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_S, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Diamond mine */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Iron ore Mine */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Fruit plantation */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Rubber plantation */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Water supply */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Water tower */
- MK(CT_INVALID, CT_INVALID, CT_WATER, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_WATER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Factory (sub-tropical) */
- MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP),
- MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP),
- MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP),
- MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP),
+ MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Lumber mill */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Candyfloss forest */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 130, INDUTILE_NOANIM, false), // Chopping candyfloss
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 129, false), // Growing candyfloss
/* Sweet factory */
- MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP),
- MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP),
- MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP),
- MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP),
+ MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Batter farm */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 136, INDUTILE_NOANIM, false), // Reaping batteries
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 135, false), // Growing batteries
/* Cola wells */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Toy shop */
- MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Toy factory */
- MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP),
- MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP),
- MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP),
- MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP),
- MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP),
- MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP),
+ MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Plastic Fountain */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Fizzy drink factory */
- MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP),
- MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP),
- MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP),
- MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP),
+ MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Bubble generator */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Toffee quarry */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
/* Sugar mine */
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
- MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
+ MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false),
};
#undef MK