Changeset - r6092:e08485d6ba23
[Not reviewed]
master
0 4 0
belugas - 17 years ago 2007-02-21 02:22:43
belugas@openttd.org
(svn r8827) -Codechange: Cleanup of industry_cmd (Step-6). Implementation of IndustryTileSPec, the alter ego of IndustrySpec.
It offers identification of the different industry tiles in a more distinct manner, as well as regrouping scattered pieces of data across the sources. More to come
4 files changed with 260 insertions and 159 deletions:
0 comments (0 inline, 0 general)
src/industry.h
Show inline comments
 
@@ -78,7 +78,13 @@ typedef struct IndustrySpec {
 
	StringID production_down_text;
 
} IndustrySpec;
 

	
 
typedef struct IndustryTileSpec {
 
	CargoID accepts_cargo[3];
 
	Slope slopes_refused;
 
} IndustryTileSpec;
 

	
 
const IndustrySpec *GetIndustrySpec(IndustryType thistype);
 
const IndustryTileSpec *GetIndustryTileSpec(IndustryGfx gfx);
 

	
 
DECLARE_OLD_POOL(Industry, Industry, 3, 8000)
 

	
src/industry_cmd.cpp
Show inline comments
 
@@ -87,6 +87,12 @@ const IndustrySpec *GetIndustrySpec(Indu
 
	return &_industry_specs[thistype];
 
}
 

	
 
const IndustryTileSpec *GetIndustryTileSpec(IndustryGfx gfx)
 
{
 
	assert(gfx < NUM_INDUSTRY_GFXES);
 
	return &_industry_tile_specs[gfx];
 
}
 

	
 
void DestroyIndustry(Industry *i)
 
