mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r9162) -Codechange: Cleanup of industry_cmd (Step-8). Gather tile animation data into IndustryTileSpec array
Added a few documentation on remaining animation arrays (mostly ToyLand ones)
This commit is contained in:
parent
4177215b41
commit
65ce0e36db
|
@ -12,6 +12,7 @@ typedef uint8 IndustryType;
|
|||
|
||||
enum {
|
||||
INVALID_INDUSTRY = 0xFFFF,
|
||||
INDUTILE_NOAMIN = 0xFF, ///< flag to mark industry tiles as having no animation
|
||||
};
|
||||
|
||||
enum IndustryLifeType {
|
||||
|
@ -83,6 +84,10 @@ struct IndustrySpec {
|
|||
struct IndustryTileSpec {
|
||||
CargoID accepts_cargo[3]; ///< Cargo accepted by this tile
|
||||
Slope slopes_refused; ///< slope pattern on which this tile cannot be built
|
||||
byte anim_production; ///< Animation frame to start when goods are produced
|
||||
byte anim_next; ///< Next frame in an animation
|
||||
bool anim_state; ///< When true, the tile has to be drawn using the animation
|
||||
///< state instead of the construction state
|
||||
};
|
||||
|
||||
const IndustrySpec *GetIndustrySpec(IndustryType thistype); ///< Array of industries default data
|
||||
|
|
|
@ -233,7 +233,7 @@ static void DrawTile_Industry(TileInfo *ti)
|
|||
ind = GetIndustryByTile(ti->tile);
|
||||
|
||||
/* Retrieve pointer to the draw industry tile struct */
|
||||
dits = &_industry_draw_tile_data[gfx << 2 | (_industry_section_draw_animation_state[gfx] ?
|
||||
dits = &_industry_draw_tile_data[gfx << 2 | (GetIndustryTileSpec(gfx)->anim_state ?
|
||||
GetIndustryAnimationState(ti->tile) & 3 :
|
||||
GetIndustryConstructionStage(ti->tile))];
|
||||
|
||||
|
@ -357,9 +357,9 @@ static void TransportIndustryGoods(TileIndex tile)
|
|||
am = MoveGoodsToStation(i->xy, i->width, i->height, i->produced_cargo[0], cw);
|
||||
i->last_mo_transported[0] += am;
|
||||
if (am != 0) {
|
||||
uint newgfx = _industry_produce_section[GetIndustryGfx(tile)];
|
||||
uint newgfx = GetIndustryTileSpec(GetIndustryGfx(tile))->anim_production;
|
||||
|
||||
if (newgfx != 0xFF) {
|
||||
if (newgfx != INDUTILE_NOAMIN) {
|
||||
ResetIndustryConstructionStage(tile);
|
||||
SetIndustryCompleted(tile, true);
|
||||
SetIndustryGfx(tile, newgfx);
|
||||
|
@ -645,8 +645,8 @@ static void TileLoop_Industry(TileIndex tile)
|
|||
|
||||
TransportIndustryGoods(tile);
|
||||
|
||||
newgfx = _industry_section_animation_next[GetIndustryGfx(tile)];
|
||||
if (newgfx != 255) {
|
||||
newgfx = GetIndustryTileSpec(GetIndustryGfx(tile))->anim_next;
|
||||
if (newgfx != INDUTILE_NOAMIN) {
|
||||
ResetIndustryConstructionStage(tile);
|
||||
SetIndustryGfx(tile, newgfx);
|
||||
MarkTileDirtyByTile(tile);
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
/* $Id$ */
|
||||
|
||||
/** @file build_industry.h */
|
||||
|
||||
#ifndef BUILD_INDUSTRY_H
|
||||
#define BUILD_INDUSTRY_H
|
||||
|
||||
|
@ -1461,256 +1463,264 @@ static const byte * const _industry_create_table[4] = {
|
|||
_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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, true),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_COAL, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, false), // Chopping forest
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_OIL, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_MAIL, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, true ),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, true ),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, true ),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_S, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, true ),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_S, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
|
||||
/* Fruit plantation */
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
|
||||
/* Rubber plantation */
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
|
||||
/* Water tower */
|
||||
MK(CT_INVALID, CT_INVALID, CT_WATER, SLOPE_STEEP),
|
||||
MK(CT_INVALID, CT_INVALID, CT_WATER, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, false), // Chopping candyfloss
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, false), // Reaping batteries
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, 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_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOAMIN, INDUTILE_NOAMIN, false),
|
||||
};
|
||||
#undef MK
|
||||
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
/* $Id$ */
|
||||
|
||||
/** @file industry_land.h */
|
||||
|
||||
struct DrawIndustrySpec1Struct {
|
||||
byte x;
|
||||
byte image_1;
|
||||
|
@ -718,6 +720,7 @@ static const DrawBuildingsTileStruct _industry_draw_tile_data[NUM_INDUSTRY_GFXES
|
|||
M( 0xf8d, PAL_NONE, 0x12a5 | (1 << PALETTE_MODIFIER_COLOR), PAL_NONE, 0, 0, 16, 16, 50, 1),
|
||||
};
|
||||
|
||||
/* this is ONLY used for Sugar Mine*/
|
||||
static const DrawIndustrySpec1Struct _draw_industry_spec1[96] = {
|
||||
{ 8, 4, 0, 0},
|
||||
{ 6, 0, 1, 0},
|
||||
|
@ -817,14 +820,17 @@ static const DrawIndustrySpec1Struct _draw_industry_spec1[96] = {
|
|||
{ 10, 4, 0, 4},
|
||||
};
|
||||
|
||||
/* this is ONLY used for Sugar Mine*/
|
||||
static const byte _drawtile_proc1_x[5] = {
|
||||
22, 17, 14, 10, 8
|
||||
};
|
||||
|
||||
/* this is ONLY used for Sugar Mine*/
|
||||
static const byte _drawtile_proc1_y[5] = {
|
||||
73, 70, 69, 66, 41
|
||||
};
|
||||
|
||||
/* this is ONLY used for Toy Factory*/
|
||||
static const DrawIndustrySpec4Struct _industry_anim_offs_3[] = {
|
||||
{255, 255, 0},
|
||||
{ 0, 255, 0},
|
||||
|
@ -878,6 +884,7 @@ static const DrawIndustrySpec4Struct _industry_anim_offs_3[] = {
|
|||
{255, 255, 0},
|
||||
};
|
||||
|
||||
/* this is ONLY used for Toffee Quarry*/
|
||||
static const byte _industry_anim_offs[] = {
|
||||
255, 0, 0, 0, 2, 4, 6, 8, 10, 9,
|
||||
7, 5, 3, 1, 255, 0, 0, 0, 2, 4,
|
||||
|
@ -888,6 +895,7 @@ static const byte _industry_anim_offs[] = {
|
|||
2, 4, 6, 8, 10, 9, 7, 5, 3, 1
|
||||
};
|
||||
|
||||
/* this is ONLY used for the Bubble Generator*/
|
||||
static const byte _industry_anim_offs_2[] = {
|
||||
68, 69, 71, 74, 77, 80, 83, 85, 86, 86,
|
||||
86, 86, 86, 86, 86, 86, 86, 86, 86, 86,
|
||||
|
@ -895,100 +903,6 @@ static const byte _industry_anim_offs_2[] = {
|
|||
77, 76, 75, 74, 73, 72, 71, 70, 69, 68,
|
||||
};
|
||||
|
||||
/* those are ONLY used for Power Station*/
|
||||
static const byte _coal_plant_sparks_x[] = {11, 11, 14, 13, 18, 15};
|
||||
static const byte _coal_plant_sparks_y[] = {23, 11, 6, 3, 1, 0};
|
||||
|
||||
#define N 255
|
||||
/**
|
||||
* Next frame in an animation
|
||||
* 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_animation_next[NUM_INDUSTRY_GFXES] = {
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, 16, N, N, N, N, N, N, // <- growing forest
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, 129, N, N, N, N, N, // <- growing candyfloss
|
||||
135, N, N, N, N, N, N, N, // <- 'growing' batteries
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N,
|
||||
};
|
||||
|
||||
/**
|
||||
* Animation to start when goods is produced
|
||||
* The indices into this table are the ones as described by
|
||||
* the enum with GFX_*s in industry_map.h.
|
||||
*/
|
||||
static const byte _industry_produce_section[NUM_INDUSTRY_GFXES] = {
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
17, N, N, N, N, N, N, N, // <- chopping forest
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, 130, N, N, N, N, N, 136, // <- chopping candyfloss and reaping batteries
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N, N,
|
||||
N, N, N, N, N, N, N,
|
||||
};
|
||||
|
||||
#undef N
|
||||
|
||||
|
||||
/**
|
||||
* When true, the tile has to be drawn using the animation
|
||||
* state instead of the construction state.
|
||||
* The indices into this table are the ones as described by
|
||||
* the enum with GFX_*s in industry_map.h.
|
||||
*/
|
||||
static const bool _industry_section_draw_animation_state[NUM_INDUSTRY_GFXES] = {
|
||||
false, true, false, false, false, false, false, false, // <- animated wheel tower of coal mine
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, true, true, // <- animated oil well
|
||||
true, false, false, false, false, false, false, false, // <- animated oil well
|
||||
false, false, false, false, false, false, false, false,
|
||||
true, false, false, false, false, false, false, false, // <- animated wheel tower of copper mine
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
true, false, false, false, false, false, false, false, // <- animated wheel tower of gold mine
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false, false,
|
||||
false, false, false, false, false, false, false,
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue