diff options
author | belugas <belugas@openttd.org> | 2007-04-18 18:00:33 +0000 |
---|---|---|
committer | belugas <belugas@openttd.org> | 2007-04-18 18:00:33 +0000 |
commit | 4eb87ac62ba75a39cf0f31fc0785681d028e8bc1 (patch) | |
tree | fac2c80abcc412ec1a4fb2b198121140a0a89b0c /src | |
parent | 7789eef209776bd9d644c6442e55a9688236ad53 (diff) | |
download | openttd-4eb87ac62ba75a39cf0f31fc0785681d028e8bc1.tar.xz |
(svn r9669) -Documentation: some more doxygen fixes
Diffstat (limited to 'src')
-rw-r--r-- | src/engine.h | 2 | ||||
-rw-r--r-- | src/misc_cmd.cpp | 1 | ||||
-rw-r--r-- | src/newgrf_gui.cpp | 4 | ||||
-rw-r--r-- | src/rail_cmd.cpp | 9 | ||||
-rw-r--r-- | src/settings.cpp | 4 | ||||
-rw-r--r-- | src/smallmap_gui.cpp | 2 | ||||
-rw-r--r-- | src/station.cpp | 1 | ||||
-rw-r--r-- | src/station_cmd.cpp | 8 | ||||
-rw-r--r-- | src/table/build_industry.h | 473 | ||||
-rw-r--r-- | src/table/engines.h | 202 |
10 files changed, 381 insertions, 325 deletions
diff --git a/src/engine.h b/src/engine.h index 4aed67994..4ebf1a9f2 100644 --- a/src/engine.h +++ b/src/engine.h @@ -90,7 +90,7 @@ struct EngineInfo { Date base_intro; Year lifelength; Year base_life; - byte unk2; ///< Carriages have the highest bit set in this one + byte unk2; ///< flag for carriage(bit 7) and decay speed(bits0..6) byte load_amount; byte climates; uint32 refit_mask; diff --git a/src/misc_cmd.cpp b/src/misc_cmd.cpp index a4be0588b..d912b6646 100644 --- a/src/misc_cmd.cpp +++ b/src/misc_cmd.cpp @@ -20,6 +20,7 @@ /** Change the player's face. * @param tile unused + * @param flags operation to perform * @param p1 unused * @param p2 face bitmasked */ diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp index 51f57fc5e..bd0aefb01 100644 --- a/src/newgrf_gui.cpp +++ b/src/newgrf_gui.cpp @@ -296,7 +296,9 @@ static void SetupNewGRFWindow(Window *w) /** Callback function for the newgrf 'apply changes' confirmation window - * @param yes_clicked boolean value, true when yes was clicked, false otherwise */ + * @param w Window which is calling this callback + * @param confirmed boolean value, true when yes was clicked, false otherwise + */ static void NewGRFConfirmationCallback(Window *w, bool confirmed) { if (confirmed) { diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp index af3ae13c2..8a44b10fc 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp @@ -829,10 +829,11 @@ int32 CmdBuildSignalTrack(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) /** Remove signals * @param tile coordinates where signal is being deleted from * @param flags operation to perform - * @param various bitstuffed elements, only track information is used - * - p1 = (bit 0- 2) - track-orientation, valid values: 0-5 (Track enum) - * - p1 = (bit 3) - override signal/semaphore, or pre/exit/combo signal (CTRL-toggle) - * - p1 = (bit 4) - 0 = signals, 1 = semaphores + * @param p1 various bitstuffed elements, only track information is used + * - (bit 0- 2) - track-orientation, valid values: 0-5 (Track enum) + * - (bit 3) - override signal/semaphore, or pre/exit/combo signal (CTRL-toggle) + * - (bit 4) - 0 = signals, 1 = semaphores + * @param p2 unused */ int32 CmdRemoveSingleSignal(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) { diff --git a/src/settings.cpp b/src/settings.cpp index eb318cddf..469e9ce6b 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -897,10 +897,10 @@ static void ini_load_setting_list(IniFile *ini, const char *grpname, char **list /** Saves all items from a list into the 'grpname' section * The list parameter can be a NULL pointer, in this case a callback function * should be defined that will provide the source data to be saved. - * @param IniFile handle to the ini file where the destination data is saved + * @param ini IniFile handle to the ini file where the destination data is saved * @param grpname character string identifying the section-header of the ini file * @param list pointer to an string(pointer) array that will be used as the - * source to be saved into the relevant ini section + * source to be saved into the relevant ini section * @param len the maximum number of items available for the above list * @param proc callback function that can will provide the source data if defined */ static void ini_save_setting_list(IniFile *ini, const char *grpname, char **list, uint len, SettingListCallbackProc proc) diff --git a/src/smallmap_gui.cpp b/src/smallmap_gui.cpp index 2950d09f1..02a8f5f7c 100644 --- a/src/smallmap_gui.cpp +++ b/src/smallmap_gui.cpp @@ -566,7 +566,7 @@ static void DrawHorizMapIndicator(int x, int y, int x2, int y2) * are drawn directly into the screen buffer. The final map is drawn in multiple passes. * The passes are: * <ol><li>The colors of tiles in the different modes.</li> - * <li>Town names (optional)</li> + * <li>Town names (optional)</li></ol> * * @param dpi pointer to pixel to write onto * @param w pointer to Window struct diff --git a/src/station.cpp b/src/station.cpp index 41fabce7e..f788ac7cb 100644 --- a/src/station.cpp +++ b/src/station.cpp @@ -59,7 +59,6 @@ Station::Station(TileIndex tile) * Aircraft-Hangar orders need special treatment here, as the hangars are * actually part of a station (tiletype is STATION), but the order type * is OT_GOTO_DEPOT. - * @param st Station to be deleted */ Station::~Station() { diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 4dd10ed98..9c6fe88e6 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -1155,8 +1155,8 @@ int32 DoConvertStationRail(TileIndex tile, RailType totype, bool exec) } /** - * @param[in] truck_station Determines whether a stop is RoadStop::BUS or RoadStop::TRUCK - * @param[in] station The station to do the whole procedure for + * @param truck_station Determines whether a stop is RoadStop::BUS or RoadStop::TRUCK + * @param st The Station to do the whole procedure for * @return a pointer to where to link a new RoadStop* */ static RoadStop **FindRoadStopSpot(bool truck_station, Station* st) @@ -1164,10 +1164,10 @@ static RoadStop **FindRoadStopSpot(bool truck_station, Station* st) RoadStop **primary_stop = (truck_station) ? &st->truck_stops : &st->bus_stops; if (*primary_stop == NULL) { - //we have no roadstop of the type yet, so write a "primary stop" + /* we have no roadstop of the type yet, so write a "primary stop" */ return primary_stop; } else { - //there are stops already, so append to the end of the list + /* there are stops already, so append to the end of the list */ RoadStop *stop = *primary_stop; while (stop->next != NULL) stop = stop->next; return &stop->next; diff --git a/src/table/build_industry.h b/src/table/build_industry.h index 50b391054..d7bfbfd37 100644 --- a/src/table/build_industry.h +++ b/src/table/build_industry.h @@ -1068,7 +1068,42 @@ static const IndustryTileTable * const _tile_table_sugar_mine[] = { #undef MK #undef MKEND -#define MK(tbl, d, ai1, ai2, ai3, ai4, ag1, ag2, ag3, ag4, col,\ +/** + * Writes the properties of an industry into the IndustrySpec struct. + * @param tbl tile table + * @param d cost multiplier + * @param ai1 appear chance ingame - temperate + * @param ai2 appear chance ingame - arctic + * @param ai3 appear chance ingame - tropic + * @param ai4 appear chance ingame - toyland + * @param ag1 appear chance random creation - temperate + * @param ag2 appear chance random creation - arctic + * @param ag3 appear chance random creation - tropic + * @param ag4 appear chance random creation - toyland + * @param col map colour + * @param c1 industry proximity refusal - 1st + * @param c2 industry proximity refusal - 2nd + * @param c3 industry proximity refusal - 3th + * @param proc check procedure index + * @param p1 produce cargo 1 + * @param r1 rate of production 1 + * @param p2 produce cargo 2 + * @param r2 rate of production 1 + * @param m minimum cargo moved to station + * @param a1 accepted cargo 1 + * @param a2 accepted cargo 2 + * @param a3 accepted 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 + * @param in name + * @param intx text while building + * @param s1 text for closure + * @param s2 text for production up + * @param s3 text for production down + */ + +#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) \ {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} @@ -1083,7 +1118,7 @@ static const IndustrySpec _industry_specs[] = { industry behaviours industry name building text messages : Closure production up production down */ - MK(_tile_table_coal_mine, 210, 2, 3, 0, 0, 8, 8, 0, 0, 215, + 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, @@ -1092,7 +1127,7 @@ static const IndustrySpec _industry_specs[] = { 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, 2, 2, 0, 0, 5, 5, 0, 0, 184, + 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, @@ -1101,7 +1136,7 @@ static const IndustrySpec _industry_specs[] = { 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, 2, 0, 0, 0, 5, 0, 0, 0, 194, + 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, @@ -1110,7 +1145,7 @@ static const IndustrySpec _industry_specs[] = { 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, 3, 4, 0, 0, 5, 5, 0, 0, 86, + 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, @@ -1119,7 +1154,7 @@ static const IndustrySpec _industry_specs[] = { 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, 2, 2, 2, 0, 4, 4, 4, 0, 191, + 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, @@ -1128,7 +1163,7 @@ static const IndustrySpec _industry_specs[] = { 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, 6, 0, 0, 0, 0, 0, 0, 0, 152, + 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, @@ -1137,7 +1172,7 @@ static const IndustrySpec _industry_specs[] = { 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, 2, 0, 0, 0, 5, 0, 0, 0, 174, + 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, @@ -1146,7 +1181,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 2, 0, 0, 0, 5, 0, 0, 174, + 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, @@ -1155,7 +1190,7 @@ static const IndustrySpec _industry_specs[] = { 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, 2, 0, 0, 0, 5, 0, 0, 0, 10, + 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, @@ -1164,7 +1199,7 @@ static const IndustrySpec _industry_specs[] = { 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, 2, 4, 0, 0, 9, 9, 0, 0, 48, + 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, @@ -1173,7 +1208,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 3, 0, 0, 0, 4, 0, 10, + 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, @@ -1182,7 +1217,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 5, 3, 0, 4, 5, 5, 0, 152, + 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, @@ -1191,7 +1226,7 @@ static const IndustrySpec _industry_specs[] = { 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, 7, 0, 0, 0, 0, 0, 0, 0, 15, + 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, @@ -1200,7 +1235,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 2, 2, 0, 0, 3, 4, 0, 55, + 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, @@ -1209,7 +1244,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 2, 0, 0, 0, 5, 0, 0, 10, + 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, @@ -1218,7 +1253,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 3, 0, 0, 0, 4, 0, 0, 194, + 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, @@ -1227,7 +1262,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 3, 3, 0, 0, 6, 5, 0, 15, + 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, @@ -1236,7 +1271,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 3, 0, 0, 0, 4, 0, 184, + 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, @@ -1245,7 +1280,7 @@ static const IndustrySpec _industry_specs[] = { 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, 2, 0, 0, 0, 5, 0, 0, 0, 55, + 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, @@ -1254,7 +1289,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 2, 0, 0, 0, 4, 0, 86, + 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, @@ -1263,7 +1298,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 3, 0, 0, 0, 4, 0, 39, + 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, @@ -1272,7 +1307,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 3, 0, 0, 0, 4, 0, 37, + 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, @@ -1281,7 +1316,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 4, 0, 0, 0, 8, 0, 208, + 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, @@ -1290,7 +1325,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 2, 0, 0, 0, 4, 0, 174, + 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, @@ -1299,7 +1334,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 1, 0, 0, 0, 2, 0, 48, + 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, @@ -1308,7 +1343,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 0, 0, 0, 0, 0, 194, + 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, @@ -1317,7 +1352,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 5, 48, + 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, @@ -1326,7 +1361,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 5, 174, + 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, @@ -1335,7 +1370,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 4, 39, + 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, @@ -1344,7 +1379,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 5, 55, + 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, @@ -1353,7 +1388,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 4, 208, + 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, @@ -1362,7 +1397,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 5, 10, + 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, @@ -1371,7 +1406,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 5, 37, + 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, @@ -1380,7 +1415,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 4, 184, + 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, @@ -1389,7 +1424,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 5, 152, + 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, @@ -1398,7 +1433,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 3, 0, 0, 0, 5, 194, + 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, @@ -1407,7 +1442,7 @@ static const IndustrySpec _industry_specs[] = { 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, 0, 0, 0, 2, 0, 0, 0, 4, 15, + 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, @@ -1416,266 +1451,266 @@ static const IndustrySpec _industry_specs[] = { 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 +#undef MI -/** Writes the properties of a industry tile into the IndustryTileSpec struct. +/** Writes the properties of an 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 + * @param a3 chooses between animation or construction state */ -#define MK(c1, c2, c3, sl, a1, a2, a3) {{c1, c2, c3}, sl, a1, a2, a3} +#define MT(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, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Power Station */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_COAL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_COAL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Sawmill */ - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Forest Artic, temperate */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 17, INDUTILE_NOANIM, false), // Chopping forest - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 16, false), // Growing forest + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 17, INDUTILE_NOANIM, false), ///< Chopping forest + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 16, false), ///< Growing forest /* Oil refinery */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_OIL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_OIL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* oil Rig */ - MK(CT_INVALID, CT_INVALID, CT_PASSENGERS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_MAIL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_PASSENGERS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_MAIL, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Oil Wells artic, temperate */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), /* Farm tropic, arctic and temperate */ - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Factory temperate */ - MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_GRAIN, CT_STEEL, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Printing works */ - MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_PAPER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Copper ore mine */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Steel mill */ - MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_IRON_ORE, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Bank temperate*/ - MK(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_E, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_S, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_E, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_PASSENGERS, CT_INVALID, CT_VALUABLES, SLOPE_S, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Food processing plant, tropic and arctic. CT_MAIZE or CT_WHEAT, CT_LIVESTOCK or CT_FRUIT*/ - MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_MAIZE, CT_INVALID, CT_LIVESTOCK, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Paper mill */ - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WOOD, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Gold mine */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, true ), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Bank Sub Arctic */ - MK(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_E, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_S, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_E, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_GOLD, SLOPE_S, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Diamond mine */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Iron ore Mine */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Fruit plantation */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Rubber plantation */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Water supply */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Water tower */ - MK(CT_INVALID, CT_INVALID, CT_WATER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_WATER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Factory (sub-tropical) */ - MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COPPER_ORE, CT_WOOD, CT_RUBBER, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Lumber mill */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Candyfloss forest */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 130, INDUTILE_NOANIM, false), // Chopping candyfloss - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 129, false), // Growing candyfloss + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 130, INDUTILE_NOANIM, false), ///< Chopping candyfloss + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 129, false), ///< Growing candyfloss /* Sweet factory */ - MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_COTTON_CANDY, CT_TOFFEE, CT_SUGAR, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Batter farm */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 136, INDUTILE_NOANIM, false), // Reaping batteries - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 135, false), // Growing batteries + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, 136, INDUTILE_NOANIM, false), ///< Reaping batteries + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, 135, false), ///< Growing batteries /* Cola wells */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Toy shop */ - MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_TOYS, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Toy factory */ - MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BATTERIES, CT_INVALID, CT_PLASTIC, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Plastic Fountain */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Fizzy drink factory */ - MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_BUBBLES, CT_INVALID, CT_COLA, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Bubble generator */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Toffee quarry */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), /* Sugar mine */ - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), - MK(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), -}; -#undef MK + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), + MT(CT_INVALID, CT_INVALID, CT_INVALID, SLOPE_STEEP, INDUTILE_NOANIM, INDUTILE_NOANIM, false), +}; +#undef MT #endif /* BUILD_INDUSTRY_H */ diff --git a/src/table/engines.h b/src/table/engines.h index 46522caa1..71d7c4146 100644 --- a/src/table/engines.h +++ b/src/table/engines.h @@ -12,25 +12,43 @@ /** Writes the properties of a train or road vehicle into the EngineInfo struct. * @see EngineInfo * @param a Introduction date + * @param b unk2, flag for carriage(bit 7) and decay speed(bits0..6) + * @param c life length + * @param d base life * @param e Bitmask of the climates + * @note the 0x80 in parameter b sets the "is carriage bit" * @note the 5 between d and e is the load amount */ #define MK(a, b, c, d, e) { DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 5, e, 0, 8, 0, 0 } /** Writes the properties of a train carriage into the EngineInfo struct. + * @param a Introduction date + * @param b unk2, flag for carriage(bit 7) and decay speed(bits0..6) + * @param c life length + * @param d base life + * @param e Bitmask of the climates * @see MK - * @note the 0x80 in parameter b sets the "is carriage bit" * @note the 5 between d and e is the load amount */ #define MW(a, b, c, d, e) { DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b | 0x80, 5, e, 0, 8, 0, 0 } /** Writes the properties of a ship into the EngineInfo struct. + * @param a Introduction date + * @param b unk2, flag for carriage(bit 7) and decay speed(bits0..6) + * @param c life length + * @param d base life + * @param e Bitmask of the climates * @see MK * @note the 10 between d and e is the load amount */ #define MS(a, b, c, d, e) { DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 10, e, 0, 8, 0, 0 } /** Writes the properties of an aeroplane into the EngineInfo struct. + * @param a Introduction date + * @param b unk2, flag for carriage(bit 7) and decay speed(bits0..6) + * @param c life length + * @param d base life + * @param e Bitmask of the climates * @see MK * @note the 20 between d and e is the load amount */ @@ -321,7 +339,7 @@ const EngineInfo orig_engine_info[] = { * @param e power (hp) * @param f weight * @param g running_cost_base - * @param h running_cost_class / engclass + * @param h running_cost_class - engclass * @param i capacity * @param j cargo_type * @param k ai_rank @@ -586,101 +604,101 @@ const AircraftVehicleInfo orig_aircraft_vehicle_info[NUM_AIRCRAFT_ENGINES] = { * @param f capacity * @param g cargo_type */ -#define RVI(a, b, c, d, e, f, g) { a, b, c, {d}, e, f, g } +#define ROV(a, b, c, d, e, f, g) { a, b, c, {d}, e, f, g } const RoadVehicleInfo orig_road_vehicle_info[NUM_ROAD_ENGINES] = { // image_index sfx max_speed // | base_cost | | capacity // | | running_cost | | cargo_type // | | | | | | | - RVI( 0, 120, 91, SND_19_BUS_START_PULL_AWAY, 112, 31, CT_PASSENGERS ), /* 0 */ - RVI( 17, 140, 128, SND_1C_TRUCK_START_2, 176, 35, CT_PASSENGERS ), /* 1 */ - RVI( 17, 150, 178, SND_1B_TRUCK_START, 224, 37, CT_PASSENGERS ), /* 2 */ - RVI( 34, 160, 240, SND_1B_TRUCK_START, 255, 40, CT_PASSENGERS ), /* 3 */ - RVI( 51, 120, 91, SND_3C_COMEDY_CAR, 112, 30, CT_PASSENGERS ), /* 4 */ - RVI( 51, 140, 171, SND_3E_COMEDY_CAR_2, 192, 35, CT_PASSENGERS ), /* 5 */ - RVI( 51, 160, 240, SND_3C_COMEDY_CAR, 240, 38, CT_PASSENGERS ), /* 6 */ - RVI( 1, 108, 90, SND_19_BUS_START_PULL_AWAY, 96, 20, CT_COAL ), /* 7 */ - RVI( 18, 128, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_COAL ), /* 8 */ - RVI( 35, 138, 240, SND_19_BUS_START_PULL_AWAY, 224, 28, CT_COAL ), /* 9 */ - RVI( 2, 115, 90, SND_19_BUS_START_PULL_AWAY, 96, 22, CT_MAIL ), /* 10 */ - RVI( 19, 135, 168, SND_19_BUS_START_PULL_AWAY, 176, 28, CT_MAIL ), /* 11 */ - RVI( 36, 145, 240, SND_19_BUS_START_PULL_AWAY, 224, 30, CT_MAIL ), /* 12 */ - RVI( 57, 115, 90, SND_3E_COMEDY_CAR_2, 96, 22, CT_MAIL ), /* 13 */ - RVI( 57, 135, 168, SND_3C_COMEDY_CAR, 176, 28, CT_MAIL ), /* 14 */ - RVI( 57, 145, 240, SND_3E_COMEDY_CAR_2, 224, 30, CT_MAIL ), /* 15 */ - RVI( 3, 110, 90, SND_19_BUS_START_PULL_AWAY, 96, 21, CT_OIL ), /* 16 */ - RVI( 20, 140, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_OIL ), /* 17 */ - RVI( 37, 150, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_OIL ), /* 18 */ - RVI( 4, 105, 90, SND_19_BUS_START_PULL_AWAY, 96, 14, CT_LIVESTOCK ), /* 19 */ - RVI( 21, 130, 168, SND_19_BUS_START_PULL_AWAY, 176, 16, CT_LIVESTOCK ), /* 20 */ - RVI( 38, 140, 240, SND_19_BUS_START_PULL_AWAY, 224, 18, CT_LIVESTOCK ), /* 21 */ - RVI( 5, 107, 90, SND_19_BUS_START_PULL_AWAY, 96, 14, CT_GOODS ), /* 22 */ - RVI( 22, 130, 168, SND_19_BUS_START_PULL_AWAY, 176, 16, CT_GOODS ), /* 23 */ - RVI( 39, 140, 240, SND_19_BUS_START_PULL_AWAY, 224, 18, CT_GOODS ), /* 24 */ - RVI( 6, 114, 90, SND_19_BUS_START_PULL_AWAY, 96, 20, CT_GRAIN ), /* 25 */ - RVI( 23, 133, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_GRAIN ), /* 26 */ - RVI( 40, 143, 240, SND_19_BUS_START_PULL_AWAY, 224, 30, CT_GRAIN ), /* 27 */ - RVI( 7, 118, 90, SND_19_BUS_START_PULL_AWAY, 96, 20, CT_WOOD ), /* 28 */ - RVI( 24, 137, 168, SND_19_BUS_START_PULL_AWAY, 176, 22, CT_WOOD ), /* 29 */ - RVI( 41, 147, 240, SND_19_BUS_START_PULL_AWAY, 224, 24, CT_WOOD ), /* 30 */ - RVI( 8, 121, 90, SND_19_BUS_START_PULL_AWAY, 96, 22, CT_IRON_ORE ), /* 31 */ - RVI( 25, 140, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_IRON_ORE ), /* 32 */ - RVI( 42, 150, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_IRON_ORE ), /* 33 */ - RVI( 9, 112, 90, SND_19_BUS_START_PULL_AWAY, 96, 15, CT_STEEL ), /* 34 */ - RVI( 26, 135, 168, SND_19_BUS_START_PULL_AWAY, 176, 18, CT_STEEL ), /* 35 */ - RVI( 43, 145, 240, SND_19_BUS_START_PULL_AWAY, 224, 20, CT_STEEL ), /* 36 */ - RVI( 10, 145, 90, SND_19_BUS_START_PULL_AWAY, 96, 12, CT_VALUABLES ), /* 37 */ - RVI( 27, 170, 168, SND_19_BUS_START_PULL_AWAY, 176, 15, CT_VALUABLES ), /* 38 */ - RVI( 44, 180, 240, SND_19_BUS_START_PULL_AWAY, 224, 16, CT_VALUABLES ), /* 39 */ - RVI( 11, 112, 90, SND_19_BUS_START_PULL_AWAY, 96, 17, CT_FOOD ), /* 40 */ - RVI( 28, 134, 168, SND_19_BUS_START_PULL_AWAY, 176, 20, CT_FOOD ), /* 41 */ - RVI( 45, 144, 240, SND_19_BUS_START_PULL_AWAY, 224, 22, CT_FOOD ), /* 42 */ - RVI( 12, 112, 90, SND_19_BUS_START_PULL_AWAY, 96, 15, CT_PAPER ), /* 43 */ - RVI( 29, 135, 168, SND_19_BUS_START_PULL_AWAY, 176, 18, CT_PAPER ), /* 44 */ - RVI( 46, 145, 240, SND_19_BUS_START_PULL_AWAY, 224, 20, CT_PAPER ), /* 45 */ - RVI( 13, 121, 90, SND_19_BUS_START_PULL_AWAY, 96, 22, CT_COPPER_ORE ), /* 46 */ - RVI( 30, 140, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_COPPER_ORE ), /* 47 */ - RVI( 47, 150, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_COPPER_ORE ), /* 48 */ - RVI( 14, 111, 90, SND_19_BUS_START_PULL_AWAY, 96, 21, CT_WATER ), /* 49 */ - RVI( 31, 141, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_WATER ), /* 50 */ - RVI( 48, 151, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_WATER ), /* 51 */ - RVI( 15, 118, 90, SND_19_BUS_START_PULL_AWAY, 96, 18, CT_FRUIT ), /* 52 */ - RVI( 32, 148, 168, SND_19_BUS_START_PULL_AWAY, 176, 20, CT_FRUIT ), /* 53 */ - RVI( 49, 158, 240, SND_19_BUS_START_PULL_AWAY, 224, 23, CT_FRUIT ), /* 54 */ - RVI( 16, 117, 90, SND_19_BUS_START_PULL_AWAY, 96, 17, CT_RUBBER ), /* 55 */ - RVI( 33, 147, 168, SND_19_BUS_START_PULL_AWAY, 176, 19, CT_RUBBER ), /* 56 */ - RVI( 50, 157, 240, SND_19_BUS_START_PULL_AWAY, 224, 22, CT_RUBBER ), /* 57 */ - RVI( 52, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_SUGAR ), /* 58 */ - RVI( 52, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_SUGAR ), /* 59 */ - RVI( 52, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_SUGAR ), /* 60 */ - RVI( 53, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_COLA ), /* 61 */ - RVI( 53, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_COLA ), /* 62 */ - RVI( 53, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_COLA ), /* 63 */ - RVI( 54, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_COTTON_CANDY ), /* 64 */ - RVI( 54, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_COTTON_CANDY ), /* 65 */ - RVI( 54, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_COTTON_CANDY ), /* 66 */ - RVI( 55, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_TOFFEE ), /* 67 */ - RVI( 55, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_TOFFEE ), /* 68 */ - RVI( 55, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_TOFFEE ), /* 69 */ - RVI( 56, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_TOYS ), /* 70 */ - RVI( 56, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_TOYS ), /* 71 */ - RVI( 56, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_TOYS ), /* 72 */ - RVI( 58, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_CANDY ), /* 73 */ - RVI( 58, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_CANDY ), /* 74 */ - RVI( 58, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_CANDY ), /* 75 */ - RVI( 59, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_BATTERIES ), /* 76 */ - RVI( 59, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_BATTERIES ), /* 77 */ - RVI( 59, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_BATTERIES ), /* 78 */ - RVI( 60, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_FIZZY_DRINKS ), /* 79 */ - RVI( 60, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_FIZZY_DRINKS ), /* 80 */ - RVI( 60, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_FIZZY_DRINKS ), /* 81 */ - RVI( 61, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_PLASTIC ), /* 82 */ - RVI( 61, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_PLASTIC ), /* 83 */ - RVI( 61, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_PLASTIC ), /* 84 */ - RVI( 62, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_BUBBLES ), /* 85 */ - RVI( 62, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_BUBBLES ), /* 86 */ - RVI( 62, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_BUBBLES ), /* 87 */ + ROV( 0, 120, 91, SND_19_BUS_START_PULL_AWAY, 112, 31, CT_PASSENGERS ), /* 0 */ + ROV( 17, 140, 128, SND_1C_TRUCK_START_2, 176, 35, CT_PASSENGERS ), /* 1 */ + ROV( 17, 150, 178, SND_1B_TRUCK_START, 224, 37, CT_PASSENGERS ), /* 2 */ + ROV( 34, 160, 240, SND_1B_TRUCK_START, 255, 40, CT_PASSENGERS ), /* 3 */ + ROV( 51, 120, 91, SND_3C_COMEDY_CAR, 112, 30, CT_PASSENGERS ), /* 4 */ + ROV( 51, 140, 171, SND_3E_COMEDY_CAR_2, 192, 35, CT_PASSENGERS ), /* 5 */ + ROV( 51, 160, 240, SND_3C_COMEDY_CAR, 240, 38, CT_PASSENGERS ), /* 6 */ + ROV( 1, 108, 90, SND_19_BUS_START_PULL_AWAY, 96, 20, CT_COAL ), /* 7 */ + ROV( 18, 128, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_COAL ), /* 8 */ + ROV( 35, 138, 240, SND_19_BUS_START_PULL_AWAY, 224, 28, CT_COAL ), /* 9 */ + ROV( 2, 115, 90, SND_19_BUS_START_PULL_AWAY, 96, 22, CT_MAIL ), /* 10 */ + ROV( 19, 135, 168, SND_19_BUS_START_PULL_AWAY, 176, 28, CT_MAIL ), /* 11 */ + ROV( 36, 145, 240, SND_19_BUS_START_PULL_AWAY, 224, 30, CT_MAIL ), /* 12 */ + ROV( 57, 115, 90, SND_3E_COMEDY_CAR_2, 96, 22, CT_MAIL ), /* 13 */ + ROV( 57, 135, 168, SND_3C_COMEDY_CAR, 176, 28, CT_MAIL ), /* 14 */ + ROV( 57, 145, 240, SND_3E_COMEDY_CAR_2, 224, 30, CT_MAIL ), /* 15 */ + ROV( 3, 110, 90, SND_19_BUS_START_PULL_AWAY, 96, 21, CT_OIL ), /* 16 */ + ROV( 20, 140, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_OIL ), /* 17 */ + ROV( 37, 150, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_OIL ), /* 18 */ + ROV( 4, 105, 90, SND_19_BUS_START_PULL_AWAY, 96, 14, CT_LIVESTOCK ), /* 19 */ + ROV( 21, 130, 168, SND_19_BUS_START_PULL_AWAY, 176, 16, CT_LIVESTOCK ), /* 20 */ + ROV( 38, 140, 240, SND_19_BUS_START_PULL_AWAY, 224, 18, CT_LIVESTOCK ), /* 21 */ + ROV( 5, 107, 90, SND_19_BUS_START_PULL_AWAY, 96, 14, CT_GOODS ), /* 22 */ + ROV( 22, 130, 168, SND_19_BUS_START_PULL_AWAY, 176, 16, CT_GOODS ), /* 23 */ + ROV( 39, 140, 240, SND_19_BUS_START_PULL_AWAY, 224, 18, CT_GOODS ), /* 24 */ + ROV( 6, 114, 90, SND_19_BUS_START_PULL_AWAY, 96, 20, CT_GRAIN ), /* 25 */ + ROV( 23, 133, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_GRAIN ), /* 26 */ + ROV( 40, 143, 240, SND_19_BUS_START_PULL_AWAY, 224, 30, CT_GRAIN ), /* 27 */ + ROV( 7, 118, 90, SND_19_BUS_START_PULL_AWAY, 96, 20, CT_WOOD ), /* 28 */ + ROV( 24, 137, 168, SND_19_BUS_START_PULL_AWAY, 176, 22, CT_WOOD ), /* 29 */ + ROV( 41, 147, 240, SND_19_BUS_START_PULL_AWAY, 224, 24, CT_WOOD ), /* 30 */ + ROV( 8, 121, 90, SND_19_BUS_START_PULL_AWAY, 96, 22, CT_IRON_ORE ), /* 31 */ + ROV( 25, 140, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_IRON_ORE ), /* 32 */ + ROV( 42, 150, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_IRON_ORE ), /* 33 */ + ROV( 9, 112, 90, SND_19_BUS_START_PULL_AWAY, 96, 15, CT_STEEL ), /* 34 */ + ROV( 26, 135, 168, SND_19_BUS_START_PULL_AWAY, 176, 18, CT_STEEL ), /* 35 */ + ROV( 43, 145, 240, SND_19_BUS_START_PULL_AWAY, 224, 20, CT_STEEL ), /* 36 */ + ROV( 10, 145, 90, SND_19_BUS_START_PULL_AWAY, 96, 12, CT_VALUABLES ), /* 37 */ + ROV( 27, 170, 168, SND_19_BUS_START_PULL_AWAY, 176, 15, CT_VALUABLES ), /* 38 */ + ROV( 44, 180, 240, SND_19_BUS_START_PULL_AWAY, 224, 16, CT_VALUABLES ), /* 39 */ + ROV( 11, 112, 90, SND_19_BUS_START_PULL_AWAY, 96, 17, CT_FOOD ), /* 40 */ + ROV( 28, 134, 168, SND_19_BUS_START_PULL_AWAY, 176, 20, CT_FOOD ), /* 41 */ + ROV( 45, 144, 240, SND_19_BUS_START_PULL_AWAY, 224, 22, CT_FOOD ), /* 42 */ + ROV( 12, 112, 90, SND_19_BUS_START_PULL_AWAY, 96, 15, CT_PAPER ), /* 43 */ + ROV( 29, 135, 168, SND_19_BUS_START_PULL_AWAY, 176, 18, CT_PAPER ), /* 44 */ + ROV( 46, 145, 240, SND_19_BUS_START_PULL_AWAY, 224, 20, CT_PAPER ), /* 45 */ + ROV( 13, 121, 90, SND_19_BUS_START_PULL_AWAY, 96, 22, CT_COPPER_ORE ), /* 46 */ + ROV( 30, 140, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_COPPER_ORE ), /* 47 */ + ROV( 47, 150, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_COPPER_ORE ), /* 48 */ + ROV( 14, 111, 90, SND_19_BUS_START_PULL_AWAY, 96, 21, CT_WATER ), /* 49 */ + ROV( 31, 141, 168, SND_19_BUS_START_PULL_AWAY, 176, 25, CT_WATER ), /* 50 */ + ROV( 48, 151, 240, SND_19_BUS_START_PULL_AWAY, 224, 27, CT_WATER ), /* 51 */ + ROV( 15, 118, 90, SND_19_BUS_START_PULL_AWAY, 96, 18, CT_FRUIT ), /* 52 */ + ROV( 32, 148, 168, SND_19_BUS_START_PULL_AWAY, 176, 20, CT_FRUIT ), /* 53 */ + ROV( 49, 158, 240, SND_19_BUS_START_PULL_AWAY, 224, 23, CT_FRUIT ), /* 54 */ + ROV( 16, 117, 90, SND_19_BUS_START_PULL_AWAY, 96, 17, CT_RUBBER ), /* 55 */ + ROV( 33, 147, 168, SND_19_BUS_START_PULL_AWAY, 176, 19, CT_RUBBER ), /* 56 */ + ROV( 50, 157, 240, SND_19_BUS_START_PULL_AWAY, 224, 22, CT_RUBBER ), /* 57 */ + ROV( 52, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_SUGAR ), /* 58 */ + ROV( 52, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_SUGAR ), /* 59 */ + ROV( 52, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_SUGAR ), /* 60 */ + ROV( 53, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_COLA ), /* 61 */ + ROV( 53, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_COLA ), /* 62 */ + ROV( 53, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_COLA ), /* 63 */ + ROV( 54, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_COTTON_CANDY ), /* 64 */ + ROV( 54, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_COTTON_CANDY ), /* 65 */ + ROV( 54, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_COTTON_CANDY ), /* 66 */ + ROV( 55, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_TOFFEE ), /* 67 */ + ROV( 55, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_TOFFEE ), /* 68 */ + ROV( 55, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_TOFFEE ), /* 69 */ + ROV( 56, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_TOYS ), /* 70 */ + ROV( 56, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_TOYS ), /* 71 */ + ROV( 56, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_TOYS ), /* 72 */ + ROV( 58, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_CANDY ), /* 73 */ + ROV( 58, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_CANDY ), /* 74 */ + ROV( 58, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_CANDY ), /* 75 */ + ROV( 59, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_BATTERIES ), /* 76 */ + ROV( 59, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_BATTERIES ), /* 77 */ + ROV( 59, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_BATTERIES ), /* 78 */ + ROV( 60, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_FIZZY_DRINKS ), /* 79 */ + ROV( 60, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_FIZZY_DRINKS ), /* 80 */ + ROV( 60, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_FIZZY_DRINKS ), /* 81 */ + ROV( 61, 117, 90, SND_3F_COMEDY_CAR_3, 96, 17, CT_PLASTIC ), /* 82 */ + ROV( 61, 147, 168, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 176, 19, CT_PLASTIC ), /* 83 */ + ROV( 61, 157, 240, SND_3F_COMEDY_CAR_3, 224, 22, CT_PLASTIC ), /* 84 */ + ROV( 62, 117, 90, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 96, 17, CT_BUBBLES ), /* 85 */ + ROV( 62, 147, 168, SND_3F_COMEDY_CAR_3, 176, 19, CT_BUBBLES ), /* 86 */ + ROV( 62, 157, 240, SND_40_COMEDY_CAR_START_AND_PULL_AWAY, 224, 22, CT_BUBBLES ), /* 87 */ }; -#undef RVI +#undef ROV #endif /* ENGINES_H */ |