{
 
	BEGIN_TILE_LOOP(tile_cur, i->width, i->height, i->xy);
 
@@ -277,16 +283,16 @@ static Slope GetSlopeTileh_Industry(Tile
 

	
 
static void GetAcceptedCargo_Industry(TileIndex tile, AcceptedCargo ac)
 
{
 
	IndustryGfx gfx = GetIndustryGfx(tile);
 
	const IndustryTileSpec *itspec = GetIndustryTileSpec(GetIndustryGfx(tile));
 
	CargoID a;
 

	
 
	a = _industry_section_accepts_1[gfx];
 
	if (a != CT_INVALID) ac[a] = (a == 0) ? 1 : 8;
 
	a = itspec->accepts_cargo[0];
 
	if (a != CT_INVALID) ac[a] = (a == CT_PASSENGERS) ? 1 : 8;
 

	
 
	a = _industry_section_accepts_2[gfx];
 
	a = itspec->accepts_cargo[1];
 
	if (a != CT_INVALID) ac[a] = 8;
 

	
 
	a = _industry_section_accepts_3[gfx];
 
	a = itspec->accepts_cargo[2];
 
	if (a != CT_INVALID) ac[a] = 8;
 
}
 

	
 
@@ -1155,7 +1161,7 @@ static bool CheckIfIndustryTilesAreFree(
 
					 *  CheckIfCanLevelIndustryPlatform(). */
 
					if (tileh != SLOPE_FLAT) {
 
						Slope t;
 
						byte bits = _industry_section_bits[it->gfx];
 
						byte bits = GetIndustryTileSpec(it->gfx)->slopes_refused;
 

	
 
						if (bits & 0x10) return false;
 

	
src/table/build_industry.h
Show inline comments
 
/* $Id$ */
 

	
 

	
 
#ifndef BUILD_INDUSTRY_H
 
#define BUILD_INDUSTRY_H
 

	
 
#define MK(x,y, m) {{x, y}, m}
 

	
 
@@ -1460,141 +1461,257 @@ static const byte * const _industry_crea
 
	_industry_create_table_3,
 
};
 

	
 

	
 
#define PAS CT_PASSENGERS
 
#define MK(c1, c2, c3, sl) \
 
	{{c1, c2, c3}, sl}
 

	
 
#define COL CT_COAL
 
#define RUB CT_RUBBER
 
#define SUG CT_SUGAR
 
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),
 

	
 
#define MAL CT_MAIL
 
	/* 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),
 

	
 
#define OIL CT_OIL
 
#define TOY CT_TOYS
 

	
 
#define LIV CT_LIVESTOCK // Fruit too
 
#define BAT CT_BATTERIES
 
	/* 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),
 

	
 
#define GRA CT_GRAIN
 
#define WHT CT_WHEAT // Maize too
 
#define TOF CT_TOFFEE
 
	/* Forest Artic, temperate */
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 

	
 
#define WOD CT_WOOD
 
#define CLA CT_COLA
 
	/* 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),
 

	
 
#define IRN CT_IRON_ORE
 
#define COP CT_COPPER_ORE
 
#define CCY CT_COTTON_CANDY
 
	/* 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),
 

	
 
#define STL CT_STEEL
 
#define PAP CT_PAPER
 
#define WAT CT_WATER
 
#define BBL CT_BUBBLES
 
	/* 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),
 

	
 
	/* 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),
 

	
 
#define VAL CT_VALUABLES
 
#define GLD CT_GOLD // Diamonds too
 
#define PLC CT_PLASTIC
 
	/* 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),
 

	
 
	/* 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),
 

	
 
#define INV CT_INVALID
 
	/* 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),
 

	
 
	/* 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),
 

	
 
	/* Bank temperate*/
 
	MK(CT_PASSENGERS,   CT_INVALID,   CT_VALUABLES,  SLOPE_E),
 
	MK(CT_PASSENGERS,   CT_INVALID,   CT_VALUABLES,  SLOPE_S),
 

	
 
static const CargoID _industry_section_accepts_1[] = {
 
	INV, INV, INV, PAS, INV, INV, INV, INV,
 
	PAS, INV, INV, PAS, PAS, PAS, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, PAS,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, PAS, PAS, INV, INV, INV, INV, GRA,
 
	GRA, GRA, GRA, INV, INV, INV, INV, INV,
 
	INV, INV, PAS, PAS, PAS, PAS, PAS, PAS,
 
	PAS, PAS, PAS, PAS, WHT, WHT, WHT, WHT,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, COP, COP, COP, COP, INV, INV, INV,
 
	INV, INV, INV, CCY, CCY, CCY, CCY, INV,
 
	INV, INV, INV, INV, INV, INV, BAT, BAT,
 
	BAT, BAT, BAT, BAT, INV, INV, INV, INV,
 
	INV, INV, INV, INV, BBL, BBL, BBL, BBL,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV
 
};
 
	/* 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),
 

	
 
	/* 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),
 

	
 
	/* 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),
 

	
 
static const CargoID _industry_section_accepts_2[] = {
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, STL,
 
	STL, STL, STL, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, WOD, WOD, WOD, WOD, INV, INV, INV,
 
	INV, INV, INV, TOF, TOF, TOF, TOF, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV
 
};
 
	/* Bank Sub Arctic */
 
	MK(CT_INVALID,      CT_INVALID,   CT_GOLD,       SLOPE_E),
 
	MK(CT_INVALID,      CT_INVALID,   CT_GOLD,       SLOPE_S),
 

	
 
	/* 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),
 

	
 
	/* 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),
 

	
 
	/* Fruit plantation */
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 

	
 
	/* Rubber plantation */
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 

	
 
	/* Water supply */
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 

	
 
	/* Water tower */
 
	MK(CT_INVALID,      CT_INVALID,   CT_WATER,      SLOPE_STEEP),
 

	
 
	/* 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),
 

	
 
	/* 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),
 

	
 
	/* Candyfloss forest */
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 

	
 
static const CargoID _industry_section_accepts_3[] = {
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	COL, INV, INV, INV, INV, WOD, INV, INV,
 
	INV, INV, INV, INV, OIL, INV, INV, INV,
 
	PAS, MAL, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, LIV,
 
	LIV, LIV, LIV, PAP, PAP, PAP, PAP, INV,
 
	INV, INV, INV, INV, IRN, IRN, IRN, IRN,
 
	IRN, IRN, VAL, VAL, LIV, LIV, LIV, LIV,
 
	WOD, WOD, WOD, WOD, WOD, WOD, WOD, WOD,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, GLD, GLD, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	WAT, RUB, RUB, RUB, RUB, INV, INV, INV,
 
	INV, INV, INV, SUG, SUG, SUG, SUG, INV,
 
	INV, INV, TOY, TOY, TOY, TOY, PLC, PLC,
 
	PLC, PLC, PLC, PLC, INV, INV, INV, INV,
 
	INV, INV, INV, INV, CLA, CLA, CLA, CLA,
 
	INV, INV, INV, INV, INV, INV, INV, INV,
 
	INV, INV, INV, INV, INV, INV, INV
 
};
 
	/* 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),
 

	
 
	/* Batter farm */
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 

	
 
	/* Cola wells */
 
	MK(CT_INVALID,      CT_INVALID,   CT_INVALID,    SLOPE_STEEP),
 

	
 
	/* 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),
 

	
 
	/* 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),
 

	
 
#undef PAS
 
#undef COL
 
#undef RUB
 
#undef SUG
 
#undef MAL
 
#undef OIL
 
#undef TOY
 
#undef LIV
 
#undef BAT
 
#undef GRA
 
#undef WHT
 
#undef TOF
 
#undef WOD
 
#undef CLA
 
#undef IRN
 
#undef COP
 
#undef CCY
 
#undef STL
 
#undef PAP
 
#undef WAT
 
#undef BBL
 
#undef VAL
 
#undef GLD
 
#undef PLC
 
#undef INV
 
	/* 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),
 

	
 
	/* 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),
 

	
 
	/* 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),
 

	
 
	/* 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),
 

	
 
	/* 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),
 
};
 
#undef MK
 

	
 
#endif  /* BUILD_INDUSTRY_H */
src/table/industry_land.h
Show inline comments
 
@@ -961,34 +961,6 @@ N,   N,   N,   N,   N,   N,   N,
 

	
 
#undef N
 

	
 
/**
 
 * The indices into this table are the ones as described by
 
 * the enum with GFX_*s in industry_map.h.
 
 */
 
static const byte _industry_section_bits[NUM_INDUSTRY_GFXES] = {
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16,  4,  2, 16, 16, 16, 16, // <- temperate bank
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16,  4,  2, 16, 16, 16, 16, 16, // <- sub-arctic/sub-tropical bank
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16, 16,
 
	16, 16, 16, 16, 16, 16, 16,
 
};
 

	
 
/**
 
 * When true, the tile has to be drawn using the animation
0 comments (0 inline, 0 general)