Changeset - r6635:23f411510030
[Not reviewed]
master
0 3 0
rubidium - 17 years ago 2007-05-17 20:19:55
rubidium@openttd.org
(svn r9866) -Codechange: remove the technical one-input-cargo-creates-one-output-cargo limit in the factories, sawmills, steelmills and the ones I'm forgetting to mention right now. Use of this functionality will come later.
3 files changed with 70 insertions and 53 deletions:
0 comments (0 inline, 0 general)
src/economy.cpp
Show inline comments
 
@@ -1178,34 +1178,47 @@ int32 GetTransportedGoodsIncome(uint num
 

	
 
static void DeliverGoodsToIndustry(TileIndex xy, CargoID cargo_type, int num_pieces)
 
{
 
	Industry* best = NULL;
 
	Industry* ind;
 
	uint u;
 
	Industry *best = NULL;
 
	Industry *ind;
 
	const IndustrySpec *indspec;
 
	uint best_dist;
 
	uint accepted_cargo_index;
 

	
 
	/* Check if there's an industry close to the station that accepts the cargo
 
	 * XXX - Think of something better to
 
	 *       1) Only deliver to industries which are withing the catchment radius
 
	 *       2) Distribute between industries if more then one is present */
 
	u = (_patches.station_spread + 8) * 2;
 
	best_dist = (_patches.station_spread + 8) * 2;
 
	FOR_ALL_INDUSTRIES(ind) {
 
		uint t;
 
		indspec = GetIndustrySpec(ind->type);
 

	
 
		if (indspec->produced_cargo[0] == CT_INVALID) continue;
 

	
 
		if (( cargo_type == ind->accepts_cargo[0] ||
 
					cargo_type == ind->accepts_cargo[1] ||
 
					cargo_type == ind->accepts_cargo[2]
 
				) &&
 
				ind->produced_cargo[0] != CT_INVALID &&
 
				ind->produced_cargo[0] != cargo_type &&
 
				(t = DistanceManhattan(ind->xy, xy)) < u) {
 
			u = t;
 
		uint i;
 
		for (i = 0; i < lengthof(indspec->accepts_cargo); i++) {
 
			if (cargo_type == indspec->accepts_cargo[i] &&
 
					(indspec->input_cargo_multiplier[i][0] != 0 || indspec->input_cargo_multiplier[i][1] != 0)) {
 
				break;
 
			}
 
		}
 

	
 
		if (i == lengthof(indspec->accepts_cargo)) continue;
 

	
 
		uint dist = DistanceManhattan(ind->xy, xy);
 

	
 
		if (dist < best_dist) {
 
			best = ind;
 
			best_dist = dist;
 
			accepted_cargo_index = i;
 
		}
 
	}
 

	
 
	/* Found one? */
 
	if (best != NULL) {
 
		indspec = GetIndustrySpec(best->type);
 
		best->was_cargo_delivered = true;
 
		best->cargo_waiting[0] = min(best->cargo_waiting[0] + num_pieces, 0xFFFF);
 
		best->cargo_waiting[0] = min(best->cargo_waiting[0] + (num_pieces * indspec->input_cargo_multiplier[accepted_cargo_index][0] / 256), 0xFFFF);
 
		best->cargo_waiting[1] = min(best->cargo_waiting[1] + (num_pieces * indspec->input_cargo_multiplier[accepted_cargo_index][1] / 256), 0xFFFF);
 
	}
 
}
 

	
src/industry.h
Show inline comments
 
@@ -107,6 +107,7 @@ struct IndustrySpec {
 
	byte minimal_cargo;                   ///< minimum amount of cargo transported to the stations
 
	                                      ///< If the waiting cargo is less than this number, no cargo is moved to it
 
	CargoID accepts_cargo[3];             ///< 3 accepted cargos
 
	uint16 input_cargo_multiplier[3][2];  ///< Input cargo multipliers (multiply amount of incoming cargo for the produced cargos)
 
	IndustryLifeType life_type;           ///< This is also known as Industry production flag, in newgrf specs
 
	byte climate_availability;            ///< Bitmask, giving landscape enums as bit position
 
	IndustyBehaviour behaviour;           ///< How this industry will behave, and how others entities can use it
src/table/build_industry.h
Show inline comments
 
@@ -1102,8 +1102,11 @@ static const IndustryTileTable * const _
 
 * @param r2   rate of production 1
 
 * @param m    minimum cargo moved to station
 
 * @param a1   accepted cargo 1
 
 * @param im1  input multiplier for cargo 1
 
 * @param a2   accepted cargo 2
 
 * @param im2  input multiplier for cargo 2
 
 * @param a3   accepted cargo 3
 
 * @param im3  input multiplier for cargo 3
 
 * @param pr   industry life (actually, the same as extractive, organic, processing in ttdpatch's specs)
 
 * @param clim climate availaility
 
 * @param bev  industry behaviour
 
@@ -1115,9 +1118,9 @@ static const IndustryTileTable * const _
 
 */
 

	
 
#define MI(tbl, d, ai1, ai2, ai3, ai4, ag1, ag2, ag3, ag4, col, \
 
           c1, c2, c3, proc, p1, r1, p2, r2, m, a1, a2, a3, pr, clim, bev, in, intx, s1, s2, s3) \
 
           c1, c2, c3, proc, p1, r1, p2, r2, m, a1, im1, a2, im2, a3, im3, pr, clim, bev, in, intx, s1, s2, s3) \
 
	{tbl, lengthof(tbl), d, {c1, c2, c3}, proc, {p1, p2}, {r1, r2}, m,            \
 
	 {a1, a2, a3}, pr, clim, bev, col, in, intx, s1, s2, s3, {ai1, ai2, ai3, ai4}, {ag1, ag2, ag3, ag4}, 0, 0, 0, 0}
 
	 {a1, a2, a3}, {{im1, 0}, {im2, 0}, {im3, 0}}, pr, clim, bev, col, in, intx, s1, s2, s3, {ai1, ai2, ai3, ai4}, {ag1, ag2, ag3, ag4}, 0, 0, 0, 0}
 

	
 
static const IndustrySpec _industry_specs[] = {
 
	/* Format:
 
@@ -1132,7 +1135,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_coal_mine,                  210,              2, 3, 0, 0,    8, 8, 0, 0,        215,
 
	   IT_POWER_STATION,  IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_COAL,       15, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TEMPERATE | 1 << LT_ARCTIC,
 
	   INDUSTRYBEH_CAN_SUBSIDENCE,
 
	   STR_4802_COAL_MINE,                     STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1141,7 +1144,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_power_station,              30,               2, 2, 0, 0,    5, 5, 0, 0,        184,
 
	   IT_COAL_MINE,      IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_INVALID,     0, CT_INVALID,       0, 5,
 
	   CT_COAL,           CT_INVALID,          CT_INVALID,
 
	   CT_COAL,        0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_NOT_CLOSABLE,              1 << LT_TEMPERATE | 1 << LT_ARCTIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4803_POWER_STATION,                 STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1150,7 +1153,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_sawmill,                    28,               2, 0, 0, 0,    5, 0, 0, 0,        194,
 
	   IT_FOREST,         IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_GOODS,       0, CT_INVALID,       0, 5,
 
	   CT_WOOD,           CT_INVALID,          CT_INVALID,
 
	   CT_WOOD,      256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TEMPERATE,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4804_SAWMILL,                       STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1159,7 +1162,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_forest,                     200,              3, 4, 0, 0,    5, 5, 0, 0,         86,
 
	   IT_SAWMILL,        IT_PAPER_MILL,       IT_INVALID,       CHECK_FOREST,
 
	   CT_WOOD,       13, CT_INVALID,       0, 30,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TEMPERATE | 1 << LT_ARCTIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4805_FOREST,                        STR_482E_NEW_BEING_PLANTED_NEAR,
 
@@ -1168,7 +1171,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_oil_refinery,               31,               2, 2, 2, 0,    4, 4, 4, 0,        191,
 
	   IT_OIL_RIG,        IT_INVALID,          IT_INVALID,       CHECK_REFINERY,
 
	   CT_GOODS,       0, CT_INVALID,       0, 5,
 
	   CT_OIL,            CT_INVALID,          CT_INVALID,
 
	   CT_OIL,       256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TEMPERATE | 1 << LT_ARCTIC | 1 << LT_TROPIC,
 
	   INDUSTRYBEH_AIRPLANE_ATTACKS,
 
	   STR_4806_OIL_REFINERY,                  STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1177,7 +1180,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_oil_rig,                    240,              6, 0, 0, 0,    0, 0, 0, 0,        152,
 
	   IT_OIL_REFINERY,   IT_INVALID,          IT_INVALID,       CHECK_OIL_RIG,
 
	   CT_OIL,        15, CT_PASSENGERS,    2, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TEMPERATE,
 
	   INDUSTRYBEH_BUILT_ONWATER | INDUSTRYBEH_AFTER_1960 | INDUSTRYBEH_AI_AIRSHIP_ROUTES,
 
	   STR_4807_OIL_RIG,                       STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1186,7 +1189,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_factory,                    26,               2, 0, 0, 0,    5, 0, 0, 0,        174,
 
	   IT_FARM,           IT_STEEL_MILL,       IT_INVALID,       CHECK_NOTHING,
 
	   CT_GOODS,       0, CT_INVALID,       0, 5,
 
	   CT_LIVESTOCK,      CT_GRAIN,            CT_STEEL,
 
	   CT_LIVESTOCK, 256, CT_GRAIN ,      256, CT_STEEL,    256,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TEMPERATE,
 
	   INDUSTRYBEH_CHOPPER_ATTACKS,
 
	   STR_4808_FACTORY,                       STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1195,7 +1198,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_printing_works,             26,               0, 2, 0, 0,    0, 5, 0, 0,        174,
 
	   IT_PAPER_MILL,     IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_GOODS,       0, CT_INVALID,       0, 5,
 
	   CT_PAPER,          CT_INVALID,          CT_INVALID,
 
	   CT_PAPER,     256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_ARCTIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4809_PRINTING_WORKS,                STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1204,7 +1207,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_steel_mill,                 27,               2, 0, 0, 0,    5, 0, 0, 0,         10,
 
	   IT_IRON_MINE,      IT_FACTORY,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_STEEL,       0, CT_INVALID,       0, 5,
 
	   CT_IRON_ORE,       CT_INVALID,          CT_INVALID,
 
	   CT_IRON_ORE,  256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TEMPERATE,
 
	   INDUSTRYBEH_NONE,
 
	   STR_480A_STEEL_MILL,                    STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1213,7 +1216,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_farm,                       250,              2, 4, 0, 0,    9, 9, 0, 0,         48,
 
	   IT_FACTORY,        IT_FOOD_PROCESS,     IT_INVALID,       CHECK_FARM,
 
	   CT_GRAIN,      10, CT_LIVESTOCK,    10, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TEMPERATE | 1 << LT_ARCTIC,
 
	   INDUSTRYBEH_PLANT_FIELDS | INDUSTRYBEH_PLANT_ON_BUILT,
 
	   STR_480B_FARM,                          STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1222,7 +1225,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_copper_mine,                205,              0, 0, 3, 0,    0, 0, 4, 0,         10,
 
	   IT_FACTORY_2,      IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_COPPER_ORE, 10, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TROPIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_480C_COPPER_ORE_MINE,               STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1231,7 +1234,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_oil_well,                   220,              0, 5, 3, 0,    4, 5, 5, 0,        152,
 
	   IT_OIL_REFINERY,   IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_OIL,        12, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TEMPERATE | 1 << LT_ARCTIC | 1 << LT_TROPIC,
 
	   INDUSTRYBEH_DONT_INCR_PROD | INDUSTRYBEH_BEFORE_1950,
 
	   STR_480D_OIL_WELLS,                     STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1240,7 +1243,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_bank,                       193,              7, 0, 0, 0,    0, 0, 0, 0,         15,
 
	   IT_BANK_TEMP,      IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_VALUABLES,   6, CT_INVALID,       0, 5,
 
	   CT_VALUABLES,      CT_INVALID,          CT_INVALID,
 
	   CT_VALUABLES,   0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_NOT_CLOSABLE,              1 << LT_TEMPERATE,
 
	   INDUSTRYBEH_TOWN1200_MORE | INDUSTRYBEH_ONLY_INTOWN,
 
	   STR_480E_BANK,                          STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1249,7 +1252,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_food_process,               26,               0, 2, 2, 0,    0, 3, 4, 0,         55,
 
	   IT_FRUIT_PLANTATION, IT_FARM,           IT_FARM_2,        CHECK_NOTHING,
 
	   CT_FOOD,        0, CT_INVALID,       0, 5,
 
	   CT_FRUIT,          CT_MAIZE,            CT_INVALID,
 
	   CT_FRUIT,     256, CT_MAIZE,       256, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_ARCTIC | 1 << LT_TROPIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_480F_FOOD_PROCESSING_PLANT,         STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1258,7 +1261,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_paper_mill,                 28,               0, 2, 0, 0,    0, 5, 0, 0,         10,
 
	   IT_FOREST,         IT_PRINTING_WORKS,   IT_INVALID,       CHECK_NOTHING,
 
	   CT_PAPER,       0, CT_INVALID,       0, 5,
 
	   CT_WOOD,           CT_INVALID,          CT_INVALID,
 
	   CT_WOOD,      256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_ARCTIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4810_PAPER_MILL,                    STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1267,7 +1270,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_gold_mine,                  208,              0, 3, 0, 0,    0, 4, 0, 0,        194,
 
	   IT_BANK_TROPIC_ARCTIC, IT_INVALID,      IT_INVALID,       CHECK_NOTHING,
 
	   CT_GOLD,        7, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_ARCTIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4811_GOLD_MINE,                     STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1276,7 +1279,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_bank2,                      19,               0, 3, 3, 0,    0, 6, 5, 0,         15,
 
	   IT_GOLD_MINE,      IT_DIAMOND_MINE,     IT_INVALID,       CHECK_NOTHING,
 
	   CT_INVALID,     0, CT_INVALID,       0, 5,
 
	   CT_GOLD,           CT_INVALID,          CT_INVALID,
 
	   CT_GOLD,      256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_NOT_CLOSABLE,              1 << LT_ARCTIC | 1 << LT_TROPIC,
 
	   INDUSTRYBEH_ONLY_INTOWN,
 
	   STR_4812_BANK,                          STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1285,7 +1288,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_diamond_mine,               213,              0, 0, 3, 0,    0, 0, 4, 0,        184,
 
	   IT_BANK_TROPIC_ARCTIC, IT_INVALID,      IT_INVALID,       CHECK_NOTHING,
 
	   CT_DIAMONDS,    7, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TROPIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4813_DIAMOND_MINE,                  STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1294,7 +1297,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_iron_mine,                  220,              2, 0, 0, 0,    5, 0, 0, 0,         55,
 
	   IT_STEEL_MILL,     IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_IRON_ORE,   10, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TEMPERATE,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4814_IRON_ORE_MINE,                 STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1303,7 +1306,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_fruit_plantation,           225,              0, 0, 2, 0,    0, 0, 4, 0,         86,
 
	   IT_FOOD_PROCESS,   IT_INVALID,          IT_INVALID,       CHECK_PLANTATION,
 
	   CT_FRUIT,      10, CT_INVALID,       0, 15,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TROPIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4815_FRUIT_PLANTATION,              STR_482E_NEW_BEING_PLANTED_NEAR,
 
@@ -1312,7 +1315,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_rubber_plantation,          218,              0, 0, 3, 0,    0, 0, 4, 0,         39,
 
	   IT_FACTORY_2,      IT_INVALID,          IT_INVALID,       CHECK_PLANTATION,
 
	   CT_RUBBER,     10, CT_INVALID,       0, 15,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TROPIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4816_RUBBER_PLANTATION,             STR_482E_NEW_BEING_PLANTED_NEAR,
 
@@ -1321,7 +1324,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_water_supply,               199,              0, 0, 3, 0,    0, 0, 4, 0,         37,
 
	   IT_WATER_TOWER,    IT_INVALID,          IT_INVALID,       CHECK_WATER,
 
	   CT_WATER,      12, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TROPIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4817_WATER_SUPPLY,                  STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1330,7 +1333,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_water_tower,                14,               0, 0, 4, 0,    0, 0, 8, 0,        208,
 
	   IT_WATER_SUPPLY,   IT_INVALID,          IT_INVALID,       CHECK_WATER,
 
	   CT_INVALID,     0, CT_INVALID,       0, 5,
 
	   CT_WATER,          CT_INVALID,          CT_INVALID,
 
	   CT_WATER,     256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_NOT_CLOSABLE,              1 << LT_TROPIC,
 
	   INDUSTRYBEH_ONLY_INTOWN,
 
	   STR_4818_WATER_TOWER,                   STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1339,7 +1342,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_factory2,                   26,               0, 0, 2, 0,    0, 0, 4, 0,        174,
 
	   IT_RUBBER_PLANTATION, IT_COPPER_MINE,   IT_LUMBER_MILL,   CHECK_PLANTATION,
 
	   CT_GOODS,       0, CT_INVALID,       0, 5,
 
	   CT_RUBBER,         CT_COPPER_ORE,       CT_WOOD,
 
	   CT_RUBBER,    256, CT_COPPER_ORE,  256, CT_WOOD,      256,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TROPIC,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4819_FACTORY,                       STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1348,7 +1351,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_farm2,                      250,              0, 0, 1, 0,    0, 0, 2, 0,         48,
 
	   IT_FOOD_PROCESS,   IT_INVALID,          IT_INVALID,       CHECK_PLANTATION,
 
	   CT_MAIZE,      11, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TROPIC,
 
	   INDUSTRYBEH_PLANT_FIELDS | INDUSTRYBEH_PLANT_ON_BUILT,
 
	   STR_481A_FARM,                          STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1357,7 +1360,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_lumber_mill,                17,               0, 0, 0, 0,    0, 0, 0, 0,        194,
 
	   IT_FACTORY_2,      IT_INVALID,          IT_INVALID,       CHECK_LUMBERMILL,
 
	   CT_WOOD,        0, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TROPIC,
 
	   INDUSTRYBEH_CUT_TREES,
 
	   STR_481B_LUMBER_MILL,                   STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1366,7 +1369,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_cotton_candy,               195,              0, 0, 0, 3,    0, 0, 0, 5,         48,
 
	   IT_CANDY_FACTORY,  IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_COTTON_CANDY, 13, CT_INVALID,    0, 30,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_481C_COTTON_CANDY_FOREST,           STR_482E_NEW_BEING_PLANTED_NEAR,
 
@@ -1375,7 +1378,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_candy_factory,              26,               0, 0, 0, 3,    0, 0, 0, 5,        174,
 
	   IT_COTTON_CANDY,   IT_TOFFEE_QUARRY,    IT_SUGAR_MINE,    CHECK_NOTHING,
 
	   CT_CANDY,       0, CT_INVALID,       0, 5,
 
	   CT_SUGAR,          CT_TOFFEE,           CT_COTTON_CANDY,
 
	   CT_SUGAR,     256, CT_TOFFEE,      256, CT_COTTON_CANDY, 256,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_481D_CANDY_FACTORY,                 STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1384,7 +1387,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_battery_farm,               187,              0, 0, 0, 3,    0, 0, 0, 4,         39,
 
	   IT_TOY_FACTORY,    IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_BATTERIES,  11, CT_INVALID,      0, 30,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_481E_BATTERY_FARM,                  STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1393,7 +1396,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_cola_wells,                 193,              0, 0, 0, 3,    0, 0, 0, 5,         55,
 
	   IT_FIZZY_DRINK_FACTORY, IT_INVALID,     IT_INVALID,       CHECK_NOTHING,
 
	   CT_COLA,       12, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_481F_COLA_WELLS,                    STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1402,7 +1405,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_toy_shop,                   17,               0, 0, 0, 3,    0, 0, 0, 4,        208,
 
	   IT_TOY_FACTORY,    IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_INVALID,     0, CT_INVALID,       0, 5,
 
	   CT_TOYS,           CT_INVALID,          CT_INVALID,
 
	   CT_TOYS,      256, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_NOT_CLOSABLE,              1 << LT_TOYLAND,
 
	   INDUSTRYBEH_ONLY_NEARTOWN,
 
	   STR_4820_TOY_SHOP,                      STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1411,7 +1414,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_toy_factory,                20,              0, 0, 0, 3,    0, 0, 0, 5,          10,
 
	   IT_PLASTIC_FOUNTAINS, IT_BATTERY_FARM,  IT_TOY_SHOP,     CHECK_NOTHING,
 
	   CT_TOYS,        0, CT_INVALID,       0, 5,
 
	   CT_PLASTIC,        CT_BATTERIES,        CT_INVALID,
 
	   CT_PLASTIC,   256, CT_BATTERIES,   256, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4821_TOY_FACTORY,                   STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1420,7 +1423,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_plastic_fountain,           192,              0, 0, 0, 3,    0, 0, 0, 5,         37,
 
	   IT_TOY_FACTORY,    IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_PLASTIC,    14, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4822_PLASTIC_FOUNTAINS,             STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1429,7 +1432,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_fizzy_drink,                22,               0, 0, 0, 3,    0, 0, 0, 4,        184,
 
	   IT_COLA_WELLS,     IT_BUBBLE_GENERATOR, IT_INVALID,       CHECK_NOTHING,
 
	   CT_FIZZY_DRINKS, 0, CT_INVALID,      0, 5,
 
	   CT_COLA,           CT_BUBBLES,          CT_INVALID,
 
	   CT_COLA,       256, CT_BUBBLES,    256, CT_INVALID,     0,
 
	   INDUSTRYLIFE_CLOSABLE,                  1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4823_FIZZY_DRINK_FACTORY,           STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1438,7 +1441,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_bubble_generator,           203,              0, 0, 0, 3,    0, 0, 0, 5,        152,
 
	   IT_FIZZY_DRINK_FACTORY, IT_INVALID,     IT_INVALID,       CHECK_BUBBLEGEN,
 
	   CT_BUBBLES,    13, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4824_BUBBLE_GENERATOR,              STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1447,7 +1450,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_toffee_quarry,              213,              0, 0, 0, 3,    0, 0, 0, 5,        194,
 
	   IT_CANDY_FACTORY,  IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_TOFFEE,     10, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4825_TOFFEE_QUARRY,                 STR_482D_NEW_UNDER_CONSTRUCTION,
 
@@ -1456,7 +1459,7 @@ static const IndustrySpec _industry_spec
 
	MI(_tile_table_sugar_mine,                 210,              0, 0, 0, 2,    0, 0, 0, 4,         15,
 
	   IT_CANDY_FACTORY,  IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   CT_SUGAR,      11, CT_INVALID,       0, 5,
 
	   CT_INVALID,        CT_INVALID,          CT_INVALID,
 
	   CT_INVALID,     0, CT_INVALID,       0, CT_INVALID,     0,
 
	   INDUSTRYLIFE_PRODUCTION,                1 << LT_TOYLAND,
 
	   INDUSTRYBEH_NONE,
 
	   STR_4826_SUGAR_MINE,                    STR_482D_NEW_UNDER_CONSTRUCTION,
0 comments (0 inline, 0 general)