Changeset - r6266:c52af85b611c
[Not reviewed]
master
0 3 0
belugas - 17 years ago 2007-03-09 02:04:07
belugas@openttd.org
(svn r9075) -Codechange: Cleanup of industry_cmd (Step-7). Small step that is. The new industry messages do not need a series of tests. Only one property to use.
3 files changed with 46 insertions and 49 deletions:
0 comments (0 inline, 0 general)
src/industry.h
Show inline comments
 
@@ -68,12 +68,13 @@ 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
 
	IndustryLifeType life_type;           ///< This is also known as Industry production flag, in newgrf specs
 
	byte climate_availability;            ///< Bitmask, giving landscape enums as bit position
 
	StringID name;                        ///< Displayed name of the industry
 
	StringID new_industry_text;           ///< Message appearing when the industry is built
 
	StringID closure_text;                ///< Message appearing when the industry closes
 
	StringID production_up_text;          ///< Message appearing when the industry's production is increasing
 
	StringID production_down_text;        ///< Message appearing when the industry's production is decreasing
 
};
 

	
 
/**
src/industry_cmd.cpp
Show inline comments
 
@@ -1728,35 +1728,31 @@ static const byte _new_industry_rand[4][
 
	{21, 21, 21, 24, 22, 22, 22, 22, 23, 23, 16, 16, 16,  4,  4, 19, 19, 19, 13, 13, 20, 20, 20, 11, 11, 11, 17, 17, 17, 10, 10, 10},
 
	{30, 30, 30, 36, 36, 31, 31, 31, 27, 27, 27, 28, 28, 28, 26, 26, 26, 34, 34, 34, 35, 35, 35, 29, 29, 29, 32, 32, 32, 33, 33, 33},
 
};
 

	
 
static void MaybeNewIndustry(uint32 r)
 
{
 
	int type;
 
	int type =_new_industry_rand[_opt.landscape][GB(r, 16, 5)];
 
	int j;
 
	Industry *i;
 

	
 
	type = _new_industry_rand[_opt.landscape][GB(r, 16, 5)];
 
	const IndustrySpec *ind_spc = GetIndustrySpec(type);;
 

	
 
	if (type == IT_OIL_WELL && _cur_year > 1950) return;
 
	if (type == IT_OIL_RIG  && _cur_year < 1960) return;
 

	
 
	j = 2000;
 
	for (;;) {
 
		i = CreateNewIndustry(RandomTile(), type);
 
		if (i != NULL) break;
 
		if (--j == 0) return;
 
	}
 

	
 
	SetDParam(0, GetIndustrySpec(type)->name);
 
	SetDParam(0, ind_spc->name);
 
	SetDParam(1, i->town->index);
 
	AddNewsItem(
 
		(type != IT_FOREST && type != IT_FRUIT_PLANTATION && type != IT_RUBBER_PLANTATION && type != IT_COTTON_CANDY) ?
 
			STR_482D_NEW_UNDER_CONSTRUCTION : STR_482E_NEW_BEING_PLANTED_NEAR,
 
		NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_TILE, NT_ECONOMY,0), i->xy, 0
 
	);
 
	AddNewsItem(ind_spc->new_industry_text,
 
		NEWS_FLAGS(NM_THIN, NF_VIEWPORT|NF_TILE, NT_ECONOMY,0), i->xy, 0);
 
}
 

	
 
static void ChangeIndustryProduction(Industry *i)
 
{
 
	bool only_decrease = false;
 
	StringID str = STR_NULL;
src/table/build_industry.h
Show inline comments
 
@@ -1078,319 +1078,319 @@ enum CheckProc {
 
	CHECK_LUMBERMILL = 6,
 
	CHECK_BUBBLEGEN  = 7,
 
	CHECK_OIL_RIG    = 8,
 
	CHECK_END,
 
};
 

	
 
#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:
 
	   tile table                              cost multiplier
 
	   cannot be close to these industries (3 times)             check proc
 
	   (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,
 
	   IT_COAL_MINE,      IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_FOREST,         IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_SAWMILL,        IT_PAPER_MILL,       IT_INVALID,       CHECK_FOREST,
 
	   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,
 
	   IT_OIL_RIG,        IT_INVALID,          IT_INVALID,       CHECK_REFINERY,
 
	   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,
 
	   IT_OIL_REFINERY,   IT_INVALID,          IT_INVALID,       CHECK_OIL_RIG,
 
	   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,
 
	   IT_FARM,           IT_STEEL_MILL,       IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_PAPER_MILL,     IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_IRON_MINE,      IT_FACTORY,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_FACTORY,        IT_FOOD_PROCESS,     IT_INVALID,       CHECK_FARM,
 
	   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,
 
	   IT_FACTORY_2,      IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_OIL_REFINERY,   IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_BANK_TEMP,      IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_FRUIT_PLANTATION, IT_FARM,           IT_FARM_2,        CHECK_NOTHING,
 
	   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,
 
	   IT_FOREST,         IT_PRINTING_WORKS,   IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_BANK_TROPIC_ARCTIC, IT_INVALID,      IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_GOLD_MINE,      IT_DIAMOND_MINE,     IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_BANK_TROPIC_ARCTIC, IT_INVALID,      IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_STEEL_MILL,     IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_FOOD_PROCESS,   IT_INVALID,          IT_INVALID,       CHECK_PLANTATION,
 
	   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,
 
	   IT_FACTORY_2,      IT_INVALID,          IT_INVALID,       CHECK_PLANTATION,
 
	   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,
 
	   IT_WATER_TOWER,    IT_INVALID,          IT_INVALID,       CHECK_WATER,
 
	   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,
 
	   IT_WATER_SUPPLY,   IT_INVALID,          IT_INVALID,       CHECK_WATER,
 
	   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,
 
	   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,
 
	   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,
 
	   IT_FOOD_PROCESS,   IT_INVALID,          IT_INVALID,       CHECK_PLANTATION,
 
	   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,
 
	   IT_FACTORY_2,      IT_INVALID,          IT_INVALID,       CHECK_LUMBERMILL,
 
	   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,
 
	   IT_CANDY_FACTORY,  IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   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,
 
	   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,
 
	   IT_TOY_FACTORY,    IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_FIZZY_DRINK_FACTORY, IT_INVALID,     IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_TOY_FACTORY,    IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_PLASTIC_FOUNTAINS, IT_BATTERY_FARM,  IT_TOY_SHOP,     CHECK_NOTHING,
 
	   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,
 
	   IT_TOY_FACTORY,    IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_COLA_WELLS,     IT_BUBBLE_GENERATOR, IT_INVALID,     CHECK_NOTHING,
 
	   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,
 
	   IT_FIZZY_DRINK_FACTORY, IT_INVALID,     IT_INVALID,       CHECK_BUBBLEGEN,
 
	   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,
 
	   IT_CANDY_FACTORY,  IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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,
 
	   IT_CANDY_FACTORY,  IT_INVALID,          IT_INVALID,       CHECK_NOTHING,
 
	   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
 

	
 

	
 
static const byte _industry_create_table_0[] = {
0 comments (0 inline, 0 general)