Loading

Paste #poxrildbu

  1. grf {
  2.     grfid: "\F1%\00\08";
  3.     name: string(STR_GRF_NAME);
  4.     desc: string(STR_GRF_DESC);
  5.     url: string(STR_GRF_URL);
  6.     version: 6074;
  7.     min_compatible_version: 6072;
  8.     param 0 {
  9.         economy_selection {
  10.             name: string(STR_PARAM_NAME_ECONOMIES);
  11.             desc: string(STR_PARAM_DESC_ECONOMIES);
  12.             min_value: 0;
  13.             max_value: 5;
  14.             names: {
  15.                     0: string(STR_PARAM_VALUE_ECONOMIES_BASIC_TEMPERATE);
  16.                     1: string(STR_PARAM_VALUE_ECONOMIES_BASIC_ARCTIC);
  17.                     2: string(STR_PARAM_VALUE_ECONOMIES_BASIC_TROPIC);
  18.                     3: string(STR_PARAM_VALUE_ECONOMIES_STEELTOWN);
  19.                     4: string(STR_PARAM_VALUE_ECONOMIES_MISTAH_KURTZ);
  20.                     5: string(STR_PARAM_VALUE_ECONOMIES_EXTREME);
  21.             };
  22.         }
  23.     }
  24.     param 2 {
  25.         allow_close_secondary {
  26.             name: string(STR_PARAM_NAME_SECONDARY_NEVER_CLOSE);
  27.             desc: string(STR_PARAM_DESC_SECONDARY_NEVER_CLOSE);
  28.             type: bool;
  29.             bit: 1;
  30.         }
  31.         restrict_open_during_gameplay {
  32.             name: string(STR_PARAM_NAME_NO_OPENINGS);
  33.             desc: string(STR_PARAM_DESC_NO_OPENINGS);
  34.             type: bool;
  35.             bit: 2;
  36.         }
  37.     }
  38.     param 7 {
  39.         primary_level1_produced_percent {
  40.             name: string(STR_PARAM_NAME_PRIMARY_LEVEL1_BONUS);
  41.             desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);
  42.             def_value: 150;
  43.             min_value: 100;
  44.             max_value: 1000;
  45.         }
  46.     }
  47.     param 9 {
  48.         primary_level2_produced_percent {
  49.             name: string(STR_PARAM_NAME_PRIMARY_LEVEL2_BONUS);
  50.             desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);
  51.             def_value: 300;
  52.             min_value: 100;
  53.             max_value: 1000;
  54.         }
  55.     }
  56.     param 6 {
  57.         primary_level1_requirement {
  58.             name: string(STR_PARAM_NAME_PRIMARY_LEVEL1_REQUIREMENT);
  59.             desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);
  60.             def_value: 16;
  61.             min_value: 1;
  62.             max_value: 10000;
  63.         }
  64.     }
  65.     param 8 {
  66.         primary_level2_requirement {
  67.             name: string(STR_PARAM_NAME_PRIMARY_LEVEL2_REQUIREMENT);
  68.             desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);
  69.             def_value: 80;
  70.             min_value: 1;
  71.             max_value: 10000;
  72.         }
  73.     }
  74.     param 4 {
  75.         marine_industry_max_coastal_distance {
  76.             name: string(STR_PARAM_NAME_COAST_DISTANCE_MARINE_INDUSTRY);
  77.             desc: string(STR_PARAM_DESC_COAST_DISTANCE_MARINE_INDUSTRY);
  78.             type: int;
  79.             def_value: 0;
  80.             min_value: 0;
  81.             max_value: 255;
  82.             names: {
  83.                 0: string(STR_PARAM_VALUE_SECONDARY_NEVER_CLOSE_0);
  84.             };
  85.         }
  86.     }
  87. }
  88. basecost {
  89.     PR_BUILD_INDUSTRY: 2;       // Industries are more expensive
  90.     PR_BUILD_INDUSTRY_RAW : 2;  // Building primary industries is also expensive
  91.     PR_CLEAR_INDUSTRY : 2;      // Deleting industries must also be expensive
  92. }
  93. if (param[6] == 0) { param[6] = 100; }
  94. if (param[7] == 0) { param[7] = 100; }
  95. if (param[8] == 0) { param[8] = 400; }
  96. if (param[9] == 0) { param[9] = 300; }
  97. disable_item(FEAT_INDUSTRIES, 0, 36);if (ttd_platform != PLATFORM_OPENTTD || openttd_version < version_openttd(1, 7, 0, 27769)) {
  98.     error(FATAL, REQUIRES_OPENTTD, string(STR_ERR_OPENTTD_VERSION));
  99.     exit;
  100. }
  101.     if (grf_future_status("\F1\25\00\05")) {
  102.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "FIRS v1"));
  103.     }
  104.     if (grf_future_status("\F1\25\00\06")) {
  105.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "FIRS v2"));
  106.     }
  107.     if (grf_future_status("mb\07\00")) {
  108.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Alpine Climate"));
  109.     }
  110.     if (grf_future_status("Meo\97")) {
  111.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Agricultural Vector"));
  112.     }
  113.     if (grf_future_status("Meo\98")) {
  114.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Basic for Arctic"));
  115.     }
  116.     if (grf_future_status("Meo\99")) {
  117.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Basic for Tropic"));
  118.     }
  119.     if (grf_future_status("Meo\92")) {
  120.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Basic Vector"));
  121.     }
  122.     if (grf_future_status("Meo\93")) {
  123.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Chemical Vector"));
  124.     }
  125.     if (grf_future_status("Meo\9B")) {
  126.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Construction Vector by Pikkabird"));
  127.     }
  128.     if (grf_future_status("Meo\9C")) {
  129.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Chemical Vector II"));
  130.     }
  131.     if (grf_future_status("Meo\96")) {
  132.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Construction Vector"));
  133.     }
  134.     if (grf_future_status("Meo\94")) {
  135.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Machinery Vector"));
  136.     }
  137.     if (grf_future_status("Meo\9A")) {
  138.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Machinery for Tropic"));
  139.     }
  140.     if (grf_future_status("Meo\91")) {
  141.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Town Vector"));
  142.     }
  143.     if (grf_future_status("Meo\95")) {
  144.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Wood Vector"));
  145.     }
  146.     if (grf_future_status("EX\01\02")) {
  147.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Ex Citybuilder"));
  148.     }
  149.     if (grf_future_status("EX\01\03")) {
  150.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Ex Citybuilder"));
  151.     }
  152.     if (grf_future_status("EH\01\01")) {
  153.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Experts hard industries"));
  154.     }
  155.     if (grf_future_status("SK\05\01")) {
  156.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
  157.     }
  158.     if (grf_future_status("JS\0A\02")) {
  159.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
  160.     }
  161.     if (grf_future_status("JS\0A\03")) {
  162.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
  163.     }
  164.     if (grf_future_status("JS\0A\04")) {
  165.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
  166.     }
  167.     if (grf_future_status("JS\0A\05")) {
  168.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
  169.     }
  170.     if (grf_future_status("DD\06\01")) {
  171.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "UKRS Industries"));
  172.     }
  173.     if (grf_future_status("frMI")) {
  174.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Manual Industries"));
  175.     }
  176.     if (grf_future_status("AL\01\01")) {
  177.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Nearby Station Names"));
  178.     }
  179.     if (grf_future_status("Meo\81")) {
  180.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "New Cargos"));
  181.     }
  182.     if (grf_future_status("Meo\82")) {
  183.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "New Cargos Petrol + Tourists"));
  184.     }
  185.     if (grf_future_status("mb\08\00")) {
  186.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "NewCargos by Michael Blunck"));
  187.     }
  188.     if (grf_future_status("SZ\13D")) {
  189.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Oil well decrease neutralizer"));
  190.     }
  191.     if (grf_future_status("OG+3")) {
  192.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "OpenGFX+ Industries"));
  193.     }
  194.     if (grf_future_status("DD\06\02")) {
  195.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Pikka Basic Industries"));
  196.     }
  197.     if (grf_future_status("\52\53\01\01")) {
  198.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Improved Oil Rig Layout"));
  199.     }
  200.     if (grf_future_status("SLTU")) {
  201.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Tourist Set"));
  202.     }
  203.     if (grf_future_status("DD\06\03")) {
  204.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "UKRS Brick Chain"));
  205.     }
  206. /* this one might not survive as artic-only
  207. if (climate == CLIMATE_ARCTIC) {
  208.     INCOMPATIBLE_GRF("mb\07\00", "Alpine Climate");
  209. }
  210. */
  211. if (grf_future_status("MG\08\00", "\FF\FF\FF\00")) {
  212.     error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Lumber Mill"));
  213. }
  214. if (grf_future_status("CACa")) {
  215.     if (param["CACa", 1] != 0) {
  216.         error(FATAL, string(STR_ERR_INCOMPATIBLE_PARAM_CITYSET));
  217.     }
  218. }
  219. if (grf_future_status("CASa")) {
  220.     if (param["CASa", 1] != 0) {
  221.         error(FATAL, string(STR_ERR_INCOMPATIBLE_PARAM_CANSET));
  222.     }
  223. }
  224. if (grf_future_status("VC\00\01")) {
  225.     if (param["VC\00\01", 254] <= 17) {
  226.         error(FATAL, string(STR_ERR_INCOMPATIBLE_SET_TTRS_VERSION));
  227.     }
  228. }// parameters also referenced by action 14 stuff - likely to be found in header.pynml, unless it got moved
  229. // map_size is total number of tiles on the map
  230. // compute relative size of the map, compared to 256*256
  231. relative_map_size = map_size / (256 * 256);
  232. // number of industry closures is proportional to map size (maps <= 256x256 will have 1 cluster)
  233. industry_clusters = (relative_map_size / 2) + 1;
  234. param_max_coastal_distance = marine_industry_max_coastal_distance;
  235. if (marine_industry_max_coastal_distance == 0) {
  236.     param_max_coastal_distance = 255;
  237. }
  238. // I want to specify the order of the economies in parameter menu without worrying about breaking savegames etc
  239. // but action 14 can't separate parameter value and position in menu for economies
  240. // so here we remap selected economy to actual numeric value
  241. // !! having tested, this doesn't actually prevent savegame breaking
  242. // !! as the selected value in the action 14 UI remains constant (thereby changing which economy is active)
  243. // !! there is zero chance of it being worthwhile to write a migration for existing savegames
  244. // !! therefore rethink this - whether it's worthwhile, or whether to just reset economy order every time when adding new economies
  245.     if (economy_selection == 0) {
  246.         economy = 0;
  247.     }
  248.     if (economy_selection == 1) {
  249.         economy = 1;
  250.     }
  251.     if (economy_selection == 2) {
  252.         economy = 4;
  253.     }
  254.     if (economy_selection == 3) {
  255.         economy = 5;
  256.     }
  257.     if (economy_selection == 4) {
  258.         economy = 3;
  259.     }
  260.     if (economy_selection == 5) {
  261.         economy = 2;
  262.     }
  263. // production bonuses are expressed as absolute % of base production in parameters menu,
  264. // but we need them as bonus amounts, to be added on top of base production, so net off 100
  265. primary_level1_bonus = primary_level1_produced_percent - 100;
  266. primary_level2_bonus = primary_level2_produced_percent - 100;
  267. // the tree for the food market is a climate-dependent special case, re-using base set sprites
  268. // it has to be handled here as a parameter, no elegant way to include it in the industry
  269. market_tree = 1639;
  270. if (climate == CLIMATE_ARCTIC) { market_tree = 1737; }
  271. if (climate == CLIMATE_TROPICAL) { market_tree = 1891; }
  272. market_tree_snow = 1793;template tmpl_ground_tile(x, y) {
  273.     [x, y, 64, 31, -31, 0, ANIM]
  274. }
  275. template tmpl_ground_tile_filename(x, y, filename) {
  276.     [x, y, 64, 31, -31, 0, ANIM, filename]
  277. }
  278. template tmpl_building_sprite(x, y, h, dy) {
  279.     [x, y, 64, h, -31, dy, ANIM]
  280. }
  281. template tmpl_building_sprite_filename(x, y, h, dy, filename) {
  282.     [x, y, 64, h, -31, dy, ANIM | NOCROP, filename]
  283. }cargotable {
  284.         ACID,
  285.         GLUE,
  286.         BEER,
  287.         ALUM,
  288.         AMMO,
  289.         AORE,
  290.         BEAN,
  291.         BDMT,
  292.         CASS,
  293.         CMNT,
  294.         RFPR,
  295.         CHLO,
  296.         CLAY,
  297.         COAL,
  298.         JAVA,
  299.         COKE,
  300.         COPR,
  301.         CORE,
  302.         COTT,
  303.         SOAP,
  304.         DIAM,
  305.         EOIL,
  306.         POWR,
  307.         ENSP,
  308.         ETHL,
  309.         BOOM,
  310.         FMSP,
  311.         FERT,
  312.         FISH,
  313.         FOOD,
  314.         ENUM,
  315.         BAKE,
  316.         FRUT,
  317.         FURN,
  318.         VBOD,
  319.         GOOD,
  320.         GRAI,
  321.         IORE,
  322.         LVST,
  323.         WDPR,
  324.         KAOL,
  325.         LIME,
  326.         LYE_,
  327.         MPTS,
  328.         MAIL,
  329.         MAIZ,
  330.         MNO2,
  331.         METL,
  332.         MILK,
  333.         NITR,
  334.         NUTS,
  335.         OIL_,
  336.         MNSP,
  337.         PAPR,
  338.         PASS,
  339.         PEAT,
  340.         PETR,
  341.         PHOS,
  342.         IRON,
  343.         PIPE,
  344.         FICR,
  345.         PLAS,
  346.         POTA,
  347.         TATO,
  348.         PORE,
  349.         QLME,
  350.         RCYC,
  351.         RUBR,
  352.         SAND,
  353.         SALT,
  354.         SCMT,
  355.         SLAG,
  356.         SASH,
  357.         STEL,
  358.         GRVL,
  359.         SULP,
  360.         SUGR,
  361.         SGBT,
  362.         TEXT,
  363.         VPTS,
  364.         VEHI,
  365.         WOOD,
  366.         WOOL,
  367.         ZINC,
  368. }
  369. disable_item(FEAT_CARGOS, 0, 29);
  370. disable_item(FEAT_CARGOS, 31, 31);
  371.     spriteset(cargoicon_acid) {
  372.         [10 + 20 * 4, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  373.     }
  374.             if (economy==5) {
  375. item(FEAT_CARGOS, acid_STEELTOWN, 26) {
  376.     property {
  377.         type_name: string(STR_CARGO_NAME_ACID);
  378.         unit_name: string(STR_CARGO_NAME_ACID);
  379.         type_abbreviation: string(STR_CID_ACID);
  380.         sprite: NEW_CARGO_SPRITE;
  381.         weight: 1.5;
  382.         station_list_colour: 184;
  383.         cargo_payment_list_colour: 184;
  384.         is_freight: 1;
  385.         cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
  386.         town_growth_effect: TOWNGROWTH_NONE;
  387.         town_growth_multiplier: 1.0;
  388.         units_of_cargo: 80;
  389.         items_of_cargo: string(STR_CARGO_UNIT_ACID);
  390.         penalty_lowerbound: 30;
  391.         single_penalty_length: 255;
  392.         price_factor: 109;
  393.         capacity_multiplier: 1;
  394.         cargo_label: "ACID";
  395.         number: 26;
  396.     }
  397.     graphics {
  398.         cargoicon_acid;
  399.     }
  400. }
  401.             }
  402.             if (economy==2) {
  403. item(FEAT_CARGOS, acid_EXTREME, 1) {
  404.     property {
  405.         type_name: string(STR_CARGO_NAME_ACID);
  406.         unit_name: string(STR_CARGO_NAME_ACID);
  407.         type_abbreviation: string(STR_CID_ACID);
  408.         sprite: NEW_CARGO_SPRITE;
  409.         weight: 1.5;
  410.         station_list_colour: 184;
  411.         cargo_payment_list_colour: 184;
  412.         is_freight: 1;
  413.         cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
  414.         town_growth_effect: TOWNGROWTH_NONE;
  415.         town_growth_multiplier: 1.0;
  416.         units_of_cargo: 80;
  417.         items_of_cargo: string(STR_CARGO_UNIT_ACID);
  418.         penalty_lowerbound: 30;
  419.         single_penalty_length: 255;
  420.         price_factor: 109;
  421.         capacity_multiplier: 1;
  422.         cargo_label: "ACID";
  423.         number: 1;
  424.     }
  425.     graphics {
  426.         cargoicon_acid;
  427.     }
  428. }
  429.             }
  430.     spriteset(cargoicon_adhesives) {
  431.         [10 + 20 * 7, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  432.     }
  433.             if (economy==2) {
  434. item(FEAT_CARGOS, adhesives_EXTREME, 3) {
  435.     property {
  436.         type_name: string(STR_CARGO_NAME_ADHESIVES);
  437.         unit_name: string(STR_CARGO_NAME_ADHESIVES);
  438.         type_abbreviation: string(STR_CID_ADHESIVES);
  439.         sprite: NEW_CARGO_SPRITE;
  440.         weight: 0.65;
  441.         station_list_colour: 145;
  442.         cargo_payment_list_colour: 145;
  443.         is_freight: 1;
  444.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_LIQUID);
  445.         town_growth_effect: TOWNGROWTH_NONE;
  446.         town_growth_multiplier: 1.0;
  447.         units_of_cargo: 84;
  448.         items_of_cargo: string(STR_CARGO_UNIT_ADHESIVES);
  449.         penalty_lowerbound: 16;
  450.         single_penalty_length: 120;
  451.         price_factor: 127;
  452.         capacity_multiplier: 1;
  453.         cargo_label: "GLUE";
  454.         number: 3;
  455.     }
  456.     graphics {
  457.         cargoicon_adhesives;
  458.     }
  459. }
  460.             }
  461.     spriteset(cargoicon_alcohol) {
  462.         [10 + 20 * 7, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  463.     }
  464.             if (economy==0) {
  465. item(FEAT_CARGOS, alcohol_BASIC_TEMPERATE, 1) {
  466.     property {
  467.         type_name: string(STR_CARGO_NAME_ALCOHOL);
  468.         unit_name: string(STR_CARGO_NAME_ALCOHOL);
  469.         type_abbreviation: string(STR_CID_ALCOHOL);
  470.         sprite: NEW_CARGO_SPRITE;
  471.         weight: 1.1;
  472.         station_list_colour: 180;
  473.         cargo_payment_list_colour: 180;
  474.         is_freight: 1;
  475.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
  476.         town_growth_effect: TOWNGROWTH_NONE;
  477.         town_growth_multiplier: 1.0;
  478.         units_of_cargo: 82;
  479.         items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
  480.         penalty_lowerbound: 10;
  481.         single_penalty_length: 128;
  482.         price_factor: 160;
  483.         capacity_multiplier: 1;
  484.         cargo_label: "BEER";
  485.         number: 1;
  486.     }
  487.     graphics {
  488.         cargoicon_alcohol;
  489.     }
  490. }
  491.             }
  492.             if (economy==1) {
  493. item(FEAT_CARGOS, alcohol_BASIC_ARCTIC, 8) {
  494.     property {
  495.         type_name: string(STR_CARGO_NAME_ALCOHOL);
  496.         unit_name: string(STR_CARGO_NAME_ALCOHOL);
  497.         type_abbreviation: string(STR_CID_ALCOHOL);
  498.         sprite: NEW_CARGO_SPRITE;
  499.         weight: 1.1;
  500.         station_list_colour: 180;
  501.         cargo_payment_list_colour: 180;
  502.         is_freight: 1;
  503.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
  504.         town_growth_effect: TOWNGROWTH_NONE;
  505.         town_growth_multiplier: 1.0;
  506.         units_of_cargo: 82;
  507.         items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
  508.         penalty_lowerbound: 10;
  509.         single_penalty_length: 128;
  510.         price_factor: 160;
  511.         capacity_multiplier: 1;
  512.         cargo_label: "BEER";
  513.         number: 8;
  514.     }
  515.     graphics {
  516.         cargoicon_alcohol;
  517.     }
  518. }
  519.             }
  520.             if (economy==4) {
  521. item(FEAT_CARGOS, alcohol_BASIC_TROPIC, 1) {
  522.     property {
  523.         type_name: string(STR_CARGO_NAME_ALCOHOL);
  524.         unit_name: string(STR_CARGO_NAME_ALCOHOL);
  525.         type_abbreviation: string(STR_CID_ALCOHOL);
  526.         sprite: NEW_CARGO_SPRITE;
  527.         weight: 1.1;
  528.         station_list_colour: 180;
  529.         cargo_payment_list_colour: 180;
  530.         is_freight: 1;
  531.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
  532.         town_growth_effect: TOWNGROWTH_NONE;
  533.         town_growth_multiplier: 1.0;
  534.         units_of_cargo: 82;
  535.         items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
  536.         penalty_lowerbound: 10;
  537.         single_penalty_length: 128;
  538.         price_factor: 160;
  539.         capacity_multiplier: 1;
  540.         cargo_label: "BEER";
  541.         number: 1;
  542.     }
  543.     graphics {
  544.         cargoicon_alcohol;
  545.     }
  546. }
  547.             }
  548.             if (economy==3) {
  549. item(FEAT_CARGOS, alcohol_MISTAH_KURTZ, 1) {
  550.     property {
  551.         type_name: string(STR_CARGO_NAME_ALCOHOL);
  552.         unit_name: string(STR_CARGO_NAME_ALCOHOL);
  553.         type_abbreviation: string(STR_CID_ALCOHOL);
  554.         sprite: NEW_CARGO_SPRITE;
  555.         weight: 1.1;
  556.         station_list_colour: 180;
  557.         cargo_payment_list_colour: 180;
  558.         is_freight: 1;
  559.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
  560.         town_growth_effect: TOWNGROWTH_NONE;
  561.         town_growth_multiplier: 1.0;
  562.         units_of_cargo: 82;
  563.         items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
  564.         penalty_lowerbound: 10;
  565.         single_penalty_length: 128;
  566.         price_factor: 160;
  567.         capacity_multiplier: 1;
  568.         cargo_label: "BEER";
  569.         number: 1;
  570.     }
  571.     graphics {
  572.         cargoicon_alcohol;
  573.     }
  574. }
  575.             }
  576.             if (economy==2) {
  577. item(FEAT_CARGOS, alcohol_EXTREME, 4) {
  578.     property {
  579.         type_name: string(STR_CARGO_NAME_ALCOHOL);
  580.         unit_name: string(STR_CARGO_NAME_ALCOHOL);
  581.         type_abbreviation: string(STR_CID_ALCOHOL);
  582.         sprite: NEW_CARGO_SPRITE;
  583.         weight: 1.1;
  584.         station_list_colour: 180;
  585.         cargo_payment_list_colour: 180;
  586.         is_freight: 1;
  587.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
  588.         town_growth_effect: TOWNGROWTH_NONE;
  589.         town_growth_multiplier: 1.0;
  590.         units_of_cargo: 82;
  591.         items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
  592.         penalty_lowerbound: 10;
  593.         single_penalty_length: 128;
  594.         price_factor: 160;
  595.         capacity_multiplier: 1;
  596.         cargo_label: "BEER";
  597.         number: 4;
  598.     }
  599.     graphics {
  600.         cargoicon_alcohol;
  601.     }
  602. }
  603.             }
  604.     spriteset(cargoicon_aluminium) {
  605.         [10 + 20 * 10, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  606.     }
  607.     spriteset(cargoicon_ammonia) {
  608.         [10 + 20 * 4, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  609.     }
  610.             if (economy==2) {
  611. item(FEAT_CARGOS, ammonia_EXTREME, 6) {
  612.     property {
  613.         type_name: string(STR_CARGO_NAME_AMMONIA);
  614.         unit_name: string(STR_CARGO_NAME_AMMONIA);
  615.         type_abbreviation: string(STR_CID_AMMONIA);
  616.         sprite: NEW_CARGO_SPRITE;
  617.         weight: 1.0;
  618.         station_list_colour: 184;
  619.         cargo_payment_list_colour: 184;
  620.         is_freight: 1;
  621.         cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
  622.         town_growth_effect: TOWNGROWTH_NONE;
  623.         town_growth_multiplier: 1.0;
  624.         units_of_cargo: 80;
  625.         items_of_cargo: string(STR_CARGO_UNIT_AMMONIA);
  626.         penalty_lowerbound: 30;
  627.         single_penalty_length: 255;
  628.         price_factor: 109;
  629.         capacity_multiplier: 1;
  630.         cargo_label: "AMMO";
  631.         number: 6;
  632.     }
  633.     graphics {
  634.         cargoicon_ammonia;
  635.     }
  636. }
  637.             }
  638.     spriteset(cargoicon_bauxite) {
  639.         [10 + 20 * 13, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  640.     }
  641.     spriteset(cargoicon_beans) {
  642.         [10 + 20 * 6, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  643.     }
  644.             if (economy==4) {
  645. item(FEAT_CARGOS, beans_BASIC_TROPIC, 3) {
  646.     property {
  647.         type_name: string(STR_CARGO_NAME_BEANS);
  648.         unit_name: string(STR_CARGO_NAME_BEANS);
  649.         type_abbreviation: string(STR_CID_BEANS);
  650.         sprite: NEW_CARGO_SPRITE;
  651.         weight: 1.0;
  652.         station_list_colour: 92;
  653.         cargo_payment_list_colour: 92;
  654.         is_freight: 1;
  655.         cargo_classes: bitmask(CC_BULK);
  656.         town_growth_effect: TOWNGROWTH_NONE;
  657.         town_growth_multiplier: 1.0;
  658.         units_of_cargo: TTD_STR_TONS;
  659.         items_of_cargo: string(STR_CARGO_UNIT_BEANS);
  660.         penalty_lowerbound: 4;
  661.         single_penalty_length: 40;
  662.         price_factor: 115;
  663.         capacity_multiplier: 1;
  664.         cargo_label: "BEAN";
  665.         number: 3;
  666.     }
  667.     graphics {
  668.         cargoicon_beans;
  669.     }
  670. }
  671.             }
  672.             if (economy==2) {
  673. item(FEAT_CARGOS, beans_EXTREME, 7) {
  674.     property {
  675.         type_name: string(STR_CARGO_NAME_BEANS);
  676.         unit_name: string(STR_CARGO_NAME_BEANS);
  677.         type_abbreviation: string(STR_CID_BEANS);
  678.         sprite: NEW_CARGO_SPRITE;
  679.         weight: 1.0;
  680.         station_list_colour: 92;
  681.         cargo_payment_list_colour: 92;
  682.         is_freight: 1;
  683.         cargo_classes: bitmask(CC_BULK);
  684.         town_growth_effect: TOWNGROWTH_NONE;
  685.         town_growth_multiplier: 1.0;
  686.         units_of_cargo: TTD_STR_TONS;
  687.         items_of_cargo: string(STR_CARGO_UNIT_BEANS);
  688.         penalty_lowerbound: 4;
  689.         single_penalty_length: 40;
  690.         price_factor: 115;
  691.         capacity_multiplier: 1;
  692.         cargo_label: "BEAN";
  693.         number: 7;
  694.     }
  695.     graphics {
  696.         cargoicon_beans;
  697.     }
  698. }
  699.             }
  700.     spriteset(cargoicon_building_materials) {
  701.         [10 + 20 * 1, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  702.     }
  703.             if (economy==3) {
  704. item(FEAT_CARGOS, building_materials_MISTAH_KURTZ, 3) {
  705.     property {
  706.         type_name: string(STR_CARGO_NAME_BUILDING_MATERIALS);
  707.         unit_name: string(STR_CARGO_NAME_BUILDING_MATERIALS);
  708.         type_abbreviation: string(STR_CID_BUILDING_MATERIALS);
  709.         sprite: NEW_CARGO_SPRITE;
  710.         weight: 1.0;
  711.         station_list_colour: 44;
  712.         cargo_payment_list_colour: 44;
  713.         is_freight: 1;
  714.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_BULK);
  715.         town_growth_effect: TOWNGROWTH_NONE;
  716.         town_growth_multiplier: 1.0;
  717.         units_of_cargo: 80;
  718.         items_of_cargo: string(STR_CARGO_UNIT_BUILDING_MATERIALS);
  719.         penalty_lowerbound: 12;
  720.         single_penalty_length: 255;
  721.         price_factor: 146;
  722.         capacity_multiplier: 1;
  723.         cargo_label: "BDMT";
  724.         number: 3;
  725.     }
  726.     graphics {
  727.         cargoicon_building_materials;
  728.     }
  729. }
  730.             }
  731.             if (economy==2) {
  732. item(FEAT_CARGOS, building_materials_EXTREME, 8) {
  733.     property {
  734.         type_name: string(STR_CARGO_NAME_BUILDING_MATERIALS);
  735.         unit_name: string(STR_CARGO_NAME_BUILDING_MATERIALS);
  736.         type_abbreviation: string(STR_CID_BUILDING_MATERIALS);
  737.         sprite: NEW_CARGO_SPRITE;
  738.         weight: 1.0;
  739.         station_list_colour: 44;
  740.         cargo_payment_list_colour: 44;
  741.         is_freight: 1;
  742.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_BULK);
  743.         town_growth_effect: TOWNGROWTH_NONE;
  744.         town_growth_multiplier: 1.0;
  745.         units_of_cargo: 80;
  746.         items_of_cargo: string(STR_CARGO_UNIT_BUILDING_MATERIALS);
  747.         penalty_lowerbound: 12;
  748.         single_penalty_length: 255;
  749.         price_factor: 146;
  750.         capacity_multiplier: 1;
  751.         cargo_label: "BDMT";
  752.         number: 8;
  753.     }
  754.     graphics {
  755.         cargoicon_building_materials;
  756.     }
  757. }
  758.             }
  759.     spriteset(cargoicon_cassava) {
  760.         [10 + 20 * 11, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  761.     }
  762.             if (economy==3) {
  763. item(FEAT_CARGOS, cassava_MISTAH_KURTZ, 4) {
  764.     property {
  765.         type_name: string(STR_CARGO_NAME_CASSAVA);
  766.         unit_name: string(STR_CARGO_NAME_CASSAVA);
  767.         type_abbreviation: string(STR_CID_CASSAVA);
  768.         sprite: NEW_CARGO_SPRITE;
  769.         weight: 1.0;
  770.         station_list_colour: 87;
  771.         cargo_payment_list_colour: 87;
  772.         is_freight: 1;
  773.         cargo_classes: bitmask(CC_BULK);
  774.         town_growth_effect: TOWNGROWTH_NONE;
  775.         town_growth_multiplier: 1.0;
  776.         units_of_cargo: TTD_STR_TONS;
  777.         items_of_cargo: string(STR_CARGO_UNIT_CASSAVA);
  778.         penalty_lowerbound: 4;
  779.         single_penalty_length: 40;
  780.         price_factor: 101;
  781.         capacity_multiplier: 1;
  782.         cargo_label: "CASS";
  783.         number: 4;
  784.     }
  785.     graphics {
  786.         cargoicon_cassava;
  787.     }
  788. }
  789.             }
  790.     spriteset(cargoicon_cement) {
  791.         [10 + 20 * 8, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  792.     }
  793.             if (economy==5) {
  794. item(FEAT_CARGOS, cement_STEELTOWN, 1) {
  795.     property {
  796.         type_name: string(STR_CARGO_NAME_CEMENT);
  797.         unit_name: string(STR_CARGO_NAME_CEMENT);
  798.         type_abbreviation: string(STR_CID_CEMENT);
  799.         sprite: NEW_CARGO_SPRITE;
  800.         weight: 1.0;
  801.         station_list_colour: 21;
  802.         cargo_payment_list_colour: 21;
  803.         is_freight: 1;
  804.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  805.         town_growth_effect: TOWNGROWTH_NONE;
  806.         town_growth_multiplier: 1.0;
  807.         units_of_cargo: 80;
  808.         items_of_cargo: string(STR_CARGO_UNIT_CEMENT);
  809.         penalty_lowerbound: 18;
  810.         single_penalty_length: 255;
  811.         price_factor: 144;
  812.         capacity_multiplier: 1;
  813.         cargo_label: "CMNT";
  814.         number: 1;
  815.     }
  816.     graphics {
  817.         cargoicon_cement;
  818.     }
  819. }
  820.             }
  821.     spriteset(cargoicon_chemicals) {
  822.         [10 + 20 * 10, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  823.     }
  824.             if (economy==0) {
  825. item(FEAT_CARGOS, chemicals_BASIC_TEMPERATE, 3) {
  826.     property {
  827.         type_name: string(STR_CARGO_NAME_CHEMICALS);
  828.         unit_name: string(STR_CARGO_NAME_CHEMICALS);
  829.         type_abbreviation: string(STR_CID_CHEMICALS);
  830.         sprite: NEW_CARGO_SPRITE;
  831.         weight: 1.2;
  832.         station_list_colour: 177;
  833.         cargo_payment_list_colour: 177;
  834.         is_freight: 1;
  835.         cargo_classes: bitmask(CC_LIQUID);
  836.         town_growth_effect: TOWNGROWTH_NONE;
  837.         town_growth_multiplier: 1.0;
  838.         units_of_cargo: 82;
  839.         items_of_cargo: string(STR_CARGO_UNIT_CHEMICALS);
  840.         penalty_lowerbound: 20;
  841.         single_penalty_length: 255;
  842.         price_factor: 117;
  843.         capacity_multiplier: 1;
  844.         cargo_label: "RFPR";
  845.         number: 3;
  846.     }
  847.     graphics {
  848.         cargoicon_chemicals;
  849.     }
  850. }
  851.             }
  852.             if (economy==4) {
  853. item(FEAT_CARGOS, chemicals_BASIC_TROPIC, 4) {
  854.     property {
  855.         type_name: string(STR_CARGO_NAME_CHEMICALS);
  856.         unit_name: string(STR_CARGO_NAME_CHEMICALS);
  857.         type_abbreviation: string(STR_CID_CHEMICALS);
  858.         sprite: NEW_CARGO_SPRITE;
  859.         weight: 1.2;
  860.         station_list_colour: 177;
  861.         cargo_payment_list_colour: 177;
  862.         is_freight: 1;
  863.         cargo_classes: bitmask(CC_LIQUID);
  864.         town_growth_effect: TOWNGROWTH_NONE;
  865.         town_growth_multiplier: 1.0;
  866.         units_of_cargo: 82;
  867.         items_of_cargo: string(STR_CARGO_UNIT_CHEMICALS);
  868.         penalty_lowerbound: 20;
  869.         single_penalty_length: 255;
  870.         price_factor: 117;
  871.         capacity_multiplier: 1;
  872.         cargo_label: "RFPR";
  873.         number: 4;
  874.     }
  875.     graphics {
  876.         cargoicon_chemicals;
  877.     }
  878. }
  879.             }
  880.             if (economy==3) {
  881. item(FEAT_CARGOS, chemicals_MISTAH_KURTZ, 6) {
  882.     property {
  883.         type_name: string(STR_CARGO_NAME_CHEMICALS);
  884.         unit_name: string(STR_CARGO_NAME_CHEMICALS);
  885.         type_abbreviation: string(STR_CID_CHEMICALS);
  886.         sprite: NEW_CARGO_SPRITE;
  887.         weight: 1.2;
  888.         station_list_colour: 177;
  889.         cargo_payment_list_colour: 177;
  890.         is_freight: 1;
  891.         cargo_classes: bitmask(CC_LIQUID);
  892.         town_growth_effect: TOWNGROWTH_NONE;
  893.         town_growth_multiplier: 1.0;
  894.         units_of_cargo: 82;
  895.         items_of_cargo: string(STR_CARGO_UNIT_CHEMICALS);
  896.         penalty_lowerbound: 20;
  897.         single_penalty_length: 255;
  898.         price_factor: 117;
  899.         capacity_multiplier: 1;
  900.         cargo_label: "RFPR";
  901.         number: 6;
  902.     }
  903.     graphics {
  904.         cargoicon_chemicals;
  905.     }
  906. }
  907.             }
  908.     spriteset(cargoicon_chlorine) {
  909.         [10 + 20 * 2, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  910.     }
  911.             if (economy==5) {
  912. item(FEAT_CARGOS, chlorine_STEELTOWN, 27) {
  913.     property {
  914.         type_name: string(STR_CARGO_NAME_CHLORINE);
  915.         unit_name: string(STR_CARGO_NAME_CHLORINE);
  916.         type_abbreviation: string(STR_CID_CHLORINE);
  917.         sprite: NEW_CARGO_SPRITE;
  918.         weight: 1.0;
  919.         station_list_colour: 95;
  920.         cargo_payment_list_colour: 95;
  921.         is_freight: 1;
  922.         cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
  923.         town_growth_effect: TOWNGROWTH_NONE;
  924.         town_growth_multiplier: 1.0;
  925.         units_of_cargo: 82;
  926.         items_of_cargo: string(STR_CARGO_UNIT_CHLORINE);
  927.         penalty_lowerbound: 12;
  928.         single_penalty_length: 255;
  929.         price_factor: 83;
  930.         capacity_multiplier: 1;
  931.         cargo_label: "CHLO";
  932.         number: 27;
  933.     }
  934.     graphics {
  935.         cargoicon_chlorine;
  936.     }
  937. }
  938.             }
  939.             if (economy==2) {
  940. item(FEAT_CARGOS, chlorine_EXTREME, 9) {
  941.     property {
  942.         type_name: string(STR_CARGO_NAME_CHLORINE);
  943.         unit_name: string(STR_CARGO_NAME_CHLORINE);
  944.         type_abbreviation: string(STR_CID_CHLORINE);
  945.         sprite: NEW_CARGO_SPRITE;
  946.         weight: 1.0;
  947.         station_list_colour: 95;
  948.         cargo_payment_list_colour: 95;
  949.         is_freight: 1;
  950.         cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
  951.         town_growth_effect: TOWNGROWTH_NONE;
  952.         town_growth_multiplier: 1.0;
  953.         units_of_cargo: 82;
  954.         items_of_cargo: string(STR_CARGO_UNIT_CHLORINE);
  955.         penalty_lowerbound: 12;
  956.         single_penalty_length: 255;
  957.         price_factor: 83;
  958.         capacity_multiplier: 1;
  959.         cargo_label: "CHLO";
  960.         number: 9;
  961.     }
  962.     graphics {
  963.         cargoicon_chlorine;
  964.     }
  965. }
  966.             }
  967.     spriteset(cargoicon_clay) {
  968.         [10 + 20 * 9, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  969.     }
  970.             if (economy==0) {
  971. item(FEAT_CARGOS, clay_BASIC_TEMPERATE, 4) {
  972.     property {
  973.         type_name: string(STR_CARGO_NAME_CLAY);
  974.         unit_name: string(STR_CARGO_NAME_CLAY);
  975.         type_abbreviation: string(STR_CID_CLAY);
  976.         sprite: NEW_CARGO_SPRITE;
  977.         weight: 1.0;
  978.         station_list_colour: 46;
  979.         cargo_payment_list_colour: 46;
  980.         is_freight: 1;
  981.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  982.         town_growth_effect: TOWNGROWTH_NONE;
  983.         town_growth_multiplier: 1.0;
  984.         units_of_cargo: 80;
  985.         items_of_cargo: string(STR_CARGO_UNIT_CLAY);
  986.         penalty_lowerbound: 30;
  987.         single_penalty_length: 255;
  988.         price_factor: 54;
  989.         capacity_multiplier: 1;
  990.         cargo_label: "CLAY";
  991.         number: 4;
  992.     }
  993.     graphics {
  994.         cargoicon_clay;
  995.     }
  996. }
  997.             }
  998.             if (economy==3) {
  999. item(FEAT_CARGOS, clay_MISTAH_KURTZ, 7) {
  1000.     property {
  1001.         type_name: string(STR_CARGO_NAME_CLAY);
  1002.         unit_name: string(STR_CARGO_NAME_CLAY);
  1003.         type_abbreviation: string(STR_CID_CLAY);
  1004.         sprite: NEW_CARGO_SPRITE;
  1005.         weight: 1.0;
  1006.         station_list_colour: 46;
  1007.         cargo_payment_list_colour: 46;
  1008.         is_freight: 1;
  1009.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  1010.         town_growth_effect: TOWNGROWTH_NONE;
  1011.         town_growth_multiplier: 1.0;
  1012.         units_of_cargo: 80;
  1013.         items_of_cargo: string(STR_CARGO_UNIT_CLAY);
  1014.         penalty_lowerbound: 30;
  1015.         single_penalty_length: 255;
  1016.         price_factor: 54;
  1017.         capacity_multiplier: 1;
  1018.         cargo_label: "CLAY";
  1019.         number: 7;
  1020.     }
  1021.     graphics {
  1022.         cargoicon_clay;
  1023.     }
  1024. }
  1025.             }
  1026.             if (economy==2) {
  1027. item(FEAT_CARGOS, clay_EXTREME, 10) {
  1028.     property {
  1029.         type_name: string(STR_CARGO_NAME_CLAY);
  1030.         unit_name: string(STR_CARGO_NAME_CLAY);
  1031.         type_abbreviation: string(STR_CID_CLAY);
  1032.         sprite: NEW_CARGO_SPRITE;
  1033.         weight: 1.0;
  1034.         station_list_colour: 46;
  1035.         cargo_payment_list_colour: 46;
  1036.         is_freight: 1;
  1037.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  1038.         town_growth_effect: TOWNGROWTH_NONE;
  1039.         town_growth_multiplier: 1.0;
  1040.         units_of_cargo: 80;
  1041.         items_of_cargo: string(STR_CARGO_UNIT_CLAY);
  1042.         penalty_lowerbound: 30;
  1043.         single_penalty_length: 255;
  1044.         price_factor: 54;
  1045.         capacity_multiplier: 1;
  1046.         cargo_label: "CLAY";
  1047.         number: 10;
  1048.     }
  1049.     graphics {
  1050.         cargoicon_clay;
  1051.     }
  1052. }
  1053.             }
  1054.     spriteset(cargoicon_coal) {
  1055.         [10 + 20 * 1, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1056.     }
  1057.             if (economy==0) {
  1058. item(FEAT_CARGOS, coal_BASIC_TEMPERATE, 6) {
  1059.     property {
  1060.         type_name: TTD_STR_CARGO_PLURAL_COAL;
  1061.         unit_name: TTD_STR_CARGO_SINGULAR_COAL;
  1062.         type_abbreviation: TTD_STR_ABBREV_COAL;
  1063.         sprite: NEW_CARGO_SPRITE;
  1064.         weight: 1.0;
  1065.         station_list_colour: 1;
  1066.         cargo_payment_list_colour: 1;
  1067.         is_freight: 1;
  1068.         cargo_classes: bitmask(CC_BULK);
  1069.         town_growth_effect: TOWNGROWTH_NONE;
  1070.         town_growth_multiplier: 1.0;
  1071.         units_of_cargo: TTD_STR_TONS;
  1072.         items_of_cargo: TTD_STR_QUANTITY_COAL;
  1073.         penalty_lowerbound: 30;
  1074.         single_penalty_length: 255;
  1075.         price_factor: 56;
  1076.         capacity_multiplier: 1;
  1077.         cargo_label: "COAL";
  1078.         number: 6;
  1079.     }
  1080.     graphics {
  1081.         cargoicon_coal;
  1082.     }
  1083. }
  1084.             }
  1085.             if (economy==5) {
  1086. item(FEAT_CARGOS, coal_STEELTOWN, 13) {
  1087.     property {
  1088.         type_name: TTD_STR_CARGO_PLURAL_COAL;
  1089.         unit_name: TTD_STR_CARGO_SINGULAR_COAL;
  1090.         type_abbreviation: TTD_STR_ABBREV_COAL;
  1091.         sprite: NEW_CARGO_SPRITE;
  1092.         weight: 1.0;
  1093.         station_list_colour: 1;
  1094.         cargo_payment_list_colour: 1;
  1095.         is_freight: 1;
  1096.         cargo_classes: bitmask(CC_BULK);
  1097.         town_growth_effect: TOWNGROWTH_NONE;
  1098.         town_growth_multiplier: 1.0;
  1099.         units_of_cargo: TTD_STR_TONS;
  1100.         items_of_cargo: TTD_STR_QUANTITY_COAL;
  1101.         penalty_lowerbound: 30;
  1102.         single_penalty_length: 255;
  1103.         price_factor: 56;
  1104.         capacity_multiplier: 1;
  1105.         cargo_label: "COAL";
  1106.         number: 13;
  1107.     }
  1108.     graphics {
  1109.         cargoicon_coal;
  1110.     }
  1111. }
  1112.             }
  1113.             if (economy==2) {
  1114. item(FEAT_CARGOS, coal_EXTREME, 12) {
  1115.     property {
  1116.         type_name: TTD_STR_CARGO_PLURAL_COAL;
  1117.         unit_name: TTD_STR_CARGO_SINGULAR_COAL;
  1118.         type_abbreviation: TTD_STR_ABBREV_COAL;
  1119.         sprite: NEW_CARGO_SPRITE;
  1120.         weight: 1.0;
  1121.         station_list_colour: 1;
  1122.         cargo_payment_list_colour: 1;
  1123.         is_freight: 1;
  1124.         cargo_classes: bitmask(CC_BULK);
  1125.         town_growth_effect: TOWNGROWTH_NONE;
  1126.         town_growth_multiplier: 1.0;
  1127.         units_of_cargo: TTD_STR_TONS;
  1128.         items_of_cargo: TTD_STR_QUANTITY_COAL;
  1129.         penalty_lowerbound: 30;
  1130.         single_penalty_length: 255;
  1131.         price_factor: 56;
  1132.         capacity_multiplier: 1;
  1133.         cargo_label: "COAL";
  1134.         number: 12;
  1135.     }
  1136.     graphics {
  1137.         cargoicon_coal;
  1138.     }
  1139. }
  1140.             }
  1141.     spriteset(cargoicon_coffee) {
  1142.         [10 + 20 * 4, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1143.     }
  1144.             if (economy==4) {
  1145. item(FEAT_CARGOS, coffee_BASIC_TROPIC, 6) {
  1146.     property {
  1147.         type_name: string(STR_CARGO_NAME_COFFEE);
  1148.         unit_name: string(STR_CARGO_NAME_COFFEE);
  1149.         type_abbreviation: string(STR_CID_COFFEE);
  1150.         sprite: NEW_CARGO_SPRITE;
  1151.         weight: 0.25;
  1152.         station_list_colour: 71;
  1153.         cargo_payment_list_colour: 71;
  1154.         is_freight: 1;
  1155.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_EXPRESS);
  1156.         town_growth_effect: TOWNGROWTH_NONE;
  1157.         town_growth_multiplier: 1.0;
  1158.         units_of_cargo: 80;
  1159.         items_of_cargo: string(STR_CARGO_UNIT_COFFEE);
  1160.         penalty_lowerbound: 0;
  1161.         single_penalty_length: 26;
  1162.         price_factor: 150;
  1163.         capacity_multiplier: 1;
  1164.         cargo_label: "JAVA";
  1165.         number: 6;
  1166.     }
  1167.     graphics {
  1168.         cargoicon_coffee;
  1169.     }
  1170. }
  1171.             }
  1172.             if (economy==3) {
  1173. item(FEAT_CARGOS, coffee_MISTAH_KURTZ, 8) {
  1174.     property {
  1175.         type_name: string(STR_CARGO_NAME_COFFEE);
  1176.         unit_name: string(STR_CARGO_NAME_COFFEE);
  1177.         type_abbreviation: string(STR_CID_COFFEE);
  1178.         sprite: NEW_CARGO_SPRITE;
  1179.         weight: 0.25;
  1180.         station_list_colour: 71;
  1181.         cargo_payment_list_colour: 71;
  1182.         is_freight: 1;
  1183.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_EXPRESS);
  1184.         town_growth_effect: TOWNGROWTH_NONE;
  1185.         town_growth_multiplier: 1.0;
  1186.         units_of_cargo: 80;
  1187.         items_of_cargo: string(STR_CARGO_UNIT_COFFEE);
  1188.         penalty_lowerbound: 0;
  1189.         single_penalty_length: 26;
  1190.         price_factor: 150;
  1191.         capacity_multiplier: 1;
  1192.         cargo_label: "JAVA";
  1193.         number: 8;
  1194.     }
  1195.     graphics {
  1196.         cargoicon_coffee;
  1197.     }
  1198. }
  1199.             }
  1200.             if (economy==2) {
  1201. item(FEAT_CARGOS, coffee_EXTREME, 13) {
  1202.     property {
  1203.         type_name: string(STR_CARGO_NAME_COFFEE);
  1204.         unit_name: string(STR_CARGO_NAME_COFFEE);
  1205.         type_abbreviation: string(STR_CID_COFFEE);
  1206.         sprite: NEW_CARGO_SPRITE;
  1207.         weight: 0.25;
  1208.         station_list_colour: 71;
  1209.         cargo_payment_list_colour: 71;
  1210.         is_freight: 1;
  1211.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_EXPRESS);
  1212.         town_growth_effect: TOWNGROWTH_NONE;
  1213.         town_growth_multiplier: 1.0;
  1214.         units_of_cargo: 80;
  1215.         items_of_cargo: string(STR_CARGO_UNIT_COFFEE);
  1216.         penalty_lowerbound: 0;
  1217.         single_penalty_length: 26;
  1218.         price_factor: 150;
  1219.         capacity_multiplier: 1;
  1220.         cargo_label: "JAVA";
  1221.         number: 13;
  1222.     }
  1223.     graphics {
  1224.         cargoicon_coffee;
  1225.     }
  1226. }
  1227.             }
  1228.     spriteset(cargoicon_coke) {
  1229.         [10 + 20 * 1, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1230.     }
  1231.             if (economy==5) {
  1232. item(FEAT_CARGOS, coke_STEELTOWN, 16) {
  1233.     property {
  1234.         type_name: string(STR_CARGO_NAME_COKE);
  1235.         unit_name: string(STR_CARGO_NAME_COKE);
  1236.         type_abbreviation: string(STR_CID_COKE);
  1237.         sprite: NEW_CARGO_SPRITE;
  1238.         weight: 1.0;
  1239.         station_list_colour: 2;
  1240.         cargo_payment_list_colour: 2;
  1241.         is_freight: 1;
  1242.         cargo_classes: bitmask(CC_BULK);
  1243.         town_growth_effect: TOWNGROWTH_NONE;
  1244.         town_growth_multiplier: 1.0;
  1245.         units_of_cargo: TTD_STR_TONS;
  1246.         items_of_cargo: string(STR_CARGO_UNIT_COKE);
  1247.         penalty_lowerbound: 30;
  1248.         single_penalty_length: 255;
  1249.         price_factor: 77;
  1250.         capacity_multiplier: 1;
  1251.         cargo_label: "COKE";
  1252.         number: 16;
  1253.     }
  1254.     graphics {
  1255.         cargoicon_coke;
  1256.     }
  1257. }
  1258.             }
  1259.     spriteset(cargoicon_copper) {
  1260.         [10 + 20 * 8, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1261.     }
  1262.             if (economy==4) {
  1263. item(FEAT_CARGOS, copper_BASIC_TROPIC, 7) {
  1264.     property {
  1265.         type_name: string(STR_CARGO_NAME_COPPER);
  1266.         unit_name: string(STR_CARGO_NAME_COPPER);
  1267.         type_abbreviation: string(STR_CID_COPPER);
  1268.         sprite: NEW_CARGO_SPRITE;
  1269.         weight: 1.0;
  1270.         station_list_colour: 192;
  1271.         cargo_payment_list_colour: 192;
  1272.         is_freight: 1;
  1273.         cargo_classes: bitmask(CC_PIECE_GOODS);
  1274.         town_growth_effect: TOWNGROWTH_NONE;
  1275.         town_growth_multiplier: 1.0;
  1276.         units_of_cargo: 80;
  1277.         items_of_cargo: string(STR_CARGO_UNIT_COPPER);
  1278.         penalty_lowerbound: 7;
  1279.         single_penalty_length: 255;
  1280.         price_factor: 142;
  1281.         capacity_multiplier: 1;
  1282.         cargo_label: "COPR";
  1283.         number: 7;
  1284.     }
  1285.     graphics {
  1286.         cargoicon_copper;
  1287.     }
  1288. }
  1289.             }
  1290.             if (economy==5) {
  1291. item(FEAT_CARGOS, copper_STEELTOWN, 22) {
  1292.     property {
  1293.         type_name: string(STR_CARGO_NAME_COPPER);
  1294.         unit_name: string(STR_CARGO_NAME_COPPER);
  1295.         type_abbreviation: string(STR_CID_COPPER);
  1296.         sprite: NEW_CARGO_SPRITE;
  1297.         weight: 1.0;
  1298.         station_list_colour: 192;
  1299.         cargo_payment_list_colour: 192;
  1300.         is_freight: 1;
  1301.         cargo_classes: bitmask(CC_PIECE_GOODS);
  1302.         town_growth_effect: TOWNGROWTH_NONE;
  1303.         town_growth_multiplier: 1.0;
  1304.         units_of_cargo: 80;
  1305.         items_of_cargo: string(STR_CARGO_UNIT_COPPER);
  1306.         penalty_lowerbound: 7;
  1307.         single_penalty_length: 255;
  1308.         price_factor: 142;
  1309.         capacity_multiplier: 1;
  1310.         cargo_label: "COPR";
  1311.         number: 22;
  1312.     }
  1313.     graphics {
  1314.         cargoicon_copper;
  1315.     }
  1316. }
  1317.             }
  1318.             if (economy==3) {
  1319. item(FEAT_CARGOS, copper_MISTAH_KURTZ, 9) {
  1320.     property {
  1321.         type_name: string(STR_CARGO_NAME_COPPER);
  1322.         unit_name: string(STR_CARGO_NAME_COPPER);
  1323.         type_abbreviation: string(STR_CID_COPPER);
  1324.         sprite: NEW_CARGO_SPRITE;
  1325.         weight: 1.0;
  1326.         station_list_colour: 192;
  1327.         cargo_payment_list_colour: 192;
  1328.         is_freight: 1;
  1329.         cargo_classes: bitmask(CC_PIECE_GOODS);
  1330.         town_growth_effect: TOWNGROWTH_NONE;
  1331.         town_growth_multiplier: 1.0;
  1332.         units_of_cargo: 80;
  1333.         items_of_cargo: string(STR_CARGO_UNIT_COPPER);
  1334.         penalty_lowerbound: 7;
  1335.         single_penalty_length: 255;
  1336.         price_factor: 142;
  1337.         capacity_multiplier: 1;
  1338.         cargo_label: "COPR";
  1339.         number: 9;
  1340.     }
  1341.     graphics {
  1342.         cargoicon_copper;
  1343.     }
  1344. }
  1345.             }
  1346.     spriteset(cargoicon_copper_ore) {
  1347.         [10 + 20 * 1, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1348.     }
  1349.             if (economy==4) {
  1350. item(FEAT_CARGOS, copper_ore_BASIC_TROPIC, 8) {
  1351.     property {
  1352.         type_name: TTD_STR_CARGO_PLURAL_COPPER_ORE;
  1353.         unit_name: TTD_STR_CARGO_SINGULAR_COPPER_ORE;
  1354.         type_abbreviation: TTD_STR_ABBREV_COPPER_ORE;
  1355.         sprite: NEW_CARGO_SPRITE;
  1356.         weight: 1.0;
  1357.         station_list_colour: 99;
  1358.         cargo_payment_list_colour: 99;
  1359.         is_freight: 1;
  1360.         cargo_classes: bitmask(CC_BULK);
  1361.         town_growth_effect: TOWNGROWTH_NONE;
  1362.         town_growth_multiplier: 1.0;
  1363.         units_of_cargo: TTD_STR_TONS;
  1364.         items_of_cargo: TTD_STR_QUANTITY_COPPER_ORE;
  1365.         penalty_lowerbound: 30;
  1366.         single_penalty_length: 255;
  1367.         price_factor: 62;
  1368.         capacity_multiplier: 1;
  1369.         cargo_label: "CORE";
  1370.         number: 8;
  1371.     }
  1372.     graphics {
  1373.         cargoicon_copper_ore;
  1374.     }
  1375. }
  1376.             }
  1377.             if (economy==3) {
  1378. item(FEAT_CARGOS, copper_ore_MISTAH_KURTZ, 10) {
  1379.     property {
  1380.         type_name: TTD_STR_CARGO_PLURAL_COPPER_ORE;
  1381.         unit_name: TTD_STR_CARGO_SINGULAR_COPPER_ORE;
  1382.         type_abbreviation: TTD_STR_ABBREV_COPPER_ORE;
  1383.         sprite: NEW_CARGO_SPRITE;
  1384.         weight: 1.0;
  1385.         station_list_colour: 99;
  1386.         cargo_payment_list_colour: 99;
  1387.         is_freight: 1;
  1388.         cargo_classes: bitmask(CC_BULK);
  1389.         town_growth_effect: TOWNGROWTH_NONE;
  1390.         town_growth_multiplier: 1.0;
  1391.         units_of_cargo: TTD_STR_TONS;
  1392.         items_of_cargo: TTD_STR_QUANTITY_COPPER_ORE;
  1393.         penalty_lowerbound: 30;
  1394.         single_penalty_length: 255;
  1395.         price_factor: 62;
  1396.         capacity_multiplier: 1;
  1397.         cargo_label: "CORE";
  1398.         number: 10;
  1399.     }
  1400.     graphics {
  1401.         cargoicon_copper_ore;
  1402.     }
  1403. }
  1404.             }
  1405.     spriteset(cargoicon_cotton) {
  1406.         [10 + 20 * 3, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1407.     }
  1408.             if (economy==2) {
  1409. item(FEAT_CARGOS, cotton_EXTREME, 14) {
  1410.     property {
  1411.         type_name: string(STR_CARGO_NAME_COTTON);
  1412.         unit_name: string(STR_CARGO_NAME_COTTON);
  1413.         type_abbreviation: string(STR_CID_COTTON);
  1414.         sprite: NEW_CARGO_SPRITE;
  1415.         weight: 0.2;
  1416.         station_list_colour: 12;
  1417.         cargo_payment_list_colour: 12;
  1418.         is_freight: 1;
  1419.         cargo_classes: bitmask(CC_BULK, CC_PIECE_GOODS);
  1420.         town_growth_effect: TOWNGROWTH_NONE;
  1421.         town_growth_multiplier: 1.0;
  1422.         units_of_cargo: 80;
  1423.         items_of_cargo: string(STR_CARGO_UNIT_COTTON);
  1424.         penalty_lowerbound: 10;
  1425.         single_penalty_length: 36;
  1426.         price_factor: 107;
  1427.         capacity_multiplier: 1;
  1428.         cargo_label: "COTT";
  1429.         number: 14;
  1430.     }
  1431.     graphics {
  1432.         cargoicon_cotton;
  1433.     }
  1434. }
  1435.             }
  1436.     spriteset(cargoicon_detergents) {
  1437.         [10 + 20 * 12, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1438.     }
  1439.             if (economy==2) {
  1440. item(FEAT_CARGOS, detergents_EXTREME, 15) {
  1441.     property {
  1442.         type_name: string(STR_CARGO_NAME_DETERGENTS);
  1443.         unit_name: string(STR_CARGO_NAME_DETERGENTS);
  1444.         type_abbreviation: string(STR_CID_DETERGENTS);
  1445.         sprite: NEW_CARGO_SPRITE;
  1446.         weight: 1.0;
  1447.         station_list_colour: 187;
  1448.         cargo_payment_list_colour: 187;
  1449.         is_freight: 1;
  1450.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  1451.         town_growth_effect: TOWNGROWTH_NONE;
  1452.         town_growth_multiplier: 1.0;
  1453.         units_of_cargo: 82;
  1454.         items_of_cargo: string(STR_CARGO_UNIT_DETERGENTS);
  1455.         penalty_lowerbound: 12;
  1456.         single_penalty_length: 255;
  1457.         price_factor: 82;
  1458.         capacity_multiplier: 1;
  1459.         cargo_label: "SOAP";
  1460.         number: 15;
  1461.     }
  1462.     graphics {
  1463.         cargoicon_detergents;
  1464.     }
  1465. }
  1466.             }
  1467.     spriteset(cargoicon_diamonds) {
  1468.         [10 + 20 * 3, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1469.     }
  1470.             if (economy==3) {
  1471. item(FEAT_CARGOS, diamonds_MISTAH_KURTZ, 12) {
  1472.     property {
  1473.         type_name: TTD_STR_CARGO_PLURAL_DIAMONDS;
  1474.         unit_name: TTD_STR_CARGO_SINGULAR_DIAMOND;
  1475.         type_abbreviation: TTD_STR_ABBREV_DIAMONDS;
  1476.         sprite: NEW_CARGO_SPRITE;
  1477.         weight: 1.0;
  1478.         station_list_colour: 202;
  1479.         cargo_payment_list_colour: 202;
  1480.         is_freight: 1;
  1481.         cargo_classes: bitmask(CC_ARMOURED);
  1482.         town_growth_effect: TOWNGROWTH_NONE;
  1483.         town_growth_multiplier: 1.0;
  1484.         units_of_cargo: TTD_STR_TONS;
  1485.         items_of_cargo: TTD_STR_QUANTITY_DIAMONDS;
  1486.         penalty_lowerbound: 30;
  1487.         single_penalty_length: 255;
  1488.         price_factor: 180;
  1489.         capacity_multiplier: 1;
  1490.         cargo_label: "DIAM";
  1491.         number: 12;
  1492.     }
  1493.     graphics {
  1494.         cargoicon_diamonds;
  1495.     }
  1496. }
  1497.             }
  1498.     spriteset(cargoicon_edible_oil) {
  1499.         [10 + 20 * 0, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1500.     }
  1501.             if (economy==3) {
  1502. item(FEAT_CARGOS, edible_oil_MISTAH_KURTZ, 13) {
  1503.     property {
  1504.         type_name: string(STR_CARGO_NAME_EDIBLE_OIL);
  1505.         unit_name: string(STR_CARGO_NAME_EDIBLE_OIL);
  1506.         type_abbreviation: string(STR_CID_EDIBLE_OIL);
  1507.         sprite: NEW_CARGO_SPRITE;
  1508.         weight: 1.0;
  1509.         station_list_colour: 162;
  1510.         cargo_payment_list_colour: 162;
  1511.         is_freight: 1;
  1512.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_LIQUID);
  1513.         town_growth_effect: TOWNGROWTH_NONE;
  1514.         town_growth_multiplier: 1.0;
  1515.         units_of_cargo: 82;
  1516.         items_of_cargo: string(STR_CARGO_UNIT_EDIBLE_OIL);
  1517.         penalty_lowerbound: 20;
  1518.         single_penalty_length: 128;
  1519.         price_factor: 122;
  1520.         capacity_multiplier: 1;
  1521.         cargo_label: "EOIL";
  1522.         number: 13;
  1523.     }
  1524.     graphics {
  1525.         cargoicon_edible_oil;
  1526.     }
  1527. }
  1528.             }
  1529.     spriteset(cargoicon_electrical_machines) {
  1530.         [10 + 20 * 5, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1531.     }
  1532.             if (economy==5) {
  1533. item(FEAT_CARGOS, electrical_machines_STEELTOWN, 28) {
  1534.     property {
  1535.         type_name: string(STR_CARGO_NAME_ELECTRICAL_MACHINES);
  1536.         unit_name: string(STR_CARGO_NAME_ELECTRICAL_MACHINES);
  1537.         type_abbreviation: string(STR_CID_ELECTRICAL_MACHINES);
  1538.         sprite: NEW_CARGO_SPRITE;
  1539.         weight: 1.0;
  1540.         station_list_colour: 205;
  1541.         cargo_payment_list_colour: 205;
  1542.         is_freight: 1;
  1543.         cargo_classes: bitmask(CC_PIECE_GOODS);
  1544.         town_growth_effect: TOWNGROWTH_NONE;
  1545.         town_growth_multiplier: 1.0;
  1546.         units_of_cargo: 84;
  1547.         items_of_cargo: string(STR_CARGO_UNIT_ELECTRICAL_MACHINES);
  1548.         penalty_lowerbound: 7;
  1549.         single_penalty_length: 255;
  1550.         price_factor: 172;
  1551.         capacity_multiplier: 1;
  1552.         cargo_label: "POWR";
  1553.         number: 28;
  1554.     }
  1555.     graphics {
  1556.         cargoicon_electrical_machines;
  1557.     }
  1558. }
  1559.             }
  1560.     spriteset(cargoicon_engineering_supplies) {
  1561.         [10 + 20 * 11, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1562.     }
  1563.             if (economy==0) {
  1564. item(FEAT_CARGOS, engineering_supplies_BASIC_TEMPERATE, 7) {
  1565.     property {
  1566.         type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1567.         unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1568.         type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
  1569.         sprite: NEW_CARGO_SPRITE;
  1570.         weight: 0.65;
  1571.         station_list_colour: 79;
  1572.         cargo_payment_list_colour: 79;
  1573.         is_freight: 1;
  1574.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1575.         town_growth_effect: TOWNGROWTH_NONE;
  1576.         town_growth_multiplier: 1.0;
  1577.         units_of_cargo: 84;
  1578.         items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
  1579.         penalty_lowerbound: 6;
  1580.         single_penalty_length: 36;
  1581.         price_factor: 170;
  1582.         capacity_multiplier: 1;
  1583.         cargo_label: "ENSP";
  1584.         number: 7;
  1585.     }
  1586.     graphics {
  1587.         cargoicon_engineering_supplies;
  1588.     }
  1589. }
  1590.             }
  1591.             if (economy==1) {
  1592. item(FEAT_CARGOS, engineering_supplies_BASIC_ARCTIC, 3) {
  1593.     property {
  1594.         type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1595.         unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1596.         type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
  1597.         sprite: NEW_CARGO_SPRITE;
  1598.         weight: 0.65;
  1599.         station_list_colour: 79;
  1600.         cargo_payment_list_colour: 79;
  1601.         is_freight: 1;
  1602.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1603.         town_growth_effect: TOWNGROWTH_NONE;
  1604.         town_growth_multiplier: 1.0;
  1605.         units_of_cargo: 84;
  1606.         items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
  1607.         penalty_lowerbound: 6;
  1608.         single_penalty_length: 36;
  1609.         price_factor: 170;
  1610.         capacity_multiplier: 1;
  1611.         cargo_label: "ENSP";
  1612.         number: 3;
  1613.     }
  1614.     graphics {
  1615.         cargoicon_engineering_supplies;
  1616.     }
  1617. }
  1618.             }
  1619.             if (economy==4) {
  1620. item(FEAT_CARGOS, engineering_supplies_BASIC_TROPIC, 9) {
  1621.     property {
  1622.         type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1623.         unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1624.         type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
  1625.         sprite: NEW_CARGO_SPRITE;
  1626.         weight: 0.65;
  1627.         station_list_colour: 79;
  1628.         cargo_payment_list_colour: 79;
  1629.         is_freight: 1;
  1630.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1631.         town_growth_effect: TOWNGROWTH_NONE;
  1632.         town_growth_multiplier: 1.0;
  1633.         units_of_cargo: 84;
  1634.         items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
  1635.         penalty_lowerbound: 6;
  1636.         single_penalty_length: 36;
  1637.         price_factor: 170;
  1638.         capacity_multiplier: 1;
  1639.         cargo_label: "ENSP";
  1640.         number: 9;
  1641.     }
  1642.     graphics {
  1643.         cargoicon_engineering_supplies;
  1644.     }
  1645. }
  1646.             }
  1647.             if (economy==5) {
  1648. item(FEAT_CARGOS, engineering_supplies_STEELTOWN, 4) {
  1649.     property {
  1650.         type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1651.         unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1652.         type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
  1653.         sprite: NEW_CARGO_SPRITE;
  1654.         weight: 0.65;
  1655.         station_list_colour: 79;
  1656.         cargo_payment_list_colour: 79;
  1657.         is_freight: 1;
  1658.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1659.         town_growth_effect: TOWNGROWTH_NONE;
  1660.         town_growth_multiplier: 1.0;
  1661.         units_of_cargo: 84;
  1662.         items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
  1663.         penalty_lowerbound: 6;
  1664.         single_penalty_length: 36;
  1665.         price_factor: 170;
  1666.         capacity_multiplier: 1;
  1667.         cargo_label: "ENSP";
  1668.         number: 4;
  1669.     }
  1670.     graphics {
  1671.         cargoicon_engineering_supplies;
  1672.     }
  1673. }
  1674.             }
  1675.             if (economy==3) {
  1676. item(FEAT_CARGOS, engineering_supplies_MISTAH_KURTZ, 14) {
  1677.     property {
  1678.         type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1679.         unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1680.         type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
  1681.         sprite: NEW_CARGO_SPRITE;
  1682.         weight: 0.65;
  1683.         station_list_colour: 79;
  1684.         cargo_payment_list_colour: 79;
  1685.         is_freight: 1;
  1686.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1687.         town_growth_effect: TOWNGROWTH_NONE;
  1688.         town_growth_multiplier: 1.0;
  1689.         units_of_cargo: 84;
  1690.         items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
  1691.         penalty_lowerbound: 6;
  1692.         single_penalty_length: 36;
  1693.         price_factor: 170;
  1694.         capacity_multiplier: 1;
  1695.         cargo_label: "ENSP";
  1696.         number: 14;
  1697.     }
  1698.     graphics {
  1699.         cargoicon_engineering_supplies;
  1700.     }
  1701. }
  1702.             }
  1703.             if (economy==2) {
  1704. item(FEAT_CARGOS, engineering_supplies_EXTREME, 16) {
  1705.     property {
  1706.         type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1707.         unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
  1708.         type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
  1709.         sprite: NEW_CARGO_SPRITE;
  1710.         weight: 0.65;
  1711.         station_list_colour: 79;
  1712.         cargo_payment_list_colour: 79;
  1713.         is_freight: 1;
  1714.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1715.         town_growth_effect: TOWNGROWTH_NONE;
  1716.         town_growth_multiplier: 1.0;
  1717.         units_of_cargo: 84;
  1718.         items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
  1719.         penalty_lowerbound: 6;
  1720.         single_penalty_length: 36;
  1721.         price_factor: 170;
  1722.         capacity_multiplier: 1;
  1723.         cargo_label: "ENSP";
  1724.         number: 16;
  1725.     }
  1726.     graphics {
  1727.         cargoicon_engineering_supplies;
  1728.     }
  1729. }
  1730.             }
  1731.     spriteset(cargoicon_ethylene) {
  1732.         [10 + 20 * 10, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1733.     }
  1734.             if (economy==2) {
  1735. item(FEAT_CARGOS, ethylene_EXTREME, 17) {
  1736.     property {
  1737.         type_name: string(STR_CARGO_NAME_ETHYLENE);
  1738.         unit_name: string(STR_CARGO_NAME_ETHYLENE);
  1739.         type_abbreviation: string(STR_CID_ETHYLENE);
  1740.         sprite: NEW_CARGO_SPRITE;
  1741.         weight: 1.0;
  1742.         station_list_colour: 177;
  1743.         cargo_payment_list_colour: 177;
  1744.         is_freight: 1;
  1745.         cargo_classes: bitmask(CC_LIQUID);
  1746.         town_growth_effect: TOWNGROWTH_NONE;
  1747.         town_growth_multiplier: 1.0;
  1748.         units_of_cargo: 82;
  1749.         items_of_cargo: string(STR_CARGO_UNIT_ETHYLENE);
  1750.         penalty_lowerbound: 20;
  1751.         single_penalty_length: 255;
  1752.         price_factor: 117;
  1753.         capacity_multiplier: 1;
  1754.         cargo_label: "ETHL";
  1755.         number: 17;
  1756.     }
  1757.     graphics {
  1758.         cargoicon_ethylene;
  1759.     }
  1760. }
  1761.             }
  1762.     spriteset(cargoicon_explosives) {
  1763.         [10 + 20 * 2, 10 + 20 * 3, 10, 10, 0, 0, ANIM, "src/graphics/other/cargoicons.png"]
  1764.     }
  1765.             if (economy==1) {
  1766. item(FEAT_CARGOS, explosives_BASIC_ARCTIC, 12) {
  1767.     property {
  1768.         type_name: string(STR_CARGO_NAME_EXPLOSIVES);
  1769.         unit_name: string(STR_CARGO_NAME_EXPLOSIVES);
  1770.         type_abbreviation: string(STR_CID_EXPLOSIVES);
  1771.         sprite: NEW_CARGO_SPRITE;
  1772.         weight: 0.25;
  1773.         station_list_colour: 182;
  1774.         cargo_payment_list_colour: 182;
  1775.         is_freight: 1;
  1776.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1777.         town_growth_effect: TOWNGROWTH_NONE;
  1778.         town_growth_multiplier: 1.0;
  1779.         units_of_cargo: 84;
  1780.         items_of_cargo: string(STR_CARGO_UNIT_EXPLOSIVES);
  1781.         penalty_lowerbound: 6;
  1782.         single_penalty_length: 36;
  1783.         price_factor: 154;
  1784.         capacity_multiplier: 1;
  1785.         cargo_label: "BOOM";
  1786.         number: 12;
  1787.     }
  1788.     graphics {
  1789.         cargoicon_explosives;
  1790.     }
  1791. }
  1792.             }
  1793.     spriteset(cargoicon_farm_supplies) {
  1794.         [10 + 20 * 8, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1795.     }
  1796.             if (economy==0) {
  1797. item(FEAT_CARGOS, farm_supplies_BASIC_TEMPERATE, 8) {
  1798.     property {
  1799.         type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1800.         unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1801.         type_abbreviation: string(STR_CID_FARM_SUPPLIES);
  1802.         sprite: NEW_CARGO_SPRITE;
  1803.         weight: 0.65;
  1804.         station_list_colour: 208;
  1805.         cargo_payment_list_colour: 208;
  1806.         is_freight: 1;
  1807.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1808.         town_growth_effect: TOWNGROWTH_NONE;
  1809.         town_growth_multiplier: 1.0;
  1810.         units_of_cargo: 84;
  1811.         items_of_cargo: string(STR_CARGO_UNIT_FMSP);
  1812.         penalty_lowerbound: 6;
  1813.         single_penalty_length: 36;
  1814.         price_factor: 164;
  1815.         capacity_multiplier: 1;
  1816.         cargo_label: "FMSP";
  1817.         number: 8;
  1818.     }
  1819.     graphics {
  1820.         cargoicon_farm_supplies;
  1821.     }
  1822. }
  1823.             }
  1824.             if (economy==1) {
  1825. item(FEAT_CARGOS, farm_supplies_BASIC_ARCTIC, 4) {
  1826.     property {
  1827.         type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1828.         unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1829.         type_abbreviation: string(STR_CID_FARM_SUPPLIES);
  1830.         sprite: NEW_CARGO_SPRITE;
  1831.         weight: 0.65;
  1832.         station_list_colour: 208;
  1833.         cargo_payment_list_colour: 208;
  1834.         is_freight: 1;
  1835.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1836.         town_growth_effect: TOWNGROWTH_NONE;
  1837.         town_growth_multiplier: 1.0;
  1838.         units_of_cargo: 84;
  1839.         items_of_cargo: string(STR_CARGO_UNIT_FMSP);
  1840.         penalty_lowerbound: 6;
  1841.         single_penalty_length: 36;
  1842.         price_factor: 164;
  1843.         capacity_multiplier: 1;
  1844.         cargo_label: "FMSP";
  1845.         number: 4;
  1846.     }
  1847.     graphics {
  1848.         cargoicon_farm_supplies;
  1849.     }
  1850. }
  1851.             }
  1852.             if (economy==4) {
  1853. item(FEAT_CARGOS, farm_supplies_BASIC_TROPIC, 10) {
  1854.     property {
  1855.         type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1856.         unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1857.         type_abbreviation: string(STR_CID_FARM_SUPPLIES);
  1858.         sprite: NEW_CARGO_SPRITE;
  1859.         weight: 0.65;
  1860.         station_list_colour: 208;
  1861.         cargo_payment_list_colour: 208;
  1862.         is_freight: 1;
  1863.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1864.         town_growth_effect: TOWNGROWTH_NONE;
  1865.         town_growth_multiplier: 1.0;
  1866.         units_of_cargo: 84;
  1867.         items_of_cargo: string(STR_CARGO_UNIT_FMSP);
  1868.         penalty_lowerbound: 6;
  1869.         single_penalty_length: 36;
  1870.         price_factor: 164;
  1871.         capacity_multiplier: 1;
  1872.         cargo_label: "FMSP";
  1873.         number: 10;
  1874.     }
  1875.     graphics {
  1876.         cargoicon_farm_supplies;
  1877.     }
  1878. }
  1879.             }
  1880.             if (economy==5) {
  1881. item(FEAT_CARGOS, farm_supplies_STEELTOWN, 6) {
  1882.     property {
  1883.         type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1884.         unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1885.         type_abbreviation: string(STR_CID_FARM_SUPPLIES);
  1886.         sprite: NEW_CARGO_SPRITE;
  1887.         weight: 0.65;
  1888.         station_list_colour: 208;
  1889.         cargo_payment_list_colour: 208;
  1890.         is_freight: 1;
  1891.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1892.         town_growth_effect: TOWNGROWTH_NONE;
  1893.         town_growth_multiplier: 1.0;
  1894.         units_of_cargo: 84;
  1895.         items_of_cargo: string(STR_CARGO_UNIT_FMSP);
  1896.         penalty_lowerbound: 6;
  1897.         single_penalty_length: 36;
  1898.         price_factor: 164;
  1899.         capacity_multiplier: 1;
  1900.         cargo_label: "FMSP";
  1901.         number: 6;
  1902.     }
  1903.     graphics {
  1904.         cargoicon_farm_supplies;
  1905.     }
  1906. }
  1907.             }
  1908.             if (economy==3) {
  1909. item(FEAT_CARGOS, farm_supplies_MISTAH_KURTZ, 15) {
  1910.     property {
  1911.         type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1912.         unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1913.         type_abbreviation: string(STR_CID_FARM_SUPPLIES);
  1914.         sprite: NEW_CARGO_SPRITE;
  1915.         weight: 0.65;
  1916.         station_list_colour: 208;
  1917.         cargo_payment_list_colour: 208;
  1918.         is_freight: 1;
  1919.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1920.         town_growth_effect: TOWNGROWTH_NONE;
  1921.         town_growth_multiplier: 1.0;
  1922.         units_of_cargo: 84;
  1923.         items_of_cargo: string(STR_CARGO_UNIT_FMSP);
  1924.         penalty_lowerbound: 6;
  1925.         single_penalty_length: 36;
  1926.         price_factor: 164;
  1927.         capacity_multiplier: 1;
  1928.         cargo_label: "FMSP";
  1929.         number: 15;
  1930.     }
  1931.     graphics {
  1932.         cargoicon_farm_supplies;
  1933.     }
  1934. }
  1935.             }
  1936.             if (economy==2) {
  1937. item(FEAT_CARGOS, farm_supplies_EXTREME, 18) {
  1938.     property {
  1939.         type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1940.         unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
  1941.         type_abbreviation: string(STR_CID_FARM_SUPPLIES);
  1942.         sprite: NEW_CARGO_SPRITE;
  1943.         weight: 0.65;
  1944.         station_list_colour: 208;
  1945.         cargo_payment_list_colour: 208;
  1946.         is_freight: 1;
  1947.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
  1948.         town_growth_effect: TOWNGROWTH_NONE;
  1949.         town_growth_multiplier: 1.0;
  1950.         units_of_cargo: 84;
  1951.         items_of_cargo: string(STR_CARGO_UNIT_FMSP);
  1952.         penalty_lowerbound: 6;
  1953.         single_penalty_length: 36;
  1954.         price_factor: 164;
  1955.         capacity_multiplier: 1;
  1956.         cargo_label: "FMSP";
  1957.         number: 18;
  1958.     }
  1959.     graphics {
  1960.         cargoicon_farm_supplies;
  1961.     }
  1962. }
  1963.             }
  1964.     spriteset(cargoicon_fertiliser) {
  1965.         [10 + 20 * 3, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1966.     }
  1967.             if (economy==1) {
  1968. item(FEAT_CARGOS, fertiliser_BASIC_ARCTIC, 16) {
  1969.     property {
  1970.         type_name: string(STR_CARGO_NAME_FERTILISER);
  1971.         unit_name: string(STR_CARGO_NAME_FERTILISER);
  1972.         type_abbreviation: string(STR_CID_FERTILISER);
  1973.         sprite: NEW_CARGO_SPRITE;
  1974.         weight: 1.0;
  1975.         station_list_colour: 103;
  1976.         cargo_payment_list_colour: 103;
  1977.         is_freight: 1;
  1978.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_BULK, CC_COVERED);
  1979.         town_growth_effect: TOWNGROWTH_NONE;
  1980.         town_growth_multiplier: 1.0;
  1981.         units_of_cargo: 84;
  1982.         items_of_cargo: string(STR_CARGO_UNIT_FERTILISER);
  1983.         penalty_lowerbound: 20;
  1984.         single_penalty_length: 36;
  1985.         price_factor: 128;
  1986.         capacity_multiplier: 1;
  1987.         cargo_label: "FERT";
  1988.         number: 16;
  1989.     }
  1990.     graphics {
  1991.         cargoicon_fertiliser;
  1992.     }
  1993. }
  1994.             }
  1995.     spriteset(cargoicon_fish) {
  1996.         [10 + 20 * 15, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  1997.     }
  1998.             if (economy==0) {
  1999. item(FEAT_CARGOS, fish_BASIC_TEMPERATE, 9) {
  2000.     property {
  2001.         type_name: string(STR_CARGO_NAME_FISH);
  2002.         unit_name: string(STR_CARGO_NAME_FISH);
  2003.         type_abbreviation: string(STR_CID_FISH);
  2004.         sprite: NEW_CARGO_SPRITE;
  2005.         weight: 1.0;
  2006.         station_list_colour: 149;
  2007.         cargo_payment_list_colour: 149;
  2008.         is_freight: 1;
  2009.         cargo_classes: bitmask(CC_EXPRESS, CC_REFRIGERATED);
  2010.         town_growth_effect: TOWNGROWTH_NONE;
  2011.         town_growth_multiplier: 1.0;
  2012.         units_of_cargo: 80;
  2013.         items_of_cargo: string(STR_CARGO_UNIT_FISH);
  2014.         penalty_lowerbound: 0;
  2015.         single_penalty_length: 18;
  2016.         price_factor: 148;
  2017.         capacity_multiplier: 1;
  2018.         cargo_label: "FISH";
  2019.         number: 9;
  2020.     }
  2021.     graphics {
  2022.         cargoicon_fish;
  2023.     }
  2024. }
  2025.             }
  2026.             if (economy==1) {
  2027. item(FEAT_CARGOS, fish_BASIC_ARCTIC, 14) {
  2028.     property {
  2029.         type_name: string(STR_CARGO_NAME_FISH);
  2030.         unit_name: string(STR_CARGO_NAME_FISH);
  2031.         type_abbreviation: string(STR_CID_FISH);
  2032.         sprite: NEW_CARGO_SPRITE;
  2033.         weight: 1.0;
  2034.         station_list_colour: 149;
  2035.         cargo_payment_list_colour: 149;
  2036.         is_freight: 1;
  2037.         cargo_classes: bitmask(CC_EXPRESS, CC_REFRIGERATED);
  2038.         town_growth_effect: TOWNGROWTH_NONE;
  2039.         town_growth_multiplier: 1.0;
  2040.         units_of_cargo: 80;
  2041.         items_of_cargo: string(STR_CARGO_UNIT_FISH);
  2042.         penalty_lowerbound: 0;
  2043.         single_penalty_length: 18;
  2044.         price_factor: 148;
  2045.         capacity_multiplier: 1;
  2046.         cargo_label: "FISH";
  2047.         number: 14;
  2048.     }
  2049.     graphics {
  2050.         cargoicon_fish;
  2051.     }
  2052. }
  2053.             }
  2054.             if (economy==4) {
  2055. item(FEAT_CARGOS, fish_BASIC_TROPIC, 12) {
  2056.     property {
  2057.         type_name: string(STR_CARGO_NAME_FISH);
  2058.         unit_name: string(STR_CARGO_NAME_FISH);
  2059.         type_abbreviation: string(STR_CID_FISH);
  2060.         sprite: NEW_CARGO_SPRITE;
  2061.         weight: 1.0;
  2062.         station_list_colour: 149;
  2063.         cargo_payment_list_colour: 149;
  2064.         is_freight: 1;
  2065.         cargo_classes: bitmask(CC_EXPRESS, CC_REFRIGERATED);
  2066.         town_growth_effect: TOWNGROWTH_NONE;
  2067.         town_growth_multiplier: 1.0;
  2068.         units_of_cargo: 80;
  2069.         items_of_cargo: string(STR_CARGO_UNIT_FISH);
  2070.         penalty_lowerbound: 0;
  2071.         single_penalty_length: 18;
  2072.         price_factor: 148;
  2073.         capacity_multiplier: 1;
  2074.         cargo_label: "FISH";
  2075.         number: 12;
  2076.     }
  2077.     graphics {
  2078.         cargoicon_fish;
  2079.     }
  2080. }
  2081.             }
  2082.             if (economy==2) {
  2083. item(FEAT_CARGOS, fish_EXTREME, 19) {
  2084.     property {
  2085.         type_name: string(STR_CARGO_NAME_FISH);
  2086.         unit_name: string(STR_CARGO_NAME_FISH);
  2087.         type_abbreviation: string(STR_CID_FISH);
  2088.         sprite: NEW_CARGO_SPRITE;
  2089.         weight: 1.0;
  2090.         station_list_colour: 149;
  2091.         cargo_payment_list_colour: 149;
  2092.         is_freight: 1;
  2093.         cargo_classes: bitmask(CC_EXPRESS, CC_REFRIGERATED);
  2094.         town_growth_effect: TOWNGROWTH_NONE;
  2095.         town_growth_multiplier: 1.0;
  2096.         units_of_cargo: 80;
  2097.         items_of_cargo: string(STR_CARGO_UNIT_FISH);
  2098.         penalty_lowerbound: 0;
  2099.         single_penalty_length: 18;
  2100.         price_factor: 148;
  2101.         capacity_multiplier: 1;
  2102.         cargo_label: "FISH";
  2103.         number: 19;
  2104.     }
  2105.     graphics {
  2106.         cargoicon_fish;
  2107.     }
  2108. }
  2109.             }
  2110.     spriteset(cargoicon_food) {
  2111.         [10 + 20 * 12, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2112.     }
  2113.             if (economy==0) {
  2114. item(FEAT_CARGOS, food_BASIC_TEMPERATE, 11) {
  2115.     property {
  2116.         type_name: TTD_STR_CARGO_PLURAL_FOOD;
  2117.         unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
  2118.         type_abbreviation: TTD_STR_ABBREV_FOOD;
  2119.         sprite: NEW_CARGO_SPRITE;
  2120.         weight: 1.0;
  2121.         station_list_colour: 48;
  2122.         cargo_payment_list_colour: 48;
  2123.         is_freight: 1;
  2124.         cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
  2125.         town_growth_effect: TOWNGROWTH_FOOD;
  2126.         town_growth_multiplier: 1.0;
  2127.         units_of_cargo: 94;
  2128.         items_of_cargo: TTD_STR_QUANTITY_FOOD;
  2129.         penalty_lowerbound: 0;
  2130.         single_penalty_length: 24;
  2131.         price_factor: 158;
  2132.         capacity_multiplier: 1;
  2133.         cargo_label: "FOOD";
  2134.         number: 11;
  2135.     }
  2136.     graphics {
  2137.         cargoicon_food;
  2138.     }
  2139. }
  2140.             }
  2141.             if (economy==1) {
  2142. item(FEAT_CARGOS, food_BASIC_ARCTIC, 11) {
  2143.     property {
  2144.         type_name: TTD_STR_CARGO_PLURAL_FOOD;
  2145.         unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
  2146.         type_abbreviation: TTD_STR_ABBREV_FOOD;
  2147.         sprite: NEW_CARGO_SPRITE;
  2148.         weight: 1.0;
  2149.         station_list_colour: 48;
  2150.         cargo_payment_list_colour: 48;
  2151.         is_freight: 1;
  2152.         cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
  2153.         town_growth_effect: TOWNGROWTH_FOOD;
  2154.         town_growth_multiplier: 1.0;
  2155.         units_of_cargo: 94;
  2156.         items_of_cargo: TTD_STR_QUANTITY_FOOD;
  2157.         penalty_lowerbound: 0;
  2158.         single_penalty_length: 24;
  2159.         price_factor: 158;
  2160.         capacity_multiplier: 1;
  2161.         cargo_label: "FOOD";
  2162.         number: 11;
  2163.     }
  2164.     graphics {
  2165.         cargoicon_food;
  2166.     }
  2167. }
  2168.             }
  2169.             if (economy==4) {
  2170. item(FEAT_CARGOS, food_BASIC_TROPIC, 11) {
  2171.     property {
  2172.         type_name: TTD_STR_CARGO_PLURAL_FOOD;
  2173.         unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
  2174.         type_abbreviation: TTD_STR_ABBREV_FOOD;
  2175.         sprite: NEW_CARGO_SPRITE;
  2176.         weight: 1.0;
  2177.         station_list_colour: 48;
  2178.         cargo_payment_list_colour: 48;
  2179.         is_freight: 1;
  2180.         cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
  2181.         town_growth_effect: TOWNGROWTH_FOOD;
  2182.         town_growth_multiplier: 1.0;
  2183.         units_of_cargo: 94;
  2184.         items_of_cargo: TTD_STR_QUANTITY_FOOD;
  2185.         penalty_lowerbound: 0;
  2186.         single_penalty_length: 24;
  2187.         price_factor: 158;
  2188.         capacity_multiplier: 1;
  2189.         cargo_label: "FOOD";
  2190.         number: 11;
  2191.     }
  2192.     graphics {
  2193.         cargoicon_food;
  2194.     }
  2195. }
  2196.             }
  2197.             if (economy==5) {
  2198. item(FEAT_CARGOS, food_STEELTOWN, 11) {
  2199.     property {
  2200.         type_name: TTD_STR_CARGO_PLURAL_FOOD;
  2201.         unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
  2202.         type_abbreviation: TTD_STR_ABBREV_FOOD;
  2203.         sprite: NEW_CARGO_SPRITE;
  2204.         weight: 1.0;
  2205.         station_list_colour: 48;
  2206.         cargo_payment_list_colour: 48;
  2207.         is_freight: 1;
  2208.         cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
  2209.         town_growth_effect: TOWNGROWTH_FOOD;
  2210.         town_growth_multiplier: 1.0;
  2211.         units_of_cargo: 94;
  2212.         items_of_cargo: TTD_STR_QUANTITY_FOOD;
  2213.         penalty_lowerbound: 0;
  2214.         single_penalty_length: 24;
  2215.         price_factor: 158;
  2216.         capacity_multiplier: 1;
  2217.         cargo_label: "FOOD";
  2218.         number: 11;
  2219.     }
  2220.     graphics {
  2221.         cargoicon_food;
  2222.     }
  2223. }
  2224.             }
  2225.             if (economy==3) {
  2226. item(FEAT_CARGOS, food_MISTAH_KURTZ, 11) {
  2227.     property {
  2228.         type_name: TTD_STR_CARGO_PLURAL_FOOD;
  2229.         unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
  2230.         type_abbreviation: TTD_STR_ABBREV_FOOD;
  2231.         sprite: NEW_CARGO_SPRITE;
  2232.         weight: 1.0;
  2233.         station_list_colour: 48;
  2234.         cargo_payment_list_colour: 48;
  2235.         is_freight: 1;
  2236.         cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
  2237.         town_growth_effect: TOWNGROWTH_FOOD;
  2238.         town_growth_multiplier: 1.0;
  2239.         units_of_cargo: 94;
  2240.         items_of_cargo: TTD_STR_QUANTITY_FOOD;
  2241.         penalty_lowerbound: 0;
  2242.         single_penalty_length: 24;
  2243.         price_factor: 158;
  2244.         capacity_multiplier: 1;
  2245.         cargo_label: "FOOD";
  2246.         number: 11;
  2247.     }
  2248.     graphics {
  2249.         cargoicon_food;
  2250.     }
  2251. }
  2252.             }
  2253.             if (economy==2) {
  2254. item(FEAT_CARGOS, food_EXTREME, 11) {
  2255.     property {
  2256.         type_name: TTD_STR_CARGO_PLURAL_FOOD;
  2257.         unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
  2258.         type_abbreviation: TTD_STR_ABBREV_FOOD;
  2259.         sprite: NEW_CARGO_SPRITE;
  2260.         weight: 1.0;
  2261.         station_list_colour: 48;
  2262.         cargo_payment_list_colour: 48;
  2263.         is_freight: 1;
  2264.         cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
  2265.         town_growth_effect: TOWNGROWTH_FOOD;
  2266.         town_growth_multiplier: 1.0;
  2267.         units_of_cargo: 94;
  2268.         items_of_cargo: TTD_STR_QUANTITY_FOOD;
  2269.         penalty_lowerbound: 0;
  2270.         single_penalty_length: 24;
  2271.         price_factor: 158;
  2272.         capacity_multiplier: 1;
  2273.         cargo_label: "FOOD";
  2274.         number: 11;
  2275.     }
  2276.     graphics {
  2277.         cargoicon_food;
  2278.     }
  2279. }
  2280.             }
  2281.     spriteset(cargoicon_food_additives) {
  2282.         [10 + 20 * 12, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2283.     }
  2284.             if (economy==2) {
  2285. item(FEAT_CARGOS, food_additives_EXTREME, 21) {
  2286.     property {
  2287.         type_name: string(STR_CARGO_NAME_FOOD_ADDITIVES);
  2288.         unit_name: string(STR_CARGO_NAME_FOOD_ADDITIVES);
  2289.         type_abbreviation: string(STR_CID_FOOD_ADDITIVES);
  2290.         sprite: NEW_CARGO_SPRITE;
  2291.         weight: 1.0;
  2292.         station_list_colour: 48;
  2293.         cargo_payment_list_colour: 48;
  2294.         is_freight: 1;
  2295.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2296.         town_growth_effect: TOWNGROWTH_FOOD;
  2297.         town_growth_multiplier: 1.0;
  2298.         units_of_cargo: 94;
  2299.         items_of_cargo: string(STR_CARGO_UNIT_FOOD_ADDITIVES);
  2300.         penalty_lowerbound: 0;
  2301.         single_penalty_length: 24;
  2302.         price_factor: 158;
  2303.         capacity_multiplier: 1;
  2304.         cargo_label: "ENUM";
  2305.         number: 21;
  2306.     }
  2307.     graphics {
  2308.         cargoicon_food_additives;
  2309.     }
  2310. }
  2311.             }
  2312.     spriteset(cargoicon_flour) {
  2313.         [10 + 20 * 12, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2314.     }
  2315.             if (economy==2) {
  2316. item(FEAT_CARGOS, flour_EXTREME, 20) {
  2317.     property {
  2318.         type_name: string(STR_CARGO_NAME_FLOUR);
  2319.         unit_name: string(STR_CARGO_NAME_FLOUR);
  2320.         type_abbreviation: string(STR_CID_FLOUR);
  2321.         sprite: NEW_CARGO_SPRITE;
  2322.         weight: 1.0;
  2323.         station_list_colour: 48;
  2324.         cargo_payment_list_colour: 48;
  2325.         is_freight: 1;
  2326.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2327.         town_growth_effect: TOWNGROWTH_FOOD;
  2328.         town_growth_multiplier: 1.0;
  2329.         units_of_cargo: 94;
  2330.         items_of_cargo: string(STR_CARGO_UNIT_FLOUR);
  2331.         penalty_lowerbound: 0;
  2332.         single_penalty_length: 24;
  2333.         price_factor: 158;
  2334.         capacity_multiplier: 1;
  2335.         cargo_label: "BAKE";
  2336.         number: 20;
  2337.     }
  2338.     graphics {
  2339.         cargoicon_flour;
  2340.     }
  2341. }
  2342.             }
  2343.     spriteset(cargoicon_fruits) {
  2344.         [10 + 20 * 14, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2345.     }
  2346.             if (economy==0) {
  2347. item(FEAT_CARGOS, fruits_BASIC_TEMPERATE, 10) {
  2348.     property {
  2349.         type_name: string(STR_CARGO_NAME_FRUITS);
  2350.         unit_name: string(STR_CARGO_NAME_FRUITS);
  2351.         type_abbreviation: TTD_STR_ABBREV_FRUIT;
  2352.         sprite: NEW_CARGO_SPRITE;
  2353.         weight: 1.0;
  2354.         station_list_colour: 84;
  2355.         cargo_payment_list_colour: 84;
  2356.         is_freight: 1;
  2357.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_REFRIGERATED);
  2358.         town_growth_effect: TOWNGROWTH_NONE;
  2359.         town_growth_multiplier: 1.0;
  2360.         units_of_cargo: 80;
  2361.         items_of_cargo: string(STR_CARGO_UNIT_FRUITS);
  2362.         penalty_lowerbound: 0;
  2363.         single_penalty_length: 26;
  2364.         price_factor: 120;
  2365.         capacity_multiplier: 1;
  2366.         cargo_label: "FRUT";
  2367.         number: 10;
  2368.     }
  2369.     graphics {
  2370.         cargoicon_fruits;
  2371.     }
  2372. }
  2373.             }
  2374.             if (economy==4) {
  2375. item(FEAT_CARGOS, fruits_BASIC_TROPIC, 13) {
  2376.     property {
  2377.         type_name: string(STR_CARGO_NAME_FRUITS);
  2378.         unit_name: string(STR_CARGO_NAME_FRUITS);
  2379.         type_abbreviation: TTD_STR_ABBREV_FRUIT;
  2380.         sprite: NEW_CARGO_SPRITE;
  2381.         weight: 1.0;
  2382.         station_list_colour: 84;
  2383.         cargo_payment_list_colour: 84;
  2384.         is_freight: 1;
  2385.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_REFRIGERATED);
  2386.         town_growth_effect: TOWNGROWTH_NONE;
  2387.         town_growth_multiplier: 1.0;
  2388.         units_of_cargo: 80;
  2389.         items_of_cargo: string(STR_CARGO_UNIT_FRUITS);
  2390.         penalty_lowerbound: 0;
  2391.         single_penalty_length: 26;
  2392.         price_factor: 120;
  2393.         capacity_multiplier: 1;
  2394.         cargo_label: "FRUT";
  2395.         number: 13;
  2396.     }
  2397.     graphics {
  2398.         cargoicon_fruits;
  2399.     }
  2400. }
  2401.             }
  2402.             if (economy==3) {
  2403. item(FEAT_CARGOS, fruits_MISTAH_KURTZ, 16) {
  2404.     property {
  2405.         type_name: string(STR_CARGO_NAME_FRUITS);
  2406.         unit_name: string(STR_CARGO_NAME_FRUITS);
  2407.         type_abbreviation: TTD_STR_ABBREV_FRUIT;
  2408.         sprite: NEW_CARGO_SPRITE;
  2409.         weight: 1.0;
  2410.         station_list_colour: 84;
  2411.         cargo_payment_list_colour: 84;
  2412.         is_freight: 1;
  2413.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_REFRIGERATED);
  2414.         town_growth_effect: TOWNGROWTH_NONE;
  2415.         town_growth_multiplier: 1.0;
  2416.         units_of_cargo: 80;
  2417.         items_of_cargo: string(STR_CARGO_UNIT_FRUITS);
  2418.         penalty_lowerbound: 0;
  2419.         single_penalty_length: 26;
  2420.         price_factor: 120;
  2421.         capacity_multiplier: 1;
  2422.         cargo_label: "FRUT";
  2423.         number: 16;
  2424.     }
  2425.     graphics {
  2426.         cargoicon_fruits;
  2427.     }
  2428. }
  2429.             }
  2430.             if (economy==2) {
  2431. item(FEAT_CARGOS, fruits_EXTREME, 22) {
  2432.     property {
  2433.         type_name: string(STR_CARGO_NAME_FRUITS);
  2434.         unit_name: string(STR_CARGO_NAME_FRUITS);
  2435.         type_abbreviation: TTD_STR_ABBREV_FRUIT;
  2436.         sprite: NEW_CARGO_SPRITE;
  2437.         weight: 1.0;
  2438.         station_list_colour: 84;
  2439.         cargo_payment_list_colour: 84;
  2440.         is_freight: 1;
  2441.         cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_REFRIGERATED);
  2442.         town_growth_effect: TOWNGROWTH_NONE;
  2443.         town_growth_multiplier: 1.0;
  2444.         units_of_cargo: 80;
  2445.         items_of_cargo: string(STR_CARGO_UNIT_FRUITS);
  2446.         penalty_lowerbound: 0;
  2447.         single_penalty_length: 26;
  2448.         price_factor: 120;
  2449.         capacity_multiplier: 1;
  2450.         cargo_label: "FRUT";
  2451.         number: 22;
  2452.     }
  2453.     graphics {
  2454.         cargoicon_fruits;
  2455.     }
  2456. }
  2457.             }
  2458.     spriteset(cargoicon_furniture) {
  2459.         [10 + 20 * 5, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2460.     }
  2461.             if (economy==2) {
  2462. item(FEAT_CARGOS, furniture_EXTREME, 23) {
  2463.     property {
  2464.         type_name: string(STR_CARGO_NAME_FURNITURE);
  2465.         unit_name: string(STR_CARGO_NAME_FURNITURE);
  2466.         type_abbreviation: string(STR_CID_FURNITURE);
  2467.         sprite: NEW_CARGO_SPRITE;
  2468.         weight: 0.5;
  2469.         station_list_colour: 194;
  2470.         cargo_payment_list_colour: 194;
  2471.         is_freight: 1;
  2472.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2473.         town_growth_effect: TOWNGROWTH_WATER;
  2474.         town_growth_multiplier: 1.0;
  2475.         units_of_cargo: 80;
  2476.         items_of_cargo: string(STR_CARGO_UNIT_FURNITURE);
  2477.         penalty_lowerbound: 10;
  2478.         single_penalty_length: 64;
  2479.         price_factor: 166;
  2480.         capacity_multiplier: 2;
  2481.         cargo_label: "FURN";
  2482.         number: 23;
  2483.     }
  2484.     graphics {
  2485.         cargoicon_furniture;
  2486.     }
  2487. }
  2488.             }
  2489.     spriteset(cargoicon_vehicle_bodies) {
  2490.         [10 + 20 * 14, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2491.     }
  2492.             if (economy==5) {
  2493. item(FEAT_CARGOS, vehicle_bodies_STEELTOWN, 30) {
  2494.     property {
  2495.         type_name: string(STR_CARGO_NAME_VEHICLE_BODIES);
  2496.         unit_name: string(STR_CARGO_NAME_VEHICLE_BODIES);
  2497.         type_abbreviation: string(STR_CID_VEHICLE_BODIES);
  2498.         sprite: NEW_CARGO_SPRITE;
  2499.         weight: 1.0;
  2500.         station_list_colour: 147;
  2501.         cargo_payment_list_colour: 147;
  2502.         is_freight: 1;
  2503.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2504.         town_growth_effect: TOWNGROWTH_NONE;
  2505.         town_growth_multiplier: 1.0;
  2506.         units_of_cargo: 80;
  2507.         items_of_cargo: string(STR_CARGO_UNIT_VEHICLE_BODIES);
  2508.         penalty_lowerbound: 7;
  2509.         single_penalty_length: 255;
  2510.         price_factor: 152;
  2511.         capacity_multiplier: 1;
  2512.         cargo_label: "VBOD";
  2513.         number: 30;
  2514.     }
  2515.     graphics {
  2516.         cargoicon_vehicle_bodies;
  2517.     }
  2518. }
  2519.             }
  2520.     spriteset(cargoicon_goods) {
  2521.         [10 + 20 * 5, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2522.     }
  2523.             if (economy==0) {
  2524. item(FEAT_CARGOS, goods_BASIC_TEMPERATE, 5) {
  2525.     property {
  2526.         type_name: TTD_STR_CARGO_PLURAL_GOODS;
  2527.         unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
  2528.         type_abbreviation: TTD_STR_ABBREV_GOODS;
  2529.         sprite: NEW_CARGO_SPRITE;
  2530.         weight: 0.5;
  2531.         station_list_colour: 194;
  2532.         cargo_payment_list_colour: 194;
  2533.         is_freight: 1;
  2534.         cargo_classes: bitmask(CC_EXPRESS);
  2535.         town_growth_effect: TOWNGROWTH_WATER;
  2536.         town_growth_multiplier: 1.0;
  2537.         units_of_cargo: TTD_STR_CRATES;
  2538.         items_of_cargo: TTD_STR_QUANTITY_GOODS;
  2539.         penalty_lowerbound: 10;
  2540.         single_penalty_length: 64;
  2541.         price_factor: 166;
  2542.         capacity_multiplier: 2;
  2543.         cargo_label: "GOOD";
  2544.         number: 5;
  2545.     }
  2546.     graphics {
  2547.         cargoicon_goods;
  2548.     }
  2549. }
  2550.             }
  2551.             if (economy==1) {
  2552. item(FEAT_CARGOS, goods_BASIC_ARCTIC, 5) {
  2553.     property {
  2554.         type_name: TTD_STR_CARGO_PLURAL_GOODS;
  2555.         unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
  2556.         type_abbreviation: TTD_STR_ABBREV_GOODS;
  2557.         sprite: NEW_CARGO_SPRITE;
  2558.         weight: 0.5;
  2559.         station_list_colour: 194;
  2560.         cargo_payment_list_colour: 194;
  2561.         is_freight: 1;
  2562.         cargo_classes: bitmask(CC_EXPRESS);
  2563.         town_growth_effect: TOWNGROWTH_WATER;
  2564.         town_growth_multiplier: 1.0;
  2565.         units_of_cargo: TTD_STR_CRATES;
  2566.         items_of_cargo: TTD_STR_QUANTITY_GOODS;
  2567.         penalty_lowerbound: 10;
  2568.         single_penalty_length: 64;
  2569.         price_factor: 166;
  2570.         capacity_multiplier: 2;
  2571.         cargo_label: "GOOD";
  2572.         number: 5;
  2573.     }
  2574.     graphics {
  2575.         cargoicon_goods;
  2576.     }
  2577. }
  2578.             }
  2579.             if (economy==4) {
  2580. item(FEAT_CARGOS, goods_BASIC_TROPIC, 5) {
  2581.     property {
  2582.         type_name: TTD_STR_CARGO_PLURAL_GOODS;
  2583.         unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
  2584.         type_abbreviation: TTD_STR_ABBREV_GOODS;
  2585.         sprite: NEW_CARGO_SPRITE;
  2586.         weight: 0.5;
  2587.         station_list_colour: 194;
  2588.         cargo_payment_list_colour: 194;
  2589.         is_freight: 1;
  2590.         cargo_classes: bitmask(CC_EXPRESS);
  2591.         town_growth_effect: TOWNGROWTH_WATER;
  2592.         town_growth_multiplier: 1.0;
  2593.         units_of_cargo: TTD_STR_CRATES;
  2594.         items_of_cargo: TTD_STR_QUANTITY_GOODS;
  2595.         penalty_lowerbound: 10;
  2596.         single_penalty_length: 64;
  2597.         price_factor: 166;
  2598.         capacity_multiplier: 2;
  2599.         cargo_label: "GOOD";
  2600.         number: 5;
  2601.     }
  2602.     graphics {
  2603.         cargoicon_goods;
  2604.     }
  2605. }
  2606.             }
  2607.             if (economy==3) {
  2608. item(FEAT_CARGOS, goods_MISTAH_KURTZ, 5) {
  2609.     property {
  2610.         type_name: TTD_STR_CARGO_PLURAL_GOODS;
  2611.         unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
  2612.         type_abbreviation: TTD_STR_ABBREV_GOODS;
  2613.         sprite: NEW_CARGO_SPRITE;
  2614.         weight: 0.5;
  2615.         station_list_colour: 194;
  2616.         cargo_payment_list_colour: 194;
  2617.         is_freight: 1;
  2618.         cargo_classes: bitmask(CC_EXPRESS);
  2619.         town_growth_effect: TOWNGROWTH_WATER;
  2620.         town_growth_multiplier: 1.0;
  2621.         units_of_cargo: TTD_STR_CRATES;
  2622.         items_of_cargo: TTD_STR_QUANTITY_GOODS;
  2623.         penalty_lowerbound: 10;
  2624.         single_penalty_length: 64;
  2625.         price_factor: 166;
  2626.         capacity_multiplier: 2;
  2627.         cargo_label: "GOOD";
  2628.         number: 5;
  2629.     }
  2630.     graphics {
  2631.         cargoicon_goods;
  2632.     }
  2633. }
  2634.             }
  2635.             if (economy==2) {
  2636. item(FEAT_CARGOS, goods_EXTREME, 5) {
  2637.     property {
  2638.         type_name: TTD_STR_CARGO_PLURAL_GOODS;
  2639.         unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
  2640.         type_abbreviation: TTD_STR_ABBREV_GOODS;
  2641.         sprite: NEW_CARGO_SPRITE;
  2642.         weight: 0.5;
  2643.         station_list_colour: 194;
  2644.         cargo_payment_list_colour: 194;
  2645.         is_freight: 1;
  2646.         cargo_classes: bitmask(CC_EXPRESS);
  2647.         town_growth_effect: TOWNGROWTH_WATER;
  2648.         town_growth_multiplier: 1.0;
  2649.         units_of_cargo: TTD_STR_CRATES;
  2650.         items_of_cargo: TTD_STR_QUANTITY_GOODS;
  2651.         penalty_lowerbound: 10;
  2652.         single_penalty_length: 64;
  2653.         price_factor: 166;
  2654.         capacity_multiplier: 2;
  2655.         cargo_label: "GOOD";
  2656.         number: 5;
  2657.     }
  2658.     graphics {
  2659.         cargoicon_goods;
  2660.     }
  2661. }
  2662.             }
  2663.     spriteset(cargoicon_grain) {
  2664.         [10 + 20 * 6, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2665.     }
  2666.             if (economy==4) {
  2667. item(FEAT_CARGOS, grain_BASIC_TROPIC, 14) {
  2668.     property {
  2669.         type_name: TTD_STR_CARGO_PLURAL_GRAIN;
  2670.         unit_name: TTD_STR_CARGO_SINGULAR_GRAIN;
  2671.         type_abbreviation: TTD_STR_ABBREV_GRAIN;
  2672.         sprite: NEW_CARGO_SPRITE;
  2673.         weight: 1.0;
  2674.         station_list_colour: 190;
  2675.         cargo_payment_list_colour: 190;
  2676.         is_freight: 1;
  2677.         cargo_classes: bitmask(CC_BULK);
  2678.         town_growth_effect: TOWNGROWTH_NONE;
  2679.         town_growth_multiplier: 1.0;
  2680.         units_of_cargo: TTD_STR_TONS;
  2681.         items_of_cargo: TTD_STR_QUANTITY_GRAIN;
  2682.         penalty_lowerbound: 4;
  2683.         single_penalty_length: 40;
  2684.         price_factor: 104;
  2685.         capacity_multiplier: 1;
  2686.         cargo_label: "GRAI";
  2687.         number: 14;
  2688.     }
  2689.     graphics {
  2690.         cargoicon_grain;
  2691.     }
  2692. }
  2693.             }
  2694.             if (economy==2) {
  2695. item(FEAT_CARGOS, grain_EXTREME, 24) {
  2696.     property {
  2697.         type_name: TTD_STR_CARGO_PLURAL_GRAIN;
  2698.         unit_name: TTD_STR_CARGO_SINGULAR_GRAIN;
  2699.         type_abbreviation: TTD_STR_ABBREV_GRAIN;
  2700.         sprite: NEW_CARGO_SPRITE;
  2701.         weight: 1.0;
  2702.         station_list_colour: 190;
  2703.         cargo_payment_list_colour: 190;
  2704.         is_freight: 1;
  2705.         cargo_classes: bitmask(CC_BULK);
  2706.         town_growth_effect: TOWNGROWTH_NONE;
  2707.         town_growth_multiplier: 1.0;
  2708.         units_of_cargo: TTD_STR_TONS;
  2709.         items_of_cargo: TTD_STR_QUANTITY_GRAIN;
  2710.         penalty_lowerbound: 4;
  2711.         single_penalty_length: 40;
  2712.         price_factor: 104;
  2713.         capacity_multiplier: 1;
  2714.         cargo_label: "GRAI";
  2715.         number: 24;
  2716.     }
  2717.     graphics {
  2718.         cargoicon_grain;
  2719.     }
  2720. }
  2721.             }
  2722.     spriteset(cargoicon_iron_ore) {
  2723.         [10 + 20 * 9, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2724.     }
  2725.             if (economy==0) {
  2726. item(FEAT_CARGOS, iron_ore_BASIC_TEMPERATE, 12) {
  2727.     property {
  2728.         type_name: TTD_STR_CARGO_PLURAL_IRON_ORE;
  2729.         unit_name: TTD_STR_CARGO_SINGULAR_IRON_ORE;
  2730.         type_abbreviation: TTD_STR_ABBREV_IRON_ORE;
  2731.         sprite: NEW_CARGO_SPRITE;
  2732.         weight: 1.0;
  2733.         station_list_colour: 118;
  2734.         cargo_payment_list_colour: 118;
  2735.         is_freight: 1;
  2736.         cargo_classes: bitmask(CC_BULK);
  2737.         town_growth_effect: TOWNGROWTH_NONE;
  2738.         town_growth_multiplier: 1.0;
  2739.         units_of_cargo: TTD_STR_TONS;
  2740.         items_of_cargo: TTD_STR_QUANTITY_IRON_ORE;
  2741.         penalty_lowerbound: 30;
  2742.         single_penalty_length: 255;
  2743.         price_factor: 60;
  2744.         capacity_multiplier: 1;
  2745.         cargo_label: "IORE";
  2746.         number: 12;
  2747.     }
  2748.     graphics {
  2749.         cargoicon_iron_ore;
  2750.     }
  2751. }
  2752.             }
  2753.             if (economy==5) {
  2754. item(FEAT_CARGOS, iron_ore_STEELTOWN, 14) {
  2755.     property {
  2756.         type_name: TTD_STR_CARGO_PLURAL_IRON_ORE;
  2757.         unit_name: TTD_STR_CARGO_SINGULAR_IRON_ORE;
  2758.         type_abbreviation: TTD_STR_ABBREV_IRON_ORE;
  2759.         sprite: NEW_CARGO_SPRITE;
  2760.         weight: 1.0;
  2761.         station_list_colour: 118;
  2762.         cargo_payment_list_colour: 118;
  2763.         is_freight: 1;
  2764.         cargo_classes: bitmask(CC_BULK);
  2765.         town_growth_effect: TOWNGROWTH_NONE;
  2766.         town_growth_multiplier: 1.0;
  2767.         units_of_cargo: TTD_STR_TONS;
  2768.         items_of_cargo: TTD_STR_QUANTITY_IRON_ORE;
  2769.         penalty_lowerbound: 30;
  2770.         single_penalty_length: 255;
  2771.         price_factor: 60;
  2772.         capacity_multiplier: 1;
  2773.         cargo_label: "IORE";
  2774.         number: 14;
  2775.     }
  2776.     graphics {
  2777.         cargoicon_iron_ore;
  2778.     }
  2779. }
  2780.             }
  2781.             if (economy==2) {
  2782. item(FEAT_CARGOS, iron_ore_EXTREME, 25) {
  2783.     property {
  2784.         type_name: TTD_STR_CARGO_PLURAL_IRON_ORE;
  2785.         unit_name: TTD_STR_CARGO_SINGULAR_IRON_ORE;
  2786.         type_abbreviation: TTD_STR_ABBREV_IRON_ORE;
  2787.         sprite: NEW_CARGO_SPRITE;
  2788.         weight: 1.0;
  2789.         station_list_colour: 118;
  2790.         cargo_payment_list_colour: 118;
  2791.         is_freight: 1;
  2792.         cargo_classes: bitmask(CC_BULK);
  2793.         town_growth_effect: TOWNGROWTH_NONE;
  2794.         town_growth_multiplier: 1.0;
  2795.         units_of_cargo: TTD_STR_TONS;
  2796.         items_of_cargo: TTD_STR_QUANTITY_IRON_ORE;
  2797.         penalty_lowerbound: 30;
  2798.         single_penalty_length: 255;
  2799.         price_factor: 60;
  2800.         capacity_multiplier: 1;
  2801.         cargo_label: "IORE";
  2802.         number: 25;
  2803.     }
  2804.     graphics {
  2805.         cargoicon_iron_ore;
  2806.     }
  2807. }
  2808.             }
  2809.     spriteset(cargoicon_livestock) {
  2810.         [10 + 20 * 4, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2811.     }
  2812.             if (economy==0) {
  2813. item(FEAT_CARGOS, livestock_BASIC_TEMPERATE, 13) {
  2814.     property {
  2815.         type_name: TTD_STR_CARGO_PLURAL_LIVESTOCK;
  2816.         unit_name: TTD_STR_CARGO_SINGULAR_LIVESTOCK;
  2817.         type_abbreviation: TTD_STR_ABBREV_LIVESTOCK;
  2818.         sprite: NEW_CARGO_SPRITE;
  2819.         weight: 0.1875;
  2820.         station_list_colour: 75;
  2821.         cargo_payment_list_colour: 75;
  2822.         is_freight: 1;
  2823.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2824.         town_growth_effect: TOWNGROWTH_NONE;
  2825.         town_growth_multiplier: 1.0;
  2826.         units_of_cargo: TTD_STR_ITEMS;
  2827.         items_of_cargo: TTD_STR_QUANTITY_LIVESTOCK;
  2828.         penalty_lowerbound: 0;
  2829.         single_penalty_length: 16;
  2830.         price_factor: 123;
  2831.         capacity_multiplier: 1;
  2832.         cargo_label: "LVST";
  2833.         number: 13;
  2834.     }
  2835.     graphics {
  2836.         cargoicon_livestock;
  2837.     }
  2838. }
  2839.             }
  2840.             if (economy==4) {
  2841. item(FEAT_CARGOS, livestock_BASIC_TROPIC, 15) {
  2842.     property {
  2843.         type_name: TTD_STR_CARGO_PLURAL_LIVESTOCK;
  2844.         unit_name: TTD_STR_CARGO_SINGULAR_LIVESTOCK;
  2845.         type_abbreviation: TTD_STR_ABBREV_LIVESTOCK;
  2846.         sprite: NEW_CARGO_SPRITE;
  2847.         weight: 0.1875;
  2848.         station_list_colour: 75;
  2849.         cargo_payment_list_colour: 75;
  2850.         is_freight: 1;
  2851.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2852.         town_growth_effect: TOWNGROWTH_NONE;
  2853.         town_growth_multiplier: 1.0;
  2854.         units_of_cargo: TTD_STR_ITEMS;
  2855.         items_of_cargo: TTD_STR_QUANTITY_LIVESTOCK;
  2856.         penalty_lowerbound: 0;
  2857.         single_penalty_length: 16;
  2858.         price_factor: 123;
  2859.         capacity_multiplier: 1;
  2860.         cargo_label: "LVST";
  2861.         number: 15;
  2862.     }
  2863.     graphics {
  2864.         cargoicon_livestock;
  2865.     }
  2866. }
  2867.             }
  2868.             if (economy==3) {
  2869. item(FEAT_CARGOS, livestock_MISTAH_KURTZ, 17) {
  2870.     property {
  2871.         type_name: TTD_STR_CARGO_PLURAL_LIVESTOCK;
  2872.         unit_name: TTD_STR_CARGO_SINGULAR_LIVESTOCK;
  2873.         type_abbreviation: TTD_STR_ABBREV_LIVESTOCK;
  2874.         sprite: NEW_CARGO_SPRITE;
  2875.         weight: 0.1875;
  2876.         station_list_colour: 75;
  2877.         cargo_payment_list_colour: 75;
  2878.         is_freight: 1;
  2879.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2880.         town_growth_effect: TOWNGROWTH_NONE;
  2881.         town_growth_multiplier: 1.0;
  2882.         units_of_cargo: TTD_STR_ITEMS;
  2883.         items_of_cargo: TTD_STR_QUANTITY_LIVESTOCK;
  2884.         penalty_lowerbound: 0;
  2885.         single_penalty_length: 16;
  2886.         price_factor: 123;
  2887.         capacity_multiplier: 1;
  2888.         cargo_label: "LVST";
  2889.         number: 17;
  2890.     }
  2891.     graphics {
  2892.         cargoicon_livestock;
  2893.     }
  2894. }
  2895.             }
  2896.             if (economy==2) {
  2897. item(FEAT_CARGOS, livestock_EXTREME, 26) {
  2898.     property {
  2899.         type_name: TTD_STR_CARGO_PLURAL_LIVESTOCK;
  2900.         unit_name: TTD_STR_CARGO_SINGULAR_LIVESTOCK;
  2901.         type_abbreviation: TTD_STR_ABBREV_LIVESTOCK;
  2902.         sprite: NEW_CARGO_SPRITE;
  2903.         weight: 0.1875;
  2904.         station_list_colour: 75;
  2905.         cargo_payment_list_colour: 75;
  2906.         is_freight: 1;
  2907.         cargo_classes: bitmask(CC_PIECE_GOODS);
  2908.         town_growth_effect: TOWNGROWTH_NONE;
  2909.         town_growth_multiplier: 1.0;
  2910.         units_of_cargo: TTD_STR_ITEMS;
  2911.         items_of_cargo: TTD_STR_QUANTITY_LIVESTOCK;
  2912.         penalty_lowerbound: 0;
  2913.         single_penalty_length: 16;
  2914.         price_factor: 123;
  2915.         capacity_multiplier: 1;
  2916.         cargo_label: "LVST";
  2917.         number: 26;
  2918.     }
  2919.     graphics {
  2920.         cargoicon_livestock;
  2921.     }
  2922. }
  2923.             }
  2924.     spriteset(cargoicon_lumber) {
  2925.         [10 + 20 * 6, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  2926.     }
  2927.             if (economy==1) {
  2928. item(FEAT_CARGOS, lumber_BASIC_ARCTIC, 9) {
  2929.     property {
  2930.         type_name: string(STR_CARGO_NAME_LUMBER);
  2931.         unit_name: string(STR_CARGO_NAME_LUMBER);
  2932.         type_abbreviation: string(STR_CID_LUMBER);
  2933.         sprite: NEW_CARGO_SPRITE;
  2934.         weight: 1.0;
  2935.         station_list_colour: 58;
  2936.         cargo_payment_list_colour: 58;
  2937.         is_freight: 1;
  2938.         cargo_classes: bitmask(CC_BULK, CC_PIECE_GOODS);
  2939.         town_growth_effect: TOWNGROWTH_NONE;
  2940.         town_growth_multiplier: 1.0;
  2941.         units_of_cargo: 80;
  2942.         items_of_cargo: string(STR_CARGO_UNIT_LUMBER);
  2943.         penalty_lowerbound: 18;
  2944.         single_penalty_length: 255;
  2945.         price_factor: 124;
  2946.         capacity_multiplier: 1;
  2947.         cargo_label: "WDPR";
  2948.         number: 9;
  2949.     }
  2950.     graphics {
  2951.         cargoicon_lumber;
  2952.     }
  2953. }
  2954.             }
  2955.             if (economy==3) {
  2956. item(FEAT_CARGOS, lumber_MISTAH_KURTZ, 18) {
  2957.     property {
  2958.         type_name: string(STR_CARGO_NAME_LUMBER);
  2959.         unit_name: string(STR_CARGO_NAME_LUMBER);
  2960.         type_abbreviation: string(STR_CID_LUMBER);
  2961.         sprite: NEW_CARGO_SPRITE;
  2962.         weight: 1.0;
  2963.         station_list_colour: 58;
  2964.         cargo_payment_list_colour: 58;
  2965.         is_freight: 1;
  2966.         cargo_classes: bitmask(CC_BULK, CC_PIECE_GOODS);
  2967.         town_growth_effect: TOWNGROWTH_NONE;
  2968.         town_growth_multiplier: 1.0;
  2969.         units_of_cargo: 80;
  2970.         items_of_cargo: string(STR_CARGO_UNIT_LUMBER);
  2971.         penalty_lowerbound: 18;
  2972.         single_penalty_length: 255;
  2973.         price_factor: 124;
  2974.         capacity_multiplier: 1;
  2975.         cargo_label: "WDPR";
  2976.         number: 18;
  2977.     }
  2978.     graphics {
  2979.         cargoicon_lumber;
  2980.     }
  2981. }
  2982.             }
  2983.             if (economy==2) {
  2984. item(FEAT_CARGOS, lumber_EXTREME, 28) {
  2985.     property {
  2986.         type_name: string(STR_CARGO_NAME_LUMBER);
  2987.         unit_name: string(STR_CARGO_NAME_LUMBER);
  2988.         type_abbreviation: string(STR_CID_LUMBER);
  2989.         sprite: NEW_CARGO_SPRITE;
  2990.         weight: 1.0;
  2991.         station_list_colour: 58;
  2992.         cargo_payment_list_colour: 58;
  2993.         is_freight: 1;
  2994.         cargo_classes: bitmask(CC_BULK, CC_PIECE_GOODS);
  2995.         town_growth_effect: TOWNGROWTH_NONE;
  2996.         town_growth_multiplier: 1.0;
  2997.         units_of_cargo: 80;
  2998.         items_of_cargo: string(STR_CARGO_UNIT_LUMBER);
  2999.         penalty_lowerbound: 18;
  3000.         single_penalty_length: 255;
  3001.         price_factor: 124;
  3002.         capacity_multiplier: 1;
  3003.         cargo_label: "WDPR";
  3004.         number: 28;
  3005.     }
  3006.     graphics {
  3007.         cargoicon_lumber;
  3008.     }
  3009. }
  3010.             }
  3011.     spriteset(cargoicon_kaolin) {
  3012.         [10 + 20 * 5, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3013.     }
  3014.             if (economy==1) {
  3015. item(FEAT_CARGOS, kaolin_BASIC_ARCTIC, 1) {
  3016.     property {
  3017.         type_name: string(STR_CARGO_NAME_KAOLIN);
  3018.         unit_name: string(STR_CARGO_NAME_KAOLIN);
  3019.         type_abbreviation: string(STR_CID_KAOLIN);
  3020.         sprite: NEW_CARGO_SPRITE;
  3021.         weight: 1.0;
  3022.         station_list_colour: 14;
  3023.         cargo_payment_list_colour: 14;
  3024.         is_freight: 1;
  3025.         cargo_classes: bitmask(CC_BULK, CC_LIQUID, CC_COVERED);
  3026.         town_growth_effect: TOWNGROWTH_NONE;
  3027.         town_growth_multiplier: 1.0;
  3028.         units_of_cargo: 80;
  3029.         items_of_cargo: string(STR_CARGO_UNIT_KAOLIN);
  3030.         penalty_lowerbound: 30;
  3031.         single_penalty_length: 255;
  3032.         price_factor: 74;
  3033.         capacity_multiplier: 1;
  3034.         cargo_label: "KAOL";
  3035.         number: 1;
  3036.     }
  3037.     graphics {
  3038.         cargoicon_kaolin;
  3039.     }
  3040. }
  3041.             }
  3042.     spriteset(cargoicon_limestone) {
  3043.         [10 + 20 * 0, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3044.     }
  3045.             if (economy==5) {
  3046. item(FEAT_CARGOS, limestone_STEELTOWN, 9) {
  3047.     property {
  3048.         type_name: string(STR_CARGO_NAME_LIMESTONE);
  3049.         unit_name: string(STR_CARGO_NAME_LIMESTONE);
  3050.         type_abbreviation: string(STR_CID_LIMESTONE);
  3051.         sprite: NEW_CARGO_SPRITE;
  3052.         weight: 1.0;
  3053.         station_list_colour: 38;
  3054.         cargo_payment_list_colour: 38;
  3055.         is_freight: 1;
  3056.         cargo_classes: bitmask(CC_BULK);
  3057.         town_growth_effect: TOWNGROWTH_NONE;
  3058.         town_growth_multiplier: 1.0;
  3059.         units_of_cargo: 80;
  3060.         items_of_cargo: string(STR_CARGO_UNIT_LIMESTONE);
  3061.         penalty_lowerbound: 30;
  3062.         single_penalty_length: 255;
  3063.         price_factor: 66;
  3064.         capacity_multiplier: 1;
  3065.         cargo_label: "LIME";
  3066.         number: 9;
  3067.     }
  3068.     graphics {
  3069.         cargoicon_limestone;
  3070.     }
  3071. }
  3072.             }
  3073.             if (economy==2) {
  3074. item(FEAT_CARGOS, limestone_EXTREME, 27) {
  3075.     property {
  3076.         type_name: string(STR_CARGO_NAME_LIMESTONE);
  3077.         unit_name: string(STR_CARGO_NAME_LIMESTONE);
  3078.         type_abbreviation: string(STR_CID_LIMESTONE);
  3079.         sprite: NEW_CARGO_SPRITE;
  3080.         weight: 1.0;
  3081.         station_list_colour: 38;
  3082.         cargo_payment_list_colour: 38;
  3083.         is_freight: 1;
  3084.         cargo_classes: bitmask(CC_BULK);
  3085.         town_growth_effect: TOWNGROWTH_NONE;
  3086.         town_growth_multiplier: 1.0;
  3087.         units_of_cargo: 80;
  3088.         items_of_cargo: string(STR_CARGO_UNIT_LIMESTONE);
  3089.         penalty_lowerbound: 30;
  3090.         single_penalty_length: 255;
  3091.         price_factor: 66;
  3092.         capacity_multiplier: 1;
  3093.         cargo_label: "LIME";
  3094.         number: 27;
  3095.     }
  3096.     graphics {
  3097.         cargoicon_limestone;
  3098.     }
  3099. }
  3100.             }
  3101.     spriteset(cargoicon_lye) {
  3102.         [10 + 20 * 4, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3103.     }
  3104.             if (economy==2) {
  3105. item(FEAT_CARGOS, lye_EXTREME, 29) {
  3106.     property {
  3107.         type_name: string(STR_CARGO_NAME_LYE);
  3108.         unit_name: string(STR_CARGO_NAME_LYE);
  3109.         type_abbreviation: string(STR_CID_LYE);
  3110.         sprite: NEW_CARGO_SPRITE;
  3111.         weight: 1;
  3112.         station_list_colour: 184;
  3113.         cargo_payment_list_colour: 184;
  3114.         is_freight: 1;
  3115.         cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
  3116.         town_growth_effect: TOWNGROWTH_NONE;
  3117.         town_growth_multiplier: 1.0;
  3118.         units_of_cargo: 80;
  3119.         items_of_cargo: string(STR_CARGO_UNIT_LYE);
  3120.         penalty_lowerbound: 30;
  3121.         single_penalty_length: 255;
  3122.         price_factor: 109;
  3123.         capacity_multiplier: 1;
  3124.         cargo_label: "LYE_";
  3125.         number: 29;
  3126.     }
  3127.     graphics {
  3128.         cargoicon_lye;
  3129.     }
  3130. }
  3131.             }
  3132.     spriteset(cargoicon_machine_parts) {
  3133.         [10 + 20 * 14, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3134.     }
  3135.             if (economy==2) {
  3136. item(FEAT_CARGOS, machine_parts_EXTREME, 30) {
  3137.     property {
  3138.         type_name: string(STR_CARGO_NAME_MACHINE_PARTS);
  3139.         unit_name: string(STR_CARGO_NAME_MACHINE_PARTS);
  3140.         type_abbreviation: string(STR_CID_MACHINE_PARTS);
  3141.         sprite: NEW_CARGO_SPRITE;
  3142.         weight: 1.0;
  3143.         station_list_colour: 96;
  3144.         cargo_payment_list_colour: 96;
  3145.         is_freight: 1;
  3146.         cargo_classes: bitmask(CC_PIECE_GOODS);
  3147.         town_growth_effect: TOWNGROWTH_NONE;
  3148.         town_growth_multiplier: 1.0;
  3149.         units_of_cargo: 84;
  3150.         items_of_cargo: string(STR_CARGO_UNIT_MACHINE_PARTS);
  3151.         penalty_lowerbound: 7;
  3152.         single_penalty_length: 255;
  3153.         price_factor: 151;
  3154.         capacity_multiplier: 1;
  3155.         cargo_label: "MPTS";
  3156.         number: 30;
  3157.     }
  3158.     graphics {
  3159.         cargoicon_machine_parts;
  3160.     }
  3161. }
  3162.             }
  3163.     spriteset(cargoicon_mail) {
  3164.         [10 + 20 * 2, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3165.     }
  3166.             if (economy==0) {
  3167. item(FEAT_CARGOS, mail_BASIC_TEMPERATE, 2) {
  3168.     property {
  3169.         type_name: TTD_STR_CARGO_PLURAL_MAIL;
  3170.         unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
  3171.         type_abbreviation: TTD_STR_ABBREV_MAIL;
  3172.         sprite: NEW_CARGO_SPRITE;
  3173.         weight: 0.25;
  3174.         station_list_colour: 15;
  3175.         cargo_payment_list_colour: 15;
  3176.         is_freight: 0;
  3177.         cargo_classes: bitmask(CC_MAIL);
  3178.         town_growth_effect: TOWNGROWTH_MAIL;
  3179.         town_growth_multiplier: 1.0;
  3180.         units_of_cargo: TTD_STR_BAGS;
  3181.         items_of_cargo: TTD_STR_QUANTITY_MAIL;
  3182.         penalty_lowerbound: 6;
  3183.         single_penalty_length: 24;
  3184.         price_factor: 156;
  3185.         capacity_multiplier: 2;
  3186.         cargo_label: "MAIL";
  3187.         number: 2;
  3188.     }
  3189.     graphics {
  3190.         cargoicon_mail;
  3191.     }
  3192. }
  3193.             }
  3194.             if (economy==1) {
  3195. item(FEAT_CARGOS, mail_BASIC_ARCTIC, 2) {
  3196.     property {
  3197.         type_name: TTD_STR_CARGO_PLURAL_MAIL;
  3198.         unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
  3199.         type_abbreviation: TTD_STR_ABBREV_MAIL;
  3200.         sprite: NEW_CARGO_SPRITE;
  3201.         weight: 0.25;
  3202.         station_list_colour: 15;
  3203.         cargo_payment_list_colour: 15;
  3204.         is_freight: 0;
  3205.         cargo_classes: bitmask(CC_MAIL);
  3206.         town_growth_effect: TOWNGROWTH_MAIL;
  3207.         town_growth_multiplier: 1.0;
  3208.         units_of_cargo: TTD_STR_BAGS;
  3209.         items_of_cargo: TTD_STR_QUANTITY_MAIL;
  3210.         penalty_lowerbound: 6;
  3211.         single_penalty_length: 24;
  3212.         price_factor: 156;
  3213.         capacity_multiplier: 2;
  3214.         cargo_label: "MAIL";
  3215.         number: 2;
  3216.     }
  3217.     graphics {
  3218.         cargoicon_mail;
  3219.     }
  3220. }
  3221.             }
  3222.             if (economy==4) {
  3223. item(FEAT_CARGOS, mail_BASIC_TROPIC, 2) {
  3224.     property {
  3225.         type_name: TTD_STR_CARGO_PLURAL_MAIL;
  3226.         unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
  3227.         type_abbreviation: TTD_STR_ABBREV_MAIL;
  3228.         sprite: NEW_CARGO_SPRITE;
  3229.         weight: 0.25;
  3230.         station_list_colour: 15;
  3231.         cargo_payment_list_colour: 15;
  3232.         is_freight: 0;
  3233.         cargo_classes: bitmask(CC_MAIL);
  3234.         town_growth_effect: TOWNGROWTH_MAIL;
  3235.         town_growth_multiplier: 1.0;
  3236.         units_of_cargo: TTD_STR_BAGS;
  3237.         items_of_cargo: TTD_STR_QUANTITY_MAIL;
  3238.         penalty_lowerbound: 6;
  3239.         single_penalty_length: 24;
  3240.         price_factor: 156;
  3241.         capacity_multiplier: 2;
  3242.         cargo_label: "MAIL";
  3243.         number: 2;
  3244.     }
  3245.     graphics {
  3246.         cargoicon_mail;
  3247.     }
  3248. }
  3249.             }
  3250.             if (economy==5) {
  3251. item(FEAT_CARGOS, mail_STEELTOWN, 2) {
  3252.     property {
  3253.         type_name: TTD_STR_CARGO_PLURAL_MAIL;
  3254.         unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
  3255.         type_abbreviation: TTD_STR_ABBREV_MAIL;
  3256.         sprite: NEW_CARGO_SPRITE;
  3257.         weight: 0.25;
  3258.         station_list_colour: 15;
  3259.         cargo_payment_list_colour: 15;
  3260.         is_freight: 0;
  3261.         cargo_classes: bitmask(CC_MAIL);
  3262.         town_growth_effect: TOWNGROWTH_MAIL;
  3263.         town_growth_multiplier: 1.0;
  3264.         units_of_cargo: TTD_STR_BAGS;
  3265.         items_of_cargo: TTD_STR_QUANTITY_MAIL;
  3266.         penalty_lowerbound: 6;
  3267.         single_penalty_length: 24;
  3268.         price_factor: 156;
  3269.         capacity_multiplier: 2;
  3270.         cargo_label: "MAIL";
  3271.         number: 2;
  3272.     }
  3273.     graphics {
  3274.         cargoicon_mail;
  3275.     }
  3276. }
  3277.             }
  3278.             if (economy==3) {
  3279. item(FEAT_CARGOS, mail_MISTAH_KURTZ, 2) {
  3280.     property {
  3281.         type_name: TTD_STR_CARGO_PLURAL_MAIL;
  3282.         unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
  3283.         type_abbreviation: TTD_STR_ABBREV_MAIL;
  3284.         sprite: NEW_CARGO_SPRITE;
  3285.         weight: 0.25;
  3286.         station_list_colour: 15;
  3287.         cargo_payment_list_colour: 15;
  3288.         is_freight: 0;
  3289.         cargo_classes: bitmask(CC_MAIL);
  3290.         town_growth_effect: TOWNGROWTH_MAIL;
  3291.         town_growth_multiplier: 1.0;
  3292.         units_of_cargo: TTD_STR_BAGS;
  3293.         items_of_cargo: TTD_STR_QUANTITY_MAIL;
  3294.         penalty_lowerbound: 6;
  3295.         single_penalty_length: 24;
  3296.         price_factor: 156;
  3297.         capacity_multiplier: 2;
  3298.         cargo_label: "MAIL";
  3299.         number: 2;
  3300.     }
  3301.     graphics {
  3302.         cargoicon_mail;
  3303.     }
  3304. }
  3305.             }
  3306.             if (economy==2) {
  3307. item(FEAT_CARGOS, mail_EXTREME, 2) {
  3308.     property {
  3309.         type_name: TTD_STR_CARGO_PLURAL_MAIL;
  3310.         unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
  3311.         type_abbreviation: TTD_STR_ABBREV_MAIL;
  3312.         sprite: NEW_CARGO_SPRITE;
  3313.         weight: 0.25;
  3314.         station_list_colour: 15;
  3315.         cargo_payment_list_colour: 15;
  3316.         is_freight: 0;
  3317.         cargo_classes: bitmask(CC_MAIL);
  3318.         town_growth_effect: TOWNGROWTH_MAIL;
  3319.         town_growth_multiplier: 1.0;
  3320.         units_of_cargo: TTD_STR_BAGS;
  3321.         items_of_cargo: TTD_STR_QUANTITY_MAIL;
  3322.         penalty_lowerbound: 6;
  3323.         single_penalty_length: 24;
  3324.         price_factor: 156;
  3325.         capacity_multiplier: 2;
  3326.         cargo_label: "MAIL";
  3327.         number: 2;
  3328.     }
  3329.     graphics {
  3330.         cargoicon_mail;
  3331.     }
  3332. }
  3333.             }
  3334.     spriteset(cargoicon_maize) {
  3335.         [10 + 20 * 11, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3336.     }
  3337.             if (economy==3) {
  3338. item(FEAT_CARGOS, maize_MISTAH_KURTZ, 19) {
  3339.     property {
  3340.         type_name: TTD_STR_CARGO_PLURAL_MAIZE;
  3341.         unit_name: TTD_STR_CARGO_SINGULAR_MAIZE;
  3342.         type_abbreviation: TTD_STR_ABBREV_MAIZE;
  3343.         sprite: NEW_CARGO_SPRITE;
  3344.         weight: 1.0;
  3345.         station_list_colour: 191;
  3346.         cargo_payment_list_colour: 191;
  3347.         is_freight: 1;
  3348.         cargo_classes: bitmask(CC_BULK);
  3349.         town_growth_effect: TOWNGROWTH_NONE;
  3350.         town_growth_multiplier: 1.0;
  3351.         units_of_cargo: TTD_STR_TONS;
  3352.         items_of_cargo: TTD_STR_QUANTITY_MAIZE;
  3353.         penalty_lowerbound: 4;
  3354.         single_penalty_length: 40;
  3355.         price_factor: 103;
  3356.         capacity_multiplier: 1;
  3357.         cargo_label: "MAIZ";
  3358.         number: 19;
  3359.     }
  3360.     graphics {
  3361.         cargoicon_maize;
  3362.     }
  3363. }
  3364.             }
  3365.     spriteset(cargoicon_manganese) {
  3366.         [10 + 20 * 9, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3367.     }
  3368.             if (economy==5) {
  3369. item(FEAT_CARGOS, manganese_STEELTOWN, 12) {
  3370.     property {
  3371.         type_name: string(STR_CARGO_NAME_MANGANESE);
  3372.         unit_name: string(STR_CARGO_NAME_MANGANESE);
  3373.         type_abbreviation: string(STR_CID_MANGANESE);
  3374.         sprite: NEW_CARGO_SPRITE;
  3375.         weight: 1.0;
  3376.         station_list_colour: 16;
  3377.         cargo_payment_list_colour: 16;
  3378.         is_freight: 1;
  3379.         cargo_classes: bitmask(CC_BULK);
  3380.         town_growth_effect: TOWNGROWTH_NONE;
  3381.         town_growth_multiplier: 1.0;
  3382.         units_of_cargo: 80;
  3383.         items_of_cargo: string(STR_CARGO_UNIT_MANGANESE);
  3384.         penalty_lowerbound: 30;
  3385.         single_penalty_length: 255;
  3386.         price_factor: 75;
  3387.         capacity_multiplier: 1;
  3388.         cargo_label: "MNO2";
  3389.         number: 12;
  3390.     }
  3391.     graphics {
  3392.         cargoicon_manganese;
  3393.     }
  3394. }
  3395.             }
  3396.             if (economy==3) {
  3397. item(FEAT_CARGOS, manganese_MISTAH_KURTZ, 20) {
  3398.     property {
  3399.         type_name: string(STR_CARGO_NAME_MANGANESE);
  3400.         unit_name: string(STR_CARGO_NAME_MANGANESE);
  3401.         type_abbreviation: string(STR_CID_MANGANESE);
  3402.         sprite: NEW_CARGO_SPRITE;
  3403.         weight: 1.0;
  3404.         station_list_colour: 16;
  3405.         cargo_payment_list_colour: 16;
  3406.         is_freight: 1;
  3407.         cargo_classes: bitmask(CC_BULK);
  3408.         town_growth_effect: TOWNGROWTH_NONE;
  3409.         town_growth_multiplier: 1.0;
  3410.         units_of_cargo: 80;
  3411.         items_of_cargo: string(STR_CARGO_UNIT_MANGANESE);
  3412.         penalty_lowerbound: 30;
  3413.         single_penalty_length: 255;
  3414.         price_factor: 75;
  3415.         capacity_multiplier: 1;
  3416.         cargo_label: "MNO2";
  3417.         number: 20;
  3418.     }
  3419.     graphics {
  3420.         cargoicon_manganese;
  3421.     }
  3422. }
  3423.             }
  3424.     spriteset(cargoicon_metal) {
  3425.         [10 + 20 * 1, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3426.     }
  3427.     spriteset(cargoicon_milk) {
  3428.         [10 + 20 * 13, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3429.     }
  3430.             if (economy==0) {
  3431. item(FEAT_CARGOS, milk_BASIC_TEMPERATE, 14) {
  3432.     property {
  3433.         type_name: string(STR_CARGO_NAME_MILK);
  3434.         unit_name: string(STR_CARGO_NAME_MILK);
  3435.         type_abbreviation: string(STR_CID_MILK);
  3436.         sprite: NEW_CARGO_SPRITE;
  3437.         weight: 1.1;
  3438.         station_list_colour: 161;
  3439.         cargo_payment_list_colour: 161;
  3440.         is_freight: 1;
  3441.         cargo_classes: bitmask(CC_EXPRESS, CC_LIQUID, CC_REFRIGERATED);
  3442.         town_growth_effect: TOWNGROWTH_NONE;
  3443.         town_growth_multiplier: 1.0;
  3444.         units_of_cargo: 82;
  3445.         items_of_cargo: string(STR_CARGO_UNIT_MILK);
  3446.         penalty_lowerbound: 0;
  3447.         single_penalty_length: 16;
  3448.         price_factor: 145;
  3449.         capacity_multiplier: 1;
  3450.         cargo_label: "MILK";
  3451.         number: 14;
  3452.     }
  3453.     graphics {
  3454.         cargoicon_milk;
  3455.     }
  3456. }
  3457.             }
  3458.             if (economy==2) {
  3459. item(FEAT_CARGOS, milk_EXTREME, 31) {
  3460.     property {
  3461.         type_name: string(STR_CARGO_NAME_MILK);
  3462.         unit_name: string(STR_CARGO_NAME_MILK);
  3463.         type_abbreviation: string(STR_CID_MILK);
  3464.         sprite: NEW_CARGO_SPRITE;
  3465.         weight: 1.1;
  3466.         station_list_colour: 161;
  3467.         cargo_payment_list_colour: 161;
  3468.         is_freight: 1;
  3469.         cargo_classes: bitmask(CC_EXPRESS, CC_LIQUID, CC_REFRIGERATED);
  3470.         town_growth_effect: TOWNGROWTH_NONE;
  3471.         town_growth_multiplier: 1.0;
  3472.         units_of_cargo: 82;
  3473.         items_of_cargo: string(STR_CARGO_UNIT_MILK);
  3474.         penalty_lowerbound: 0;
  3475.         single_penalty_length: 16;
  3476.         price_factor: 145;
  3477.         capacity_multiplier: 1;
  3478.         cargo_label: "MILK";
  3479.         number: 31;
  3480.     }
  3481.     graphics {
  3482.         cargoicon_milk;
  3483.     }
  3484. }
  3485.             }
  3486.     spriteset(cargoicon_nitrates) {
  3487.         [10 + 20 * 7, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3488.     }
  3489.             if (economy==4) {
  3490. item(FEAT_CARGOS, nitrates_BASIC_TROPIC, 16) {
  3491.     property {
  3492.         type_name: string(STR_CARGO_NAME_NITRATES);
  3493.         unit_name: string(STR_CARGO_NAME_NITRATES);
  3494.         type_abbreviation: string(STR_CID_NITRATES);
  3495.         sprite: NEW_CARGO_SPRITE;
  3496.         weight: 1.0;
  3497.         station_list_colour: 39;
  3498.         cargo_payment_list_colour: 39;
  3499.         is_freight: 1;
  3500.         cargo_classes: bitmask(CC_BULK);
  3501.         town_growth_effect: TOWNGROWTH_NONE;
  3502.         town_growth_multiplier: 1.0;
  3503.         units_of_cargo: 80;
  3504.         items_of_cargo: string(STR_CARGO_UNIT_NITRATES);
  3505.         penalty_lowerbound: 30;
  3506.         single_penalty_length: 255;
  3507.         price_factor: 96;
  3508.         capacity_multiplier: 1;
  3509.         cargo_label: "NITR";
  3510.         number: 16;
  3511.     }
  3512.     graphics {
  3513.         cargoicon_nitrates;
  3514.     }
  3515. }
  3516.             }
  3517.     spriteset(cargoicon_nuts) {
  3518.         [10 + 20 * 12, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3519.     }
  3520.             if (economy==3) {
  3521. item(FEAT_CARGOS, nuts_MISTAH_KURTZ, 21) {
  3522.     property {
  3523.         type_name: string(STR_CARGO_NAME_NUTS);
  3524.         unit_name: string(STR_CARGO_NAME_NUTS);
  3525.         type_abbreviation: string(STR_CID_NUTS);
  3526.         sprite: NEW_CARGO_SPRITE;
  3527.         weight: 0.25;
  3528.         station_list_colour: 178;
  3529.         cargo_payment_list_colour: 178;
  3530.         is_freight: 1;
  3531.         cargo_classes: bitmask(CC_PIECE_GOODS);
  3532.         town_growth_effect: TOWNGROWTH_NONE;
  3533.         town_growth_multiplier: 1.0;
  3534.         units_of_cargo: TTD_STR_TONS;
  3535.         items_of_cargo: string(STR_CARGO_UNIT_NUTS);
  3536.         penalty_lowerbound: 4;
  3537.         single_penalty_length: 40;
  3538.         price_factor: 116;
  3539.         capacity_multiplier: 1;
  3540.         cargo_label: "NUTS";
  3541.         number: 21;
  3542.     }
  3543.     graphics {
  3544.         cargoicon_nuts;
  3545.     }
  3546. }
  3547.             }
  3548.     spriteset(cargoicon_oil) {
  3549.         [10 + 20 * 3, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3550.     }
  3551.             if (economy==4) {
  3552. item(FEAT_CARGOS, oil_BASIC_TROPIC, 17) {
  3553.     property {
  3554.         type_name: TTD_STR_CARGO_PLURAL_OIL;
  3555.         unit_name: TTD_STR_CARGO_SINGULAR_OIL;
  3556.         type_abbreviation: TTD_STR_ABBREV_OIL;
  3557.         sprite: NEW_CARGO_SPRITE;
  3558.         weight: 0.9;
  3559.         station_list_colour: 171;
  3560.         cargo_payment_list_colour: 171;
  3561.         is_freight: 1;
  3562.         cargo_classes: bitmask(CC_LIQUID);
  3563.         town_growth_effect: TOWNGROWTH_NONE;
  3564.         town_growth_multiplier: 1.0;
  3565.         units_of_cargo: TTD_STR_LITERS;
  3566.         items_of_cargo: TTD_STR_QUANTITY_OIL;
  3567.         penalty_lowerbound: 30;
  3568.         single_penalty_length: 255;
  3569.         price_factor: 93;
  3570.         capacity_multiplier: 1;
  3571.         cargo_label: "OIL_";
  3572.         number: 17;
  3573.     }
  3574.     graphics {
  3575.         cargoicon_oil;
  3576.     }
  3577. }
  3578.             }
  3579.             if (economy==3) {
  3580. item(FEAT_CARGOS, oil_MISTAH_KURTZ, 22) {
  3581.     property {
  3582.         type_name: TTD_STR_CARGO_PLURAL_OIL;
  3583.         unit_name: TTD_STR_CARGO_SINGULAR_OIL;
  3584.         type_abbreviation: TTD_STR_ABBREV_OIL;
  3585.         sprite: NEW_CARGO_SPRITE;
  3586.         weight: 0.9;
  3587.         station_list_colour: 171;
  3588.         cargo_payment_list_colour: 171;
  3589.         is_freight: 1;
  3590.         cargo_classes: bitmask(CC_LIQUID);
  3591.         town_growth_effect: TOWNGROWTH_NONE;
  3592.         town_growth_multiplier: 1.0;
  3593.         units_of_cargo: TTD_STR_LITERS;
  3594.         items_of_cargo: TTD_STR_QUANTITY_OIL;
  3595.         penalty_lowerbound: 30;
  3596.         single_penalty_length: 255;
  3597.         price_factor: 93;
  3598.         capacity_multiplier: 1;
  3599.         cargo_label: "OIL_";
  3600.         number: 22;
  3601.     }
  3602.     graphics {
  3603.         cargoicon_oil;
  3604.     }
  3605. }
  3606.             }
  3607.             if (economy==2) {
  3608. item(FEAT_CARGOS, oil_EXTREME, 32) {
  3609.     property {
  3610.         type_name: TTD_STR_CARGO_PLURAL_OIL;
  3611.         unit_name: TTD_STR_CARGO_SINGULAR_OIL;
  3612.         type_abbreviation: TTD_STR_ABBREV_OIL;
  3613.         sprite: NEW_CARGO_SPRITE;
  3614.         weight: 0.9;
  3615.         station_list_colour: 171;
  3616.         cargo_payment_list_colour: 171;
  3617.         is_freight: 1;
  3618.         cargo_classes: bitmask(CC_LIQUID);
  3619.         town_growth_effect: TOWNGROWTH_NONE;
  3620.         town_growth_multiplier: 1.0;
  3621.         units_of_cargo: TTD_STR_LITERS;
  3622.         items_of_cargo: TTD_STR_QUANTITY_OIL;
  3623.         penalty_lowerbound: 30;
  3624.         single_penalty_length: 255;
  3625.         price_factor: 93;
  3626.         capacity_multiplier: 1;
  3627.         cargo_label: "OIL_";
  3628.         number: 32;
  3629.     }
  3630.     graphics {
  3631.         cargoicon_oil;
  3632.     }
  3633. }
  3634.             }
  3635.     spriteset(cargoicon_packaging) {
  3636.         [10 + 20 * 7, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3637.     }
  3638.     spriteset(cargoicon_paper) {
  3639.         [10 + 20 * 5, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3640.     }
  3641.             if (economy==1) {
  3642. item(FEAT_CARGOS, paper_BASIC_ARCTIC, 6) {
  3643.     property {
  3644.         type_name: TTD_STR_CARGO_PLURAL_PAPER;
  3645.         unit_name: TTD_STR_CARGO_SINGULAR_PAPER;
  3646.         type_abbreviation: TTD_STR_ABBREV_PAPER;
  3647.         sprite: NEW_CARGO_SPRITE;
  3648.         weight: 1.0;
  3649.         station_list_colour: 23;
  3650.         cargo_payment_list_colour: 23;
  3651.         is_freight: 1;
  3652.         cargo_classes: bitmask(CC_PIECE_GOODS);
  3653.         town_growth_effect: TOWNGROWTH_NONE;
  3654.         town_growth_multiplier: 1.0;
  3655.         units_of_cargo: TTD_STR_TONS;
  3656.         items_of_cargo: TTD_STR_QUANTITY_PAPER;
  3657.         penalty_lowerbound: 12;
  3658.         single_penalty_length: 60;
  3659.         price_factor: 140;
  3660.         capacity_multiplier: 1;
  3661.         cargo_label: "PAPR";
  3662.         number: 6;
  3663.     }
  3664.     graphics {
  3665.         cargoicon_paper;
  3666.     }
  3667. }
  3668.             }
  3669.             if (economy==2) {
  3670. item(FEAT_CARGOS, paper_EXTREME, 33) {
  3671.     property {
  3672.         type_name: TTD_STR_CARGO_PLURAL_PAPER;
  3673.         unit_name: TTD_STR_CARGO_SINGULAR_PAPER;
  3674.         type_abbreviation: TTD_STR_ABBREV_PAPER;
  3675.         sprite: NEW_CARGO_SPRITE;
  3676.         weight: 1.0;
  3677.         station_list_colour: 23;
  3678.         cargo_payment_list_colour: 23;
  3679.         is_freight: 1;
  3680.         cargo_classes: bitmask(CC_PIECE_GOODS);
  3681.         town_growth_effect: TOWNGROWTH_NONE;
  3682.         town_growth_multiplier: 1.0;
  3683.         units_of_cargo: TTD_STR_TONS;
  3684.         items_of_cargo: TTD_STR_QUANTITY_PAPER;
  3685.         penalty_lowerbound: 12;
  3686.         single_penalty_length: 60;
  3687.         price_factor: 140;
  3688.         capacity_multiplier: 1;
  3689.         cargo_label: "PAPR";
  3690.         number: 33;
  3691.     }
  3692.     graphics {
  3693.         cargoicon_paper;
  3694.     }
  3695. }
  3696.             }
  3697.     spriteset(cargoicon_passengers) {
  3698.         [10 + 20 * 0, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3699.     }
  3700.             if (economy==0) {
  3701. item(FEAT_CARGOS, passengers_BASIC_TEMPERATE, 0) {
  3702.     property {
  3703.         type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
  3704.         unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
  3705.         type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
  3706.         sprite: NEW_CARGO_SPRITE;
  3707.         weight: 0.0625;
  3708.         station_list_colour: 152;
  3709.         cargo_payment_list_colour: 152;
  3710.         is_freight: 0;
  3711.         cargo_classes: bitmask(CC_PASSENGERS);
  3712.         town_growth_effect: TOWNGROWTH_PASSENGERS;
  3713.         town_growth_multiplier: 1.0;
  3714.         units_of_cargo: TTD_STR_PASSENGERS;
  3715.         items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
  3716.         penalty_lowerbound: 0;
  3717.         single_penalty_length: 22;
  3718.         price_factor: 105;
  3719.         capacity_multiplier: 4;
  3720.         cargo_label: "PASS";
  3721.         number: 0;
  3722.     }
  3723.     graphics {
  3724.         cargoicon_passengers;
  3725.     }
  3726. }
  3727.             }
  3728.             if (economy==1) {
  3729. item(FEAT_CARGOS, passengers_BASIC_ARCTIC, 0) {
  3730.     property {
  3731.         type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
  3732.         unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
  3733.         type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
  3734.         sprite: NEW_CARGO_SPRITE;
  3735.         weight: 0.0625;
  3736.         station_list_colour: 152;
  3737.         cargo_payment_list_colour: 152;
  3738.         is_freight: 0;
  3739.         cargo_classes: bitmask(CC_PASSENGERS);
  3740.         town_growth_effect: TOWNGROWTH_PASSENGERS;
  3741.         town_growth_multiplier: 1.0;
  3742.         units_of_cargo: TTD_STR_PASSENGERS;
  3743.         items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
  3744.         penalty_lowerbound: 0;
  3745.         single_penalty_length: 22;
  3746.         price_factor: 105;
  3747.         capacity_multiplier: 4;
  3748.         cargo_label: "PASS";
  3749.         number: 0;
  3750.     }
  3751.     graphics {
  3752.         cargoicon_passengers;
  3753.     }
  3754. }
  3755.             }
  3756.             if (economy==4) {
  3757. item(FEAT_CARGOS, passengers_BASIC_TROPIC, 0) {
  3758.     property {
  3759.         type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
  3760.         unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
  3761.         type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
  3762.         sprite: NEW_CARGO_SPRITE;
  3763.         weight: 0.0625;
  3764.         station_list_colour: 152;
  3765.         cargo_payment_list_colour: 152;
  3766.         is_freight: 0;
  3767.         cargo_classes: bitmask(CC_PASSENGERS);
  3768.         town_growth_effect: TOWNGROWTH_PASSENGERS;
  3769.         town_growth_multiplier: 1.0;
  3770.         units_of_cargo: TTD_STR_PASSENGERS;
  3771.         items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
  3772.         penalty_lowerbound: 0;
  3773.         single_penalty_length: 22;
  3774.         price_factor: 105;
  3775.         capacity_multiplier: 4;
  3776.         cargo_label: "PASS";
  3777.         number: 0;
  3778.     }
  3779.     graphics {
  3780.         cargoicon_passengers;
  3781.     }
  3782. }
  3783.             }
  3784.             if (economy==5) {
  3785. item(FEAT_CARGOS, passengers_STEELTOWN, 0) {
  3786.     property {
  3787.         type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
  3788.         unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
  3789.         type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
  3790.         sprite: NEW_CARGO_SPRITE;
  3791.         weight: 0.0625;
  3792.         station_list_colour: 152;
  3793.         cargo_payment_list_colour: 152;
  3794.         is_freight: 0;
  3795.         cargo_classes: bitmask(CC_PASSENGERS);
  3796.         town_growth_effect: TOWNGROWTH_PASSENGERS;
  3797.         town_growth_multiplier: 1.0;
  3798.         units_of_cargo: TTD_STR_PASSENGERS;
  3799.         items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
  3800.         penalty_lowerbound: 0;
  3801.         single_penalty_length: 22;
  3802.         price_factor: 105;
  3803.         capacity_multiplier: 4;
  3804.         cargo_label: "PASS";
  3805.         number: 0;
  3806.     }
  3807.     graphics {
  3808.         cargoicon_passengers;
  3809.     }
  3810. }
  3811.             }
  3812.             if (economy==3) {
  3813. item(FEAT_CARGOS, passengers_MISTAH_KURTZ, 0) {
  3814.     property {
  3815.         type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
  3816.         unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
  3817.         type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
  3818.         sprite: NEW_CARGO_SPRITE;
  3819.         weight: 0.0625;
  3820.         station_list_colour: 152;
  3821.         cargo_payment_list_colour: 152;
  3822.         is_freight: 0;
  3823.         cargo_classes: bitmask(CC_PASSENGERS);
  3824.         town_growth_effect: TOWNGROWTH_PASSENGERS;
  3825.         town_growth_multiplier: 1.0;
  3826.         units_of_cargo: TTD_STR_PASSENGERS;
  3827.         items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
  3828.         penalty_lowerbound: 0;
  3829.         single_penalty_length: 22;
  3830.         price_factor: 105;
  3831.         capacity_multiplier: 4;
  3832.         cargo_label: "PASS";
  3833.         number: 0;
  3834.     }
  3835.     graphics {
  3836.         cargoicon_passengers;
  3837.     }
  3838. }
  3839.             }
  3840.             if (economy==2) {
  3841. item(FEAT_CARGOS, passengers_EXTREME, 0) {
  3842.     property {
  3843.         type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
  3844.         unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
  3845.         type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
  3846.         sprite: NEW_CARGO_SPRITE;
  3847.         weight: 0.0625;
  3848.         station_list_colour: 152;
  3849.         cargo_payment_list_colour: 152;
  3850.         is_freight: 0;
  3851.         cargo_classes: bitmask(CC_PASSENGERS);
  3852.         town_growth_effect: TOWNGROWTH_PASSENGERS;
  3853.         town_growth_multiplier: 1.0;
  3854.         units_of_cargo: TTD_STR_PASSENGERS;
  3855.         items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
  3856.         penalty_lowerbound: 0;
  3857.         single_penalty_length: 22;
  3858.         price_factor: 105;
  3859.         capacity_multiplier: 4;
  3860.         cargo_label: "PASS";
  3861.         number: 0;
  3862.     }
  3863.     graphics {
  3864.         cargoicon_passengers;
  3865.     }
  3866. }
  3867.             }
  3868.     spriteset(cargoicon_peat) {
  3869.         [10 + 20 * 6, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3870.     }
  3871.             if (economy==1) {
  3872. item(FEAT_CARGOS, peat_BASIC_ARCTIC, 18) {
  3873.     property {
  3874.         type_name: string(STR_CARGO_NAME_PEAT);
  3875.         unit_name: string(STR_CARGO_NAME_PEAT);
  3876.         type_abbreviation: string(STR_CID_PEAT);
  3877.         sprite: NEW_CARGO_SPRITE;
  3878.         weight: 1.0;
  3879.         station_list_colour: 26;
  3880.         cargo_payment_list_colour: 26;
  3881.         is_freight: 1;
  3882.         cargo_classes: bitmask(CC_BULK);
  3883.         town_growth_effect: TOWNGROWTH_NONE;
  3884.         town_growth_multiplier: 1.0;
  3885.         units_of_cargo: TTD_STR_TONS;
  3886.         items_of_cargo: string(STR_CARGO_UNIT_PEAT);
  3887.         penalty_lowerbound: 30;
  3888.         single_penalty_length: 255;
  3889.         price_factor: 72;
  3890.         capacity_multiplier: 1;
  3891.         cargo_label: "PEAT";
  3892.         number: 18;
  3893.     }
  3894.     graphics {
  3895.         cargoicon_peat;
  3896.     }
  3897. }
  3898.             }
  3899.     spriteset(cargoicon_petrol) {
  3900.         [10 + 20 * 12, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3901.     }
  3902.             if (economy==5) {
  3903. item(FEAT_CARGOS, petrol_STEELTOWN, 17) {
  3904.     property {
  3905.         type_name: string(STR_CARGO_NAME_PETROL);
  3906.         unit_name: string(STR_CARGO_NAME_PETROL);
  3907.         type_abbreviation: string(STR_CID_PETROL);
  3908.         sprite: NEW_CARGO_SPRITE;
  3909.         weight: 0.8;
  3910.         station_list_colour: 175;
  3911.         cargo_payment_list_colour: 175;
  3912.         is_freight: 1;
  3913.         cargo_classes: bitmask(CC_LIQUID);
  3914.         town_growth_effect: TOWNGROWTH_GOODS;
  3915.         town_growth_multiplier: 1.0;
  3916.         units_of_cargo: 82;
  3917.         items_of_cargo: string(STR_CARGO_UNIT_PETROL);
  3918.         penalty_lowerbound: 18;
  3919.         single_penalty_length: 255;
  3920.         price_factor: 143;
  3921.         capacity_multiplier: 1;
  3922.         cargo_label: "PETR";
  3923.         number: 17;
  3924.     }
  3925.     graphics {
  3926.         cargoicon_petrol;
  3927.     }
  3928. }
  3929.             }
  3930.             if (economy==3) {
  3931. item(FEAT_CARGOS, petrol_MISTAH_KURTZ, 23) {
  3932.     property {
  3933.         type_name: string(STR_CARGO_NAME_PETROL);
  3934.         unit_name: string(STR_CARGO_NAME_PETROL);
  3935.         type_abbreviation: string(STR_CID_PETROL);
  3936.         sprite: NEW_CARGO_SPRITE;
  3937.         weight: 0.8;
  3938.         station_list_colour: 175;
  3939.         cargo_payment_list_colour: 175;
  3940.         is_freight: 1;
  3941.         cargo_classes: bitmask(CC_LIQUID);
  3942.         town_growth_effect: TOWNGROWTH_GOODS;
  3943.         town_growth_multiplier: 1.0;
  3944.         units_of_cargo: 82;
  3945.         items_of_cargo: string(STR_CARGO_UNIT_PETROL);
  3946.         penalty_lowerbound: 18;
  3947.         single_penalty_length: 255;
  3948.         price_factor: 143;
  3949.         capacity_multiplier: 1;
  3950.         cargo_label: "PETR";
  3951.         number: 23;
  3952.     }
  3953.     graphics {
  3954.         cargoicon_petrol;
  3955.     }
  3956. }
  3957.             }
  3958.             if (economy==2) {
  3959. item(FEAT_CARGOS, petrol_EXTREME, 34) {
  3960.     property {
  3961.         type_name: string(STR_CARGO_NAME_PETROL);
  3962.         unit_name: string(STR_CARGO_NAME_PETROL);
  3963.         type_abbreviation: string(STR_CID_PETROL);
  3964.         sprite: NEW_CARGO_SPRITE;
  3965.         weight: 0.8;
  3966.         station_list_colour: 175;
  3967.         cargo_payment_list_colour: 175;
  3968.         is_freight: 1;
  3969.         cargo_classes: bitmask(CC_LIQUID);
  3970.         town_growth_effect: TOWNGROWTH_GOODS;
  3971.         town_growth_multiplier: 1.0;
  3972.         units_of_cargo: 82;
  3973.         items_of_cargo: string(STR_CARGO_UNIT_PETROL);
  3974.         penalty_lowerbound: 18;
  3975.         single_penalty_length: 255;
  3976.         price_factor: 143;
  3977.         capacity_multiplier: 1;
  3978.         cargo_label: "PETR";
  3979.         number: 34;
  3980.     }
  3981.     graphics {
  3982.         cargoicon_petrol;
  3983.     }
  3984. }
  3985.             }
  3986.     spriteset(cargoicon_phosphate) {
  3987.         [10 + 20 * 10, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  3988.     }
  3989.             if (economy==1) {
  3990. item(FEAT_CARGOS, phosphate_BASIC_ARCTIC, 10) {
  3991.     property {
  3992.         type_name: string(STR_CARGO_NAME_PHOSPHATE);
  3993.         unit_name: string(STR_CARGO_NAME_PHOSPHATE);
  3994.         type_abbreviation: string(STR_CID_PHOSPHATE);
  3995.         sprite: NEW_CARGO_SPRITE;
  3996.         weight: 1.0;
  3997.         station_list_colour: 64;
  3998.         cargo_payment_list_colour: 64;
  3999.         is_freight: 1;
  4000.         cargo_classes: bitmask(CC_BULK);
  4001.         town_growth_effect: TOWNGROWTH_NONE;
  4002.         town_growth_multiplier: 1.0;
  4003.         units_of_cargo: 80;
  4004.         items_of_cargo: string(STR_CARGO_UNIT_PHOSPHATE);
  4005.         penalty_lowerbound: 30;
  4006.         single_penalty_length: 255;
  4007.         price_factor: 95;
  4008.         capacity_multiplier: 1;
  4009.         cargo_label: "PHOS";
  4010.         number: 10;
  4011.     }
  4012.     graphics {
  4013.         cargoicon_phosphate;
  4014.     }
  4015. }
  4016.             }
  4017.             if (economy==3) {
  4018. item(FEAT_CARGOS, phosphate_MISTAH_KURTZ, 24) {
  4019.     property {
  4020.         type_name: string(STR_CARGO_NAME_PHOSPHATE);
  4021.         unit_name: string(STR_CARGO_NAME_PHOSPHATE);
  4022.         type_abbreviation: string(STR_CID_PHOSPHATE);
  4023.         sprite: NEW_CARGO_SPRITE;
  4024.         weight: 1.0;
  4025.         station_list_colour: 64;
  4026.         cargo_payment_list_colour: 64;
  4027.         is_freight: 1;
  4028.         cargo_classes: bitmask(CC_BULK);
  4029.         town_growth_effect: TOWNGROWTH_NONE;
  4030.         town_growth_multiplier: 1.0;
  4031.         units_of_cargo: 80;
  4032.         items_of_cargo: string(STR_CARGO_UNIT_PHOSPHATE);
  4033.         penalty_lowerbound: 30;
  4034.         single_penalty_length: 255;
  4035.         price_factor: 95;
  4036.         capacity_multiplier: 1;
  4037.         cargo_label: "PHOS";
  4038.         number: 24;
  4039.     }
  4040.     graphics {
  4041.         cargoicon_phosphate;
  4042.     }
  4043. }
  4044.             }
  4045.             if (economy==2) {
  4046. item(FEAT_CARGOS, phosphate_EXTREME, 35) {
  4047.     property {
  4048.         type_name: string(STR_CARGO_NAME_PHOSPHATE);
  4049.         unit_name: string(STR_CARGO_NAME_PHOSPHATE);
  4050.         type_abbreviation: string(STR_CID_PHOSPHATE);
  4051.         sprite: NEW_CARGO_SPRITE;
  4052.         weight: 1.0;
  4053.         station_list_colour: 64;
  4054.         cargo_payment_list_colour: 64;
  4055.         is_freight: 1;
  4056.         cargo_classes: bitmask(CC_BULK);
  4057.         town_growth_effect: TOWNGROWTH_NONE;
  4058.         town_growth_multiplier: 1.0;
  4059.         units_of_cargo: 80;
  4060.         items_of_cargo: string(STR_CARGO_UNIT_PHOSPHATE);
  4061.         penalty_lowerbound: 30;
  4062.         single_penalty_length: 255;
  4063.         price_factor: 95;
  4064.         capacity_multiplier: 1;
  4065.         cargo_label: "PHOS";
  4066.         number: 35;
  4067.     }
  4068.     graphics {
  4069.         cargoicon_phosphate;
  4070.     }
  4071. }
  4072.             }
  4073.     spriteset(cargoicon_pig_iron) {
  4074.         [10 + 20 * 4, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4075.     }
  4076.             if (economy==5) {
  4077. item(FEAT_CARGOS, pig_iron_STEELTOWN, 15) {
  4078.     property {
  4079.         type_name: string(STR_CARGO_NAME_PIG_IRON);
  4080.         unit_name: string(STR_CARGO_NAME_PIG_IRON);
  4081.         type_abbreviation: string(STR_CID_PIG_IRON);
  4082.         sprite: NEW_CARGO_SPRITE;
  4083.         weight: 1.0;
  4084.         station_list_colour: 112;
  4085.         cargo_payment_list_colour: 112;
  4086.         is_freight: 1;
  4087.         cargo_classes: bitmask(CC_PIECE_GOODS);
  4088.         town_growth_effect: TOWNGROWTH_NONE;
  4089.         town_growth_multiplier: 1.0;
  4090.         units_of_cargo: 80;
  4091.         items_of_cargo: string(STR_CARGO_UNIT_PIG_IRON);
  4092.         penalty_lowerbound: 15;
  4093.         single_penalty_length: 255;
  4094.         price_factor: 121;
  4095.         capacity_multiplier: 1;
  4096.         cargo_label: "IRON";
  4097.         number: 15;
  4098.     }
  4099.     graphics {
  4100.         cargoicon_pig_iron;
  4101.     }
  4102. }
  4103.             }
  4104.     spriteset(cargoicon_pipe) {
  4105.         [10 + 20 * 7, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4106.     }
  4107.             if (economy==5) {
  4108. item(FEAT_CARGOS, pipe_STEELTOWN, 24) {
  4109.     property {
  4110.         type_name: string(STR_CARGO_NAME_PIPE);
  4111.         unit_name: string(STR_CARGO_NAME_PIPE);
  4112.         type_abbreviation: string(STR_CID_PIPE);
  4113.         sprite: NEW_CARGO_SPRITE;
  4114.         weight: 1.0;
  4115.         station_list_colour: 198;
  4116.         cargo_payment_list_colour: 198;
  4117.         is_freight: 1;
  4118.         cargo_classes: bitmask(CC_PIECE_GOODS);
  4119.         town_growth_effect: TOWNGROWTH_NONE;
  4120.         town_growth_multiplier: 1.0;
  4121.         units_of_cargo: 80;
  4122.         items_of_cargo: string(STR_CARGO_UNIT_PIPE);
  4123.         penalty_lowerbound: 12;
  4124.         single_penalty_length: 255;
  4125.         price_factor: 129;
  4126.         capacity_multiplier: 1;
  4127.         cargo_label: "PIPE";
  4128.         number: 24;
  4129.     }
  4130.     graphics {
  4131.         cargoicon_pipe;
  4132.     }
  4133. }
  4134.             }
  4135.     spriteset(cargoicon_plant_fibres) {
  4136.         [10 + 20 * 3, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4137.     }
  4138.     spriteset(cargoicon_plastic) {
  4139.         [10 + 20 * 7, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4140.     }
  4141.             if (economy==2) {
  4142. item(FEAT_CARGOS, plastic_EXTREME, 36) {
  4143.     property {
  4144.         type_name: string(STR_CARGO_NAME_PLASTIC);
  4145.         unit_name: string(STR_CARGO_NAME_PLASTIC);
  4146.         type_abbreviation: string(STR_CID_PLASTIC);
  4147.         sprite: NEW_CARGO_SPRITE;
  4148.         weight: 0.65;
  4149.         station_list_colour: 145;
  4150.         cargo_payment_list_colour: 145;
  4151.         is_freight: 1;
  4152.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_BULK, CC_COVERED);
  4153.         town_growth_effect: TOWNGROWTH_NONE;
  4154.         town_growth_multiplier: 1.0;
  4155.         units_of_cargo: 84;
  4156.         items_of_cargo: string(STR_CARGO_UNIT_PLASTIC);
  4157.         penalty_lowerbound: 16;
  4158.         single_penalty_length: 120;
  4159.         price_factor: 127;
  4160.         capacity_multiplier: 1;
  4161.         cargo_label: "PLAS";
  4162.         number: 36;
  4163.     }
  4164.     graphics {
  4165.         cargoicon_plastic;
  4166.     }
  4167. }
  4168.             }
  4169.     spriteset(cargoicon_potash) {
  4170.         [10 + 20 * 10, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4171.     }
  4172.     spriteset(cargoicon_potatos) {
  4173.         [10 + 20 * 11, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4174.     }
  4175.     spriteset(cargoicon_pyrite_ore) {
  4176.         [10 + 20 * 13, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4177.     }
  4178.             if (economy==1) {
  4179. item(FEAT_CARGOS, pyrite_ore_BASIC_ARCTIC, 7) {
  4180.     property {
  4181.         type_name: string(STR_CARGO_NAME_PYRITE_ORE);
  4182.         unit_name: string(STR_CARGO_NAME_PYRITE_ORE);
  4183.         type_abbreviation: string(STR_CID_PYRITE_ORE);
  4184.         sprite: NEW_CARGO_SPRITE;
  4185.         weight: 1.0;
  4186.         station_list_colour: 62;
  4187.         cargo_payment_list_colour: 62;
  4188.         is_freight: 1;
  4189.         cargo_classes: bitmask(CC_BULK);
  4190.         town_growth_effect: TOWNGROWTH_NONE;
  4191.         town_growth_multiplier: 1.0;
  4192.         units_of_cargo: TTD_STR_TONS;
  4193.         items_of_cargo: string(STR_CARGO_UNIT_PYRITE_ORE);
  4194.         penalty_lowerbound: 30;
  4195.         single_penalty_length: 255;
  4196.         price_factor: 58;
  4197.         capacity_multiplier: 1;
  4198.         cargo_label: "PORE";
  4199.         number: 7;
  4200.     }
  4201.     graphics {
  4202.         cargoicon_pyrite_ore;
  4203.     }
  4204. }
  4205.             }
  4206.     spriteset(cargoicon_quicklime) {
  4207.         [10 + 20 * 9, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4208.     }
  4209.             if (economy==5) {
  4210. item(FEAT_CARGOS, quicklime_STEELTOWN, 3) {
  4211.     property {
  4212.         type_name: string(STR_CARGO_NAME_QUICKLIME);
  4213.         unit_name: string(STR_CARGO_NAME_QUICKLIME);
  4214.         type_abbreviation: string(STR_CID_QUICKLIME);
  4215.         sprite: NEW_CARGO_SPRITE;
  4216.         weight: 1.0;
  4217.         station_list_colour: 169;
  4218.         cargo_payment_list_colour: 169;
  4219.         is_freight: 1;
  4220.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  4221.         town_growth_effect: TOWNGROWTH_NONE;
  4222.         town_growth_multiplier: 1.0;
  4223.         units_of_cargo: 82;
  4224.         items_of_cargo: string(STR_CARGO_UNIT_QUICKLIME);
  4225.         penalty_lowerbound: 12;
  4226.         single_penalty_length: 255;
  4227.         price_factor: 118;
  4228.         capacity_multiplier: 1;
  4229.         cargo_label: "QLME";
  4230.         number: 3;
  4231.     }
  4232.     graphics {
  4233.         cargoicon_quicklime;
  4234.     }
  4235. }
  4236.             }
  4237.     spriteset(cargoicon_recyclables) {
  4238.         [10 + 20 * 10, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4239.     }
  4240.             if (economy==2) {
  4241. item(FEAT_CARGOS, recyclables_EXTREME, 37) {
  4242.     property {
  4243.         type_name: string(STR_CARGO_NAME_RECYCLABLES);
  4244.         unit_name: string(STR_CARGO_NAME_RECYCLABLES);
  4245.         type_abbreviation: string(STR_CID_RECYCLABLES);
  4246.         sprite: NEW_CARGO_SPRITE;
  4247.         weight: 1.0;
  4248.         station_list_colour: 165;
  4249.         cargo_payment_list_colour: 165;
  4250.         is_freight: 1;
  4251.         cargo_classes: bitmask(CC_BULK, CC_PIECE_GOODS);
  4252.         town_growth_effect: TOWNGROWTH_NONE;
  4253.         town_growth_multiplier: 1.0;
  4254.         units_of_cargo: 80;
  4255.         items_of_cargo: string(STR_CARGO_UNIT_RECYCLABLES);
  4256.         penalty_lowerbound: 10;
  4257.         single_penalty_length: 128;
  4258.         price_factor: 100;
  4259.         capacity_multiplier: 1;
  4260.         cargo_label: "RCYC";
  4261.         number: 37;
  4262.     }
  4263.     graphics {
  4264.         cargoicon_recyclables;
  4265.     }
  4266. }
  4267.             }
  4268.     spriteset(cargoicon_rubber) {
  4269.         [10 + 20 * 2, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4270.     }
  4271.             if (economy==5) {
  4272. item(FEAT_CARGOS, rubber_STEELTOWN, 23) {
  4273.     property {
  4274.         type_name: TTD_STR_CARGO_PLURAL_RUBBER;
  4275.         unit_name: TTD_STR_CARGO_SINGULAR_RUBBER;
  4276.         type_abbreviation: TTD_STR_ABBREV_RUBBER;
  4277.         sprite: NEW_CARGO_SPRITE;
  4278.         weight: 1.0;
  4279.         station_list_colour: 6;
  4280.         cargo_payment_list_colour: 6;
  4281.         is_freight: 1;
  4282.         cargo_classes: bitmask(CC_LIQUID);
  4283.         town_growth_effect: TOWNGROWTH_NONE;
  4284.         town_growth_multiplier: 1.0;
  4285.         units_of_cargo: 80;
  4286.         items_of_cargo: TTD_STR_QUANTITY_RUBBER;
  4287.         penalty_lowerbound: 10;
  4288.         single_penalty_length: 36;
  4289.         price_factor: 110;
  4290.         capacity_multiplier: 1;
  4291.         cargo_label: "RUBR";
  4292.         number: 23;
  4293.     }
  4294.     graphics {
  4295.         cargoicon_rubber;
  4296.     }
  4297. }
  4298.             }
  4299.             if (economy==3) {
  4300. item(FEAT_CARGOS, rubber_MISTAH_KURTZ, 25) {
  4301.     property {
  4302.         type_name: TTD_STR_CARGO_PLURAL_RUBBER;
  4303.         unit_name: TTD_STR_CARGO_SINGULAR_RUBBER;
  4304.         type_abbreviation: TTD_STR_ABBREV_RUBBER;
  4305.         sprite: NEW_CARGO_SPRITE;
  4306.         weight: 1.0;
  4307.         station_list_colour: 6;
  4308.         cargo_payment_list_colour: 6;
  4309.         is_freight: 1;
  4310.         cargo_classes: bitmask(CC_LIQUID);
  4311.         town_growth_effect: TOWNGROWTH_NONE;
  4312.         town_growth_multiplier: 1.0;
  4313.         units_of_cargo: 80;
  4314.         items_of_cargo: TTD_STR_QUANTITY_RUBBER;
  4315.         penalty_lowerbound: 10;
  4316.         single_penalty_length: 36;
  4317.         price_factor: 110;
  4318.         capacity_multiplier: 1;
  4319.         cargo_label: "RUBR";
  4320.         number: 25;
  4321.     }
  4322.     graphics {
  4323.         cargoicon_rubber;
  4324.     }
  4325. }
  4326.             }
  4327.     spriteset(cargoicon_sand) {
  4328.         [10 + 20 * 0, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4329.     }
  4330.             if (economy==0) {
  4331. item(FEAT_CARGOS, sand_BASIC_TEMPERATE, 15) {
  4332.     property {
  4333.         type_name: string(STR_CARGO_NAME_SAND);
  4334.         unit_name: string(STR_CARGO_NAME_SAND);
  4335.         type_abbreviation: string(STR_CID_SAND);
  4336.         sprite: NEW_CARGO_SPRITE;
  4337.         weight: 1.0;
  4338.         station_list_colour: 196;
  4339.         cargo_payment_list_colour: 196;
  4340.         is_freight: 1;
  4341.         cargo_classes: bitmask(CC_BULK);
  4342.         town_growth_effect: TOWNGROWTH_NONE;
  4343.         town_growth_multiplier: 1.0;
  4344.         units_of_cargo: 80;
  4345.         items_of_cargo: string(STR_CARGO_UNIT_SAND);
  4346.         penalty_lowerbound: 30;
  4347.         single_penalty_length: 255;
  4348.         price_factor: 52;
  4349.         capacity_multiplier: 1;
  4350.         cargo_label: "SAND";
  4351.         number: 15;
  4352.     }
  4353.     graphics {
  4354.         cargoicon_sand;
  4355.     }
  4356. }
  4357.             }
  4358.             if (economy==5) {
  4359. item(FEAT_CARGOS, sand_STEELTOWN, 10) {
  4360.     property {
  4361.         type_name: string(STR_CARGO_NAME_SAND);
  4362.         unit_name: string(STR_CARGO_NAME_SAND);
  4363.         type_abbreviation: string(STR_CID_SAND);
  4364.         sprite: NEW_CARGO_SPRITE;
  4365.         weight: 1.0;
  4366.         station_list_colour: 196;
  4367.         cargo_payment_list_colour: 196;
  4368.         is_freight: 1;
  4369.         cargo_classes: bitmask(CC_BULK);
  4370.         town_growth_effect: TOWNGROWTH_NONE;
  4371.         town_growth_multiplier: 1.0;
  4372.         units_of_cargo: 80;
  4373.         items_of_cargo: string(STR_CARGO_UNIT_SAND);
  4374.         penalty_lowerbound: 30;
  4375.         single_penalty_length: 255;
  4376.         price_factor: 52;
  4377.         capacity_multiplier: 1;
  4378.         cargo_label: "SAND";
  4379.         number: 10;
  4380.     }
  4381.     graphics {
  4382.         cargoicon_sand;
  4383.     }
  4384. }
  4385.             }
  4386.             if (economy==3) {
  4387. item(FEAT_CARGOS, sand_MISTAH_KURTZ, 26) {
  4388.     property {
  4389.         type_name: string(STR_CARGO_NAME_SAND);
  4390.         unit_name: string(STR_CARGO_NAME_SAND);
  4391.         type_abbreviation: string(STR_CID_SAND);
  4392.         sprite: NEW_CARGO_SPRITE;
  4393.         weight: 1.0;
  4394.         station_list_colour: 196;
  4395.         cargo_payment_list_colour: 196;
  4396.         is_freight: 1;
  4397.         cargo_classes: bitmask(CC_BULK);
  4398.         town_growth_effect: TOWNGROWTH_NONE;
  4399.         town_growth_multiplier: 1.0;
  4400.         units_of_cargo: 80;
  4401.         items_of_cargo: string(STR_CARGO_UNIT_SAND);
  4402.         penalty_lowerbound: 30;
  4403.         single_penalty_length: 255;
  4404.         price_factor: 52;
  4405.         capacity_multiplier: 1;
  4406.         cargo_label: "SAND";
  4407.         number: 26;
  4408.     }
  4409.     graphics {
  4410.         cargoicon_sand;
  4411.     }
  4412. }
  4413.             }
  4414.             if (economy==2) {
  4415. item(FEAT_CARGOS, sand_EXTREME, 39) {
  4416.     property {
  4417.         type_name: string(STR_CARGO_NAME_SAND);
  4418.         unit_name: string(STR_CARGO_NAME_SAND);
  4419.         type_abbreviation: string(STR_CID_SAND);
  4420.         sprite: NEW_CARGO_SPRITE;
  4421.         weight: 1.0;
  4422.         station_list_colour: 196;
  4423.         cargo_payment_list_colour: 196;
  4424.         is_freight: 1;
  4425.         cargo_classes: bitmask(CC_BULK);
  4426.         town_growth_effect: TOWNGROWTH_NONE;
  4427.         town_growth_multiplier: 1.0;
  4428.         units_of_cargo: 80;
  4429.         items_of_cargo: string(STR_CARGO_UNIT_SAND);
  4430.         penalty_lowerbound: 30;
  4431.         single_penalty_length: 255;
  4432.         price_factor: 52;
  4433.         capacity_multiplier: 1;
  4434.         cargo_label: "SAND";
  4435.         number: 39;
  4436.     }
  4437.     graphics {
  4438.         cargoicon_sand;
  4439.     }
  4440. }
  4441.             }
  4442.     spriteset(cargoicon_salt) {
  4443.         [10 + 20 * 3, 10 + 20 * 4, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4444.     }
  4445.             if (economy==5) {
  4446. item(FEAT_CARGOS, salt_STEELTOWN, 25) {
  4447.     property {
  4448.         type_name: string(STR_CARGO_NAME_SALT);
  4449.         unit_name: string(STR_CARGO_NAME_SALT);
  4450.         type_abbreviation: string(STR_CID_SALT);
  4451.         sprite: NEW_CARGO_SPRITE;
  4452.         weight: 1.0;
  4453.         station_list_colour: 121;
  4454.         cargo_payment_list_colour: 121;
  4455.         is_freight: 1;
  4456.         cargo_classes: bitmask(CC_BULK);
  4457.         town_growth_effect: TOWNGROWTH_NONE;
  4458.         town_growth_multiplier: 1.0;
  4459.         units_of_cargo: 80;
  4460.         items_of_cargo: string(STR_CARGO_UNIT_SALT);
  4461.         penalty_lowerbound: 30;
  4462.         single_penalty_length: 255;
  4463.         price_factor: 108;
  4464.         capacity_multiplier: 1;
  4465.         cargo_label: "SALT";
  4466.         number: 25;
  4467.     }
  4468.     graphics {
  4469.         cargoicon_salt;
  4470.     }
  4471. }
  4472.             }
  4473.             if (economy==2) {
  4474. item(FEAT_CARGOS, salt_EXTREME, 38) {
  4475.     property {
  4476.         type_name: string(STR_CARGO_NAME_SALT);
  4477.         unit_name: string(STR_CARGO_NAME_SALT);
  4478.         type_abbreviation: string(STR_CID_SALT);
  4479.         sprite: NEW_CARGO_SPRITE;
  4480.         weight: 1.0;
  4481.         station_list_colour: 121;
  4482.         cargo_payment_list_colour: 121;
  4483.         is_freight: 1;
  4484.         cargo_classes: bitmask(CC_BULK);
  4485.         town_growth_effect: TOWNGROWTH_NONE;
  4486.         town_growth_multiplier: 1.0;
  4487.         units_of_cargo: 80;
  4488.         items_of_cargo: string(STR_CARGO_UNIT_SALT);
  4489.         penalty_lowerbound: 30;
  4490.         single_penalty_length: 255;
  4491.         price_factor: 108;
  4492.         capacity_multiplier: 1;
  4493.         cargo_label: "SALT";
  4494.         number: 38;
  4495.     }
  4496.     graphics {
  4497.         cargoicon_salt;
  4498.     }
  4499. }
  4500.             }
  4501.     spriteset(cargoicon_scrap_metal) {
  4502.         [10 + 20 * 2, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4503.     }
  4504.             if (economy==0) {
  4505. item(FEAT_CARGOS, scrap_metal_BASIC_TEMPERATE, 16) {
  4506.     property {
  4507.         type_name: string(STR_CARGO_NAME_SCRAP_METAL);
  4508.         unit_name: string(STR_CARGO_NAME_SCRAP_METAL);
  4509.         type_abbreviation: string(STR_CID_SCRAP_METAL);
  4510.         sprite: NEW_CARGO_SPRITE;
  4511.         weight: 1.0;
  4512.         station_list_colour: 106;
  4513.         cargo_payment_list_colour: 106;
  4514.         is_freight: 1;
  4515.         cargo_classes: bitmask(CC_BULK, CC_NON_POURABLE);
  4516.         town_growth_effect: TOWNGROWTH_NONE;
  4517.         town_growth_multiplier: 1.0;
  4518.         units_of_cargo: 80;
  4519.         items_of_cargo: string(STR_CARGO_UNIT_SCRAP_METAL);
  4520.         penalty_lowerbound: 30;
  4521.         single_penalty_length: 255;
  4522.         price_factor: 119;
  4523.         capacity_multiplier: 1;
  4524.         cargo_label: "SCMT";
  4525.         number: 16;
  4526.     }
  4527.     graphics {
  4528.         cargoicon_scrap_metal;
  4529.     }
  4530. }
  4531.             }
  4532.             if (economy==5) {
  4533. item(FEAT_CARGOS, scrap_metal_STEELTOWN, 19) {
  4534.     property {
  4535.         type_name: string(STR_CARGO_NAME_SCRAP_METAL);
  4536.         unit_name: string(STR_CARGO_NAME_SCRAP_METAL);
  4537.         type_abbreviation: string(STR_CID_SCRAP_METAL);
  4538.         sprite: NEW_CARGO_SPRITE;
  4539.         weight: 1.0;
  4540.         station_list_colour: 106;
  4541.         cargo_payment_list_colour: 106;
  4542.         is_freight: 1;
  4543.         cargo_classes: bitmask(CC_BULK, CC_NON_POURABLE);
  4544.         town_growth_effect: TOWNGROWTH_NONE;
  4545.         town_growth_multiplier: 1.0;
  4546.         units_of_cargo: 80;
  4547.         items_of_cargo: string(STR_CARGO_UNIT_SCRAP_METAL);
  4548.         penalty_lowerbound: 30;
  4549.         single_penalty_length: 255;
  4550.         price_factor: 119;
  4551.         capacity_multiplier: 1;
  4552.         cargo_label: "SCMT";
  4553.         number: 19;
  4554.     }
  4555.     graphics {
  4556.         cargoicon_scrap_metal;
  4557.     }
  4558. }
  4559.             }
  4560.             if (economy==2) {
  4561. item(FEAT_CARGOS, scrap_metal_EXTREME, 40) {
  4562.     property {
  4563.         type_name: string(STR_CARGO_NAME_SCRAP_METAL);
  4564.         unit_name: string(STR_CARGO_NAME_SCRAP_METAL);
  4565.         type_abbreviation: string(STR_CID_SCRAP_METAL);
  4566.         sprite: NEW_CARGO_SPRITE;
  4567.         weight: 1.0;
  4568.         station_list_colour: 106;
  4569.         cargo_payment_list_colour: 106;
  4570.         is_freight: 1;
  4571.         cargo_classes: bitmask(CC_BULK, CC_NON_POURABLE);
  4572.         town_growth_effect: TOWNGROWTH_NONE;
  4573.         town_growth_multiplier: 1.0;
  4574.         units_of_cargo: 80;
  4575.         items_of_cargo: string(STR_CARGO_UNIT_SCRAP_METAL);
  4576.         penalty_lowerbound: 30;
  4577.         single_penalty_length: 255;
  4578.         price_factor: 119;
  4579.         capacity_multiplier: 1;
  4580.         cargo_label: "SCMT";
  4581.         number: 40;
  4582.     }
  4583.     graphics {
  4584.         cargoicon_scrap_metal;
  4585.     }
  4586. }
  4587.             }
  4588.     spriteset(cargoicon_slag) {
  4589.         [10 + 20 * 11, 10 + 20 * 3, 10, 10, 0, 0, ANIM, "src/graphics/other/cargoicons.png"]
  4590.     }
  4591.             if (economy==5) {
  4592. item(FEAT_CARGOS, slag_STEELTOWN, 8) {
  4593.     property {
  4594.         type_name: string(STR_CARGO_NAME_SLAG);
  4595.         unit_name: string(STR_CARGO_NAME_SLAG);
  4596.         type_abbreviation: string(STR_CID_SLAG);
  4597.         sprite: NEW_CARGO_SPRITE;
  4598.         weight: 1.0;
  4599.         station_list_colour: 24;
  4600.         cargo_payment_list_colour: 24;
  4601.         is_freight: 1;
  4602.         cargo_classes: bitmask(CC_BULK);
  4603.         town_growth_effect: TOWNGROWTH_NONE;
  4604.         town_growth_multiplier: 1.0;
  4605.         units_of_cargo: 80;
  4606.         items_of_cargo: string(STR_CARGO_UNIT_SLAG);
  4607.         penalty_lowerbound: 30;
  4608.         single_penalty_length: 255;
  4609.         price_factor: 50;
  4610.         capacity_multiplier: 1;
  4611.         cargo_label: "SLAG";
  4612.         number: 8;
  4613.     }
  4614.     graphics {
  4615.         cargoicon_slag;
  4616.     }
  4617. }
  4618.             }
  4619.     spriteset(cargoicon_soda_ash) {
  4620.         [10 + 20 * 12, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4621.     }
  4622.             if (economy==5) {
  4623. item(FEAT_CARGOS, soda_ash_STEELTOWN, 20) {
  4624.     property {
  4625.         type_name: string(STR_CARGO_NAME_SODA_ASH);
  4626.         unit_name: string(STR_CARGO_NAME_SODA_ASH);
  4627.         type_abbreviation: string(STR_CID_SODA_ASH);
  4628.         sprite: NEW_CARGO_SPRITE;
  4629.         weight: 1.0;
  4630.         station_list_colour: 187;
  4631.         cargo_payment_list_colour: 187;
  4632.         is_freight: 1;
  4633.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  4634.         town_growth_effect: TOWNGROWTH_NONE;
  4635.         town_growth_multiplier: 1.0;
  4636.         units_of_cargo: 82;
  4637.         items_of_cargo: string(STR_CARGO_UNIT_SODA_ASH);
  4638.         penalty_lowerbound: 12;
  4639.         single_penalty_length: 255;
  4640.         price_factor: 82;
  4641.         capacity_multiplier: 1;
  4642.         cargo_label: "SASH";
  4643.         number: 20;
  4644.     }
  4645.     graphics {
  4646.         cargoicon_soda_ash;
  4647.     }
  4648. }
  4649.             }
  4650.             if (economy==2) {
  4651. item(FEAT_CARGOS, soda_ash_EXTREME, 41) {
  4652.     property {
  4653.         type_name: string(STR_CARGO_NAME_SODA_ASH);
  4654.         unit_name: string(STR_CARGO_NAME_SODA_ASH);
  4655.         type_abbreviation: string(STR_CID_SODA_ASH);
  4656.         sprite: NEW_CARGO_SPRITE;
  4657.         weight: 1.0;
  4658.         station_list_colour: 187;
  4659.         cargo_payment_list_colour: 187;
  4660.         is_freight: 1;
  4661.         cargo_classes: bitmask(CC_BULK, CC_COVERED);
  4662.         town_growth_effect: TOWNGROWTH_NONE;
  4663.         town_growth_multiplier: 1.0;
  4664.         units_of_cargo: 82;
  4665.         items_of_cargo: string(STR_CARGO_UNIT_SODA_ASH);
  4666.         penalty_lowerbound: 12;
  4667.         single_penalty_length: 255;
  4668.         price_factor: 82;
  4669.         capacity_multiplier: 1;
  4670.         cargo_label: "SASH";
  4671.         number: 41;
  4672.     }
  4673.     graphics {
  4674.         cargoicon_soda_ash;
  4675.     }
  4676. }
  4677.             }
  4678.     spriteset(cargoicon_steel) {
  4679.         [10 + 20 * 10, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4680.     }
  4681.             if (economy==0) {
  4682. item(FEAT_CARGOS, steel_BASIC_TEMPERATE, 17) {
  4683.     property {
  4684.         type_name: string(STR_CARGO_NAME_STEEL);
  4685.         unit_name: string(STR_CARGO_NAME_STEEL);
  4686.         type_abbreviation: string(STR_CID_STEEL);
  4687.         sprite: NEW_CARGO_SPRITE;
  4688.         weight: 1.0;
  4689.         station_list_colour: 10;
  4690.         cargo_payment_list_colour: 10;
  4691.         is_freight: 1;
  4692.         cargo_classes: bitmask(CC_PIECE_GOODS);
  4693.         town_growth_effect: TOWNGROWTH_NONE;
  4694.         town_growth_multiplier: 1.0;
  4695.         units_of_cargo: 80;
  4696.         items_of_cargo: string(STR_CARGO_UNIT_STEEL);
  4697.         penalty_lowerbound: 14;
  4698.         single_penalty_length: 255;
  4699.         price_factor: 126;
  4700.         capacity_multiplier: 1;
  4701.         cargo_label: "STEL";
  4702.         number: 17;
  4703.     }
  4704.     graphics {
  4705.         cargoicon_steel;
  4706.     }
  4707. }
  4708.             }
  4709.             if (economy==5) {
  4710. item(FEAT_CARGOS, steel_STEELTOWN, 7) {
  4711.     property {
  4712.         type_name: string(STR_CARGO_NAME_STEEL);
  4713.         unit_name: string(STR_CARGO_NAME_STEEL);
  4714.         type_abbreviation: string(STR_CID_STEEL);
  4715.         sprite: NEW_CARGO_SPRITE;
  4716.         weight: 1.0;
  4717.         station_list_colour: 10;
  4718.         cargo_payment_list_colour: 10;
  4719.         is_freight: 1;
  4720.         cargo_classes: bitmask(CC_PIECE_GOODS);
  4721.         town_growth_effect: TOWNGROWTH_NONE;
  4722.         town_growth_multiplier: 1.0;
  4723.         units_of_cargo: 80;
  4724.         items_of_cargo: string(STR_CARGO_UNIT_STEEL);
  4725.         penalty_lowerbound: 14;
  4726.         single_penalty_length: 255;
  4727.         price_factor: 126;
  4728.         capacity_multiplier: 1;
  4729.         cargo_label: "STEL";
  4730.         number: 7;
  4731.     }
  4732.     graphics {
  4733.         cargoicon_steel;
  4734.     }
  4735. }
  4736.             }
  4737.             if (economy==2) {
  4738. item(FEAT_CARGOS, steel_EXTREME, 42) {
  4739.     property {
  4740.         type_name: string(STR_CARGO_NAME_STEEL);
  4741.         unit_name: string(STR_CARGO_NAME_STEEL);
  4742.         type_abbreviation: string(STR_CID_STEEL);
  4743.         sprite: NEW_CARGO_SPRITE;
  4744.         weight: 1.0;
  4745.         station_list_colour: 10;
  4746.         cargo_payment_list_colour: 10;
  4747.         is_freight: 1;
  4748.         cargo_classes: bitmask(CC_PIECE_GOODS);
  4749.         town_growth_effect: TOWNGROWTH_NONE;
  4750.         town_growth_multiplier: 1.0;
  4751.         units_of_cargo: 80;
  4752.         items_of_cargo: string(STR_CARGO_UNIT_STEEL);
  4753.         penalty_lowerbound: 14;
  4754.         single_penalty_length: 255;
  4755.         price_factor: 126;
  4756.         capacity_multiplier: 1;
  4757.         cargo_label: "STEL";
  4758.         number: 42;
  4759.     }
  4760.     graphics {
  4761.         cargoicon_steel;
  4762.     }
  4763. }
  4764.             }
  4765.     spriteset(cargoicon_stone) {
  4766.         [10 + 20 * 5, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4767.     }
  4768.             if (economy==3) {
  4769. item(FEAT_CARGOS, stone_MISTAH_KURTZ, 27) {
  4770.     property {
  4771.         type_name: string(STR_CARGO_NAME_STONE);
  4772.         unit_name: string(STR_CARGO_NAME_STONE);
  4773.         type_abbreviation: string(STR_CID_STONE);
  4774.         sprite: NEW_CARGO_SPRITE;
  4775.         weight: 1.0;
  4776.         station_list_colour: 36;
  4777.         cargo_payment_list_colour: 36;
  4778.         is_freight: 1;
  4779.         cargo_classes: bitmask(CC_BULK);
  4780.         town_growth_effect: TOWNGROWTH_NONE;
  4781.         town_growth_multiplier: 1.0;
  4782.         units_of_cargo: 80;
  4783.         items_of_cargo: string(STR_CARGO_UNIT_STONE);
  4784.         penalty_lowerbound: 30;
  4785.         single_penalty_length: 255;
  4786.         price_factor: 68;
  4787.         capacity_multiplier: 1;
  4788.         cargo_label: "GRVL";
  4789.         number: 27;
  4790.     }
  4791.     graphics {
  4792.         cargoicon_stone;
  4793.     }
  4794. }
  4795.             }
  4796.     spriteset(cargoicon_sulphur) {
  4797.         [10 + 20 * 13, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4798.     }
  4799.             if (economy==1) {
  4800. item(FEAT_CARGOS, sulphur_BASIC_ARCTIC, 15) {
  4801.     property {
  4802.         type_name: string(STR_CARGO_NAME_SULPHUR);
  4803.         unit_name: string(STR_CARGO_NAME_SULPHUR);
  4804.         type_abbreviation: string(STR_CID_SULPHUR);
  4805.         sprite: NEW_CARGO_SPRITE;
  4806.         weight: 1.0;
  4807.         station_list_colour: 68;
  4808.         cargo_payment_list_colour: 68;
  4809.         is_freight: 1;
  4810.         cargo_classes: bitmask(CC_BULK, CC_LIQUID, CC_COVERED);
  4811.         town_growth_effect: TOWNGROWTH_NONE;
  4812.         town_growth_multiplier: 1.0;
  4813.         units_of_cargo: 80;
  4814.         items_of_cargo: string(STR_CARGO_UNIT_SULPHUR);
  4815.         penalty_lowerbound: 30;
  4816.         single_penalty_length: 255;
  4817.         price_factor: 102;
  4818.         capacity_multiplier: 1;
  4819.         cargo_label: "SULP";
  4820.         number: 15;
  4821.     }
  4822.     graphics {
  4823.         cargoicon_sulphur;
  4824.     }
  4825. }
  4826.             }
  4827.             if (economy==5) {
  4828. item(FEAT_CARGOS, sulphur_STEELTOWN, 18) {
  4829.     property {
  4830.         type_name: string(STR_CARGO_NAME_SULPHUR);
  4831.         unit_name: string(STR_CARGO_NAME_SULPHUR);
  4832.         type_abbreviation: string(STR_CID_SULPHUR);
  4833.         sprite: NEW_CARGO_SPRITE;
  4834.         weight: 1.0;
  4835.         station_list_colour: 68;
  4836.         cargo_payment_list_colour: 68;
  4837.         is_freight: 1;
  4838.         cargo_classes: bitmask(CC_BULK, CC_LIQUID, CC_COVERED);
  4839.         town_growth_effect: TOWNGROWTH_NONE;
  4840.         town_growth_multiplier: 1.0;
  4841.         units_of_cargo: 80;
  4842.         items_of_cargo: string(STR_CARGO_UNIT_SULPHUR);
  4843.         penalty_lowerbound: 30;
  4844.         single_penalty_length: 255;
  4845.         price_factor: 102;
  4846.         capacity_multiplier: 1;
  4847.         cargo_label: "SULP";
  4848.         number: 18;
  4849.     }
  4850.     graphics {
  4851.         cargoicon_sulphur;
  4852.     }
  4853. }
  4854.             }
  4855.             if (economy==2) {
  4856. item(FEAT_CARGOS, sulphur_EXTREME, 45) {
  4857.     property {
  4858.         type_name: string(STR_CARGO_NAME_SULPHUR);
  4859.         unit_name: string(STR_CARGO_NAME_SULPHUR);
  4860.         type_abbreviation: string(STR_CID_SULPHUR);
  4861.         sprite: NEW_CARGO_SPRITE;
  4862.         weight: 1.0;
  4863.         station_list_colour: 68;
  4864.         cargo_payment_list_colour: 68;
  4865.         is_freight: 1;
  4866.         cargo_classes: bitmask(CC_BULK, CC_LIQUID, CC_COVERED);
  4867.         town_growth_effect: TOWNGROWTH_NONE;
  4868.         town_growth_multiplier: 1.0;
  4869.         units_of_cargo: 80;
  4870.         items_of_cargo: string(STR_CARGO_UNIT_SULPHUR);
  4871.         penalty_lowerbound: 30;
  4872.         single_penalty_length: 255;
  4873.         price_factor: 102;
  4874.         capacity_multiplier: 1;
  4875.         cargo_label: "SULP";
  4876.         number: 45;
  4877.     }
  4878.     graphics {
  4879.         cargoicon_sulphur;
  4880.     }
  4881. }
  4882.             }
  4883.     spriteset(cargoicon_sugar) {
  4884.         [10 + 20 * 14, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4885.     }
  4886.             if (economy==2) {
  4887. item(FEAT_CARGOS, sugar_EXTREME, 43) {
  4888.     property {
  4889.         type_name: string(STR_CARGO_NAME_SUGAR);
  4890.         unit_name: string(STR_CARGO_NAME_SUGAR);
  4891.         type_abbreviation: string(STR_CID_SUGAR);
  4892.         sprite: NEW_CARGO_SPRITE;
  4893.         weight: 1.0;
  4894.         station_list_colour: 30;
  4895.         cargo_payment_list_colour: 30;
  4896.         is_freight: 1;
  4897.         cargo_classes: bitmask(CC_BULK);
  4898.         town_growth_effect: TOWNGROWTH_NONE;
  4899.         town_growth_multiplier: 1.0;
  4900.         units_of_cargo: 80;
  4901.         items_of_cargo: string(STR_CARGO_UNIT_SUGAR);
  4902.         penalty_lowerbound: 5;
  4903.         single_penalty_length: 30;
  4904.         price_factor: 99;
  4905.         capacity_multiplier: 1;
  4906.         cargo_label: "SUGR";
  4907.         number: 43;
  4908.     }
  4909.     graphics {
  4910.         cargoicon_sugar;
  4911.     }
  4912. }
  4913.             }
  4914.     spriteset(cargoicon_sugar_beet) {
  4915.         [10 + 20 * 14, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4916.     }
  4917.             if (economy==2) {
  4918. item(FEAT_CARGOS, sugar_beet_EXTREME, 44) {
  4919.     property {
  4920.         type_name: string(STR_CARGO_NAME_SUGAR_BEET);
  4921.         unit_name: string(STR_CARGO_NAME_SUGAR_BEET);
  4922.         type_abbreviation: string(STR_CID_SUGAR_BEET);
  4923.         sprite: NEW_CARGO_SPRITE;
  4924.         weight: 1.0;
  4925.         station_list_colour: 30;
  4926.         cargo_payment_list_colour: 30;
  4927.         is_freight: 1;
  4928.         cargo_classes: bitmask(CC_BULK);
  4929.         town_growth_effect: TOWNGROWTH_NONE;
  4930.         town_growth_multiplier: 1.0;
  4931.         units_of_cargo: 80;
  4932.         items_of_cargo: string(STR_CARGO_UNIT_SUGAR_BEET);
  4933.         penalty_lowerbound: 5;
  4934.         single_penalty_length: 30;
  4935.         price_factor: 99;
  4936.         capacity_multiplier: 1;
  4937.         cargo_label: "SGBT";
  4938.         number: 44;
  4939.     }
  4940.     graphics {
  4941.         cargoicon_sugar_beet;
  4942.     }
  4943. }
  4944.             }
  4945.     spriteset(cargoicon_textiles) {
  4946.         [10 + 20 * 5, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4947.     }
  4948.             if (economy==2) {
  4949. item(FEAT_CARGOS, textiles_EXTREME, 46) {
  4950.     property {
  4951.         type_name: string(STR_CARGO_NAME_TEXTILES);
  4952.         unit_name: string(STR_CARGO_NAME_TEXTILES);
  4953.         type_abbreviation: string(STR_CID_TEXTILES);
  4954.         sprite: NEW_CARGO_SPRITE;
  4955.         weight: 0.5;
  4956.         station_list_colour: 194;
  4957.         cargo_payment_list_colour: 194;
  4958.         is_freight: 1;
  4959.         cargo_classes: bitmask(CC_EXPRESS);
  4960.         town_growth_effect: TOWNGROWTH_WATER;
  4961.         town_growth_multiplier: 1.0;
  4962.         units_of_cargo: 80;
  4963.         items_of_cargo: string(STR_CARGO_UNIT_TEXTILES);
  4964.         penalty_lowerbound: 10;
  4965.         single_penalty_length: 64;
  4966.         price_factor: 166;
  4967.         capacity_multiplier: 2;
  4968.         cargo_label: "TEXT";
  4969.         number: 46;
  4970.     }
  4971.     graphics {
  4972.         cargoicon_textiles;
  4973.     }
  4974. }
  4975.             }
  4976.     spriteset(cargoicon_vehicle_parts) {
  4977.         [10 + 20 * 14, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  4978.     }
  4979.             if (economy==5) {
  4980. item(FEAT_CARGOS, vehicle_parts_STEELTOWN, 29) {
  4981.     property {
  4982.         type_name: string(STR_CARGO_NAME_VEHICLE_PARTS);
  4983.         unit_name: string(STR_CARGO_NAME_VEHICLE_PARTS);
  4984.         type_abbreviation: string(STR_CID_VEHICLE_PARTS);
  4985.         sprite: NEW_CARGO_SPRITE;
  4986.         weight: 1.0;
  4987.         station_list_colour: 96;
  4988.         cargo_payment_list_colour: 96;
  4989.         is_freight: 1;
  4990.         cargo_classes: bitmask(CC_PIECE_GOODS);
  4991.         town_growth_effect: TOWNGROWTH_NONE;
  4992.         town_growth_multiplier: 1.0;
  4993.         units_of_cargo: 84;
  4994.         items_of_cargo: string(STR_CARGO_UNIT_VEHICLE_PARTS);
  4995.         penalty_lowerbound: 7;
  4996.         single_penalty_length: 255;
  4997.         price_factor: 151;
  4998.         capacity_multiplier: 1;
  4999.         cargo_label: "VPTS";
  5000.         number: 29;
  5001.     }
  5002.     graphics {
  5003.         cargoicon_vehicle_parts;
  5004.     }
  5005. }
  5006.             }
  5007.     spriteset(cargoicon_vehicles) {
  5008.         [10 + 20 * 15, 10 + 20 * 2, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  5009.     }
  5010.             if (economy==5) {
  5011. item(FEAT_CARGOS, vehicles_STEELTOWN, 5) {
  5012.     property {
  5013.         type_name: string(STR_CARGO_NAME_VEHICLES);
  5014.         unit_name: string(STR_CARGO_NAME_VEHICLES);
  5015.         type_abbreviation: string(STR_CID_VEHICLES);
  5016.         sprite: NEW_CARGO_SPRITE;
  5017.         weight: 1.0;
  5018.         station_list_colour: 141;
  5019.         cargo_payment_list_colour: 141;
  5020.         is_freight: 1;
  5021.         cargo_classes: bitmask(CC_PIECE_GOODS);
  5022.         town_growth_effect: TOWNGROWTH_WATER;
  5023.         town_growth_multiplier: 1.0;
  5024.         units_of_cargo: 84;
  5025.         items_of_cargo: string(STR_CARGO_UNIT_VEHICLES);
  5026.         penalty_lowerbound: 8;
  5027.         single_penalty_length: 60;
  5028.         price_factor: 162;
  5029.         capacity_multiplier: 1;
  5030.         cargo_label: "VEHI";
  5031.         number: 5;
  5032.     }
  5033.     graphics {
  5034.         cargoicon_vehicles;
  5035.     }
  5036. }
  5037.             }
  5038.     spriteset(cargoicon_wood) {
  5039.         [10 + 20 * 8, 10 + 20 * 0, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  5040.     }
  5041.             if (economy==1) {
  5042. item(FEAT_CARGOS, wood_BASIC_ARCTIC, 17) {
  5043.     property {
  5044.         type_name: TTD_STR_CARGO_PLURAL_WOOD;
  5045.         unit_name: TTD_STR_CARGO_SINGULAR_WOOD;
  5046.         type_abbreviation: TTD_STR_ABBREV_WOOD;
  5047.         sprite: NEW_CARGO_SPRITE;
  5048.         weight: 1.0;
  5049.         station_list_colour: 55;
  5050.         cargo_payment_list_colour: 55;
  5051.         is_freight: 1;
  5052.         cargo_classes: bitmask(CC_PIECE_GOODS);
  5053.         town_growth_effect: TOWNGROWTH_NONE;
  5054.         town_growth_multiplier: 1.0;
  5055.         units_of_cargo: TTD_STR_TONS;
  5056.         items_of_cargo: TTD_STR_QUANTITY_WOOD;
  5057.         penalty_lowerbound: 24;
  5058.         single_penalty_length: 255;
  5059.         price_factor: 97;
  5060.         capacity_multiplier: 1;
  5061.         cargo_label: "WOOD";
  5062.         number: 17;
  5063.     }
  5064.     graphics {
  5065.         cargoicon_wood;
  5066.     }
  5067. }
  5068.             }
  5069.             if (economy==3) {
  5070. item(FEAT_CARGOS, wood_MISTAH_KURTZ, 28) {
  5071.     property {
  5072.         type_name: TTD_STR_CARGO_PLURAL_WOOD;
  5073.         unit_name: TTD_STR_CARGO_SINGULAR_WOOD;
  5074.         type_abbreviation: TTD_STR_ABBREV_WOOD;
  5075.         sprite: NEW_CARGO_SPRITE;
  5076.         weight: 1.0;
  5077.         station_list_colour: 55;
  5078.         cargo_payment_list_colour: 55;
  5079.         is_freight: 1;
  5080.         cargo_classes: bitmask(CC_PIECE_GOODS);
  5081.         town_growth_effect: TOWNGROWTH_NONE;
  5082.         town_growth_multiplier: 1.0;
  5083.         units_of_cargo: TTD_STR_TONS;
  5084.         items_of_cargo: TTD_STR_QUANTITY_WOOD;
  5085.         penalty_lowerbound: 24;
  5086.         single_penalty_length: 255;
  5087.         price_factor: 97;
  5088.         capacity_multiplier: 1;
  5089.         cargo_label: "WOOD";
  5090.         number: 28;
  5091.     }
  5092.     graphics {
  5093.         cargoicon_wood;
  5094.     }
  5095. }
  5096.             }
  5097.             if (economy==2) {
  5098. item(FEAT_CARGOS, wood_EXTREME, 47) {
  5099.     property {
  5100.         type_name: TTD_STR_CARGO_PLURAL_WOOD;
  5101.         unit_name: TTD_STR_CARGO_SINGULAR_WOOD;
  5102.         type_abbreviation: TTD_STR_ABBREV_WOOD;
  5103.         sprite: NEW_CARGO_SPRITE;
  5104.         weight: 1.0;
  5105.         station_list_colour: 55;
  5106.         cargo_payment_list_colour: 55;
  5107.         is_freight: 1;
  5108.         cargo_classes: bitmask(CC_PIECE_GOODS);
  5109.         town_growth_effect: TOWNGROWTH_NONE;
  5110.         town_growth_multiplier: 1.0;
  5111.         units_of_cargo: TTD_STR_TONS;
  5112.         items_of_cargo: TTD_STR_QUANTITY_WOOD;
  5113.         penalty_lowerbound: 24;
  5114.         single_penalty_length: 255;
  5115.         price_factor: 97;
  5116.         capacity_multiplier: 1;
  5117.         cargo_label: "WOOD";
  5118.         number: 47;
  5119.     }
  5120.     graphics {
  5121.         cargoicon_wood;
  5122.     }
  5123. }
  5124.             }
  5125.     spriteset(cargoicon_wool) {
  5126.         [10 + 20 * 4, 10 + 20 * 1, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  5127.     }
  5128.             if (economy==4) {
  5129. item(FEAT_CARGOS, wool_BASIC_TROPIC, 18) {
  5130.     property {
  5131.         type_name: string(STR_CARGO_NAME_WOOL);
  5132.         unit_name: string(STR_CARGO_NAME_WOOL);
  5133.         type_abbreviation: string(STR_CID_WOOL);
  5134.         sprite: NEW_CARGO_SPRITE;
  5135.         weight: 0.2;
  5136.         station_list_colour: 135;
  5137.         cargo_payment_list_colour: 135;
  5138.         is_freight: 1;
  5139.         cargo_classes: bitmask(CC_PIECE_GOODS, CC_COVERED);
  5140.         town_growth_effect: TOWNGROWTH_NONE;
  5141.         town_growth_multiplier: 1.0;
  5142.         units_of_cargo: 80;
  5143.         items_of_cargo: string(STR_CARGO_UNIT_WOOL);
  5144.         penalty_lowerbound: 8;
  5145.         single_penalty_length: 90;
  5146.         price_factor: 98;
  5147.         capacity_multiplier: 1;
  5148.         cargo_label: "WOOL";
  5149.         number: 18;
  5150.     }
  5151.     graphics {
  5152.         cargoicon_wool;
  5153.     }
  5154. }
  5155.             }
  5156.     spriteset(cargoicon_zinc) {
  5157.         [10 + 20 * 15, 10 + 20 * 3, 10, 10, 0, 0,  "src/graphics/other/cargoicons.png"]
  5158.     }
  5159.             if (economy==1) {
  5160. item(FEAT_CARGOS, zinc_BASIC_ARCTIC, 13) {
  5161.     property {
  5162.         type_name: string(STR_CARGO_NAME_ZINC);
  5163.         unit_name: string(STR_CARGO_NAME_ZINC);
  5164.         type_abbreviation: string(STR_CID_ZINC);
  5165.         sprite: NEW_CARGO_SPRITE;
  5166.         weight: 1.0;
  5167.         station_list_colour: 131;
  5168.         cargo_payment_list_colour: 131;
  5169.         is_freight: 1;
  5170.         cargo_classes: bitmask(CC_PIECE_GOODS);
  5171.         town_growth_effect: TOWNGROWTH_NONE;
  5172.         town_growth_multiplier: 1.0;
  5173.         units_of_cargo: 80;
  5174.         items_of_cargo: string(STR_CARGO_UNIT_ZINC);
  5175.         penalty_lowerbound: 15;
  5176.         single_penalty_length: 255;
  5177.         price_factor: 141;
  5178.         capacity_multiplier: 1;
  5179.         cargo_label: "ZINC";
  5180.         number: 13;
  5181.     }
  5182.     graphics {
  5183.         cargoicon_zinc;
  5184.     }
  5185. }
  5186.             }
  5187.             if (economy==5) {
  5188. item(FEAT_CARGOS, zinc_STEELTOWN, 21) {
  5189.     property {
  5190.         type_name: string(STR_CARGO_NAME_ZINC);
  5191.         unit_name: string(STR_CARGO_NAME_ZINC);
  5192.         type_abbreviation: string(STR_CID_ZINC);
  5193.         sprite: NEW_CARGO_SPRITE;
  5194.         weight: 1.0;
  5195.         station_list_colour: 131;
  5196.         cargo_payment_list_colour: 131;
  5197.         is_freight: 1;
  5198.         cargo_classes: bitmask(CC_PIECE_GOODS);
  5199.         town_growth_effect: TOWNGROWTH_NONE;
  5200.         town_growth_multiplier: 1.0;
  5201.         units_of_cargo: 80;
  5202.         items_of_cargo: string(STR_CARGO_UNIT_ZINC);
  5203.         penalty_lowerbound: 15;
  5204.         single_penalty_length: 255;
  5205.         price_factor: 141;
  5206.         capacity_multiplier: 1;
  5207.         cargo_label: "ZINC";
  5208.         number: 21;
  5209.     }
  5210.     graphics {
  5211.         cargoicon_zinc;
  5212.     }
  5213. }
  5214.             }/* *******************************************************
  5215.  * Construction states shared by many (not all) industries
  5216.  * *******************************************************/
  5217. spriteset(spriteset_default_construction_states) {
  5218.     tmpl_building_sprite_filename(10, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5219.     tmpl_building_sprite_filename(80, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5220.     tmpl_building_sprite_filename(150, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5221.     tmpl_building_sprite_filename(220, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5222.     tmpl_building_sprite_filename(290, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5223.     tmpl_building_sprite_filename(360, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5224.     tmpl_building_sprite_filename(430, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5225.     tmpl_building_sprite_filename(500, 10, 64, -33, "src/graphics/other/default_construction_states.png")
  5226.     tmpl_building_sprite_filename(10, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5227.     tmpl_building_sprite_filename(80, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5228.     tmpl_building_sprite_filename(150, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5229.     tmpl_building_sprite_filename(220, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5230.     tmpl_building_sprite_filename(290, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5231.     tmpl_building_sprite_filename(360, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5232.     tmpl_building_sprite_filename(430, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5233.     tmpl_building_sprite_filename(500, 100, 64, -33, "src/graphics/other/default_construction_states.png")
  5234. }
  5235. spritelayout spritelayout_default_construction_states {
  5236.     ground {
  5237.         sprite: spriteset_default_construction_states(random_bits % 16);
  5238.         recolour_mode: RECOLOUR_REMAP;
  5239.         palette: 0;
  5240.     }
  5241. }switch(FEAT_INDUSTRIES, SELF, switch_colour, colour) {
  5242.     0: return 0;
  5243.     1: return 1;
  5244.     2: return 2;
  5245.     3: return 13;
  5246.     4: return 2;
  5247.     5: return 5;
  5248.     6: return 1;
  5249.     7: return 1;
  5250.     8: return 0;
  5251.     9: return 14;
  5252.     10: return 10;
  5253.     11: return 11;
  5254.     12: return 13;
  5255.     13: return 13;
  5256.     14: return 14;
  5257.     15: return 14;
  5258.     return 0;
  5259. }random_switch(FEAT_INDUSTRIES, SELF, randomise_primary_production_on_build) {
  5260.     1: return 8;
  5261.     1: return 12;
  5262.     4: return 16;
  5263.     3: return 20;
  5264.     2: return 24;
  5265.     1: return 28;
  5266.     1: return 32;
  5267.     1: return 36;
  5268. }/* ******************************************************************
  5269.  * Definition of the industry tile, its callbacks, and graphics chain
  5270.  * ******************************************************************/
  5271.             spriteset(port_spriteset_0_0, "src/graphics/industries/groundtiles.png") {
  5272.                     tmpl_ground_tile(360, 10)
  5273.             }
  5274.             spriteset(port_spriteset_0_0_snow, "src/graphics/industries/groundtiles.png") {
  5275.                     tmpl_ground_tile(220, 10)
  5276.             }
  5277.             spriteset(port_spriteset_1_0) {
  5278.                         [10, 10, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5279.             }
  5280.             spriteset(port_spriteset_1_0_snow) {
  5281.                             [10, 10, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5282.             }
  5283.             spriteset(port_spriteset_1_spriteset_default_construction_state_0) {
  5284.                         [10, 10, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5285.             }
  5286.             spriteset(port_spriteset_1_spriteset_default_construction_state_1) {
  5287.                         [10, 10, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5288.             }
  5289.             spriteset(port_spriteset_1_spriteset_default_construction_state_2) {
  5290.                         [10, 10, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5291.             }
  5292.             spriteset(port_spriteset_2_0) {
  5293.                         [10, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5294.             }
  5295.             spriteset(port_spriteset_2_0_snow) {
  5296.                             [10, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5297.             }
  5298.             spriteset(port_spriteset_2_spriteset_default_construction_state_0) {
  5299.                         [10, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5300.             }
  5301.             spriteset(port_spriteset_2_spriteset_default_construction_state_1) {
  5302.                         [10, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5303.             }
  5304.             spriteset(port_spriteset_2_spriteset_default_construction_state_2) {
  5305.                         [10, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5306.             }
  5307.             spriteset(port_spriteset_3_0) {
  5308.                         [80, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5309.             }
  5310.             spriteset(port_spriteset_3_0_snow) {
  5311.                             [80, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5312.             }
  5313.             spriteset(port_spriteset_3_spriteset_default_construction_state_0) {
  5314.                         [80, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5315.             }
  5316.             spriteset(port_spriteset_3_spriteset_default_construction_state_1) {
  5317.                         [80, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5318.             }
  5319.             spriteset(port_spriteset_3_spriteset_default_construction_state_2) {
  5320.                         [80, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5321.             }
  5322.             spriteset(port_spriteset_4_0) {
  5323.                         [150, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5324.             }
  5325.             spriteset(port_spriteset_4_0_snow) {
  5326.                             [150, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5327.             }
  5328.             spriteset(port_spriteset_4_spriteset_default_construction_state_0) {
  5329.                         [150, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5330.             }
  5331.             spriteset(port_spriteset_4_spriteset_default_construction_state_1) {
  5332.                         [150, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5333.             }
  5334.             spriteset(port_spriteset_4_spriteset_default_construction_state_2) {
  5335.                         [150, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5336.             }
  5337.             spriteset(port_spriteset_5_0) {
  5338.                         [220, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5339.             }
  5340.             spriteset(port_spriteset_5_0_snow) {
  5341.                             [220, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5342.             }
  5343.             spriteset(port_spriteset_5_spriteset_default_construction_state_0) {
  5344.                         [220, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5345.             }
  5346.             spriteset(port_spriteset_5_spriteset_default_construction_state_1) {
  5347.                         [220, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5348.             }
  5349.             spriteset(port_spriteset_5_spriteset_default_construction_state_2) {
  5350.                         [220, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5351.             }
  5352.             spriteset(port_spriteset_6_0) {
  5353.                         [290, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5354.             }
  5355.             spriteset(port_spriteset_6_0_snow) {
  5356.                             [290, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5357.             }
  5358.             spriteset(port_spriteset_6_spriteset_default_construction_state_0) {
  5359.                         [290, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5360.             }
  5361.             spriteset(port_spriteset_6_spriteset_default_construction_state_1) {
  5362.                         [290, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5363.             }
  5364.             spriteset(port_spriteset_6_spriteset_default_construction_state_2) {
  5365.                         [290, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5366.             }
  5367.             spriteset(port_spriteset_7_0) {
  5368.                         [360, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5369.             }
  5370.             spriteset(port_spriteset_7_0_snow) {
  5371.                             [360, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5372.             }
  5373.             spriteset(port_spriteset_7_spriteset_default_construction_state_0) {
  5374.                         [360, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5375.             }
  5376.             spriteset(port_spriteset_7_spriteset_default_construction_state_1) {
  5377.                         [360, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5378.             }
  5379.             spriteset(port_spriteset_7_spriteset_default_construction_state_2) {
  5380.                         [360, 60, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5381.             }
  5382.             spriteset(port_spriteset_8_0) {
  5383.                         [440, 10, 64, 74, -31, -34, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5384.             }
  5385.             spriteset(port_spriteset_8_0_snow) {
  5386.                             [440, 10, 64, 74, -31, -34, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5387.             }
  5388.             spriteset(port_spriteset_8_spriteset_default_construction_state_0) {
  5389.                         [440, 10, 64, 74, -31, -34, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5390.             }
  5391.             spriteset(port_spriteset_8_spriteset_default_construction_state_1) {
  5392.                         [440, 10, 64, 74, -31, -34, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5393.             }
  5394.             spriteset(port_spriteset_8_spriteset_default_construction_state_2) {
  5395.                         [440, 10, 64, 74, -31, -34, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5396.             }
  5397.             spriteset(port_spriteset_9_0) {
  5398.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5399.             }
  5400.             spriteset(port_spriteset_9_0_snow) {
  5401.                             [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5402.             }
  5403.             spriteset(port_spriteset_9_spriteset_default_construction_state_0) {
  5404.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5405.             }
  5406.             spriteset(port_spriteset_9_spriteset_default_construction_state_1) {
  5407.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5408.             }
  5409.             spriteset(port_spriteset_9_spriteset_default_construction_state_2) {
  5410.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5411.             }
  5412.             spriteset(port_spriteset_10_0) {
  5413.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5414.             }
  5415.             spriteset(port_spriteset_10_0_snow) {
  5416.                             [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5417.             }
  5418.             spriteset(port_spriteset_10_spriteset_default_construction_state_0) {
  5419.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5420.             }
  5421.             spriteset(port_spriteset_10_spriteset_default_construction_state_1) {
  5422.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5423.             }
  5424.             spriteset(port_spriteset_10_spriteset_default_construction_state_2) {
  5425.                         [150, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5426.             }
  5427.             spriteset(port_spriteset_11_0) {
  5428.                         [220, 10, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5429.             }
  5430.             spriteset(port_spriteset_11_0_snow) {
  5431.                             [220, 10, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5432.             }
  5433.             spriteset(port_spriteset_11_spriteset_default_construction_state_0) {
  5434.                         [220, 10, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5435.             }
  5436.             spriteset(port_spriteset_11_spriteset_default_construction_state_1) {
  5437.                         [220, 10, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5438.             }
  5439.             spriteset(port_spriteset_11_spriteset_default_construction_state_2) {
  5440.                         [220, 10, 64, 39, -31, -7, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5441.             }
  5442.             spriteset(port_spriteset_12_0) {
  5443.                         [10, 110, 64, 39, -35, -15, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5444.             }
  5445.             spriteset(port_spriteset_12_0_snow) {
  5446.                             [10, 110, 64, 39, -35, -15, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5447.             }
  5448.             spriteset(port_spriteset_12_spriteset_default_construction_state_0) {
  5449.                         [10, 110, 64, 39, -35, -15, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5450.             }
  5451.             spriteset(port_spriteset_12_spriteset_default_construction_state_1) {
  5452.                         [10, 110, 64, 39, -35, -15, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5453.             }
  5454.             spriteset(port_spriteset_12_spriteset_default_construction_state_2) {
  5455.                         [10, 110, 64, 39, -35, -15, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5456.             }
  5457.             spriteset(port_spriteset_13_0) {
  5458.                         [80, 110, 64, 39, -31, -14, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5459.             }
  5460.             spriteset(port_spriteset_13_0_snow) {
  5461.                             [80, 110, 64, 39, -31, -14, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5462.             }
  5463.             spriteset(port_spriteset_13_spriteset_default_construction_state_0) {
  5464.                         [80, 110, 64, 39, -31, -14, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5465.             }
  5466.             spriteset(port_spriteset_13_spriteset_default_construction_state_1) {
  5467.                         [80, 110, 64, 39, -31, -14, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5468.             }
  5469.             spriteset(port_spriteset_13_spriteset_default_construction_state_2) {
  5470.                         [80, 110, 64, 39, -31, -14, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5471.             }
  5472.             spriteset(port_spriteset_14_0) {
  5473.                         [150, 110, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5474.             }
  5475.             spriteset(port_spriteset_14_0_snow) {
  5476.                             [150, 110, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5477.             }
  5478.             spriteset(port_spriteset_14_spriteset_default_construction_state_0) {
  5479.                         [150, 110, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5480.             }
  5481.             spriteset(port_spriteset_14_spriteset_default_construction_state_1) {
  5482.                         [150, 110, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5483.             }
  5484.             spriteset(port_spriteset_14_spriteset_default_construction_state_2) {
  5485.                         [150, 110, 64, 39, -31, -8, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5486.             }
  5487.             spriteset(port_spriteset_15_0) {
  5488.                         [220, 110, 64, 39, -27, -12, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5489.             }
  5490.             spriteset(port_spriteset_15_0_snow) {
  5491.                             [220, 110, 64, 39, -27, -12, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5492.             }
  5493.             spriteset(port_spriteset_15_spriteset_default_construction_state_0) {
  5494.                         [220, 110, 64, 39, -27, -12, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5495.             }
  5496.             spriteset(port_spriteset_15_spriteset_default_construction_state_1) {
  5497.                         [220, 110, 64, 39, -27, -12, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5498.             }
  5499.             spriteset(port_spriteset_15_spriteset_default_construction_state_2) {
  5500.                         [220, 110, 64, 39, -27, -12, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5501.             }
  5502.             spriteset(port_spriteset_16_0) {
  5503.                         [290, 110, 64, 39, -15, -11, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5504.             }
  5505.             spriteset(port_spriteset_16_0_snow) {
  5506.                             [290, 110, 64, 39, -15, -11, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5507.             }
  5508.             spriteset(port_spriteset_16_spriteset_default_construction_state_0) {
  5509.                         [290, 110, 64, 39, -15, -11, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5510.             }
  5511.             spriteset(port_spriteset_16_spriteset_default_construction_state_1) {
  5512.                         [290, 110, 64, 39, -15, -11, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5513.             }
  5514.             spriteset(port_spriteset_16_spriteset_default_construction_state_2) {
  5515.                         [290, 110, 64, 39, -15, -11, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5516.             }
  5517.             spriteset(port_spriteset_17_0) {
  5518.                         [360, 110, 64, 39, -45, -15, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5519.             }
  5520.             spriteset(port_spriteset_17_0_snow) {
  5521.                             [360, 110, 64, 39, -45, -15, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5522.             }
  5523.             spriteset(port_spriteset_17_spriteset_default_construction_state_0) {
  5524.                         [360, 110, 64, 39, -45, -15, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5525.             }
  5526.             spriteset(port_spriteset_17_spriteset_default_construction_state_1) {
  5527.                         [360, 110, 64, 39, -45, -15, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5528.             }
  5529.             spriteset(port_spriteset_17_spriteset_default_construction_state_2) {
  5530.                         [360, 110, 64, 39, -45, -15, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5531.             }
  5532.             spriteset(port_spriteset_18_0) {
  5533.                         [360, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_1.png"]
  5534.             }
  5535.             spriteset(port_spriteset_18_0_snow) {
  5536.                             [360, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_1_snow.png"]
  5537.             }
  5538.             spriteset(port_spriteset_18_spriteset_default_construction_state_0) {
  5539.                         [360, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_1.png"]
  5540.             }
  5541.             spriteset(port_spriteset_18_spriteset_default_construction_state_1) {
  5542.                         [360, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_2.png"]
  5543.             }
  5544.             spriteset(port_spriteset_18_spriteset_default_construction_state_2) {
  5545.                         [360, 10, 64, 39, -31, 0, ANIM | NOCROP, "src/graphics/industries/port_construction_3.png"]
  5546.             }
  5547.         spritelayout port_spritelayout_2 {
  5548.             // Industry-specific ground (snow aware)
  5549.             // non-snow
  5550.             childsprite {
  5551.                 sprite: port_spriteset_0_0(0);
  5552.                 recolour_mode: RECOLOUR_REMAP;
  5553.                 palette: PALETTE_USE_DEFAULT;
  5554.                 hide_sprite: (LOAD_TEMP(13));
  5555.                 always_draw: 1;
  5556.             }
  5557.             childsprite {
  5558.                 sprite: port_spriteset_0_0(0);
  5559.                 recolour_mode: RECOLOUR_REMAP;
  5560.                 palette: PALETTE_USE_DEFAULT;
  5561.                 hide_sprite: (LOAD_TEMP(13));
  5562.                 always_draw: 1;
  5563.             }
  5564.             // snow
  5565.             childsprite {
  5566.                 sprite: port_spriteset_0_0_snow(0);
  5567.                 recolour_mode: RECOLOUR_REMAP;
  5568.                 palette: PALETTE_USE_DEFAULT;
  5569.                 hide_sprite: (!LOAD_TEMP(13));
  5570.                 always_draw: 1;
  5571.             }
  5572.             childsprite {
  5573.                 sprite: port_spriteset_0_0_snow(0);
  5574.                 recolour_mode: RECOLOUR_REMAP;
  5575.                 palette: PALETTE_USE_DEFAULT;
  5576.                 hide_sprite: (!LOAD_TEMP(13));
  5577.                 always_draw: 1;
  5578.             }
  5579.                 // construction states - optional (no snow awareness)
  5580.                 building {
  5581.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  5582.                     recolour_mode: RECOLOUR_REMAP;
  5583.                     palette: PALETTE_USE_DEFAULT;
  5584.                     xoffset: 0;
  5585.                     yoffset: 0;
  5586.                     zoffset: 0;
  5587.                     xextent: 16;
  5588.                     yextent: 16;
  5589.                     zextent: 32;
  5590.                     always_draw: 1;
  5591.                     hide_sprite: (construction_state != 0);
  5592.                 }
  5593.                 building {
  5594.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  5595.                     recolour_mode: RECOLOUR_REMAP;
  5596.                     palette: PALETTE_USE_DEFAULT;
  5597.                     xoffset: 0;
  5598.                     yoffset: 0;
  5599.                     zoffset: 0;
  5600.                     xextent: 16;
  5601.                     yextent: 16;
  5602.                     zextent: 32;
  5603.                     always_draw: 1;
  5604.                     hide_sprite: (construction_state != 1);
  5605.                 }
  5606.                 building {
  5607.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  5608.                     recolour_mode: RECOLOUR_REMAP;
  5609.                     palette: PALETTE_USE_DEFAULT;
  5610.                     xoffset: 0;
  5611.                     yoffset: 0;
  5612.                     zoffset: 0;
  5613.                     xextent: 16;
  5614.                     yextent: 16;
  5615.                     zextent: 32;
  5616.                     always_draw: 1;
  5617.                     hide_sprite: (construction_state != 2);
  5618.                 }
  5619.                 // construction states - optional (no snow awareness)
  5620.                 building {
  5621.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  5622.                     recolour_mode: RECOLOUR_REMAP;
  5623.                     palette: PALETTE_USE_DEFAULT;
  5624.                     xoffset: 0;
  5625.                     yoffset: 0;
  5626.                     zoffset: 0;
  5627.                     xextent: 16;
  5628.                     yextent: 16;
  5629.                     zextent: 32;
  5630.                     always_draw: 1;
  5631.                     hide_sprite: (construction_state != 0);
  5632.                 }
  5633.                 building {
  5634.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  5635.                     recolour_mode: RECOLOUR_REMAP;
  5636.                     palette: PALETTE_USE_DEFAULT;
  5637.                     xoffset: 0;
  5638.                     yoffset: 0;
  5639.                     zoffset: 0;
  5640.                     xextent: 16;
  5641.                     yextent: 16;
  5642.                     zextent: 32;
  5643.                     always_draw: 1;
  5644.                     hide_sprite: (construction_state != 1);
  5645.                 }
  5646.                 building {
  5647.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  5648.                     recolour_mode: RECOLOUR_REMAP;
  5649.                     palette: PALETTE_USE_DEFAULT;
  5650.                     xoffset: 0;
  5651.                     yoffset: 0;
  5652.                     zoffset: 0;
  5653.                     xextent: 16;
  5654.                     yextent: 16;
  5655.                     zextent: 32;
  5656.                     always_draw: 1;
  5657.                     hide_sprite: (construction_state != 2);
  5658.                 }
  5659.                 // construction states - optional (no snow awareness)
  5660.                 building {
  5661.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  5662.                     recolour_mode: RECOLOUR_REMAP;
  5663.                     palette: PALETTE_USE_DEFAULT;
  5664.                     xoffset: 0;
  5665.                     yoffset: 0;
  5666.                     zoffset: 0;
  5667.                     xextent: 16;
  5668.                     yextent: 16;
  5669.                     zextent: 32;
  5670.                     always_draw: 1;
  5671.                     hide_sprite: (construction_state != 0);
  5672.                 }
  5673.                 building {
  5674.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  5675.                     recolour_mode: RECOLOUR_REMAP;
  5676.                     palette: PALETTE_USE_DEFAULT;
  5677.                     xoffset: 0;
  5678.                     yoffset: 0;
  5679.                     zoffset: 0;
  5680.                     xextent: 16;
  5681.                     yextent: 16;
  5682.                     zextent: 32;
  5683.                     always_draw: 1;
  5684.                     hide_sprite: (construction_state != 1);
  5685.                 }
  5686.                 building {
  5687.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  5688.                     recolour_mode: RECOLOUR_REMAP;
  5689.                     palette: PALETTE_USE_DEFAULT;
  5690.                     xoffset: 0;
  5691.                     yoffset: 0;
  5692.                     zoffset: 0;
  5693.                     xextent: 16;
  5694.                     yextent: 16;
  5695.                     zextent: 32;
  5696.                     always_draw: 1;
  5697.                     hide_sprite: (construction_state != 2);
  5698.                 }
  5699.                 // construction states - optional (no snow awareness)
  5700.                 building {
  5701.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  5702.                     recolour_mode: RECOLOUR_REMAP;
  5703.                     palette: PALETTE_USE_DEFAULT;
  5704.                     xoffset: 0;
  5705.                     yoffset: 0;
  5706.                     zoffset: 18;
  5707.                     xextent: 16;
  5708.                     yextent: 16;
  5709.                     zextent: 32;
  5710.                     always_draw: 0;
  5711.                     hide_sprite: (construction_state != 0);
  5712.                 }
  5713.                 building {
  5714.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  5715.                     recolour_mode: RECOLOUR_REMAP;
  5716.                     palette: PALETTE_USE_DEFAULT;
  5717.                     xoffset: 0;
  5718.                     yoffset: 0;
  5719.                     zoffset: 18;
  5720.                     xextent: 16;
  5721.                     yextent: 16;
  5722.                     zextent: 32;
  5723.                     always_draw: 0;
  5724.                     hide_sprite: (construction_state != 1);
  5725.                 }
  5726.                 building {
  5727.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  5728.                     recolour_mode: RECOLOUR_REMAP;
  5729.                     palette: PALETTE_USE_DEFAULT;
  5730.                     xoffset: 0;
  5731.                     yoffset: 0;
  5732.                     zoffset: 18;
  5733.                     xextent: 16;
  5734.                     yextent: 16;
  5735.                     zextent: 32;
  5736.                     always_draw: 0;
  5737.                     hide_sprite: (construction_state != 2);
  5738.                 }
  5739.                     // buildings (snow aware)
  5740.                     building {
  5741.                         sprite: port_spriteset_2_0(0);
  5742.                         recolour_mode: RECOLOUR_REMAP;
  5743.                         palette: PALETTE_USE_DEFAULT;
  5744.                         xoffset: 0;
  5745.                         yoffset: 0;
  5746.                         zoffset: 0;
  5747.                         xextent: 16;
  5748.                         yextent: 16;
  5749.                         zextent: 32;
  5750.                         always_draw: 1;
  5751.                         hide_sprite: (LOAD_TEMP(255));
  5752.                     }
  5753.                     building {
  5754.                         sprite: port_spriteset_2_0_snow(0);
  5755.                         recolour_mode: RECOLOUR_REMAP;
  5756.                         palette: PALETTE_USE_DEFAULT;
  5757.                         xoffset: 0;
  5758.                         yoffset: 0;
  5759.                         zoffset: 0;
  5760.                         xextent: 16;
  5761.                         yextent: 16;
  5762.                         zextent: 32;
  5763.                         always_draw: 1;
  5764.                         hide_sprite: (LOAD_TEMP(245));
  5765.                     }
  5766.                     // buildings (snow aware)
  5767.                     building {
  5768.                         sprite: port_spriteset_3_0(0);
  5769.                         recolour_mode: RECOLOUR_REMAP;
  5770.                         palette: PALETTE_USE_DEFAULT;
  5771.                         xoffset: 0;
  5772.                         yoffset: 0;
  5773.                         zoffset: 0;
  5774.                         xextent: 16;
  5775.                         yextent: 16;
  5776.                         zextent: 32;
  5777.                         always_draw: 1;
  5778.                         hide_sprite: (LOAD_TEMP(255));
  5779.                     }
  5780.                     building {
  5781.                         sprite: port_spriteset_3_0_snow(0);
  5782.                         recolour_mode: RECOLOUR_REMAP;
  5783.                         palette: PALETTE_USE_DEFAULT;
  5784.                         xoffset: 0;
  5785.                         yoffset: 0;
  5786.                         zoffset: 0;
  5787.                         xextent: 16;
  5788.                         yextent: 16;
  5789.                         zextent: 32;
  5790.                         always_draw: 1;
  5791.                         hide_sprite: (LOAD_TEMP(245));
  5792.                     }
  5793.                     // buildings (snow aware)
  5794.                     building {
  5795.                         sprite: port_spriteset_1_0(0);
  5796.                         recolour_mode: RECOLOUR_REMAP;
  5797.                         palette: PALETTE_USE_DEFAULT;
  5798.                         xoffset: 0;
  5799.                         yoffset: 0;
  5800.                         zoffset: 0;
  5801.                         xextent: 16;
  5802.                         yextent: 16;
  5803.                         zextent: 32;
  5804.                         always_draw: 1;
  5805.                         hide_sprite: (LOAD_TEMP(255));
  5806.                     }
  5807.                     building {
  5808.                         sprite: port_spriteset_1_0_snow(0);
  5809.                         recolour_mode: RECOLOUR_REMAP;
  5810.                         palette: PALETTE_USE_DEFAULT;
  5811.                         xoffset: 0;
  5812.                         yoffset: 0;
  5813.                         zoffset: 0;
  5814.                         xextent: 16;
  5815.                         yextent: 16;
  5816.                         zextent: 32;
  5817.                         always_draw: 1;
  5818.                         hide_sprite: (LOAD_TEMP(245));
  5819.                     }
  5820.                     // buildings (snow aware)
  5821.                     building {
  5822.                         sprite: port_spriteset_18_0(0);
  5823.                         recolour_mode: RECOLOUR_REMAP;
  5824.                         palette: PALETTE_USE_DEFAULT;
  5825.                         xoffset: 0;
  5826.                         yoffset: 0;
  5827.                         zoffset: 18;
  5828.                         xextent: 16;
  5829.                         yextent: 16;
  5830.                         zextent: 32;
  5831.                         always_draw: 0;
  5832.                         hide_sprite: (LOAD_TEMP(255));
  5833.                     }
  5834.                     building {
  5835.                         sprite: port_spriteset_18_0_snow(0);
  5836.                         recolour_mode: RECOLOUR_REMAP;
  5837.                         palette: PALETTE_USE_DEFAULT;
  5838.                         xoffset: 0;
  5839.                         yoffset: 0;
  5840.                         zoffset: 18;
  5841.                         xextent: 16;
  5842.                         yextent: 16;
  5843.                         zextent: 32;
  5844.                         always_draw: 0;
  5845.                         hide_sprite: (LOAD_TEMP(245));
  5846.                     }
  5847.         }
  5848.         spritelayout port_spritelayout_11 {
  5849.             // Industry-specific ground (snow aware)
  5850.             // non-snow
  5851.             childsprite {
  5852.                 sprite: port_spriteset_0_0(0);
  5853.                 recolour_mode: RECOLOUR_REMAP;
  5854.                 palette: PALETTE_USE_DEFAULT;
  5855.                 hide_sprite: (LOAD_TEMP(13));
  5856.                 always_draw: 1;
  5857.             }
  5858.             childsprite {
  5859.                 sprite: port_spriteset_0_0(0);
  5860.                 recolour_mode: RECOLOUR_REMAP;
  5861.                 palette: PALETTE_USE_DEFAULT;
  5862.                 hide_sprite: (LOAD_TEMP(13));
  5863.                 always_draw: 1;
  5864.             }
  5865.             // snow
  5866.             childsprite {
  5867.                 sprite: port_spriteset_0_0_snow(0);
  5868.                 recolour_mode: RECOLOUR_REMAP;
  5869.                 palette: PALETTE_USE_DEFAULT;
  5870.                 hide_sprite: (!LOAD_TEMP(13));
  5871.                 always_draw: 1;
  5872.             }
  5873.             childsprite {
  5874.                 sprite: port_spriteset_0_0_snow(0);
  5875.                 recolour_mode: RECOLOUR_REMAP;
  5876.                 palette: PALETTE_USE_DEFAULT;
  5877.                 hide_sprite: (!LOAD_TEMP(13));
  5878.                 always_draw: 1;
  5879.             }
  5880.                 // construction states - optional (no snow awareness)
  5881.                 building {
  5882.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  5883.                     recolour_mode: RECOLOUR_REMAP;
  5884.                     palette: PALETTE_USE_DEFAULT;
  5885.                     xoffset: 0;
  5886.                     yoffset: 0;
  5887.                     zoffset: 0;
  5888.                     xextent: 16;
  5889.                     yextent: 16;
  5890.                     zextent: 32;
  5891.                     always_draw: 1;
  5892.                     hide_sprite: (construction_state != 0);
  5893.                 }
  5894.                 building {
  5895.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  5896.                     recolour_mode: RECOLOUR_REMAP;
  5897.                     palette: PALETTE_USE_DEFAULT;
  5898.                     xoffset: 0;
  5899.                     yoffset: 0;
  5900.                     zoffset: 0;
  5901.                     xextent: 16;
  5902.                     yextent: 16;
  5903.                     zextent: 32;
  5904.                     always_draw: 1;
  5905.                     hide_sprite: (construction_state != 1);
  5906.                 }
  5907.                 building {
  5908.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  5909.                     recolour_mode: RECOLOUR_REMAP;
  5910.                     palette: PALETTE_USE_DEFAULT;
  5911.                     xoffset: 0;
  5912.                     yoffset: 0;
  5913.                     zoffset: 0;
  5914.                     xextent: 16;
  5915.                     yextent: 16;
  5916.                     zextent: 32;
  5917.                     always_draw: 1;
  5918.                     hide_sprite: (construction_state != 2);
  5919.                 }
  5920.                 // construction states - optional (no snow awareness)
  5921.                 building {
  5922.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  5923.                     recolour_mode: RECOLOUR_REMAP;
  5924.                     palette: PALETTE_USE_DEFAULT;
  5925.                     xoffset: 0;
  5926.                     yoffset: 0;
  5927.                     zoffset: 0;
  5928.                     xextent: 16;
  5929.                     yextent: 16;
  5930.                     zextent: 32;
  5931.                     always_draw: 1;
  5932.                     hide_sprite: (construction_state != 0);
  5933.                 }
  5934.                 building {
  5935.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  5936.                     recolour_mode: RECOLOUR_REMAP;
  5937.                     palette: PALETTE_USE_DEFAULT;
  5938.                     xoffset: 0;
  5939.                     yoffset: 0;
  5940.                     zoffset: 0;
  5941.                     xextent: 16;
  5942.                     yextent: 16;
  5943.                     zextent: 32;
  5944.                     always_draw: 1;
  5945.                     hide_sprite: (construction_state != 1);
  5946.                 }
  5947.                 building {
  5948.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  5949.                     recolour_mode: RECOLOUR_REMAP;
  5950.                     palette: PALETTE_USE_DEFAULT;
  5951.                     xoffset: 0;
  5952.                     yoffset: 0;
  5953.                     zoffset: 0;
  5954.                     xextent: 16;
  5955.                     yextent: 16;
  5956.                     zextent: 32;
  5957.                     always_draw: 1;
  5958.                     hide_sprite: (construction_state != 2);
  5959.                 }
  5960.                 // construction states - optional (no snow awareness)
  5961.                 building {
  5962.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  5963.                     recolour_mode: RECOLOUR_REMAP;
  5964.                     palette: PALETTE_USE_DEFAULT;
  5965.                     xoffset: 0;
  5966.                     yoffset: 0;
  5967.                     zoffset: 18;
  5968.                     xextent: 16;
  5969.                     yextent: 16;
  5970.                     zextent: 32;
  5971.                     always_draw: 0;
  5972.                     hide_sprite: (construction_state != 0);
  5973.                 }
  5974.                 building {
  5975.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  5976.                     recolour_mode: RECOLOUR_REMAP;
  5977.                     palette: PALETTE_USE_DEFAULT;
  5978.                     xoffset: 0;
  5979.                     yoffset: 0;
  5980.                     zoffset: 18;
  5981.                     xextent: 16;
  5982.                     yextent: 16;
  5983.                     zextent: 32;
  5984.                     always_draw: 0;
  5985.                     hide_sprite: (construction_state != 1);
  5986.                 }
  5987.                 building {
  5988.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  5989.                     recolour_mode: RECOLOUR_REMAP;
  5990.                     palette: PALETTE_USE_DEFAULT;
  5991.                     xoffset: 0;
  5992.                     yoffset: 0;
  5993.                     zoffset: 18;
  5994.                     xextent: 16;
  5995.                     yextent: 16;
  5996.                     zextent: 32;
  5997.                     always_draw: 0;
  5998.                     hide_sprite: (construction_state != 2);
  5999.                 }
  6000.                     // buildings (snow aware)
  6001.                     building {
  6002.                         sprite: port_spriteset_2_0(0);
  6003.                         recolour_mode: RECOLOUR_REMAP;
  6004.                         palette: PALETTE_USE_DEFAULT;
  6005.                         xoffset: 0;
  6006.                         yoffset: 0;
  6007.                         zoffset: 0;
  6008.                         xextent: 16;
  6009.                         yextent: 16;
  6010.                         zextent: 32;
  6011.                         always_draw: 1;
  6012.                         hide_sprite: (LOAD_TEMP(255));
  6013.                     }
  6014.                     building {
  6015.                         sprite: port_spriteset_2_0_snow(0);
  6016.                         recolour_mode: RECOLOUR_REMAP;
  6017.                         palette: PALETTE_USE_DEFAULT;
  6018.                         xoffset: 0;
  6019.                         yoffset: 0;
  6020.                         zoffset: 0;
  6021.                         xextent: 16;
  6022.                         yextent: 16;
  6023.                         zextent: 32;
  6024.                         always_draw: 1;
  6025.                         hide_sprite: (LOAD_TEMP(245));
  6026.                     }
  6027.                     // buildings (snow aware)
  6028.                     building {
  6029.                         sprite: port_spriteset_1_0(0);
  6030.                         recolour_mode: RECOLOUR_REMAP;
  6031.                         palette: PALETTE_USE_DEFAULT;
  6032.                         xoffset: 0;
  6033.                         yoffset: 0;
  6034.                         zoffset: 0;
  6035.                         xextent: 16;
  6036.                         yextent: 16;
  6037.                         zextent: 32;
  6038.                         always_draw: 1;
  6039.                         hide_sprite: (LOAD_TEMP(255));
  6040.                     }
  6041.                     building {
  6042.                         sprite: port_spriteset_1_0_snow(0);
  6043.                         recolour_mode: RECOLOUR_REMAP;
  6044.                         palette: PALETTE_USE_DEFAULT;
  6045.                         xoffset: 0;
  6046.                         yoffset: 0;
  6047.                         zoffset: 0;
  6048.                         xextent: 16;
  6049.                         yextent: 16;
  6050.                         zextent: 32;
  6051.                         always_draw: 1;
  6052.                         hide_sprite: (LOAD_TEMP(245));
  6053.                     }
  6054.                     // buildings (snow aware)
  6055.                     building {
  6056.                         sprite: port_spriteset_8_0(0);
  6057.                         recolour_mode: RECOLOUR_REMAP;
  6058.                         palette: PALETTE_USE_DEFAULT;
  6059.                         xoffset: 0;
  6060.                         yoffset: 0;
  6061.                         zoffset: 18;
  6062.                         xextent: 16;
  6063.                         yextent: 16;
  6064.                         zextent: 32;
  6065.                         always_draw: 0;
  6066.                         hide_sprite: (LOAD_TEMP(255));
  6067.                     }
  6068.                     building {
  6069.                         sprite: port_spriteset_8_0_snow(0);
  6070.                         recolour_mode: RECOLOUR_REMAP;
  6071.                         palette: PALETTE_USE_DEFAULT;
  6072.                         xoffset: 0;
  6073.                         yoffset: 0;
  6074.                         zoffset: 18;
  6075.                         xextent: 16;
  6076.                         yextent: 16;
  6077.                         zextent: 32;
  6078.                         always_draw: 0;
  6079.                         hide_sprite: (LOAD_TEMP(245));
  6080.                     }
  6081.         }
  6082.         spritelayout port_spritelayout_12 {
  6083.             // Industry-specific ground (snow aware)
  6084.             // non-snow
  6085.             childsprite {
  6086.                 sprite: port_spriteset_0_0(0);
  6087.                 recolour_mode: RECOLOUR_REMAP;
  6088.                 palette: PALETTE_USE_DEFAULT;
  6089.                 hide_sprite: (LOAD_TEMP(13));
  6090.                 always_draw: 1;
  6091.             }
  6092.             childsprite {
  6093.                 sprite: port_spriteset_0_0(0);
  6094.                 recolour_mode: RECOLOUR_REMAP;
  6095.                 palette: PALETTE_USE_DEFAULT;
  6096.                 hide_sprite: (LOAD_TEMP(13));
  6097.                 always_draw: 1;
  6098.             }
  6099.             // snow
  6100.             childsprite {
  6101.                 sprite: port_spriteset_0_0_snow(0);
  6102.                 recolour_mode: RECOLOUR_REMAP;
  6103.                 palette: PALETTE_USE_DEFAULT;
  6104.                 hide_sprite: (!LOAD_TEMP(13));
  6105.                 always_draw: 1;
  6106.             }
  6107.             childsprite {
  6108.                 sprite: port_spriteset_0_0_snow(0);
  6109.                 recolour_mode: RECOLOUR_REMAP;
  6110.                 palette: PALETTE_USE_DEFAULT;
  6111.                 hide_sprite: (!LOAD_TEMP(13));
  6112.                 always_draw: 1;
  6113.             }
  6114.                 // construction states - optional (no snow awareness)
  6115.                 building {
  6116.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  6117.                     recolour_mode: RECOLOUR_REMAP;
  6118.                     palette: PALETTE_USE_DEFAULT;
  6119.                     xoffset: 0;
  6120.                     yoffset: 0;
  6121.                     zoffset: 0;
  6122.                     xextent: 16;
  6123.                     yextent: 16;
  6124.                     zextent: 32;
  6125.                     always_draw: 1;
  6126.                     hide_sprite: (construction_state != 0);
  6127.                 }
  6128.                 building {
  6129.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  6130.                     recolour_mode: RECOLOUR_REMAP;
  6131.                     palette: PALETTE_USE_DEFAULT;
  6132.                     xoffset: 0;
  6133.                     yoffset: 0;
  6134.                     zoffset: 0;
  6135.                     xextent: 16;
  6136.                     yextent: 16;
  6137.                     zextent: 32;
  6138.                     always_draw: 1;
  6139.                     hide_sprite: (construction_state != 1);
  6140.                 }
  6141.                 building {
  6142.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  6143.                     recolour_mode: RECOLOUR_REMAP;
  6144.                     palette: PALETTE_USE_DEFAULT;
  6145.                     xoffset: 0;
  6146.                     yoffset: 0;
  6147.                     zoffset: 0;
  6148.                     xextent: 16;
  6149.                     yextent: 16;
  6150.                     zextent: 32;
  6151.                     always_draw: 1;
  6152.                     hide_sprite: (construction_state != 2);
  6153.                 }
  6154.                 // construction states - optional (no snow awareness)
  6155.                 building {
  6156.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  6157.                     recolour_mode: RECOLOUR_REMAP;
  6158.                     palette: PALETTE_USE_DEFAULT;
  6159.                     xoffset: 0;
  6160.                     yoffset: 0;
  6161.                     zoffset: 0;
  6162.                     xextent: 16;
  6163.                     yextent: 16;
  6164.                     zextent: 32;
  6165.                     always_draw: 1;
  6166.                     hide_sprite: (construction_state != 0);
  6167.                 }
  6168.                 building {
  6169.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  6170.                     recolour_mode: RECOLOUR_REMAP;
  6171.                     palette: PALETTE_USE_DEFAULT;
  6172.                     xoffset: 0;
  6173.                     yoffset: 0;
  6174.                     zoffset: 0;
  6175.                     xextent: 16;
  6176.                     yextent: 16;
  6177.                     zextent: 32;
  6178.                     always_draw: 1;
  6179.                     hide_sprite: (construction_state != 1);
  6180.                 }
  6181.                 building {
  6182.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  6183.                     recolour_mode: RECOLOUR_REMAP;
  6184.                     palette: PALETTE_USE_DEFAULT;
  6185.                     xoffset: 0;
  6186.                     yoffset: 0;
  6187.                     zoffset: 0;
  6188.                     xextent: 16;
  6189.                     yextent: 16;
  6190.                     zextent: 32;
  6191.                     always_draw: 1;
  6192.                     hide_sprite: (construction_state != 2);
  6193.                 }
  6194.                 // construction states - optional (no snow awareness)
  6195.                 building {
  6196.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  6197.                     recolour_mode: RECOLOUR_REMAP;
  6198.                     palette: PALETTE_USE_DEFAULT;
  6199.                     xoffset: 0;
  6200.                     yoffset: 0;
  6201.                     zoffset: 18;
  6202.                     xextent: 16;
  6203.                     yextent: 16;
  6204.                     zextent: 32;
  6205.                     always_draw: 0;
  6206.                     hide_sprite: (construction_state != 0);
  6207.                 }
  6208.                 building {
  6209.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  6210.                     recolour_mode: RECOLOUR_REMAP;
  6211.                     palette: PALETTE_USE_DEFAULT;
  6212.                     xoffset: 0;
  6213.                     yoffset: 0;
  6214.                     zoffset: 18;
  6215.                     xextent: 16;
  6216.                     yextent: 16;
  6217.                     zextent: 32;
  6218.                     always_draw: 0;
  6219.                     hide_sprite: (construction_state != 1);
  6220.                 }
  6221.                 building {
  6222.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  6223.                     recolour_mode: RECOLOUR_REMAP;
  6224.                     palette: PALETTE_USE_DEFAULT;
  6225.                     xoffset: 0;
  6226.                     yoffset: 0;
  6227.                     zoffset: 18;
  6228.                     xextent: 16;
  6229.                     yextent: 16;
  6230.                     zextent: 32;
  6231.                     always_draw: 0;
  6232.                     hide_sprite: (construction_state != 2);
  6233.                 }
  6234.                     // buildings (snow aware)
  6235.                     building {
  6236.                         sprite: port_spriteset_3_0(0);
  6237.                         recolour_mode: RECOLOUR_REMAP;
  6238.                         palette: PALETTE_USE_DEFAULT;
  6239.                         xoffset: 0;
  6240.                         yoffset: 0;
  6241.                         zoffset: 0;
  6242.                         xextent: 16;
  6243.                         yextent: 16;
  6244.                         zextent: 32;
  6245.                         always_draw: 1;
  6246.                         hide_sprite: (LOAD_TEMP(255));
  6247.                     }
  6248.                     building {
  6249.                         sprite: port_spriteset_3_0_snow(0);
  6250.                         recolour_mode: RECOLOUR_REMAP;
  6251.                         palette: PALETTE_USE_DEFAULT;
  6252.                         xoffset: 0;
  6253.                         yoffset: 0;
  6254.                         zoffset: 0;
  6255.                         xextent: 16;
  6256.                         yextent: 16;
  6257.                         zextent: 32;
  6258.                         always_draw: 1;
  6259.                         hide_sprite: (LOAD_TEMP(245));
  6260.                     }
  6261.                     // buildings (snow aware)
  6262.                     building {
  6263.                         sprite: port_spriteset_1_0(0);
  6264.                         recolour_mode: RECOLOUR_REMAP;
  6265.                         palette: PALETTE_USE_DEFAULT;
  6266.                         xoffset: 0;
  6267.                         yoffset: 0;
  6268.                         zoffset: 0;
  6269.                         xextent: 16;
  6270.                         yextent: 16;
  6271.                         zextent: 32;
  6272.                         always_draw: 1;
  6273.                         hide_sprite: (LOAD_TEMP(255));
  6274.                     }
  6275.                     building {
  6276.                         sprite: port_spriteset_1_0_snow(0);
  6277.                         recolour_mode: RECOLOUR_REMAP;
  6278.                         palette: PALETTE_USE_DEFAULT;
  6279.                         xoffset: 0;
  6280.                         yoffset: 0;
  6281.                         zoffset: 0;
  6282.                         xextent: 16;
  6283.                         yextent: 16;
  6284.                         zextent: 32;
  6285.                         always_draw: 1;
  6286.                         hide_sprite: (LOAD_TEMP(245));
  6287.                     }
  6288.                     // buildings (snow aware)
  6289.                     building {
  6290.                         sprite: port_spriteset_8_0(0);
  6291.                         recolour_mode: RECOLOUR_REMAP;
  6292.                         palette: PALETTE_USE_DEFAULT;
  6293.                         xoffset: 0;
  6294.                         yoffset: 0;
  6295.                         zoffset: 18;
  6296.                         xextent: 16;
  6297.                         yextent: 16;
  6298.                         zextent: 32;
  6299.                         always_draw: 0;
  6300.                         hide_sprite: (LOAD_TEMP(255));
  6301.                     }
  6302.                     building {
  6303.                         sprite: port_spriteset_8_0_snow(0);
  6304.                         recolour_mode: RECOLOUR_REMAP;
  6305.                         palette: PALETTE_USE_DEFAULT;
  6306.                         xoffset: 0;
  6307.                         yoffset: 0;
  6308.                         zoffset: 18;
  6309.                         xextent: 16;
  6310.                         yextent: 16;
  6311.                         zextent: 32;
  6312.                         always_draw: 0;
  6313.                         hide_sprite: (LOAD_TEMP(245));
  6314.                     }
  6315.         }
  6316.         spritelayout port_spritelayout_13 {
  6317.             // Industry-specific ground (snow aware)
  6318.             // non-snow
  6319.             childsprite {
  6320.                 sprite: port_spriteset_0_0(0);
  6321.                 recolour_mode: RECOLOUR_REMAP;
  6322.                 palette: PALETTE_USE_DEFAULT;
  6323.                 hide_sprite: (LOAD_TEMP(13));
  6324.                 always_draw: 1;
  6325.             }
  6326.             childsprite {
  6327.                 sprite: port_spriteset_0_0(0);
  6328.                 recolour_mode: RECOLOUR_REMAP;
  6329.                 palette: PALETTE_USE_DEFAULT;
  6330.                 hide_sprite: (LOAD_TEMP(13));
  6331.                 always_draw: 1;
  6332.             }
  6333.             // snow
  6334.             childsprite {
  6335.                 sprite: port_spriteset_0_0_snow(0);
  6336.                 recolour_mode: RECOLOUR_REMAP;
  6337.                 palette: PALETTE_USE_DEFAULT;
  6338.                 hide_sprite: (!LOAD_TEMP(13));
  6339.                 always_draw: 1;
  6340.             }
  6341.             childsprite {
  6342.                 sprite: port_spriteset_0_0_snow(0);
  6343.                 recolour_mode: RECOLOUR_REMAP;
  6344.                 palette: PALETTE_USE_DEFAULT;
  6345.                 hide_sprite: (!LOAD_TEMP(13));
  6346.                 always_draw: 1;
  6347.             }
  6348.                 // construction states - optional (no snow awareness)
  6349.                 building {
  6350.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  6351.                     recolour_mode: RECOLOUR_REMAP;
  6352.                     palette: PALETTE_USE_DEFAULT;
  6353.                     xoffset: 0;
  6354.                     yoffset: 0;
  6355.                     zoffset: 0;
  6356.                     xextent: 16;
  6357.                     yextent: 16;
  6358.                     zextent: 32;
  6359.                     always_draw: 1;
  6360.                     hide_sprite: (construction_state != 0);
  6361.                 }
  6362.                 building {
  6363.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  6364.                     recolour_mode: RECOLOUR_REMAP;
  6365.                     palette: PALETTE_USE_DEFAULT;
  6366.                     xoffset: 0;
  6367.                     yoffset: 0;
  6368.                     zoffset: 0;
  6369.                     xextent: 16;
  6370.                     yextent: 16;
  6371.                     zextent: 32;
  6372.                     always_draw: 1;
  6373.                     hide_sprite: (construction_state != 1);
  6374.                 }
  6375.                 building {
  6376.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  6377.                     recolour_mode: RECOLOUR_REMAP;
  6378.                     palette: PALETTE_USE_DEFAULT;
  6379.                     xoffset: 0;
  6380.                     yoffset: 0;
  6381.                     zoffset: 0;
  6382.                     xextent: 16;
  6383.                     yextent: 16;
  6384.                     zextent: 32;
  6385.                     always_draw: 1;
  6386.                     hide_sprite: (construction_state != 2);
  6387.                 }
  6388.                 // construction states - optional (no snow awareness)
  6389.                 building {
  6390.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  6391.                     recolour_mode: RECOLOUR_REMAP;
  6392.                     palette: PALETTE_USE_DEFAULT;
  6393.                     xoffset: 0;
  6394.                     yoffset: 0;
  6395.                     zoffset: 0;
  6396.                     xextent: 16;
  6397.                     yextent: 16;
  6398.                     zextent: 32;
  6399.                     always_draw: 1;
  6400.                     hide_sprite: (construction_state != 0);
  6401.                 }
  6402.                 building {
  6403.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  6404.                     recolour_mode: RECOLOUR_REMAP;
  6405.                     palette: PALETTE_USE_DEFAULT;
  6406.                     xoffset: 0;
  6407.                     yoffset: 0;
  6408.                     zoffset: 0;
  6409.                     xextent: 16;
  6410.                     yextent: 16;
  6411.                     zextent: 32;
  6412.                     always_draw: 1;
  6413.                     hide_sprite: (construction_state != 1);
  6414.                 }
  6415.                 building {
  6416.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  6417.                     recolour_mode: RECOLOUR_REMAP;
  6418.                     palette: PALETTE_USE_DEFAULT;
  6419.                     xoffset: 0;
  6420.                     yoffset: 0;
  6421.                     zoffset: 0;
  6422.                     xextent: 16;
  6423.                     yextent: 16;
  6424.                     zextent: 32;
  6425.                     always_draw: 1;
  6426.                     hide_sprite: (construction_state != 2);
  6427.                 }
  6428.                 // construction states - optional (no snow awareness)
  6429.                 building {
  6430.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  6431.                     recolour_mode: RECOLOUR_REMAP;
  6432.                     palette: PALETTE_USE_DEFAULT;
  6433.                     xoffset: 0;
  6434.                     yoffset: 0;
  6435.                     zoffset: 0;
  6436.                     xextent: 16;
  6437.                     yextent: 16;
  6438.                     zextent: 32;
  6439.                     always_draw: 1;
  6440.                     hide_sprite: (construction_state != 0);
  6441.                 }
  6442.                 building {
  6443.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  6444.                     recolour_mode: RECOLOUR_REMAP;
  6445.                     palette: PALETTE_USE_DEFAULT;
  6446.                     xoffset: 0;
  6447.                     yoffset: 0;
  6448.                     zoffset: 0;
  6449.                     xextent: 16;
  6450.                     yextent: 16;
  6451.                     zextent: 32;
  6452.                     always_draw: 1;
  6453.                     hide_sprite: (construction_state != 1);
  6454.                 }
  6455.                 building {
  6456.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  6457.                     recolour_mode: RECOLOUR_REMAP;
  6458.                     palette: PALETTE_USE_DEFAULT;
  6459.                     xoffset: 0;
  6460.                     yoffset: 0;
  6461.                     zoffset: 0;
  6462.                     xextent: 16;
  6463.                     yextent: 16;
  6464.                     zextent: 32;
  6465.                     always_draw: 1;
  6466.                     hide_sprite: (construction_state != 2);
  6467.                 }
  6468.                 // construction states - optional (no snow awareness)
  6469.                 building {
  6470.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  6471.                     recolour_mode: RECOLOUR_REMAP;
  6472.                     palette: PALETTE_USE_DEFAULT;
  6473.                     xoffset: 0;
  6474.                     yoffset: 0;
  6475.                     zoffset: 18;
  6476.                     xextent: 16;
  6477.                     yextent: 16;
  6478.                     zextent: 32;
  6479.                     always_draw: 0;
  6480.                     hide_sprite: (construction_state != 0);
  6481.                 }
  6482.                 building {
  6483.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  6484.                     recolour_mode: RECOLOUR_REMAP;
  6485.                     palette: PALETTE_USE_DEFAULT;
  6486.                     xoffset: 0;
  6487.                     yoffset: 0;
  6488.                     zoffset: 18;
  6489.                     xextent: 16;
  6490.                     yextent: 16;
  6491.                     zextent: 32;
  6492.                     always_draw: 0;
  6493.                     hide_sprite: (construction_state != 1);
  6494.                 }
  6495.                 building {
  6496.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  6497.                     recolour_mode: RECOLOUR_REMAP;
  6498.                     palette: PALETTE_USE_DEFAULT;
  6499.                     xoffset: 0;
  6500.                     yoffset: 0;
  6501.                     zoffset: 18;
  6502.                     xextent: 16;
  6503.                     yextent: 16;
  6504.                     zextent: 32;
  6505.                     always_draw: 0;
  6506.                     hide_sprite: (construction_state != 2);
  6507.                 }
  6508.                     // buildings (snow aware)
  6509.                     building {
  6510.                         sprite: port_spriteset_2_0(0);
  6511.                         recolour_mode: RECOLOUR_REMAP;
  6512.                         palette: PALETTE_USE_DEFAULT;
  6513.                         xoffset: 0;
  6514.                         yoffset: 0;
  6515.                         zoffset: 0;
  6516.                         xextent: 16;
  6517.                         yextent: 16;
  6518.                         zextent: 32;
  6519.                         always_draw: 1;
  6520.                         hide_sprite: (LOAD_TEMP(255));
  6521.                     }
  6522.                     building {
  6523.                         sprite: port_spriteset_2_0_snow(0);
  6524.                         recolour_mode: RECOLOUR_REMAP;
  6525.                         palette: PALETTE_USE_DEFAULT;
  6526.                         xoffset: 0;
  6527.                         yoffset: 0;
  6528.                         zoffset: 0;
  6529.                         xextent: 16;
  6530.                         yextent: 16;
  6531.                         zextent: 32;
  6532.                         always_draw: 1;
  6533.                         hide_sprite: (LOAD_TEMP(245));
  6534.                     }
  6535.                     // buildings (snow aware)
  6536.                     building {
  6537.                         sprite: port_spriteset_3_0(0);
  6538.                         recolour_mode: RECOLOUR_REMAP;
  6539.                         palette: PALETTE_USE_DEFAULT;
  6540.                         xoffset: 0;
  6541.                         yoffset: 0;
  6542.                         zoffset: 0;
  6543.                         xextent: 16;
  6544.                         yextent: 16;
  6545.                         zextent: 32;
  6546.                         always_draw: 1;
  6547.                         hide_sprite: (LOAD_TEMP(255));
  6548.                     }
  6549.                     building {
  6550.                         sprite: port_spriteset_3_0_snow(0);
  6551.                         recolour_mode: RECOLOUR_REMAP;
  6552.                         palette: PALETTE_USE_DEFAULT;
  6553.                         xoffset: 0;
  6554.                         yoffset: 0;
  6555.                         zoffset: 0;
  6556.                         xextent: 16;
  6557.                         yextent: 16;
  6558.                         zextent: 32;
  6559.                         always_draw: 1;
  6560.                         hide_sprite: (LOAD_TEMP(245));
  6561.                     }
  6562.                     // buildings (snow aware)
  6563.                     building {
  6564.                         sprite: port_spriteset_1_0(0);
  6565.                         recolour_mode: RECOLOUR_REMAP;
  6566.                         palette: PALETTE_USE_DEFAULT;
  6567.                         xoffset: 0;
  6568.                         yoffset: 0;
  6569.                         zoffset: 0;
  6570.                         xextent: 16;
  6571.                         yextent: 16;
  6572.                         zextent: 32;
  6573.                         always_draw: 1;
  6574.                         hide_sprite: (LOAD_TEMP(255));
  6575.                     }
  6576.                     building {
  6577.                         sprite: port_spriteset_1_0_snow(0);
  6578.                         recolour_mode: RECOLOUR_REMAP;
  6579.                         palette: PALETTE_USE_DEFAULT;
  6580.                         xoffset: 0;
  6581.                         yoffset: 0;
  6582.                         zoffset: 0;
  6583.                         xextent: 16;
  6584.                         yextent: 16;
  6585.                         zextent: 32;
  6586.                         always_draw: 1;
  6587.                         hide_sprite: (LOAD_TEMP(245));
  6588.                     }
  6589.                     // buildings (snow aware)
  6590.                     building {
  6591.                         sprite: port_spriteset_8_0(0);
  6592.                         recolour_mode: RECOLOUR_REMAP;
  6593.                         palette: PALETTE_USE_DEFAULT;
  6594.                         xoffset: 0;
  6595.                         yoffset: 0;
  6596.                         zoffset: 18;
  6597.                         xextent: 16;
  6598.                         yextent: 16;
  6599.                         zextent: 32;
  6600.                         always_draw: 0;
  6601.                         hide_sprite: (LOAD_TEMP(255));
  6602.                     }
  6603.                     building {
  6604.                         sprite: port_spriteset_8_0_snow(0);
  6605.                         recolour_mode: RECOLOUR_REMAP;
  6606.                         palette: PALETTE_USE_DEFAULT;
  6607.                         xoffset: 0;
  6608.                         yoffset: 0;
  6609.                         zoffset: 18;
  6610.                         xextent: 16;
  6611.                         yextent: 16;
  6612.                         zextent: 32;
  6613.                         always_draw: 0;
  6614.                         hide_sprite: (LOAD_TEMP(245));
  6615.                     }
  6616.         }
  6617.         spritelayout port_spritelayout_21 {
  6618.             // Industry-specific ground (snow aware)
  6619.             // non-snow
  6620.             childsprite {
  6621.                 sprite: GROUNDSPRITE_WATER;
  6622.                 recolour_mode: RECOLOUR_REMAP;
  6623.                 palette: PALETTE_USE_DEFAULT;
  6624.                 hide_sprite: (LOAD_TEMP(13));
  6625.                 always_draw: 1;
  6626.             }
  6627.             childsprite {
  6628.                 sprite: port_spriteset_0_0(0);
  6629.                 recolour_mode: RECOLOUR_REMAP;
  6630.                 palette: PALETTE_USE_DEFAULT;
  6631.                 hide_sprite: (LOAD_TEMP(13));
  6632.                 always_draw: 1;
  6633.             }
  6634.             // snow
  6635.             childsprite {
  6636.                 sprite: GROUNDSPRITE_WATER;
  6637.                 recolour_mode: RECOLOUR_REMAP;
  6638.                 palette: PALETTE_USE_DEFAULT;
  6639.                 hide_sprite: (!LOAD_TEMP(13));
  6640.                 always_draw: 1;
  6641.             }
  6642.             childsprite {
  6643.                 sprite: port_spriteset_0_0_snow(0);
  6644.                 recolour_mode: RECOLOUR_REMAP;
  6645.                 palette: PALETTE_USE_DEFAULT;
  6646.                 hide_sprite: (!LOAD_TEMP(13));
  6647.                 always_draw: 1;
  6648.             }
  6649.                 // construction states - optional (no snow awareness)
  6650.                 building {
  6651.                     sprite: port_spriteset_12_spriteset_default_construction_state_0(0);
  6652.                     recolour_mode: RECOLOUR_REMAP;
  6653.                     palette: PALETTE_USE_DEFAULT;
  6654.                     xoffset: 0;
  6655.                     yoffset: 0;
  6656.                     zoffset: 0;
  6657.                     xextent: 16;
  6658.                     yextent: 16;
  6659.                     zextent: 32;
  6660.                     always_draw: 0;
  6661.                     hide_sprite: (construction_state != 0);
  6662.                 }
  6663.                 building {
  6664.                     sprite: port_spriteset_12_spriteset_default_construction_state_1(0);
  6665.                     recolour_mode: RECOLOUR_REMAP;
  6666.                     palette: PALETTE_USE_DEFAULT;
  6667.                     xoffset: 0;
  6668.                     yoffset: 0;
  6669.                     zoffset: 0;
  6670.                     xextent: 16;
  6671.                     yextent: 16;
  6672.                     zextent: 32;
  6673.                     always_draw: 0;
  6674.                     hide_sprite: (construction_state != 1);
  6675.                 }
  6676.                 building {
  6677.                     sprite: port_spriteset_12_spriteset_default_construction_state_2(0);
  6678.                     recolour_mode: RECOLOUR_REMAP;
  6679.                     palette: PALETTE_USE_DEFAULT;
  6680.                     xoffset: 0;
  6681.                     yoffset: 0;
  6682.                     zoffset: 0;
  6683.                     xextent: 16;
  6684.                     yextent: 16;
  6685.                     zextent: 32;
  6686.                     always_draw: 0;
  6687.                     hide_sprite: (construction_state != 2);
  6688.                 }
  6689.                     // buildings (snow aware)
  6690.                     building {
  6691.                         sprite: port_spriteset_12_0(0);
  6692.                         recolour_mode: RECOLOUR_REMAP;
  6693.                         palette: PALETTE_USE_DEFAULT;
  6694.                         xoffset: 0;
  6695.                         yoffset: 0;
  6696.                         zoffset: 0;
  6697.                         xextent: 16;
  6698.                         yextent: 16;
  6699.                         zextent: 32;
  6700.                         always_draw: 0;
  6701.                         hide_sprite: (LOAD_TEMP(255));
  6702.                     }
  6703.                     building {
  6704.                         sprite: port_spriteset_12_0_snow(0);
  6705.                         recolour_mode: RECOLOUR_REMAP;
  6706.                         palette: PALETTE_USE_DEFAULT;
  6707.                         xoffset: 0;
  6708.                         yoffset: 0;
  6709.                         zoffset: 0;
  6710.                         xextent: 16;
  6711.                         yextent: 16;
  6712.                         zextent: 32;
  6713.                         always_draw: 0;
  6714.                         hide_sprite: (LOAD_TEMP(245));
  6715.                     }
  6716.         }
  6717.         spritelayout port_spritelayout_22 {
  6718.             // Industry-specific ground (snow aware)
  6719.             // non-snow
  6720.             childsprite {
  6721.                 sprite: GROUNDSPRITE_WATER;
  6722.                 recolour_mode: RECOLOUR_REMAP;
  6723.                 palette: PALETTE_USE_DEFAULT;
  6724.                 hide_sprite: (LOAD_TEMP(13));
  6725.                 always_draw: 1;
  6726.             }
  6727.             childsprite {
  6728.                 sprite: port_spriteset_0_0(0);
  6729.                 recolour_mode: RECOLOUR_REMAP;
  6730.                 palette: PALETTE_USE_DEFAULT;
  6731.                 hide_sprite: (LOAD_TEMP(13));
  6732.                 always_draw: 1;
  6733.             }
  6734.             // snow
  6735.             childsprite {
  6736.                 sprite: GROUNDSPRITE_WATER;
  6737.                 recolour_mode: RECOLOUR_REMAP;
  6738.                 palette: PALETTE_USE_DEFAULT;
  6739.                 hide_sprite: (!LOAD_TEMP(13));
  6740.                 always_draw: 1;
  6741.             }
  6742.             childsprite {
  6743.                 sprite: port_spriteset_0_0_snow(0);
  6744.                 recolour_mode: RECOLOUR_REMAP;
  6745.                 palette: PALETTE_USE_DEFAULT;
  6746.                 hide_sprite: (!LOAD_TEMP(13));
  6747.                 always_draw: 1;
  6748.             }
  6749.                 // construction states - optional (no snow awareness)
  6750.                 building {
  6751.                     sprite: port_spriteset_13_spriteset_default_construction_state_0(0);
  6752.                     recolour_mode: RECOLOUR_REMAP;
  6753.                     palette: PALETTE_USE_DEFAULT;
  6754.                     xoffset: 0;
  6755.                     yoffset: 0;
  6756.                     zoffset: 0;
  6757.                     xextent: 16;
  6758.                     yextent: 16;
  6759.                     zextent: 32;
  6760.                     always_draw: 0;
  6761.                     hide_sprite: (construction_state != 0);
  6762.                 }
  6763.                 building {
  6764.                     sprite: port_spriteset_13_spriteset_default_construction_state_1(0);
  6765.                     recolour_mode: RECOLOUR_REMAP;
  6766.                     palette: PALETTE_USE_DEFAULT;
  6767.                     xoffset: 0;
  6768.                     yoffset: 0;
  6769.                     zoffset: 0;
  6770.                     xextent: 16;
  6771.                     yextent: 16;
  6772.                     zextent: 32;
  6773.                     always_draw: 0;
  6774.                     hide_sprite: (construction_state != 1);
  6775.                 }
  6776.                 building {
  6777.                     sprite: port_spriteset_13_spriteset_default_construction_state_2(0);
  6778.                     recolour_mode: RECOLOUR_REMAP;
  6779.                     palette: PALETTE_USE_DEFAULT;
  6780.                     xoffset: 0;
  6781.                     yoffset: 0;
  6782.                     zoffset: 0;
  6783.                     xextent: 16;
  6784.                     yextent: 16;
  6785.                     zextent: 32;
  6786.                     always_draw: 0;
  6787.                     hide_sprite: (construction_state != 2);
  6788.                 }
  6789.                     // buildings (snow aware)
  6790.                     building {
  6791.                         sprite: port_spriteset_13_0(0);
  6792.                         recolour_mode: RECOLOUR_REMAP;
  6793.                         palette: PALETTE_USE_DEFAULT;
  6794.                         xoffset: 0;
  6795.                         yoffset: 0;
  6796.                         zoffset: 0;
  6797.                         xextent: 16;
  6798.                         yextent: 16;
  6799.                         zextent: 32;
  6800.                         always_draw: 0;
  6801.                         hide_sprite: (LOAD_TEMP(255));
  6802.                     }
  6803.                     building {
  6804.                         sprite: port_spriteset_13_0_snow(0);
  6805.                         recolour_mode: RECOLOUR_REMAP;
  6806.                         palette: PALETTE_USE_DEFAULT;
  6807.                         xoffset: 0;
  6808.                         yoffset: 0;
  6809.                         zoffset: 0;
  6810.                         xextent: 16;
  6811.                         yextent: 16;
  6812.                         zextent: 32;
  6813.                         always_draw: 0;
  6814.                         hide_sprite: (LOAD_TEMP(245));
  6815.                     }
  6816.         }
  6817.         spritelayout port_spritelayout_23 {
  6818.             // Industry-specific ground (snow aware)
  6819.             // non-snow
  6820.             childsprite {
  6821.                 sprite: GROUNDSPRITE_WATER;
  6822.                 recolour_mode: RECOLOUR_REMAP;
  6823.                 palette: PALETTE_USE_DEFAULT;
  6824.                 hide_sprite: (LOAD_TEMP(13));
  6825.                 always_draw: 1;
  6826.             }
  6827.             childsprite {
  6828.                 sprite: port_spriteset_0_0(0);
  6829.                 recolour_mode: RECOLOUR_REMAP;
  6830.                 palette: PALETTE_USE_DEFAULT;
  6831.                 hide_sprite: (LOAD_TEMP(13));
  6832.                 always_draw: 1;
  6833.             }
  6834.             // snow
  6835.             childsprite {
  6836.                 sprite: GROUNDSPRITE_WATER;
  6837.                 recolour_mode: RECOLOUR_REMAP;
  6838.                 palette: PALETTE_USE_DEFAULT;
  6839.                 hide_sprite: (!LOAD_TEMP(13));
  6840.                 always_draw: 1;
  6841.             }
  6842.             childsprite {
  6843.                 sprite: port_spriteset_0_0_snow(0);
  6844.                 recolour_mode: RECOLOUR_REMAP;
  6845.                 palette: PALETTE_USE_DEFAULT;
  6846.                 hide_sprite: (!LOAD_TEMP(13));
  6847.                 always_draw: 1;
  6848.             }
  6849.                 // construction states - optional (no snow awareness)
  6850.                 building {
  6851.                     sprite: port_spriteset_14_spriteset_default_construction_state_0(0);
  6852.                     recolour_mode: RECOLOUR_REMAP;
  6853.                     palette: PALETTE_USE_DEFAULT;
  6854.                     xoffset: 0;
  6855.                     yoffset: 0;
  6856.                     zoffset: 0;
  6857.                     xextent: 16;
  6858.                     yextent: 16;
  6859.                     zextent: 32;
  6860.                     always_draw: 0;
  6861.                     hide_sprite: (construction_state != 0);
  6862.                 }
  6863.                 building {
  6864.                     sprite: port_spriteset_14_spriteset_default_construction_state_1(0);
  6865.                     recolour_mode: RECOLOUR_REMAP;
  6866.                     palette: PALETTE_USE_DEFAULT;
  6867.                     xoffset: 0;
  6868.                     yoffset: 0;
  6869.                     zoffset: 0;
  6870.                     xextent: 16;
  6871.                     yextent: 16;
  6872.                     zextent: 32;
  6873.                     always_draw: 0;
  6874.                     hide_sprite: (construction_state != 1);
  6875.                 }
  6876.                 building {
  6877.                     sprite: port_spriteset_14_spriteset_default_construction_state_2(0);
  6878.                     recolour_mode: RECOLOUR_REMAP;
  6879.                     palette: PALETTE_USE_DEFAULT;
  6880.                     xoffset: 0;
  6881.                     yoffset: 0;
  6882.                     zoffset: 0;
  6883.                     xextent: 16;
  6884.                     yextent: 16;
  6885.                     zextent: 32;
  6886.                     always_draw: 0;
  6887.                     hide_sprite: (construction_state != 2);
  6888.                 }
  6889.                     // buildings (snow aware)
  6890.                     building {
  6891.                         sprite: port_spriteset_14_0(0);
  6892.                         recolour_mode: RECOLOUR_REMAP;
  6893.                         palette: PALETTE_USE_DEFAULT;
  6894.                         xoffset: 0;
  6895.                         yoffset: 0;
  6896.                         zoffset: 0;
  6897.                         xextent: 16;
  6898.                         yextent: 16;
  6899.                         zextent: 32;
  6900.                         always_draw: 0;
  6901.                         hide_sprite: (LOAD_TEMP(255));
  6902.                     }
  6903.                     building {
  6904.                         sprite: port_spriteset_14_0_snow(0);
  6905.                         recolour_mode: RECOLOUR_REMAP;
  6906.                         palette: PALETTE_USE_DEFAULT;
  6907.                         xoffset: 0;
  6908.                         yoffset: 0;
  6909.                         zoffset: 0;
  6910.                         xextent: 16;
  6911.                         yextent: 16;
  6912.                         zextent: 32;
  6913.                         always_draw: 0;
  6914.                         hide_sprite: (LOAD_TEMP(245));
  6915.                     }
  6916.         }
  6917.         spritelayout port_spritelayout_24 {
  6918.             // Industry-specific ground (snow aware)
  6919.             // non-snow
  6920.             childsprite {
  6921.                 sprite: GROUNDSPRITE_WATER;
  6922.                 recolour_mode: RECOLOUR_REMAP;
  6923.                 palette: PALETTE_USE_DEFAULT;
  6924.                 hide_sprite: (LOAD_TEMP(13));
  6925.                 always_draw: 1;
  6926.             }
  6927.             childsprite {
  6928.                 sprite: port_spriteset_0_0(0);
  6929.                 recolour_mode: RECOLOUR_REMAP;
  6930.                 palette: PALETTE_USE_DEFAULT;
  6931.                 hide_sprite: (LOAD_TEMP(13));
  6932.                 always_draw: 1;
  6933.             }
  6934.             // snow
  6935.             childsprite {
  6936.                 sprite: GROUNDSPRITE_WATER;
  6937.                 recolour_mode: RECOLOUR_REMAP;
  6938.                 palette: PALETTE_USE_DEFAULT;
  6939.                 hide_sprite: (!LOAD_TEMP(13));
  6940.                 always_draw: 1;
  6941.             }
  6942.             childsprite {
  6943.                 sprite: port_spriteset_0_0_snow(0);
  6944.                 recolour_mode: RECOLOUR_REMAP;
  6945.                 palette: PALETTE_USE_DEFAULT;
  6946.                 hide_sprite: (!LOAD_TEMP(13));
  6947.                 always_draw: 1;
  6948.             }
  6949.                 // construction states - optional (no snow awareness)
  6950.                 building {
  6951.                     sprite: port_spriteset_15_spriteset_default_construction_state_0(0);
  6952.                     recolour_mode: RECOLOUR_REMAP;
  6953.                     palette: PALETTE_USE_DEFAULT;
  6954.                     xoffset: 0;
  6955.                     yoffset: 0;
  6956.                     zoffset: 0;
  6957.                     xextent: 16;
  6958.                     yextent: 16;
  6959.                     zextent: 32;
  6960.                     always_draw: 0;
  6961.                     hide_sprite: (construction_state != 0);
  6962.                 }
  6963.                 building {
  6964.                     sprite: port_spriteset_15_spriteset_default_construction_state_1(0);
  6965.                     recolour_mode: RECOLOUR_REMAP;
  6966.                     palette: PALETTE_USE_DEFAULT;
  6967.                     xoffset: 0;
  6968.                     yoffset: 0;
  6969.                     zoffset: 0;
  6970.                     xextent: 16;
  6971.                     yextent: 16;
  6972.                     zextent: 32;
  6973.                     always_draw: 0;
  6974.                     hide_sprite: (construction_state != 1);
  6975.                 }
  6976.                 building {
  6977.                     sprite: port_spriteset_15_spriteset_default_construction_state_2(0);
  6978.                     recolour_mode: RECOLOUR_REMAP;
  6979.                     palette: PALETTE_USE_DEFAULT;
  6980.                     xoffset: 0;
  6981.                     yoffset: 0;
  6982.                     zoffset: 0;
  6983.                     xextent: 16;
  6984.                     yextent: 16;
  6985.                     zextent: 32;
  6986.                     always_draw: 0;
  6987.                     hide_sprite: (construction_state != 2);
  6988.                 }
  6989.                     // buildings (snow aware)
  6990.                     building {
  6991.                         sprite: port_spriteset_15_0(0);
  6992.                         recolour_mode: RECOLOUR_REMAP;
  6993.                         palette: PALETTE_USE_DEFAULT;
  6994.                         xoffset: 0;
  6995.                         yoffset: 0;
  6996.                         zoffset: 0;
  6997.                         xextent: 16;
  6998.                         yextent: 16;
  6999.                         zextent: 32;
  7000.                         always_draw: 0;
  7001.                         hide_sprite: (LOAD_TEMP(255));
  7002.                     }
  7003.                     building {
  7004.                         sprite: port_spriteset_15_0_snow(0);
  7005.                         recolour_mode: RECOLOUR_REMAP;
  7006.                         palette: PALETTE_USE_DEFAULT;
  7007.                         xoffset: 0;
  7008.                         yoffset: 0;
  7009.                         zoffset: 0;
  7010.                         xextent: 16;
  7011.                         yextent: 16;
  7012.                         zextent: 32;
  7013.                         always_draw: 0;
  7014.                         hide_sprite: (LOAD_TEMP(245));
  7015.                     }
  7016.         }
  7017.         spritelayout port_spritelayout_25 {
  7018.             // Industry-specific ground (snow aware)
  7019.             // non-snow
  7020.             childsprite {
  7021.                 sprite: GROUNDSPRITE_WATER;
  7022.                 recolour_mode: RECOLOUR_REMAP;
  7023.                 palette: PALETTE_USE_DEFAULT;
  7024.                 hide_sprite: (LOAD_TEMP(13));
  7025.                 always_draw: 1;
  7026.             }
  7027.             childsprite {
  7028.                 sprite: port_spriteset_0_0(0);
  7029.                 recolour_mode: RECOLOUR_REMAP;
  7030.                 palette: PALETTE_USE_DEFAULT;
  7031.                 hide_sprite: (LOAD_TEMP(13));
  7032.                 always_draw: 1;
  7033.             }
  7034.             // snow
  7035.             childsprite {
  7036.                 sprite: GROUNDSPRITE_WATER;
  7037.                 recolour_mode: RECOLOUR_REMAP;
  7038.                 palette: PALETTE_USE_DEFAULT;
  7039.                 hide_sprite: (!LOAD_TEMP(13));
  7040.                 always_draw: 1;
  7041.             }
  7042.             childsprite {
  7043.                 sprite: port_spriteset_0_0_snow(0);
  7044.                 recolour_mode: RECOLOUR_REMAP;
  7045.                 palette: PALETTE_USE_DEFAULT;
  7046.                 hide_sprite: (!LOAD_TEMP(13));
  7047.                 always_draw: 1;
  7048.             }
  7049.                 // construction states - optional (no snow awareness)
  7050.                 building {
  7051.                     sprite: port_spriteset_15_spriteset_default_construction_state_0(0);
  7052.                     recolour_mode: RECOLOUR_REMAP;
  7053.                     palette: PALETTE_USE_DEFAULT;
  7054.                     xoffset: 0;
  7055.                     yoffset: 0;
  7056.                     zoffset: 0;
  7057.                     xextent: 16;
  7058.                     yextent: 16;
  7059.                     zextent: 32;
  7060.                     always_draw: 0;
  7061.                     hide_sprite: (construction_state != 0);
  7062.                 }
  7063.                 building {
  7064.                     sprite: port_spriteset_15_spriteset_default_construction_state_1(0);
  7065.                     recolour_mode: RECOLOUR_REMAP;
  7066.                     palette: PALETTE_USE_DEFAULT;
  7067.                     xoffset: 0;
  7068.                     yoffset: 0;
  7069.                     zoffset: 0;
  7070.                     xextent: 16;
  7071.                     yextent: 16;
  7072.                     zextent: 32;
  7073.                     always_draw: 0;
  7074.                     hide_sprite: (construction_state != 1);
  7075.                 }
  7076.                 building {
  7077.                     sprite: port_spriteset_15_spriteset_default_construction_state_2(0);
  7078.                     recolour_mode: RECOLOUR_REMAP;
  7079.                     palette: PALETTE_USE_DEFAULT;
  7080.                     xoffset: 0;
  7081.                     yoffset: 0;
  7082.                     zoffset: 0;
  7083.                     xextent: 16;
  7084.                     yextent: 16;
  7085.                     zextent: 32;
  7086.                     always_draw: 0;
  7087.                     hide_sprite: (construction_state != 2);
  7088.                 }
  7089.                     // buildings (snow aware)
  7090.                     building {
  7091.                         sprite: port_spriteset_15_0(0);
  7092.                         recolour_mode: RECOLOUR_REMAP;
  7093.                         palette: PALETTE_USE_DEFAULT;
  7094.                         xoffset: 0;
  7095.                         yoffset: 0;
  7096.                         zoffset: 0;
  7097.                         xextent: 16;
  7098.                         yextent: 16;
  7099.                         zextent: 32;
  7100.                         always_draw: 0;
  7101.                         hide_sprite: (LOAD_TEMP(255));
  7102.                     }
  7103.                     building {
  7104.                         sprite: port_spriteset_15_0_snow(0);
  7105.                         recolour_mode: RECOLOUR_REMAP;
  7106.                         palette: PALETTE_USE_DEFAULT;
  7107.                         xoffset: 0;
  7108.                         yoffset: 0;
  7109.                         zoffset: 0;
  7110.                         xextent: 16;
  7111.                         yextent: 16;
  7112.                         zextent: 32;
  7113.                         always_draw: 0;
  7114.                         hide_sprite: (LOAD_TEMP(245));
  7115.                     }
  7116.         }
  7117.         spritelayout port_spritelayout_26 {
  7118.             // Industry-specific ground (snow aware)
  7119.             // non-snow
  7120.             childsprite {
  7121.                 sprite: GROUNDSPRITE_WATER;
  7122.                 recolour_mode: RECOLOUR_REMAP;
  7123.                 palette: PALETTE_USE_DEFAULT;
  7124.                 hide_sprite: (LOAD_TEMP(13));
  7125.                 always_draw: 1;
  7126.             }
  7127.             childsprite {
  7128.                 sprite: port_spriteset_0_0(0);
  7129.                 recolour_mode: RECOLOUR_REMAP;
  7130.                 palette: PALETTE_USE_DEFAULT;
  7131.                 hide_sprite: (LOAD_TEMP(13));
  7132.                 always_draw: 1;
  7133.             }
  7134.             // snow
  7135.             childsprite {
  7136.                 sprite: GROUNDSPRITE_WATER;
  7137.                 recolour_mode: RECOLOUR_REMAP;
  7138.                 palette: PALETTE_USE_DEFAULT;
  7139.                 hide_sprite: (!LOAD_TEMP(13));
  7140.                 always_draw: 1;
  7141.             }
  7142.             childsprite {
  7143.                 sprite: port_spriteset_0_0_snow(0);
  7144.                 recolour_mode: RECOLOUR_REMAP;
  7145.                 palette: PALETTE_USE_DEFAULT;
  7146.                 hide_sprite: (!LOAD_TEMP(13));
  7147.                 always_draw: 1;
  7148.             }
  7149.                 // construction states - optional (no snow awareness)
  7150.                 building {
  7151.                     sprite: port_spriteset_16_spriteset_default_construction_state_0(0);
  7152.                     recolour_mode: RECOLOUR_REMAP;
  7153.                     palette: PALETTE_USE_DEFAULT;
  7154.                     xoffset: 0;
  7155.                     yoffset: 0;
  7156.                     zoffset: 0;
  7157.                     xextent: 16;
  7158.                     yextent: 16;
  7159.                     zextent: 32;
  7160.                     always_draw: 0;
  7161.                     hide_sprite: (construction_state != 0);
  7162.                 }
  7163.                 building {
  7164.                     sprite: port_spriteset_16_spriteset_default_construction_state_1(0);
  7165.                     recolour_mode: RECOLOUR_REMAP;
  7166.                     palette: PALETTE_USE_DEFAULT;
  7167.                     xoffset: 0;
  7168.                     yoffset: 0;
  7169.                     zoffset: 0;
  7170.                     xextent: 16;
  7171.                     yextent: 16;
  7172.                     zextent: 32;
  7173.                     always_draw: 0;
  7174.                     hide_sprite: (construction_state != 1);
  7175.                 }
  7176.                 building {
  7177.                     sprite: port_spriteset_16_spriteset_default_construction_state_2(0);
  7178.                     recolour_mode: RECOLOUR_REMAP;
  7179.                     palette: PALETTE_USE_DEFAULT;
  7180.                     xoffset: 0;
  7181.                     yoffset: 0;
  7182.                     zoffset: 0;
  7183.                     xextent: 16;
  7184.                     yextent: 16;
  7185.                     zextent: 32;
  7186.                     always_draw: 0;
  7187.                     hide_sprite: (construction_state != 2);
  7188.                 }
  7189.                     // buildings (snow aware)
  7190.                     building {
  7191.                         sprite: port_spriteset_16_0(0);
  7192.                         recolour_mode: RECOLOUR_REMAP;
  7193.                         palette: PALETTE_USE_DEFAULT;
  7194.                         xoffset: 0;
  7195.                         yoffset: 0;
  7196.                         zoffset: 0;
  7197.                         xextent: 16;
  7198.                         yextent: 16;
  7199.                         zextent: 32;
  7200.                         always_draw: 0;
  7201.                         hide_sprite: (LOAD_TEMP(255));
  7202.                     }
  7203.                     building {
  7204.                         sprite: port_spriteset_16_0_snow(0);
  7205.                         recolour_mode: RECOLOUR_REMAP;
  7206.                         palette: PALETTE_USE_DEFAULT;
  7207.                         xoffset: 0;
  7208.                         yoffset: 0;
  7209.                         zoffset: 0;
  7210.                         xextent: 16;
  7211.                         yextent: 16;
  7212.                         zextent: 32;
  7213.                         always_draw: 0;
  7214.                         hide_sprite: (LOAD_TEMP(245));
  7215.                     }
  7216.         }
  7217.         spritelayout port_spritelayout_27 {
  7218.             // Industry-specific ground (snow aware)
  7219.             // non-snow
  7220.             childsprite {
  7221.                 sprite: GROUNDSPRITE_WATER;
  7222.                 recolour_mode: RECOLOUR_REMAP;
  7223.                 palette: PALETTE_USE_DEFAULT;
  7224.                 hide_sprite: (LOAD_TEMP(13));
  7225.                 always_draw: 1;
  7226.             }
  7227.             childsprite {
  7228.                 sprite: port_spriteset_0_0(0);
  7229.                 recolour_mode: RECOLOUR_REMAP;
  7230.                 palette: PALETTE_USE_DEFAULT;
  7231.                 hide_sprite: (LOAD_TEMP(13));
  7232.                 always_draw: 1;
  7233.             }
  7234.             // snow
  7235.             childsprite {
  7236.                 sprite: GROUNDSPRITE_WATER;
  7237.                 recolour_mode: RECOLOUR_REMAP;
  7238.                 palette: PALETTE_USE_DEFAULT;
  7239.                 hide_sprite: (!LOAD_TEMP(13));
  7240.                 always_draw: 1;
  7241.             }
  7242.             childsprite {
  7243.                 sprite: port_spriteset_0_0_snow(0);
  7244.                 recolour_mode: RECOLOUR_REMAP;
  7245.                 palette: PALETTE_USE_DEFAULT;
  7246.                 hide_sprite: (!LOAD_TEMP(13));
  7247.                 always_draw: 1;
  7248.             }
  7249.                 // construction states - optional (no snow awareness)
  7250.                 building {
  7251.                     sprite: port_spriteset_17_spriteset_default_construction_state_0(0);
  7252.                     recolour_mode: RECOLOUR_REMAP;
  7253.                     palette: PALETTE_USE_DEFAULT;
  7254.                     xoffset: 0;
  7255.                     yoffset: 0;
  7256.                     zoffset: 0;
  7257.                     xextent: 16;
  7258.                     yextent: 16;
  7259.                     zextent: 32;
  7260.                     always_draw: 0;
  7261.                     hide_sprite: (construction_state != 0);
  7262.                 }
  7263.                 building {
  7264.                     sprite: port_spriteset_17_spriteset_default_construction_state_1(0);
  7265.                     recolour_mode: RECOLOUR_REMAP;
  7266.                     palette: PALETTE_USE_DEFAULT;
  7267.                     xoffset: 0;
  7268.                     yoffset: 0;
  7269.                     zoffset: 0;
  7270.                     xextent: 16;
  7271.                     yextent: 16;
  7272.                     zextent: 32;
  7273.                     always_draw: 0;
  7274.                     hide_sprite: (construction_state != 1);
  7275.                 }
  7276.                 building {
  7277.                     sprite: port_spriteset_17_spriteset_default_construction_state_2(0);
  7278.                     recolour_mode: RECOLOUR_REMAP;
  7279.                     palette: PALETTE_USE_DEFAULT;
  7280.                     xoffset: 0;
  7281.                     yoffset: 0;
  7282.                     zoffset: 0;
  7283.                     xextent: 16;
  7284.                     yextent: 16;
  7285.                     zextent: 32;
  7286.                     always_draw: 0;
  7287.                     hide_sprite: (construction_state != 2);
  7288.                 }
  7289.                     // buildings (snow aware)
  7290.                     building {
  7291.                         sprite: port_spriteset_17_0(0);
  7292.                         recolour_mode: RECOLOUR_REMAP;
  7293.                         palette: PALETTE_USE_DEFAULT;
  7294.                         xoffset: 0;
  7295.                         yoffset: 0;
  7296.                         zoffset: 0;
  7297.                         xextent: 16;
  7298.                         yextent: 16;
  7299.                         zextent: 32;
  7300.                         always_draw: 0;
  7301.                         hide_sprite: (LOAD_TEMP(255));
  7302.                     }
  7303.                     building {
  7304.                         sprite: port_spriteset_17_0_snow(0);
  7305.                         recolour_mode: RECOLOUR_REMAP;
  7306.                         palette: PALETTE_USE_DEFAULT;
  7307.                         xoffset: 0;
  7308.                         yoffset: 0;
  7309.                         zoffset: 0;
  7310.                         xextent: 16;
  7311.                         yextent: 16;
  7312.                         zextent: 32;
  7313.                         always_draw: 0;
  7314.                         hide_sprite: (LOAD_TEMP(245));
  7315.                     }
  7316.         }
  7317.         spritelayout port_spritelayout_28 {
  7318.             // Industry-specific ground (snow aware)
  7319.             // non-snow
  7320.             childsprite {
  7321.                 sprite: port_spriteset_0_0(0);
  7322.                 recolour_mode: RECOLOUR_REMAP;
  7323.                 palette: PALETTE_USE_DEFAULT;
  7324.                 hide_sprite: (LOAD_TEMP(13));
  7325.                 always_draw: 1;
  7326.             }
  7327.             childsprite {
  7328.                 sprite: port_spriteset_0_0(0);
  7329.                 recolour_mode: RECOLOUR_REMAP;
  7330.                 palette: PALETTE_USE_DEFAULT;
  7331.                 hide_sprite: (LOAD_TEMP(13));
  7332.                 always_draw: 1;
  7333.             }
  7334.             // snow
  7335.             childsprite {
  7336.                 sprite: port_spriteset_0_0_snow(0);
  7337.                 recolour_mode: RECOLOUR_REMAP;
  7338.                 palette: PALETTE_USE_DEFAULT;
  7339.                 hide_sprite: (!LOAD_TEMP(13));
  7340.                 always_draw: 1;
  7341.             }
  7342.             childsprite {
  7343.                 sprite: port_spriteset_0_0_snow(0);
  7344.                 recolour_mode: RECOLOUR_REMAP;
  7345.                 palette: PALETTE_USE_DEFAULT;
  7346.                 hide_sprite: (!LOAD_TEMP(13));
  7347.                 always_draw: 1;
  7348.             }
  7349.                 // construction states - optional (no snow awareness)
  7350.                 building {
  7351.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  7352.                     recolour_mode: RECOLOUR_REMAP;
  7353.                     palette: PALETTE_USE_DEFAULT;
  7354.                     xoffset: 0;
  7355.                     yoffset: 0;
  7356.                     zoffset: 0;
  7357.                     xextent: 16;
  7358.                     yextent: 16;
  7359.                     zextent: 32;
  7360.                     always_draw: 1;
  7361.                     hide_sprite: (construction_state != 0);
  7362.                 }
  7363.                 building {
  7364.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  7365.                     recolour_mode: RECOLOUR_REMAP;
  7366.                     palette: PALETTE_USE_DEFAULT;
  7367.                     xoffset: 0;
  7368.                     yoffset: 0;
  7369.                     zoffset: 0;
  7370.                     xextent: 16;
  7371.                     yextent: 16;
  7372.                     zextent: 32;
  7373.                     always_draw: 1;
  7374.                     hide_sprite: (construction_state != 1);
  7375.                 }
  7376.                 building {
  7377.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  7378.                     recolour_mode: RECOLOUR_REMAP;
  7379.                     palette: PALETTE_USE_DEFAULT;
  7380.                     xoffset: 0;
  7381.                     yoffset: 0;
  7382.                     zoffset: 0;
  7383.                     xextent: 16;
  7384.                     yextent: 16;
  7385.                     zextent: 32;
  7386.                     always_draw: 1;
  7387.                     hide_sprite: (construction_state != 2);
  7388.                 }
  7389.                 // construction states - optional (no snow awareness)
  7390.                 building {
  7391.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  7392.                     recolour_mode: RECOLOUR_REMAP;
  7393.                     palette: PALETTE_USE_DEFAULT;
  7394.                     xoffset: 0;
  7395.                     yoffset: 0;
  7396.                     zoffset: 0;
  7397.                     xextent: 16;
  7398.                     yextent: 16;
  7399.                     zextent: 32;
  7400.                     always_draw: 1;
  7401.                     hide_sprite: (construction_state != 0);
  7402.                 }
  7403.                 building {
  7404.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  7405.                     recolour_mode: RECOLOUR_REMAP;
  7406.                     palette: PALETTE_USE_DEFAULT;
  7407.                     xoffset: 0;
  7408.                     yoffset: 0;
  7409.                     zoffset: 0;
  7410.                     xextent: 16;
  7411.                     yextent: 16;
  7412.                     zextent: 32;
  7413.                     always_draw: 1;
  7414.                     hide_sprite: (construction_state != 1);
  7415.                 }
  7416.                 building {
  7417.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  7418.                     recolour_mode: RECOLOUR_REMAP;
  7419.                     palette: PALETTE_USE_DEFAULT;
  7420.                     xoffset: 0;
  7421.                     yoffset: 0;
  7422.                     zoffset: 0;
  7423.                     xextent: 16;
  7424.                     yextent: 16;
  7425.                     zextent: 32;
  7426.                     always_draw: 1;
  7427.                     hide_sprite: (construction_state != 2);
  7428.                 }
  7429.                 // construction states - optional (no snow awareness)
  7430.                 building {
  7431.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  7432.                     recolour_mode: RECOLOUR_REMAP;
  7433.                     palette: PALETTE_USE_DEFAULT;
  7434.                     xoffset: 0;
  7435.                     yoffset: 0;
  7436.                     zoffset: 0;
  7437.                     xextent: 16;
  7438.                     yextent: 16;
  7439.                     zextent: 32;
  7440.                     always_draw: 1;
  7441.                     hide_sprite: (construction_state != 0);
  7442.                 }
  7443.                 building {
  7444.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  7445.                     recolour_mode: RECOLOUR_REMAP;
  7446.                     palette: PALETTE_USE_DEFAULT;
  7447.                     xoffset: 0;
  7448.                     yoffset: 0;
  7449.                     zoffset: 0;
  7450.                     xextent: 16;
  7451.                     yextent: 16;
  7452.                     zextent: 32;
  7453.                     always_draw: 1;
  7454.                     hide_sprite: (construction_state != 1);
  7455.                 }
  7456.                 building {
  7457.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  7458.                     recolour_mode: RECOLOUR_REMAP;
  7459.                     palette: PALETTE_USE_DEFAULT;
  7460.                     xoffset: 0;
  7461.                     yoffset: 0;
  7462.                     zoffset: 0;
  7463.                     xextent: 16;
  7464.                     yextent: 16;
  7465.                     zextent: 32;
  7466.                     always_draw: 1;
  7467.                     hide_sprite: (construction_state != 2);
  7468.                 }
  7469.                 // construction states - optional (no snow awareness)
  7470.                 building {
  7471.                     sprite: port_spriteset_9_spriteset_default_construction_state_0(0);
  7472.                     recolour_mode: RECOLOUR_REMAP;
  7473.                     palette: PALETTE_USE_DEFAULT;
  7474.                     xoffset: 0;
  7475.                     yoffset: 4;
  7476.                     zoffset: 27;
  7477.                     xextent: 16;
  7478.                     yextent: 12;
  7479.                     zextent: 32;
  7480.                     always_draw: 0;
  7481.                     hide_sprite: (construction_state != 0);
  7482.                 }
  7483.                 building {
  7484.                     sprite: port_spriteset_9_spriteset_default_construction_state_1(0);
  7485.                     recolour_mode: RECOLOUR_REMAP;
  7486.                     palette: PALETTE_USE_DEFAULT;
  7487.                     xoffset: 0;
  7488.                     yoffset: 4;
  7489.                     zoffset: 27;
  7490.                     xextent: 16;
  7491.                     yextent: 12;
  7492.                     zextent: 32;
  7493.                     always_draw: 0;
  7494.                     hide_sprite: (construction_state != 1);
  7495.                 }
  7496.                 building {
  7497.                     sprite: port_spriteset_9_spriteset_default_construction_state_2(0);
  7498.                     recolour_mode: RECOLOUR_REMAP;
  7499.                     palette: PALETTE_USE_DEFAULT;
  7500.                     xoffset: 0;
  7501.                     yoffset: 4;
  7502.                     zoffset: 27;
  7503.                     xextent: 16;
  7504.                     yextent: 12;
  7505.                     zextent: 32;
  7506.                     always_draw: 0;
  7507.                     hide_sprite: (construction_state != 2);
  7508.                 }
  7509.                     // buildings (snow aware)
  7510.                     building {
  7511.                         sprite: port_spriteset_2_0(0);
  7512.                         recolour_mode: RECOLOUR_REMAP;
  7513.                         palette: PALETTE_USE_DEFAULT;
  7514.                         xoffset: 0;
  7515.                         yoffset: 0;
  7516.                         zoffset: 0;
  7517.                         xextent: 16;
  7518.                         yextent: 16;
  7519.                         zextent: 32;
  7520.                         always_draw: 1;
  7521.                         hide_sprite: (LOAD_TEMP(255));
  7522.                     }
  7523.                     building {
  7524.                         sprite: port_spriteset_2_0_snow(0);
  7525.                         recolour_mode: RECOLOUR_REMAP;
  7526.                         palette: PALETTE_USE_DEFAULT;
  7527.                         xoffset: 0;
  7528.                         yoffset: 0;
  7529.                         zoffset: 0;
  7530.                         xextent: 16;
  7531.                         yextent: 16;
  7532.                         zextent: 32;
  7533.                         always_draw: 1;
  7534.                         hide_sprite: (LOAD_TEMP(245));
  7535.                     }
  7536.                     // buildings (snow aware)
  7537.                     building {
  7538.                         sprite: port_spriteset_3_0(0);
  7539.                         recolour_mode: RECOLOUR_REMAP;
  7540.                         palette: PALETTE_USE_DEFAULT;
  7541.                         xoffset: 0;
  7542.                         yoffset: 0;
  7543.                         zoffset: 0;
  7544.                         xextent: 16;
  7545.                         yextent: 16;
  7546.                         zextent: 32;
  7547.                         always_draw: 1;
  7548.                         hide_sprite: (LOAD_TEMP(255));
  7549.                     }
  7550.                     building {
  7551.                         sprite: port_spriteset_3_0_snow(0);
  7552.                         recolour_mode: RECOLOUR_REMAP;
  7553.                         palette: PALETTE_USE_DEFAULT;
  7554.                         xoffset: 0;
  7555.                         yoffset: 0;
  7556.                         zoffset: 0;
  7557.                         xextent: 16;
  7558.                         yextent: 16;
  7559.                         zextent: 32;
  7560.                         always_draw: 1;
  7561.                         hide_sprite: (LOAD_TEMP(245));
  7562.                     }
  7563.                     // buildings (snow aware)
  7564.                     building {
  7565.                         sprite: port_spriteset_1_0(0);
  7566.                         recolour_mode: RECOLOUR_REMAP;
  7567.                         palette: PALETTE_USE_DEFAULT;
  7568.                         xoffset: 0;
  7569.                         yoffset: 0;
  7570.                         zoffset: 0;
  7571.                         xextent: 16;
  7572.                         yextent: 16;
  7573.                         zextent: 32;
  7574.                         always_draw: 1;
  7575.                         hide_sprite: (LOAD_TEMP(255));
  7576.                     }
  7577.                     building {
  7578.                         sprite: port_spriteset_1_0_snow(0);
  7579.                         recolour_mode: RECOLOUR_REMAP;
  7580.                         palette: PALETTE_USE_DEFAULT;
  7581.                         xoffset: 0;
  7582.                         yoffset: 0;
  7583.                         zoffset: 0;
  7584.                         xextent: 16;
  7585.                         yextent: 16;
  7586.                         zextent: 32;
  7587.                         always_draw: 1;
  7588.                         hide_sprite: (LOAD_TEMP(245));
  7589.                     }
  7590.                     // buildings (snow aware)
  7591.                     building {
  7592.                         sprite: port_spriteset_9_0(0);
  7593.                         recolour_mode: RECOLOUR_REMAP;
  7594.                         palette: PALETTE_USE_DEFAULT;
  7595.                         xoffset: 0;
  7596.                         yoffset: 4;
  7597.                         zoffset: 27;
  7598.                         xextent: 16;
  7599.                         yextent: 12;
  7600.                         zextent: 32;
  7601.                         always_draw: 0;
  7602.                         hide_sprite: (LOAD_TEMP(255));
  7603.                     }
  7604.                     building {
  7605.                         sprite: port_spriteset_9_0_snow(0);
  7606.                         recolour_mode: RECOLOUR_REMAP;
  7607.                         palette: PALETTE_USE_DEFAULT;
  7608.                         xoffset: 0;
  7609.                         yoffset: 4;
  7610.                         zoffset: 27;
  7611.                         xextent: 16;
  7612.                         yextent: 12;
  7613.                         zextent: 32;
  7614.                         always_draw: 0;
  7615.                         hide_sprite: (LOAD_TEMP(245));
  7616.                     }
  7617.         }
  7618.         spritelayout port_spritelayout_29 {
  7619.             // Industry-specific ground (snow aware)
  7620.             // non-snow
  7621.             childsprite {
  7622.                 sprite: port_spriteset_0_0(0);
  7623.                 recolour_mode: RECOLOUR_REMAP;
  7624.                 palette: PALETTE_USE_DEFAULT;
  7625.                 hide_sprite: (LOAD_TEMP(13));
  7626.                 always_draw: 1;
  7627.             }
  7628.             childsprite {
  7629.                 sprite: port_spriteset_0_0(0);
  7630.                 recolour_mode: RECOLOUR_REMAP;
  7631.                 palette: PALETTE_USE_DEFAULT;
  7632.                 hide_sprite: (LOAD_TEMP(13));
  7633.                 always_draw: 1;
  7634.             }
  7635.             // snow
  7636.             childsprite {
  7637.                 sprite: port_spriteset_0_0_snow(0);
  7638.                 recolour_mode: RECOLOUR_REMAP;
  7639.                 palette: PALETTE_USE_DEFAULT;
  7640.                 hide_sprite: (!LOAD_TEMP(13));
  7641.                 always_draw: 1;
  7642.             }
  7643.             childsprite {
  7644.                 sprite: port_spriteset_0_0_snow(0);
  7645.                 recolour_mode: RECOLOUR_REMAP;
  7646.                 palette: PALETTE_USE_DEFAULT;
  7647.                 hide_sprite: (!LOAD_TEMP(13));
  7648.                 always_draw: 1;
  7649.             }
  7650.                 // construction states - optional (no snow awareness)
  7651.                 building {
  7652.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  7653.                     recolour_mode: RECOLOUR_REMAP;
  7654.                     palette: PALETTE_USE_DEFAULT;
  7655.                     xoffset: 0;
  7656.                     yoffset: 0;
  7657.                     zoffset: 0;
  7658.                     xextent: 16;
  7659.                     yextent: 16;
  7660.                     zextent: 32;
  7661.                     always_draw: 1;
  7662.                     hide_sprite: (construction_state != 0);
  7663.                 }
  7664.                 building {
  7665.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  7666.                     recolour_mode: RECOLOUR_REMAP;
  7667.                     palette: PALETTE_USE_DEFAULT;
  7668.                     xoffset: 0;
  7669.                     yoffset: 0;
  7670.                     zoffset: 0;
  7671.                     xextent: 16;
  7672.                     yextent: 16;
  7673.                     zextent: 32;
  7674.                     always_draw: 1;
  7675.                     hide_sprite: (construction_state != 1);
  7676.                 }
  7677.                 building {
  7678.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  7679.                     recolour_mode: RECOLOUR_REMAP;
  7680.                     palette: PALETTE_USE_DEFAULT;
  7681.                     xoffset: 0;
  7682.                     yoffset: 0;
  7683.                     zoffset: 0;
  7684.                     xextent: 16;
  7685.                     yextent: 16;
  7686.                     zextent: 32;
  7687.                     always_draw: 1;
  7688.                     hide_sprite: (construction_state != 2);
  7689.                 }
  7690.                 // construction states - optional (no snow awareness)
  7691.                 building {
  7692.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  7693.                     recolour_mode: RECOLOUR_REMAP;
  7694.                     palette: PALETTE_USE_DEFAULT;
  7695.                     xoffset: 0;
  7696.                     yoffset: 0;
  7697.                     zoffset: 0;
  7698.                     xextent: 16;
  7699.                     yextent: 16;
  7700.                     zextent: 32;
  7701.                     always_draw: 1;
  7702.                     hide_sprite: (construction_state != 0);
  7703.                 }
  7704.                 building {
  7705.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  7706.                     recolour_mode: RECOLOUR_REMAP;
  7707.                     palette: PALETTE_USE_DEFAULT;
  7708.                     xoffset: 0;
  7709.                     yoffset: 0;
  7710.                     zoffset: 0;
  7711.                     xextent: 16;
  7712.                     yextent: 16;
  7713.                     zextent: 32;
  7714.                     always_draw: 1;
  7715.                     hide_sprite: (construction_state != 1);
  7716.                 }
  7717.                 building {
  7718.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  7719.                     recolour_mode: RECOLOUR_REMAP;
  7720.                     palette: PALETTE_USE_DEFAULT;
  7721.                     xoffset: 0;
  7722.                     yoffset: 0;
  7723.                     zoffset: 0;
  7724.                     xextent: 16;
  7725.                     yextent: 16;
  7726.                     zextent: 32;
  7727.                     always_draw: 1;
  7728.                     hide_sprite: (construction_state != 2);
  7729.                 }
  7730.                 // construction states - optional (no snow awareness)
  7731.                 building {
  7732.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  7733.                     recolour_mode: RECOLOUR_REMAP;
  7734.                     palette: PALETTE_USE_DEFAULT;
  7735.                     xoffset: 0;
  7736.                     yoffset: 0;
  7737.                     zoffset: 0;
  7738.                     xextent: 16;
  7739.                     yextent: 16;
  7740.                     zextent: 32;
  7741.                     always_draw: 1;
  7742.                     hide_sprite: (construction_state != 0);
  7743.                 }
  7744.                 building {
  7745.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  7746.                     recolour_mode: RECOLOUR_REMAP;
  7747.                     palette: PALETTE_USE_DEFAULT;
  7748.                     xoffset: 0;
  7749.                     yoffset: 0;
  7750.                     zoffset: 0;
  7751.                     xextent: 16;
  7752.                     yextent: 16;
  7753.                     zextent: 32;
  7754.                     always_draw: 1;
  7755.                     hide_sprite: (construction_state != 1);
  7756.                 }
  7757.                 building {
  7758.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  7759.                     recolour_mode: RECOLOUR_REMAP;
  7760.                     palette: PALETTE_USE_DEFAULT;
  7761.                     xoffset: 0;
  7762.                     yoffset: 0;
  7763.                     zoffset: 0;
  7764.                     xextent: 16;
  7765.                     yextent: 16;
  7766.                     zextent: 32;
  7767.                     always_draw: 1;
  7768.                     hide_sprite: (construction_state != 2);
  7769.                 }
  7770.                 // construction states - optional (no snow awareness)
  7771.                 building {
  7772.                     sprite: port_spriteset_11_spriteset_default_construction_state_0(0);
  7773.                     recolour_mode: RECOLOUR_REMAP;
  7774.                     palette: PALETTE_USE_DEFAULT;
  7775.                     xoffset: 0;
  7776.                     yoffset: 4;
  7777.                     zoffset: 27;
  7778.                     xextent: 16;
  7779.                     yextent: 12;
  7780.                     zextent: 32;
  7781.                     always_draw: 0;
  7782.                     hide_sprite: (construction_state != 0);
  7783.                 }
  7784.                 building {
  7785.                     sprite: port_spriteset_11_spriteset_default_construction_state_1(0);
  7786.                     recolour_mode: RECOLOUR_REMAP;
  7787.                     palette: PALETTE_USE_DEFAULT;
  7788.                     xoffset: 0;
  7789.                     yoffset: 4;
  7790.                     zoffset: 27;
  7791.                     xextent: 16;
  7792.                     yextent: 12;
  7793.                     zextent: 32;
  7794.                     always_draw: 0;
  7795.                     hide_sprite: (construction_state != 1);
  7796.                 }
  7797.                 building {
  7798.                     sprite: port_spriteset_11_spriteset_default_construction_state_2(0);
  7799.                     recolour_mode: RECOLOUR_REMAP;
  7800.                     palette: PALETTE_USE_DEFAULT;
  7801.                     xoffset: 0;
  7802.                     yoffset: 4;
  7803.                     zoffset: 27;
  7804.                     xextent: 16;
  7805.                     yextent: 12;
  7806.                     zextent: 32;
  7807.                     always_draw: 0;
  7808.                     hide_sprite: (construction_state != 2);
  7809.                 }
  7810.                     // buildings (snow aware)
  7811.                     building {
  7812.                         sprite: port_spriteset_2_0(0);
  7813.                         recolour_mode: RECOLOUR_REMAP;
  7814.                         palette: PALETTE_USE_DEFAULT;
  7815.                         xoffset: 0;
  7816.                         yoffset: 0;
  7817.                         zoffset: 0;
  7818.                         xextent: 16;
  7819.                         yextent: 16;
  7820.                         zextent: 32;
  7821.                         always_draw: 1;
  7822.                         hide_sprite: (LOAD_TEMP(255));
  7823.                     }
  7824.                     building {
  7825.                         sprite: port_spriteset_2_0_snow(0);
  7826.                         recolour_mode: RECOLOUR_REMAP;
  7827.                         palette: PALETTE_USE_DEFAULT;
  7828.                         xoffset: 0;
  7829.                         yoffset: 0;
  7830.                         zoffset: 0;
  7831.                         xextent: 16;
  7832.                         yextent: 16;
  7833.                         zextent: 32;
  7834.                         always_draw: 1;
  7835.                         hide_sprite: (LOAD_TEMP(245));
  7836.                     }
  7837.                     // buildings (snow aware)
  7838.                     building {
  7839.                         sprite: port_spriteset_3_0(0);
  7840.                         recolour_mode: RECOLOUR_REMAP;
  7841.                         palette: PALETTE_USE_DEFAULT;
  7842.                         xoffset: 0;
  7843.                         yoffset: 0;
  7844.                         zoffset: 0;
  7845.                         xextent: 16;
  7846.                         yextent: 16;
  7847.                         zextent: 32;
  7848.                         always_draw: 1;
  7849.                         hide_sprite: (LOAD_TEMP(255));
  7850.                     }
  7851.                     building {
  7852.                         sprite: port_spriteset_3_0_snow(0);
  7853.                         recolour_mode: RECOLOUR_REMAP;
  7854.                         palette: PALETTE_USE_DEFAULT;
  7855.                         xoffset: 0;
  7856.                         yoffset: 0;
  7857.                         zoffset: 0;
  7858.                         xextent: 16;
  7859.                         yextent: 16;
  7860.                         zextent: 32;
  7861.                         always_draw: 1;
  7862.                         hide_sprite: (LOAD_TEMP(245));
  7863.                     }
  7864.                     // buildings (snow aware)
  7865.                     building {
  7866.                         sprite: port_spriteset_1_0(0);
  7867.                         recolour_mode: RECOLOUR_REMAP;
  7868.                         palette: PALETTE_USE_DEFAULT;
  7869.                         xoffset: 0;
  7870.                         yoffset: 0;
  7871.                         zoffset: 0;
  7872.                         xextent: 16;
  7873.                         yextent: 16;
  7874.                         zextent: 32;
  7875.                         always_draw: 1;
  7876.                         hide_sprite: (LOAD_TEMP(255));
  7877.                     }
  7878.                     building {
  7879.                         sprite: port_spriteset_1_0_snow(0);
  7880.                         recolour_mode: RECOLOUR_REMAP;
  7881.                         palette: PALETTE_USE_DEFAULT;
  7882.                         xoffset: 0;
  7883.                         yoffset: 0;
  7884.                         zoffset: 0;
  7885.                         xextent: 16;
  7886.                         yextent: 16;
  7887.                         zextent: 32;
  7888.                         always_draw: 1;
  7889.                         hide_sprite: (LOAD_TEMP(245));
  7890.                     }
  7891.                     // buildings (snow aware)
  7892.                     building {
  7893.                         sprite: port_spriteset_11_0(0);
  7894.                         recolour_mode: RECOLOUR_REMAP;
  7895.                         palette: PALETTE_USE_DEFAULT;
  7896.                         xoffset: 0;
  7897.                         yoffset: 4;
  7898.                         zoffset: 27;
  7899.                         xextent: 16;
  7900.                         yextent: 12;
  7901.                         zextent: 32;
  7902.                         always_draw: 0;
  7903.                         hide_sprite: (LOAD_TEMP(255));
  7904.                     }
  7905.                     building {
  7906.                         sprite: port_spriteset_11_0_snow(0);
  7907.                         recolour_mode: RECOLOUR_REMAP;
  7908.                         palette: PALETTE_USE_DEFAULT;
  7909.                         xoffset: 0;
  7910.                         yoffset: 4;
  7911.                         zoffset: 27;
  7912.                         xextent: 16;
  7913.                         yextent: 12;
  7914.                         zextent: 32;
  7915.                         always_draw: 0;
  7916.                         hide_sprite: (LOAD_TEMP(245));
  7917.                     }
  7918.         }
  7919.         spritelayout port_spritelayout_30 {
  7920.             // Industry-specific ground (snow aware)
  7921.             // non-snow
  7922.             childsprite {
  7923.                 sprite: port_spriteset_0_0(0);
  7924.                 recolour_mode: RECOLOUR_REMAP;
  7925.                 palette: PALETTE_USE_DEFAULT;
  7926.                 hide_sprite: (LOAD_TEMP(13));
  7927.                 always_draw: 1;
  7928.             }
  7929.             childsprite {
  7930.                 sprite: port_spriteset_0_0(0);
  7931.                 recolour_mode: RECOLOUR_REMAP;
  7932.                 palette: PALETTE_USE_DEFAULT;
  7933.                 hide_sprite: (LOAD_TEMP(13));
  7934.                 always_draw: 1;
  7935.             }
  7936.             // snow
  7937.             childsprite {
  7938.                 sprite: port_spriteset_0_0_snow(0);
  7939.                 recolour_mode: RECOLOUR_REMAP;
  7940.                 palette: PALETTE_USE_DEFAULT;
  7941.                 hide_sprite: (!LOAD_TEMP(13));
  7942.                 always_draw: 1;
  7943.             }
  7944.             childsprite {
  7945.                 sprite: port_spriteset_0_0_snow(0);
  7946.                 recolour_mode: RECOLOUR_REMAP;
  7947.                 palette: PALETTE_USE_DEFAULT;
  7948.                 hide_sprite: (!LOAD_TEMP(13));
  7949.                 always_draw: 1;
  7950.             }
  7951.                 // construction states - optional (no snow awareness)
  7952.                 building {
  7953.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  7954.                     recolour_mode: RECOLOUR_REMAP;
  7955.                     palette: PALETTE_USE_DEFAULT;
  7956.                     xoffset: 0;
  7957.                     yoffset: 0;
  7958.                     zoffset: 0;
  7959.                     xextent: 16;
  7960.                     yextent: 16;
  7961.                     zextent: 32;
  7962.                     always_draw: 1;
  7963.                     hide_sprite: (construction_state != 0);
  7964.                 }
  7965.                 building {
  7966.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  7967.                     recolour_mode: RECOLOUR_REMAP;
  7968.                     palette: PALETTE_USE_DEFAULT;
  7969.                     xoffset: 0;
  7970.                     yoffset: 0;
  7971.                     zoffset: 0;
  7972.                     xextent: 16;
  7973.                     yextent: 16;
  7974.                     zextent: 32;
  7975.                     always_draw: 1;
  7976.                     hide_sprite: (construction_state != 1);
  7977.                 }
  7978.                 building {
  7979.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  7980.                     recolour_mode: RECOLOUR_REMAP;
  7981.                     palette: PALETTE_USE_DEFAULT;
  7982.                     xoffset: 0;
  7983.                     yoffset: 0;
  7984.                     zoffset: 0;
  7985.                     xextent: 16;
  7986.                     yextent: 16;
  7987.                     zextent: 32;
  7988.                     always_draw: 1;
  7989.                     hide_sprite: (construction_state != 2);
  7990.                 }
  7991.                 // construction states - optional (no snow awareness)
  7992.                 building {
  7993.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  7994.                     recolour_mode: RECOLOUR_REMAP;
  7995.                     palette: PALETTE_USE_DEFAULT;
  7996.                     xoffset: 0;
  7997.                     yoffset: 0;
  7998.                     zoffset: 0;
  7999.                     xextent: 16;
  8000.                     yextent: 16;
  8001.                     zextent: 32;
  8002.                     always_draw: 1;
  8003.                     hide_sprite: (construction_state != 0);
  8004.                 }
  8005.                 building {
  8006.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  8007.                     recolour_mode: RECOLOUR_REMAP;
  8008.                     palette: PALETTE_USE_DEFAULT;
  8009.                     xoffset: 0;
  8010.                     yoffset: 0;
  8011.                     zoffset: 0;
  8012.                     xextent: 16;
  8013.                     yextent: 16;
  8014.                     zextent: 32;
  8015.                     always_draw: 1;
  8016.                     hide_sprite: (construction_state != 1);
  8017.                 }
  8018.                 building {
  8019.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  8020.                     recolour_mode: RECOLOUR_REMAP;
  8021.                     palette: PALETTE_USE_DEFAULT;
  8022.                     xoffset: 0;
  8023.                     yoffset: 0;
  8024.                     zoffset: 0;
  8025.                     xextent: 16;
  8026.                     yextent: 16;
  8027.                     zextent: 32;
  8028.                     always_draw: 1;
  8029.                     hide_sprite: (construction_state != 2);
  8030.                 }
  8031.                 // construction states - optional (no snow awareness)
  8032.                 building {
  8033.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  8034.                     recolour_mode: RECOLOUR_REMAP;
  8035.                     palette: PALETTE_USE_DEFAULT;
  8036.                     xoffset: 0;
  8037.                     yoffset: 0;
  8038.                     zoffset: 0;
  8039.                     xextent: 16;
  8040.                     yextent: 16;
  8041.                     zextent: 32;
  8042.                     always_draw: 1;
  8043.                     hide_sprite: (construction_state != 0);
  8044.                 }
  8045.                 building {
  8046.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  8047.                     recolour_mode: RECOLOUR_REMAP;
  8048.                     palette: PALETTE_USE_DEFAULT;
  8049.                     xoffset: 0;
  8050.                     yoffset: 0;
  8051.                     zoffset: 0;
  8052.                     xextent: 16;
  8053.                     yextent: 16;
  8054.                     zextent: 32;
  8055.                     always_draw: 1;
  8056.                     hide_sprite: (construction_state != 1);
  8057.                 }
  8058.                 building {
  8059.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  8060.                     recolour_mode: RECOLOUR_REMAP;
  8061.                     palette: PALETTE_USE_DEFAULT;
  8062.                     xoffset: 0;
  8063.                     yoffset: 0;
  8064.                     zoffset: 0;
  8065.                     xextent: 16;
  8066.                     yextent: 16;
  8067.                     zextent: 32;
  8068.                     always_draw: 1;
  8069.                     hide_sprite: (construction_state != 2);
  8070.                 }
  8071.                 // construction states - optional (no snow awareness)
  8072.                 building {
  8073.                     sprite: port_spriteset_10_spriteset_default_construction_state_0(0);
  8074.                     recolour_mode: RECOLOUR_REMAP;
  8075.                     palette: PALETTE_USE_DEFAULT;
  8076.                     xoffset: 5;
  8077.                     yoffset: 0;
  8078.                     zoffset: 40;
  8079.                     xextent: 11;
  8080.                     yextent: 16;
  8081.                     zextent: 32;
  8082.                     always_draw: 0;
  8083.                     hide_sprite: (construction_state != 0);
  8084.                 }
  8085.                 building {
  8086.                     sprite: port_spriteset_10_spriteset_default_construction_state_1(0);
  8087.                     recolour_mode: RECOLOUR_REMAP;
  8088.                     palette: PALETTE_USE_DEFAULT;
  8089.                     xoffset: 5;
  8090.                     yoffset: 0;
  8091.                     zoffset: 40;
  8092.                     xextent: 11;
  8093.                     yextent: 16;
  8094.                     zextent: 32;
  8095.                     always_draw: 0;
  8096.                     hide_sprite: (construction_state != 1);
  8097.                 }
  8098.                 building {
  8099.                     sprite: port_spriteset_10_spriteset_default_construction_state_2(0);
  8100.                     recolour_mode: RECOLOUR_REMAP;
  8101.                     palette: PALETTE_USE_DEFAULT;
  8102.                     xoffset: 5;
  8103.                     yoffset: 0;
  8104.                     zoffset: 40;
  8105.                     xextent: 11;
  8106.                     yextent: 16;
  8107.                     zextent: 32;
  8108.                     always_draw: 0;
  8109.                     hide_sprite: (construction_state != 2);
  8110.                 }
  8111.                     // buildings (snow aware)
  8112.                     building {
  8113.                         sprite: port_spriteset_2_0(0);
  8114.                         recolour_mode: RECOLOUR_REMAP;
  8115.                         palette: PALETTE_USE_DEFAULT;
  8116.                         xoffset: 0;
  8117.                         yoffset: 0;
  8118.                         zoffset: 0;
  8119.                         xextent: 16;
  8120.                         yextent: 16;
  8121.                         zextent: 32;
  8122.                         always_draw: 1;
  8123.                         hide_sprite: (LOAD_TEMP(255));
  8124.                     }
  8125.                     building {
  8126.                         sprite: port_spriteset_2_0_snow(0);
  8127.                         recolour_mode: RECOLOUR_REMAP;
  8128.                         palette: PALETTE_USE_DEFAULT;
  8129.                         xoffset: 0;
  8130.                         yoffset: 0;
  8131.                         zoffset: 0;
  8132.                         xextent: 16;
  8133.                         yextent: 16;
  8134.                         zextent: 32;
  8135.                         always_draw: 1;
  8136.                         hide_sprite: (LOAD_TEMP(245));
  8137.                     }
  8138.                     // buildings (snow aware)
  8139.                     building {
  8140.                         sprite: port_spriteset_3_0(0);
  8141.                         recolour_mode: RECOLOUR_REMAP;
  8142.                         palette: PALETTE_USE_DEFAULT;
  8143.                         xoffset: 0;
  8144.                         yoffset: 0;
  8145.                         zoffset: 0;
  8146.                         xextent: 16;
  8147.                         yextent: 16;
  8148.                         zextent: 32;
  8149.                         always_draw: 1;
  8150.                         hide_sprite: (LOAD_TEMP(255));
  8151.                     }
  8152.                     building {
  8153.                         sprite: port_spriteset_3_0_snow(0);
  8154.                         recolour_mode: RECOLOUR_REMAP;
  8155.                         palette: PALETTE_USE_DEFAULT;
  8156.                         xoffset: 0;
  8157.                         yoffset: 0;
  8158.                         zoffset: 0;
  8159.                         xextent: 16;
  8160.                         yextent: 16;
  8161.                         zextent: 32;
  8162.                         always_draw: 1;
  8163.                         hide_sprite: (LOAD_TEMP(245));
  8164.                     }
  8165.                     // buildings (snow aware)
  8166.                     building {
  8167.                         sprite: port_spriteset_1_0(0);
  8168.                         recolour_mode: RECOLOUR_REMAP;
  8169.                         palette: PALETTE_USE_DEFAULT;
  8170.                         xoffset: 0;
  8171.                         yoffset: 0;
  8172.                         zoffset: 0;
  8173.                         xextent: 16;
  8174.                         yextent: 16;
  8175.                         zextent: 32;
  8176.                         always_draw: 1;
  8177.                         hide_sprite: (LOAD_TEMP(255));
  8178.                     }
  8179.                     building {
  8180.                         sprite: port_spriteset_1_0_snow(0);
  8181.                         recolour_mode: RECOLOUR_REMAP;
  8182.                         palette: PALETTE_USE_DEFAULT;
  8183.                         xoffset: 0;
  8184.                         yoffset: 0;
  8185.                         zoffset: 0;
  8186.                         xextent: 16;
  8187.                         yextent: 16;
  8188.                         zextent: 32;
  8189.                         always_draw: 1;
  8190.                         hide_sprite: (LOAD_TEMP(245));
  8191.                     }
  8192.                     // buildings (snow aware)
  8193.                     building {
  8194.                         sprite: port_spriteset_10_0(0);
  8195.                         recolour_mode: RECOLOUR_REMAP;
  8196.                         palette: PALETTE_USE_DEFAULT;
  8197.                         xoffset: 5;
  8198.                         yoffset: 0;
  8199.                         zoffset: 40;
  8200.                         xextent: 11;
  8201.                         yextent: 16;
  8202.                         zextent: 32;
  8203.                         always_draw: 0;
  8204.                         hide_sprite: (LOAD_TEMP(255));
  8205.                     }
  8206.                     building {
  8207.                         sprite: port_spriteset_10_0_snow(0);
  8208.                         recolour_mode: RECOLOUR_REMAP;
  8209.                         palette: PALETTE_USE_DEFAULT;
  8210.                         xoffset: 5;
  8211.                         yoffset: 0;
  8212.                         zoffset: 40;
  8213.                         xextent: 11;
  8214.                         yextent: 16;
  8215.                         zextent: 32;
  8216.                         always_draw: 0;
  8217.                         hide_sprite: (LOAD_TEMP(245));
  8218.                     }
  8219.         }
  8220.         spritelayout port_spritelayout_null {
  8221.             // Industry-specific ground (snow aware)
  8222.             // non-snow
  8223.             childsprite {
  8224.                 sprite: port_spriteset_0_0(0);
  8225.                 recolour_mode: RECOLOUR_REMAP;
  8226.                 palette: PALETTE_USE_DEFAULT;
  8227.                 hide_sprite: (LOAD_TEMP(13));
  8228.                 always_draw: 1;
  8229.             }
  8230.             childsprite {
  8231.                 sprite: port_spriteset_0_0(0);
  8232.                 recolour_mode: RECOLOUR_REMAP;
  8233.                 palette: PALETTE_USE_DEFAULT;
  8234.                 hide_sprite: (LOAD_TEMP(13));
  8235.                 always_draw: 1;
  8236.             }
  8237.             // snow
  8238.             childsprite {
  8239.                 sprite: port_spriteset_0_0_snow(0);
  8240.                 recolour_mode: RECOLOUR_REMAP;
  8241.                 palette: PALETTE_USE_DEFAULT;
  8242.                 hide_sprite: (!LOAD_TEMP(13));
  8243.                 always_draw: 1;
  8244.             }
  8245.             childsprite {
  8246.                 sprite: port_spriteset_0_0_snow(0);
  8247.                 recolour_mode: RECOLOUR_REMAP;
  8248.                 palette: PALETTE_USE_DEFAULT;
  8249.                 hide_sprite: (!LOAD_TEMP(13));
  8250.                 always_draw: 1;
  8251.             }
  8252.         }
  8253.         spritelayout port_spritelayout_coast_warehouse1 {
  8254.             // Industry-specific ground (snow aware)
  8255.             // non-snow
  8256.             childsprite {
  8257.                 sprite: port_spriteset_0_0(0);
  8258.                 recolour_mode: RECOLOUR_REMAP;
  8259.                 palette: PALETTE_USE_DEFAULT;
  8260.                 hide_sprite: (LOAD_TEMP(13));
  8261.                 always_draw: 1;
  8262.             }
  8263.             childsprite {
  8264.                 sprite: port_spriteset_0_0(0);
  8265.                 recolour_mode: RECOLOUR_REMAP;
  8266.                 palette: PALETTE_USE_DEFAULT;
  8267.                 hide_sprite: (LOAD_TEMP(13));
  8268.                 always_draw: 1;
  8269.             }
  8270.             // snow
  8271.             childsprite {
  8272.                 sprite: port_spriteset_0_0_snow(0);
  8273.                 recolour_mode: RECOLOUR_REMAP;
  8274.                 palette: PALETTE_USE_DEFAULT;
  8275.                 hide_sprite: (!LOAD_TEMP(13));
  8276.                 always_draw: 1;
  8277.             }
  8278.             childsprite {
  8279.                 sprite: port_spriteset_0_0_snow(0);
  8280.                 recolour_mode: RECOLOUR_REMAP;
  8281.                 palette: PALETTE_USE_DEFAULT;
  8282.                 hide_sprite: (!LOAD_TEMP(13));
  8283.                 always_draw: 1;
  8284.             }
  8285.                 // construction states - optional (no snow awareness)
  8286.                 building {
  8287.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  8288.                     recolour_mode: RECOLOUR_REMAP;
  8289.                     palette: PALETTE_USE_DEFAULT;
  8290.                     xoffset: 0;
  8291.                     yoffset: 0;
  8292.                     zoffset: 0;
  8293.                     xextent: 16;
  8294.                     yextent: 16;
  8295.                     zextent: 32;
  8296.                     always_draw: 1;
  8297.                     hide_sprite: (construction_state != 0);
  8298.                 }
  8299.                 building {
  8300.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  8301.                     recolour_mode: RECOLOUR_REMAP;
  8302.                     palette: PALETTE_USE_DEFAULT;
  8303.                     xoffset: 0;
  8304.                     yoffset: 0;
  8305.                     zoffset: 0;
  8306.                     xextent: 16;
  8307.                     yextent: 16;
  8308.                     zextent: 32;
  8309.                     always_draw: 1;
  8310.                     hide_sprite: (construction_state != 1);
  8311.                 }
  8312.                 building {
  8313.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  8314.                     recolour_mode: RECOLOUR_REMAP;
  8315.                     palette: PALETTE_USE_DEFAULT;
  8316.                     xoffset: 0;
  8317.                     yoffset: 0;
  8318.                     zoffset: 0;
  8319.                     xextent: 16;
  8320.                     yextent: 16;
  8321.                     zextent: 32;
  8322.                     always_draw: 1;
  8323.                     hide_sprite: (construction_state != 2);
  8324.                 }
  8325.                 // construction states - optional (no snow awareness)
  8326.                 building {
  8327.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  8328.                     recolour_mode: RECOLOUR_REMAP;
  8329.                     palette: PALETTE_USE_DEFAULT;
  8330.                     xoffset: 0;
  8331.                     yoffset: 0;
  8332.                     zoffset: 18;
  8333.                     xextent: 16;
  8334.                     yextent: 16;
  8335.                     zextent: 32;
  8336.                     always_draw: 0;
  8337.                     hide_sprite: (construction_state != 0);
  8338.                 }
  8339.                 building {
  8340.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  8341.                     recolour_mode: RECOLOUR_REMAP;
  8342.                     palette: PALETTE_USE_DEFAULT;
  8343.                     xoffset: 0;
  8344.                     yoffset: 0;
  8345.                     zoffset: 18;
  8346.                     xextent: 16;
  8347.                     yextent: 16;
  8348.                     zextent: 32;
  8349.                     always_draw: 0;
  8350.                     hide_sprite: (construction_state != 1);
  8351.                 }
  8352.                 building {
  8353.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  8354.                     recolour_mode: RECOLOUR_REMAP;
  8355.                     palette: PALETTE_USE_DEFAULT;
  8356.                     xoffset: 0;
  8357.                     yoffset: 0;
  8358.                     zoffset: 18;
  8359.                     xextent: 16;
  8360.                     yextent: 16;
  8361.                     zextent: 32;
  8362.                     always_draw: 0;
  8363.                     hide_sprite: (construction_state != 2);
  8364.                 }
  8365.                     // buildings (snow aware)
  8366.                     building {
  8367.                         sprite: port_spriteset_1_0(0);
  8368.                         recolour_mode: RECOLOUR_REMAP;
  8369.                         palette: PALETTE_USE_DEFAULT;
  8370.                         xoffset: 0;
  8371.                         yoffset: 0;
  8372.                         zoffset: 0;
  8373.                         xextent: 16;
  8374.                         yextent: 16;
  8375.                         zextent: 32;
  8376.                         always_draw: 1;
  8377.                         hide_sprite: (LOAD_TEMP(255));
  8378.                     }
  8379.                     building {
  8380.                         sprite: port_spriteset_1_0_snow(0);
  8381.                         recolour_mode: RECOLOUR_REMAP;
  8382.                         palette: PALETTE_USE_DEFAULT;
  8383.                         xoffset: 0;
  8384.                         yoffset: 0;
  8385.                         zoffset: 0;
  8386.                         xextent: 16;
  8387.                         yextent: 16;
  8388.                         zextent: 32;
  8389.                         always_draw: 1;
  8390.                         hide_sprite: (LOAD_TEMP(245));
  8391.                     }
  8392.                     // buildings (snow aware)
  8393.                     building {
  8394.                         sprite: port_spriteset_8_0(0);
  8395.                         recolour_mode: RECOLOUR_REMAP;
  8396.                         palette: PALETTE_USE_DEFAULT;
  8397.                         xoffset: 0;
  8398.                         yoffset: 0;
  8399.                         zoffset: 18;
  8400.                         xextent: 16;
  8401.                         yextent: 16;
  8402.                         zextent: 32;
  8403.                         always_draw: 0;
  8404.                         hide_sprite: (LOAD_TEMP(255));
  8405.                     }
  8406.                     building {
  8407.                         sprite: port_spriteset_8_0_snow(0);
  8408.                         recolour_mode: RECOLOUR_REMAP;
  8409.                         palette: PALETTE_USE_DEFAULT;
  8410.                         xoffset: 0;
  8411.                         yoffset: 0;
  8412.                         zoffset: 18;
  8413.                         xextent: 16;
  8414.                         yextent: 16;
  8415.                         zextent: 32;
  8416.                         always_draw: 0;
  8417.                         hide_sprite: (LOAD_TEMP(245));
  8418.                     }
  8419.         }
  8420.         spritelayout port_spritelayout_coast_warehouse4 {
  8421.             // Industry-specific ground (snow aware)
  8422.             // non-snow
  8423.             childsprite {
  8424.                 sprite: port_spriteset_0_0(0);
  8425.                 recolour_mode: RECOLOUR_REMAP;
  8426.                 palette: PALETTE_USE_DEFAULT;
  8427.                 hide_sprite: (LOAD_TEMP(13));
  8428.                 always_draw: 1;
  8429.             }
  8430.             childsprite {
  8431.                 sprite: port_spriteset_0_0(0);
  8432.                 recolour_mode: RECOLOUR_REMAP;
  8433.                 palette: PALETTE_USE_DEFAULT;
  8434.                 hide_sprite: (LOAD_TEMP(13));
  8435.                 always_draw: 1;
  8436.             }
  8437.             // snow
  8438.             childsprite {
  8439.                 sprite: port_spriteset_0_0_snow(0);
  8440.                 recolour_mode: RECOLOUR_REMAP;
  8441.                 palette: PALETTE_USE_DEFAULT;
  8442.                 hide_sprite: (!LOAD_TEMP(13));
  8443.                 always_draw: 1;
  8444.             }
  8445.             childsprite {
  8446.                 sprite: port_spriteset_0_0_snow(0);
  8447.                 recolour_mode: RECOLOUR_REMAP;
  8448.                 palette: PALETTE_USE_DEFAULT;
  8449.                 hide_sprite: (!LOAD_TEMP(13));
  8450.                 always_draw: 1;
  8451.             }
  8452.                 // construction states - optional (no snow awareness)
  8453.                 building {
  8454.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  8455.                     recolour_mode: RECOLOUR_REMAP;
  8456.                     palette: PALETTE_USE_DEFAULT;
  8457.                     xoffset: 0;
  8458.                     yoffset: 0;
  8459.                     zoffset: 0;
  8460.                     xextent: 16;
  8461.                     yextent: 16;
  8462.                     zextent: 32;
  8463.                     always_draw: 1;
  8464.                     hide_sprite: (construction_state != 0);
  8465.                 }
  8466.                 building {
  8467.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  8468.                     recolour_mode: RECOLOUR_REMAP;
  8469.                     palette: PALETTE_USE_DEFAULT;
  8470.                     xoffset: 0;
  8471.                     yoffset: 0;
  8472.                     zoffset: 0;
  8473.                     xextent: 16;
  8474.                     yextent: 16;
  8475.                     zextent: 32;
  8476.                     always_draw: 1;
  8477.                     hide_sprite: (construction_state != 1);
  8478.                 }
  8479.                 building {
  8480.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  8481.                     recolour_mode: RECOLOUR_REMAP;
  8482.                     palette: PALETTE_USE_DEFAULT;
  8483.                     xoffset: 0;
  8484.                     yoffset: 0;
  8485.                     zoffset: 0;
  8486.                     xextent: 16;
  8487.                     yextent: 16;
  8488.                     zextent: 32;
  8489.                     always_draw: 1;
  8490.                     hide_sprite: (construction_state != 2);
  8491.                 }
  8492.                 // construction states - optional (no snow awareness)
  8493.                 building {
  8494.                     sprite: port_spriteset_4_spriteset_default_construction_state_0(0);
  8495.                     recolour_mode: RECOLOUR_REMAP;
  8496.                     palette: PALETTE_USE_DEFAULT;
  8497.                     xoffset: 0;
  8498.                     yoffset: 0;
  8499.                     zoffset: 0;
  8500.                     xextent: 16;
  8501.                     yextent: 16;
  8502.                     zextent: 32;
  8503.                     always_draw: 0;
  8504.                     hide_sprite: (construction_state != 0);
  8505.                 }
  8506.                 building {
  8507.                     sprite: port_spriteset_4_spriteset_default_construction_state_1(0);
  8508.                     recolour_mode: RECOLOUR_REMAP;
  8509.                     palette: PALETTE_USE_DEFAULT;
  8510.                     xoffset: 0;
  8511.                     yoffset: 0;
  8512.                     zoffset: 0;
  8513.                     xextent: 16;
  8514.                     yextent: 16;
  8515.                     zextent: 32;
  8516.                     always_draw: 0;
  8517.                     hide_sprite: (construction_state != 1);
  8518.                 }
  8519.                 building {
  8520.                     sprite: port_spriteset_4_spriteset_default_construction_state_2(0);
  8521.                     recolour_mode: RECOLOUR_REMAP;
  8522.                     palette: PALETTE_USE_DEFAULT;
  8523.                     xoffset: 0;
  8524.                     yoffset: 0;
  8525.                     zoffset: 0;
  8526.                     xextent: 16;
  8527.                     yextent: 16;
  8528.                     zextent: 32;
  8529.                     always_draw: 0;
  8530.                     hide_sprite: (construction_state != 2);
  8531.                 }
  8532.                 // construction states - optional (no snow awareness)
  8533.                 building {
  8534.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  8535.                     recolour_mode: RECOLOUR_REMAP;
  8536.                     palette: PALETTE_USE_DEFAULT;
  8537.                     xoffset: 0;
  8538.                     yoffset: 0;
  8539.                     zoffset: 0;
  8540.                     xextent: 16;
  8541.                     yextent: 16;
  8542.                     zextent: 32;
  8543.                     always_draw: 1;
  8544.                     hide_sprite: (construction_state != 0);
  8545.                 }
  8546.                 building {
  8547.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  8548.                     recolour_mode: RECOLOUR_REMAP;
  8549.                     palette: PALETTE_USE_DEFAULT;
  8550.                     xoffset: 0;
  8551.                     yoffset: 0;
  8552.                     zoffset: 0;
  8553.                     xextent: 16;
  8554.                     yextent: 16;
  8555.                     zextent: 32;
  8556.                     always_draw: 1;
  8557.                     hide_sprite: (construction_state != 1);
  8558.                 }
  8559.                 building {
  8560.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  8561.                     recolour_mode: RECOLOUR_REMAP;
  8562.                     palette: PALETTE_USE_DEFAULT;
  8563.                     xoffset: 0;
  8564.                     yoffset: 0;
  8565.                     zoffset: 0;
  8566.                     xextent: 16;
  8567.                     yextent: 16;
  8568.                     zextent: 32;
  8569.                     always_draw: 1;
  8570.                     hide_sprite: (construction_state != 2);
  8571.                 }
  8572.                 // construction states - optional (no snow awareness)
  8573.                 building {
  8574.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  8575.                     recolour_mode: RECOLOUR_REMAP;
  8576.                     palette: PALETTE_USE_DEFAULT;
  8577.                     xoffset: 0;
  8578.                     yoffset: 0;
  8579.                     zoffset: 18;
  8580.                     xextent: 16;
  8581.                     yextent: 16;
  8582.                     zextent: 32;
  8583.                     always_draw: 0;
  8584.                     hide_sprite: (construction_state != 0);
  8585.                 }
  8586.                 building {
  8587.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  8588.                     recolour_mode: RECOLOUR_REMAP;
  8589.                     palette: PALETTE_USE_DEFAULT;
  8590.                     xoffset: 0;
  8591.                     yoffset: 0;
  8592.                     zoffset: 18;
  8593.                     xextent: 16;
  8594.                     yextent: 16;
  8595.                     zextent: 32;
  8596.                     always_draw: 0;
  8597.                     hide_sprite: (construction_state != 1);
  8598.                 }
  8599.                 building {
  8600.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  8601.                     recolour_mode: RECOLOUR_REMAP;
  8602.                     palette: PALETTE_USE_DEFAULT;
  8603.                     xoffset: 0;
  8604.                     yoffset: 0;
  8605.                     zoffset: 18;
  8606.                     xextent: 16;
  8607.                     yextent: 16;
  8608.                     zextent: 32;
  8609.                     always_draw: 0;
  8610.                     hide_sprite: (construction_state != 2);
  8611.                 }
  8612.                     // buildings (snow aware)
  8613.                     building {
  8614.                         sprite: port_spriteset_3_0(0);
  8615.                         recolour_mode: RECOLOUR_REMAP;
  8616.                         palette: PALETTE_USE_DEFAULT;
  8617.                         xoffset: 0;
  8618.                         yoffset: 0;
  8619.                         zoffset: 0;
  8620.                         xextent: 16;
  8621.                         yextent: 16;
  8622.                         zextent: 32;
  8623.                         always_draw: 1;
  8624.                         hide_sprite: (LOAD_TEMP(255));
  8625.                     }
  8626.                     building {
  8627.                         sprite: port_spriteset_3_0_snow(0);
  8628.                         recolour_mode: RECOLOUR_REMAP;
  8629.                         palette: PALETTE_USE_DEFAULT;
  8630.                         xoffset: 0;
  8631.                         yoffset: 0;
  8632.                         zoffset: 0;
  8633.                         xextent: 16;
  8634.                         yextent: 16;
  8635.                         zextent: 32;
  8636.                         always_draw: 1;
  8637.                         hide_sprite: (LOAD_TEMP(245));
  8638.                     }
  8639.                     // buildings (snow aware)
  8640.                     building {
  8641.                         sprite: port_spriteset_4_0(0);
  8642.                         recolour_mode: RECOLOUR_REMAP;
  8643.                         palette: PALETTE_USE_DEFAULT;
  8644.                         xoffset: 0;
  8645.                         yoffset: 0;
  8646.                         zoffset: 0;
  8647.                         xextent: 16;
  8648.                         yextent: 16;
  8649.                         zextent: 32;
  8650.                         always_draw: 0;
  8651.                         hide_sprite: (LOAD_TEMP(255));
  8652.                     }
  8653.                     building {
  8654.                         sprite: port_spriteset_4_0_snow(0);
  8655.                         recolour_mode: RECOLOUR_REMAP;
  8656.                         palette: PALETTE_USE_DEFAULT;
  8657.                         xoffset: 0;
  8658.                         yoffset: 0;
  8659.                         zoffset: 0;
  8660.                         xextent: 16;
  8661.                         yextent: 16;
  8662.                         zextent: 32;
  8663.                         always_draw: 0;
  8664.                         hide_sprite: (LOAD_TEMP(245));
  8665.                     }
  8666.                     // buildings (snow aware)
  8667.                     building {
  8668.                         sprite: port_spriteset_1_0(0);
  8669.                         recolour_mode: RECOLOUR_REMAP;
  8670.                         palette: PALETTE_USE_DEFAULT;
  8671.                         xoffset: 0;
  8672.                         yoffset: 0;
  8673.                         zoffset: 0;
  8674.                         xextent: 16;
  8675.                         yextent: 16;
  8676.                         zextent: 32;
  8677.                         always_draw: 1;
  8678.                         hide_sprite: (LOAD_TEMP(255));
  8679.                     }
  8680.                     building {
  8681.                         sprite: port_spriteset_1_0_snow(0);
  8682.                         recolour_mode: RECOLOUR_REMAP;
  8683.                         palette: PALETTE_USE_DEFAULT;
  8684.                         xoffset: 0;
  8685.                         yoffset: 0;
  8686.                         zoffset: 0;
  8687.                         xextent: 16;
  8688.                         yextent: 16;
  8689.                         zextent: 32;
  8690.                         always_draw: 1;
  8691.                         hide_sprite: (LOAD_TEMP(245));
  8692.                     }
  8693.                     // buildings (snow aware)
  8694.                     building {
  8695.                         sprite: port_spriteset_8_0(0);
  8696.                         recolour_mode: RECOLOUR_REMAP;
  8697.                         palette: PALETTE_USE_DEFAULT;
  8698.                         xoffset: 0;
  8699.                         yoffset: 0;
  8700.                         zoffset: 18;
  8701.                         xextent: 16;
  8702.                         yextent: 16;
  8703.                         zextent: 32;
  8704.                         always_draw: 0;
  8705.                         hide_sprite: (LOAD_TEMP(255));
  8706.                     }
  8707.                     building {
  8708.                         sprite: port_spriteset_8_0_snow(0);
  8709.                         recolour_mode: RECOLOUR_REMAP;
  8710.                         palette: PALETTE_USE_DEFAULT;
  8711.                         xoffset: 0;
  8712.                         yoffset: 0;
  8713.                         zoffset: 18;
  8714.                         xextent: 16;
  8715.                         yextent: 16;
  8716.                         zextent: 32;
  8717.                         always_draw: 0;
  8718.                         hide_sprite: (LOAD_TEMP(245));
  8719.                     }
  8720.         }
  8721.         spritelayout port_spritelayout_coast_warehouse3 {
  8722.             // Industry-specific ground (snow aware)
  8723.             // non-snow
  8724.             childsprite {
  8725.                 sprite: port_spriteset_0_0(0);
  8726.                 recolour_mode: RECOLOUR_REMAP;
  8727.                 palette: PALETTE_USE_DEFAULT;
  8728.                 hide_sprite: (LOAD_TEMP(13));
  8729.                 always_draw: 1;
  8730.             }
  8731.             childsprite {
  8732.                 sprite: port_spriteset_0_0(0);
  8733.                 recolour_mode: RECOLOUR_REMAP;
  8734.                 palette: PALETTE_USE_DEFAULT;
  8735.                 hide_sprite: (LOAD_TEMP(13));
  8736.                 always_draw: 1;
  8737.             }
  8738.             // snow
  8739.             childsprite {
  8740.                 sprite: port_spriteset_0_0_snow(0);
  8741.                 recolour_mode: RECOLOUR_REMAP;
  8742.                 palette: PALETTE_USE_DEFAULT;
  8743.                 hide_sprite: (!LOAD_TEMP(13));
  8744.                 always_draw: 1;
  8745.             }
  8746.             childsprite {
  8747.                 sprite: port_spriteset_0_0_snow(0);
  8748.                 recolour_mode: RECOLOUR_REMAP;
  8749.                 palette: PALETTE_USE_DEFAULT;
  8750.                 hide_sprite: (!LOAD_TEMP(13));
  8751.                 always_draw: 1;
  8752.             }
  8753.                 // construction states - optional (no snow awareness)
  8754.                 building {
  8755.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  8756.                     recolour_mode: RECOLOUR_REMAP;
  8757.                     palette: PALETTE_USE_DEFAULT;
  8758.                     xoffset: 0;
  8759.                     yoffset: 0;
  8760.                     zoffset: 0;
  8761.                     xextent: 16;
  8762.                     yextent: 16;
  8763.                     zextent: 32;
  8764.                     always_draw: 1;
  8765.                     hide_sprite: (construction_state != 0);
  8766.                 }
  8767.                 building {
  8768.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  8769.                     recolour_mode: RECOLOUR_REMAP;
  8770.                     palette: PALETTE_USE_DEFAULT;
  8771.                     xoffset: 0;
  8772.                     yoffset: 0;
  8773.                     zoffset: 0;
  8774.                     xextent: 16;
  8775.                     yextent: 16;
  8776.                     zextent: 32;
  8777.                     always_draw: 1;
  8778.                     hide_sprite: (construction_state != 1);
  8779.                 }
  8780.                 building {
  8781.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  8782.                     recolour_mode: RECOLOUR_REMAP;
  8783.                     palette: PALETTE_USE_DEFAULT;
  8784.                     xoffset: 0;
  8785.                     yoffset: 0;
  8786.                     zoffset: 0;
  8787.                     xextent: 16;
  8788.                     yextent: 16;
  8789.                     zextent: 32;
  8790.                     always_draw: 1;
  8791.                     hide_sprite: (construction_state != 2);
  8792.                 }
  8793.                 // construction states - optional (no snow awareness)
  8794.                 building {
  8795.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  8796.                     recolour_mode: RECOLOUR_REMAP;
  8797.                     palette: PALETTE_USE_DEFAULT;
  8798.                     xoffset: 0;
  8799.                     yoffset: 0;
  8800.                     zoffset: 0;
  8801.                     xextent: 16;
  8802.                     yextent: 16;
  8803.                     zextent: 32;
  8804.                     always_draw: 1;
  8805.                     hide_sprite: (construction_state != 0);
  8806.                 }
  8807.                 building {
  8808.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  8809.                     recolour_mode: RECOLOUR_REMAP;
  8810.                     palette: PALETTE_USE_DEFAULT;
  8811.                     xoffset: 0;
  8812.                     yoffset: 0;
  8813.                     zoffset: 0;
  8814.                     xextent: 16;
  8815.                     yextent: 16;
  8816.                     zextent: 32;
  8817.                     always_draw: 1;
  8818.                     hide_sprite: (construction_state != 1);
  8819.                 }
  8820.                 building {
  8821.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  8822.                     recolour_mode: RECOLOUR_REMAP;
  8823.                     palette: PALETTE_USE_DEFAULT;
  8824.                     xoffset: 0;
  8825.                     yoffset: 0;
  8826.                     zoffset: 0;
  8827.                     xextent: 16;
  8828.                     yextent: 16;
  8829.                     zextent: 32;
  8830.                     always_draw: 1;
  8831.                     hide_sprite: (construction_state != 2);
  8832.                 }
  8833.                 // construction states - optional (no snow awareness)
  8834.                 building {
  8835.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  8836.                     recolour_mode: RECOLOUR_REMAP;
  8837.                     palette: PALETTE_USE_DEFAULT;
  8838.                     xoffset: 0;
  8839.                     yoffset: 0;
  8840.                     zoffset: 0;
  8841.                     xextent: 16;
  8842.                     yextent: 16;
  8843.                     zextent: 32;
  8844.                     always_draw: 1;
  8845.                     hide_sprite: (construction_state != 0);
  8846.                 }
  8847.                 building {
  8848.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  8849.                     recolour_mode: RECOLOUR_REMAP;
  8850.                     palette: PALETTE_USE_DEFAULT;
  8851.                     xoffset: 0;
  8852.                     yoffset: 0;
  8853.                     zoffset: 0;
  8854.                     xextent: 16;
  8855.                     yextent: 16;
  8856.                     zextent: 32;
  8857.                     always_draw: 1;
  8858.                     hide_sprite: (construction_state != 1);
  8859.                 }
  8860.                 building {
  8861.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  8862.                     recolour_mode: RECOLOUR_REMAP;
  8863.                     palette: PALETTE_USE_DEFAULT;
  8864.                     xoffset: 0;
  8865.                     yoffset: 0;
  8866.                     zoffset: 0;
  8867.                     xextent: 16;
  8868.                     yextent: 16;
  8869.                     zextent: 32;
  8870.                     always_draw: 1;
  8871.                     hide_sprite: (construction_state != 2);
  8872.                 }
  8873.                 // construction states - optional (no snow awareness)
  8874.                 building {
  8875.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  8876.                     recolour_mode: RECOLOUR_REMAP;
  8877.                     palette: PALETTE_USE_DEFAULT;
  8878.                     xoffset: 0;
  8879.                     yoffset: 0;
  8880.                     zoffset: 18;
  8881.                     xextent: 16;
  8882.                     yextent: 16;
  8883.                     zextent: 32;
  8884.                     always_draw: 0;
  8885.                     hide_sprite: (construction_state != 0);
  8886.                 }
  8887.                 building {
  8888.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  8889.                     recolour_mode: RECOLOUR_REMAP;
  8890.                     palette: PALETTE_USE_DEFAULT;
  8891.                     xoffset: 0;
  8892.                     yoffset: 0;
  8893.                     zoffset: 18;
  8894.                     xextent: 16;
  8895.                     yextent: 16;
  8896.                     zextent: 32;
  8897.                     always_draw: 0;
  8898.                     hide_sprite: (construction_state != 1);
  8899.                 }
  8900.                 building {
  8901.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  8902.                     recolour_mode: RECOLOUR_REMAP;
  8903.                     palette: PALETTE_USE_DEFAULT;
  8904.                     xoffset: 0;
  8905.                     yoffset: 0;
  8906.                     zoffset: 18;
  8907.                     xextent: 16;
  8908.                     yextent: 16;
  8909.                     zextent: 32;
  8910.                     always_draw: 0;
  8911.                     hide_sprite: (construction_state != 2);
  8912.                 }
  8913.                     // buildings (snow aware)
  8914.                     building {
  8915.                         sprite: port_spriteset_2_0(0);
  8916.                         recolour_mode: RECOLOUR_REMAP;
  8917.                         palette: PALETTE_USE_DEFAULT;
  8918.                         xoffset: 0;
  8919.                         yoffset: 0;
  8920.                         zoffset: 0;
  8921.                         xextent: 16;
  8922.                         yextent: 16;
  8923.                         zextent: 32;
  8924.                         always_draw: 1;
  8925.                         hide_sprite: (LOAD_TEMP(255));
  8926.                     }
  8927.                     building {
  8928.                         sprite: port_spriteset_2_0_snow(0);
  8929.                         recolour_mode: RECOLOUR_REMAP;
  8930.                         palette: PALETTE_USE_DEFAULT;
  8931.                         xoffset: 0;
  8932.                         yoffset: 0;
  8933.                         zoffset: 0;
  8934.                         xextent: 16;
  8935.                         yextent: 16;
  8936.                         zextent: 32;
  8937.                         always_draw: 1;
  8938.                         hide_sprite: (LOAD_TEMP(245));
  8939.                     }
  8940.                     // buildings (snow aware)
  8941.                     building {
  8942.                         sprite: port_spriteset_3_0(0);
  8943.                         recolour_mode: RECOLOUR_REMAP;
  8944.                         palette: PALETTE_USE_DEFAULT;
  8945.                         xoffset: 0;
  8946.                         yoffset: 0;
  8947.                         zoffset: 0;
  8948.                         xextent: 16;
  8949.                         yextent: 16;
  8950.                         zextent: 32;
  8951.                         always_draw: 1;
  8952.                         hide_sprite: (LOAD_TEMP(255));
  8953.                     }
  8954.                     building {
  8955.                         sprite: port_spriteset_3_0_snow(0);
  8956.                         recolour_mode: RECOLOUR_REMAP;
  8957.                         palette: PALETTE_USE_DEFAULT;
  8958.                         xoffset: 0;
  8959.                         yoffset: 0;
  8960.                         zoffset: 0;
  8961.                         xextent: 16;
  8962.                         yextent: 16;
  8963.                         zextent: 32;
  8964.                         always_draw: 1;
  8965.                         hide_sprite: (LOAD_TEMP(245));
  8966.                     }
  8967.                     // buildings (snow aware)
  8968.                     building {
  8969.                         sprite: port_spriteset_1_0(0);
  8970.                         recolour_mode: RECOLOUR_REMAP;
  8971.                         palette: PALETTE_USE_DEFAULT;
  8972.                         xoffset: 0;
  8973.                         yoffset: 0;
  8974.                         zoffset: 0;
  8975.                         xextent: 16;
  8976.                         yextent: 16;
  8977.                         zextent: 32;
  8978.                         always_draw: 1;
  8979.                         hide_sprite: (LOAD_TEMP(255));
  8980.                     }
  8981.                     building {
  8982.                         sprite: port_spriteset_1_0_snow(0);
  8983.                         recolour_mode: RECOLOUR_REMAP;
  8984.                         palette: PALETTE_USE_DEFAULT;
  8985.                         xoffset: 0;
  8986.                         yoffset: 0;
  8987.                         zoffset: 0;
  8988.                         xextent: 16;
  8989.                         yextent: 16;
  8990.                         zextent: 32;
  8991.                         always_draw: 1;
  8992.                         hide_sprite: (LOAD_TEMP(245));
  8993.                     }
  8994.                     // buildings (snow aware)
  8995.                     building {
  8996.                         sprite: port_spriteset_8_0(0);
  8997.                         recolour_mode: RECOLOUR_REMAP;
  8998.                         palette: PALETTE_USE_DEFAULT;
  8999.                         xoffset: 0;
  9000.                         yoffset: 0;
  9001.                         zoffset: 18;
  9002.                         xextent: 16;
  9003.                         yextent: 16;
  9004.                         zextent: 32;
  9005.                         always_draw: 0;
  9006.                         hide_sprite: (LOAD_TEMP(255));
  9007.                     }
  9008.                     building {
  9009.                         sprite: port_spriteset_8_0_snow(0);
  9010.                         recolour_mode: RECOLOUR_REMAP;
  9011.                         palette: PALETTE_USE_DEFAULT;
  9012.                         xoffset: 0;
  9013.                         yoffset: 0;
  9014.                         zoffset: 18;
  9015.                         xextent: 16;
  9016.                         yextent: 16;
  9017.                         zextent: 32;
  9018.                         always_draw: 0;
  9019.                         hide_sprite: (LOAD_TEMP(245));
  9020.                     }
  9021.         }
  9022.         spritelayout port_spritelayout_coast_warehouse2 {
  9023.             // Industry-specific ground (snow aware)
  9024.             // non-snow
  9025.             childsprite {
  9026.                 sprite: port_spriteset_0_0(0);
  9027.                 recolour_mode: RECOLOUR_REMAP;
  9028.                 palette: PALETTE_USE_DEFAULT;
  9029.                 hide_sprite: (LOAD_TEMP(13));
  9030.                 always_draw: 1;
  9031.             }
  9032.             childsprite {
  9033.                 sprite: port_spriteset_0_0(0);
  9034.                 recolour_mode: RECOLOUR_REMAP;
  9035.                 palette: PALETTE_USE_DEFAULT;
  9036.                 hide_sprite: (LOAD_TEMP(13));
  9037.                 always_draw: 1;
  9038.             }
  9039.             // snow
  9040.             childsprite {
  9041.                 sprite: port_spriteset_0_0_snow(0);
  9042.                 recolour_mode: RECOLOUR_REMAP;
  9043.                 palette: PALETTE_USE_DEFAULT;
  9044.                 hide_sprite: (!LOAD_TEMP(13));
  9045.                 always_draw: 1;
  9046.             }
  9047.             childsprite {
  9048.                 sprite: port_spriteset_0_0_snow(0);
  9049.                 recolour_mode: RECOLOUR_REMAP;
  9050.                 palette: PALETTE_USE_DEFAULT;
  9051.                 hide_sprite: (!LOAD_TEMP(13));
  9052.                 always_draw: 1;
  9053.             }
  9054.                 // construction states - optional (no snow awareness)
  9055.                 building {
  9056.                     sprite: port_spriteset_7_spriteset_default_construction_state_0(0);
  9057.                     recolour_mode: RECOLOUR_REMAP;
  9058.                     palette: PALETTE_USE_DEFAULT;
  9059.                     xoffset: 0;
  9060.                     yoffset: 0;
  9061.                     zoffset: 0;
  9062.                     xextent: 16;
  9063.                     yextent: 16;
  9064.                     zextent: 32;
  9065.                     always_draw: 0;
  9066.                     hide_sprite: (construction_state != 0);
  9067.                 }
  9068.                 building {
  9069.                     sprite: port_spriteset_7_spriteset_default_construction_state_1(0);
  9070.                     recolour_mode: RECOLOUR_REMAP;
  9071.                     palette: PALETTE_USE_DEFAULT;
  9072.                     xoffset: 0;
  9073.                     yoffset: 0;
  9074.                     zoffset: 0;
  9075.                     xextent: 16;
  9076.                     yextent: 16;
  9077.                     zextent: 32;
  9078.                     always_draw: 0;
  9079.                     hide_sprite: (construction_state != 1);
  9080.                 }
  9081.                 building {
  9082.                     sprite: port_spriteset_7_spriteset_default_construction_state_2(0);
  9083.                     recolour_mode: RECOLOUR_REMAP;
  9084.                     palette: PALETTE_USE_DEFAULT;
  9085.                     xoffset: 0;
  9086.                     yoffset: 0;
  9087.                     zoffset: 0;
  9088.                     xextent: 16;
  9089.                     yextent: 16;
  9090.                     zextent: 32;
  9091.                     always_draw: 0;
  9092.                     hide_sprite: (construction_state != 2);
  9093.                 }
  9094.                 // construction states - optional (no snow awareness)
  9095.                 building {
  9096.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  9097.                     recolour_mode: RECOLOUR_REMAP;
  9098.                     palette: PALETTE_USE_DEFAULT;
  9099.                     xoffset: 0;
  9100.                     yoffset: 0;
  9101.                     zoffset: 0;
  9102.                     xextent: 16;
  9103.                     yextent: 16;
  9104.                     zextent: 32;
  9105.                     always_draw: 1;
  9106.                     hide_sprite: (construction_state != 0);
  9107.                 }
  9108.                 building {
  9109.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  9110.                     recolour_mode: RECOLOUR_REMAP;
  9111.                     palette: PALETTE_USE_DEFAULT;
  9112.                     xoffset: 0;
  9113.                     yoffset: 0;
  9114.                     zoffset: 0;
  9115.                     xextent: 16;
  9116.                     yextent: 16;
  9117.                     zextent: 32;
  9118.                     always_draw: 1;
  9119.                     hide_sprite: (construction_state != 1);
  9120.                 }
  9121.                 building {
  9122.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  9123.                     recolour_mode: RECOLOUR_REMAP;
  9124.                     palette: PALETTE_USE_DEFAULT;
  9125.                     xoffset: 0;
  9126.                     yoffset: 0;
  9127.                     zoffset: 0;
  9128.                     xextent: 16;
  9129.                     yextent: 16;
  9130.                     zextent: 32;
  9131.                     always_draw: 1;
  9132.                     hide_sprite: (construction_state != 2);
  9133.                 }
  9134.                 // construction states - optional (no snow awareness)
  9135.                 building {
  9136.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  9137.                     recolour_mode: RECOLOUR_REMAP;
  9138.                     palette: PALETTE_USE_DEFAULT;
  9139.                     xoffset: 0;
  9140.                     yoffset: 0;
  9141.                     zoffset: 18;
  9142.                     xextent: 16;
  9143.                     yextent: 16;
  9144.                     zextent: 32;
  9145.                     always_draw: 0;
  9146.                     hide_sprite: (construction_state != 0);
  9147.                 }
  9148.                 building {
  9149.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  9150.                     recolour_mode: RECOLOUR_REMAP;
  9151.                     palette: PALETTE_USE_DEFAULT;
  9152.                     xoffset: 0;
  9153.                     yoffset: 0;
  9154.                     zoffset: 18;
  9155.                     xextent: 16;
  9156.                     yextent: 16;
  9157.                     zextent: 32;
  9158.                     always_draw: 0;
  9159.                     hide_sprite: (construction_state != 1);
  9160.                 }
  9161.                 building {
  9162.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  9163.                     recolour_mode: RECOLOUR_REMAP;
  9164.                     palette: PALETTE_USE_DEFAULT;
  9165.                     xoffset: 0;
  9166.                     yoffset: 0;
  9167.                     zoffset: 18;
  9168.                     xextent: 16;
  9169.                     yextent: 16;
  9170.                     zextent: 32;
  9171.                     always_draw: 0;
  9172.                     hide_sprite: (construction_state != 2);
  9173.                 }
  9174.                     // buildings (snow aware)
  9175.                     building {
  9176.                         sprite: port_spriteset_7_0(0);
  9177.                         recolour_mode: RECOLOUR_REMAP;
  9178.                         palette: PALETTE_USE_DEFAULT;
  9179.                         xoffset: 0;
  9180.                         yoffset: 0;
  9181.                         zoffset: 0;
  9182.                         xextent: 16;
  9183.                         yextent: 16;
  9184.                         zextent: 32;
  9185.                         always_draw: 0;
  9186.                         hide_sprite: (LOAD_TEMP(255));
  9187.                     }
  9188.                     building {
  9189.                         sprite: port_spriteset_7_0_snow(0);
  9190.                         recolour_mode: RECOLOUR_REMAP;
  9191.                         palette: PALETTE_USE_DEFAULT;
  9192.                         xoffset: 0;
  9193.                         yoffset: 0;
  9194.                         zoffset: 0;
  9195.                         xextent: 16;
  9196.                         yextent: 16;
  9197.                         zextent: 32;
  9198.                         always_draw: 0;
  9199.                         hide_sprite: (LOAD_TEMP(245));
  9200.                     }
  9201.                     // buildings (snow aware)
  9202.                     building {
  9203.                         sprite: port_spriteset_1_0(0);
  9204.                         recolour_mode: RECOLOUR_REMAP;
  9205.                         palette: PALETTE_USE_DEFAULT;
  9206.                         xoffset: 0;
  9207.                         yoffset: 0;
  9208.                         zoffset: 0;
  9209.                         xextent: 16;
  9210.                         yextent: 16;
  9211.                         zextent: 32;
  9212.                         always_draw: 1;
  9213.                         hide_sprite: (LOAD_TEMP(255));
  9214.                     }
  9215.                     building {
  9216.                         sprite: port_spriteset_1_0_snow(0);
  9217.                         recolour_mode: RECOLOUR_REMAP;
  9218.                         palette: PALETTE_USE_DEFAULT;
  9219.                         xoffset: 0;
  9220.                         yoffset: 0;
  9221.                         zoffset: 0;
  9222.                         xextent: 16;
  9223.                         yextent: 16;
  9224.                         zextent: 32;
  9225.                         always_draw: 1;
  9226.                         hide_sprite: (LOAD_TEMP(245));
  9227.                     }
  9228.                     // buildings (snow aware)
  9229.                     building {
  9230.                         sprite: port_spriteset_8_0(0);
  9231.                         recolour_mode: RECOLOUR_REMAP;
  9232.                         palette: PALETTE_USE_DEFAULT;
  9233.                         xoffset: 0;
  9234.                         yoffset: 0;
  9235.                         zoffset: 18;
  9236.                         xextent: 16;
  9237.                         yextent: 16;
  9238.                         zextent: 32;
  9239.                         always_draw: 0;
  9240.                         hide_sprite: (LOAD_TEMP(255));
  9241.                     }
  9242.                     building {
  9243.                         sprite: port_spriteset_8_0_snow(0);
  9244.                         recolour_mode: RECOLOUR_REMAP;
  9245.                         palette: PALETTE_USE_DEFAULT;
  9246.                         xoffset: 0;
  9247.                         yoffset: 0;
  9248.                         zoffset: 18;
  9249.                         xextent: 16;
  9250.                         yextent: 16;
  9251.                         zextent: 32;
  9252.                         always_draw: 0;
  9253.                         hide_sprite: (LOAD_TEMP(245));
  9254.                     }
  9255.         }
  9256.         spritelayout port_spritelayout_coast_warehouse8 {
  9257.             // Industry-specific ground (snow aware)
  9258.             // non-snow
  9259.             childsprite {
  9260.                 sprite: port_spriteset_0_0(0);
  9261.                 recolour_mode: RECOLOUR_REMAP;
  9262.                 palette: PALETTE_USE_DEFAULT;
  9263.                 hide_sprite: (LOAD_TEMP(13));
  9264.                 always_draw: 1;
  9265.             }
  9266.             childsprite {
  9267.                 sprite: port_spriteset_0_0(0);
  9268.                 recolour_mode: RECOLOUR_REMAP;
  9269.                 palette: PALETTE_USE_DEFAULT;
  9270.                 hide_sprite: (LOAD_TEMP(13));
  9271.                 always_draw: 1;
  9272.             }
  9273.             // snow
  9274.             childsprite {
  9275.                 sprite: port_spriteset_0_0_snow(0);
  9276.                 recolour_mode: RECOLOUR_REMAP;
  9277.                 palette: PALETTE_USE_DEFAULT;
  9278.                 hide_sprite: (!LOAD_TEMP(13));
  9279.                 always_draw: 1;
  9280.             }
  9281.             childsprite {
  9282.                 sprite: port_spriteset_0_0_snow(0);
  9283.                 recolour_mode: RECOLOUR_REMAP;
  9284.                 palette: PALETTE_USE_DEFAULT;
  9285.                 hide_sprite: (!LOAD_TEMP(13));
  9286.                 always_draw: 1;
  9287.             }
  9288.                 // construction states - optional (no snow awareness)
  9289.                 building {
  9290.                     sprite: port_spriteset_6_spriteset_default_construction_state_0(0);
  9291.                     recolour_mode: RECOLOUR_REMAP;
  9292.                     palette: PALETTE_USE_DEFAULT;
  9293.                     xoffset: 0;
  9294.                     yoffset: 0;
  9295.                     zoffset: 0;
  9296.                     xextent: 16;
  9297.                     yextent: 16;
  9298.                     zextent: 32;
  9299.                     always_draw: 0;
  9300.                     hide_sprite: (construction_state != 0);
  9301.                 }
  9302.                 building {
  9303.                     sprite: port_spriteset_6_spriteset_default_construction_state_1(0);
  9304.                     recolour_mode: RECOLOUR_REMAP;
  9305.                     palette: PALETTE_USE_DEFAULT;
  9306.                     xoffset: 0;
  9307.                     yoffset: 0;
  9308.                     zoffset: 0;
  9309.                     xextent: 16;
  9310.                     yextent: 16;
  9311.                     zextent: 32;
  9312.                     always_draw: 0;
  9313.                     hide_sprite: (construction_state != 1);
  9314.                 }
  9315.                 building {
  9316.                     sprite: port_spriteset_6_spriteset_default_construction_state_2(0);
  9317.                     recolour_mode: RECOLOUR_REMAP;
  9318.                     palette: PALETTE_USE_DEFAULT;
  9319.                     xoffset: 0;
  9320.                     yoffset: 0;
  9321.                     zoffset: 0;
  9322.                     xextent: 16;
  9323.                     yextent: 16;
  9324.                     zextent: 32;
  9325.                     always_draw: 0;
  9326.                     hide_sprite: (construction_state != 2);
  9327.                 }
  9328.                 // construction states - optional (no snow awareness)
  9329.                 building {
  9330.                     sprite: port_spriteset_7_spriteset_default_construction_state_0(0);
  9331.                     recolour_mode: RECOLOUR_REMAP;
  9332.                     palette: PALETTE_USE_DEFAULT;
  9333.                     xoffset: 0;
  9334.                     yoffset: 0;
  9335.                     zoffset: 0;
  9336.                     xextent: 16;
  9337.                     yextent: 16;
  9338.                     zextent: 32;
  9339.                     always_draw: 0;
  9340.                     hide_sprite: (construction_state != 0);
  9341.                 }
  9342.                 building {
  9343.                     sprite: port_spriteset_7_spriteset_default_construction_state_1(0);
  9344.                     recolour_mode: RECOLOUR_REMAP;
  9345.                     palette: PALETTE_USE_DEFAULT;
  9346.                     xoffset: 0;
  9347.                     yoffset: 0;
  9348.                     zoffset: 0;
  9349.                     xextent: 16;
  9350.                     yextent: 16;
  9351.                     zextent: 32;
  9352.                     always_draw: 0;
  9353.                     hide_sprite: (construction_state != 1);
  9354.                 }
  9355.                 building {
  9356.                     sprite: port_spriteset_7_spriteset_default_construction_state_2(0);
  9357.                     recolour_mode: RECOLOUR_REMAP;
  9358.                     palette: PALETTE_USE_DEFAULT;
  9359.                     xoffset: 0;
  9360.                     yoffset: 0;
  9361.                     zoffset: 0;
  9362.                     xextent: 16;
  9363.                     yextent: 16;
  9364.                     zextent: 32;
  9365.                     always_draw: 0;
  9366.                     hide_sprite: (construction_state != 2);
  9367.                 }
  9368.                 // construction states - optional (no snow awareness)
  9369.                 building {
  9370.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  9371.                     recolour_mode: RECOLOUR_REMAP;
  9372.                     palette: PALETTE_USE_DEFAULT;
  9373.                     xoffset: 0;
  9374.                     yoffset: 0;
  9375.                     zoffset: 0;
  9376.                     xextent: 16;
  9377.                     yextent: 16;
  9378.                     zextent: 32;
  9379.                     always_draw: 1;
  9380.                     hide_sprite: (construction_state != 0);
  9381.                 }
  9382.                 building {
  9383.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  9384.                     recolour_mode: RECOLOUR_REMAP;
  9385.                     palette: PALETTE_USE_DEFAULT;
  9386.                     xoffset: 0;
  9387.                     yoffset: 0;
  9388.                     zoffset: 0;
  9389.                     xextent: 16;
  9390.                     yextent: 16;
  9391.                     zextent: 32;
  9392.                     always_draw: 1;
  9393.                     hide_sprite: (construction_state != 1);
  9394.                 }
  9395.                 building {
  9396.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  9397.                     recolour_mode: RECOLOUR_REMAP;
  9398.                     palette: PALETTE_USE_DEFAULT;
  9399.                     xoffset: 0;
  9400.                     yoffset: 0;
  9401.                     zoffset: 0;
  9402.                     xextent: 16;
  9403.                     yextent: 16;
  9404.                     zextent: 32;
  9405.                     always_draw: 1;
  9406.                     hide_sprite: (construction_state != 2);
  9407.                 }
  9408.                 // construction states - optional (no snow awareness)
  9409.                 building {
  9410.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  9411.                     recolour_mode: RECOLOUR_REMAP;
  9412.                     palette: PALETTE_USE_DEFAULT;
  9413.                     xoffset: 0;
  9414.                     yoffset: 0;
  9415.                     zoffset: 18;
  9416.                     xextent: 16;
  9417.                     yextent: 16;
  9418.                     zextent: 32;
  9419.                     always_draw: 0;
  9420.                     hide_sprite: (construction_state != 0);
  9421.                 }
  9422.                 building {
  9423.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  9424.                     recolour_mode: RECOLOUR_REMAP;
  9425.                     palette: PALETTE_USE_DEFAULT;
  9426.                     xoffset: 0;
  9427.                     yoffset: 0;
  9428.                     zoffset: 18;
  9429.                     xextent: 16;
  9430.                     yextent: 16;
  9431.                     zextent: 32;
  9432.                     always_draw: 0;
  9433.                     hide_sprite: (construction_state != 1);
  9434.                 }
  9435.                 building {
  9436.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  9437.                     recolour_mode: RECOLOUR_REMAP;
  9438.                     palette: PALETTE_USE_DEFAULT;
  9439.                     xoffset: 0;
  9440.                     yoffset: 0;
  9441.                     zoffset: 18;
  9442.                     xextent: 16;
  9443.                     yextent: 16;
  9444.                     zextent: 32;
  9445.                     always_draw: 0;
  9446.                     hide_sprite: (construction_state != 2);
  9447.                 }
  9448.                     // buildings (snow aware)
  9449.                     building {
  9450.                         sprite: port_spriteset_6_0(0);
  9451.                         recolour_mode: RECOLOUR_REMAP;
  9452.                         palette: PALETTE_USE_DEFAULT;
  9453.                         xoffset: 0;
  9454.                         yoffset: 0;
  9455.                         zoffset: 0;
  9456.                         xextent: 16;
  9457.                         yextent: 16;
  9458.                         zextent: 32;
  9459.                         always_draw: 0;
  9460.                         hide_sprite: (LOAD_TEMP(255));
  9461.                     }
  9462.                     building {
  9463.                         sprite: port_spriteset_6_0_snow(0);
  9464.                         recolour_mode: RECOLOUR_REMAP;
  9465.                         palette: PALETTE_USE_DEFAULT;
  9466.                         xoffset: 0;
  9467.                         yoffset: 0;
  9468.                         zoffset: 0;
  9469.                         xextent: 16;
  9470.                         yextent: 16;
  9471.                         zextent: 32;
  9472.                         always_draw: 0;
  9473.                         hide_sprite: (LOAD_TEMP(245));
  9474.                     }
  9475.                     // buildings (snow aware)
  9476.                     building {
  9477.                         sprite: port_spriteset_7_0(0);
  9478.                         recolour_mode: RECOLOUR_REMAP;
  9479.                         palette: PALETTE_USE_DEFAULT;
  9480.                         xoffset: 0;
  9481.                         yoffset: 0;
  9482.                         zoffset: 0;
  9483.                         xextent: 16;
  9484.                         yextent: 16;
  9485.                         zextent: 32;
  9486.                         always_draw: 0;
  9487.                         hide_sprite: (LOAD_TEMP(255));
  9488.                     }
  9489.                     building {
  9490.                         sprite: port_spriteset_7_0_snow(0);
  9491.                         recolour_mode: RECOLOUR_REMAP;
  9492.                         palette: PALETTE_USE_DEFAULT;
  9493.                         xoffset: 0;
  9494.                         yoffset: 0;
  9495.                         zoffset: 0;
  9496.                         xextent: 16;
  9497.                         yextent: 16;
  9498.                         zextent: 32;
  9499.                         always_draw: 0;
  9500.                         hide_sprite: (LOAD_TEMP(245));
  9501.                     }
  9502.                     // buildings (snow aware)
  9503.                     building {
  9504.                         sprite: port_spriteset_1_0(0);
  9505.                         recolour_mode: RECOLOUR_REMAP;
  9506.                         palette: PALETTE_USE_DEFAULT;
  9507.                         xoffset: 0;
  9508.                         yoffset: 0;
  9509.                         zoffset: 0;
  9510.                         xextent: 16;
  9511.                         yextent: 16;
  9512.                         zextent: 32;
  9513.                         always_draw: 1;
  9514.                         hide_sprite: (LOAD_TEMP(255));
  9515.                     }
  9516.                     building {
  9517.                         sprite: port_spriteset_1_0_snow(0);
  9518.                         recolour_mode: RECOLOUR_REMAP;
  9519.                         palette: PALETTE_USE_DEFAULT;
  9520.                         xoffset: 0;
  9521.                         yoffset: 0;
  9522.                         zoffset: 0;
  9523.                         xextent: 16;
  9524.                         yextent: 16;
  9525.                         zextent: 32;
  9526.                         always_draw: 1;
  9527.                         hide_sprite: (LOAD_TEMP(245));
  9528.                     }
  9529.                     // buildings (snow aware)
  9530.                     building {
  9531.                         sprite: port_spriteset_8_0(0);
  9532.                         recolour_mode: RECOLOUR_REMAP;
  9533.                         palette: PALETTE_USE_DEFAULT;
  9534.                         xoffset: 0;
  9535.                         yoffset: 0;
  9536.                         zoffset: 18;
  9537.                         xextent: 16;
  9538.                         yextent: 16;
  9539.                         zextent: 32;
  9540.                         always_draw: 0;
  9541.                         hide_sprite: (LOAD_TEMP(255));
  9542.                     }
  9543.                     building {
  9544.                         sprite: port_spriteset_8_0_snow(0);
  9545.                         recolour_mode: RECOLOUR_REMAP;
  9546.                         palette: PALETTE_USE_DEFAULT;
  9547.                         xoffset: 0;
  9548.                         yoffset: 0;
  9549.                         zoffset: 18;
  9550.                         xextent: 16;
  9551.                         yextent: 16;
  9552.                         zextent: 32;
  9553.                         always_draw: 0;
  9554.                         hide_sprite: (LOAD_TEMP(245));
  9555.                     }
  9556.         }
  9557.         spritelayout port_spritelayout_coast_warehouse7 {
  9558.             // Industry-specific ground (snow aware)
  9559.             // non-snow
  9560.             childsprite {
  9561.                 sprite: port_spriteset_0_0(0);
  9562.                 recolour_mode: RECOLOUR_REMAP;
  9563.                 palette: PALETTE_USE_DEFAULT;
  9564.                 hide_sprite: (LOAD_TEMP(13));
  9565.                 always_draw: 1;
  9566.             }
  9567.             childsprite {
  9568.                 sprite: port_spriteset_0_0(0);
  9569.                 recolour_mode: RECOLOUR_REMAP;
  9570.                 palette: PALETTE_USE_DEFAULT;
  9571.                 hide_sprite: (LOAD_TEMP(13));
  9572.                 always_draw: 1;
  9573.             }
  9574.             // snow
  9575.             childsprite {
  9576.                 sprite: port_spriteset_0_0_snow(0);
  9577.                 recolour_mode: RECOLOUR_REMAP;
  9578.                 palette: PALETTE_USE_DEFAULT;
  9579.                 hide_sprite: (!LOAD_TEMP(13));
  9580.                 always_draw: 1;
  9581.             }
  9582.             childsprite {
  9583.                 sprite: port_spriteset_0_0_snow(0);
  9584.                 recolour_mode: RECOLOUR_REMAP;
  9585.                 palette: PALETTE_USE_DEFAULT;
  9586.                 hide_sprite: (!LOAD_TEMP(13));
  9587.                 always_draw: 1;
  9588.             }
  9589.                 // construction states - optional (no snow awareness)
  9590.                 building {
  9591.                     sprite: port_spriteset_6_spriteset_default_construction_state_0(0);
  9592.                     recolour_mode: RECOLOUR_REMAP;
  9593.                     palette: PALETTE_USE_DEFAULT;
  9594.                     xoffset: 0;
  9595.                     yoffset: 0;
  9596.                     zoffset: 0;
  9597.                     xextent: 16;
  9598.                     yextent: 16;
  9599.                     zextent: 32;
  9600.                     always_draw: 0;
  9601.                     hide_sprite: (construction_state != 0);
  9602.                 }
  9603.                 building {
  9604.                     sprite: port_spriteset_6_spriteset_default_construction_state_1(0);
  9605.                     recolour_mode: RECOLOUR_REMAP;
  9606.                     palette: PALETTE_USE_DEFAULT;
  9607.                     xoffset: 0;
  9608.                     yoffset: 0;
  9609.                     zoffset: 0;
  9610.                     xextent: 16;
  9611.                     yextent: 16;
  9612.                     zextent: 32;
  9613.                     always_draw: 0;
  9614.                     hide_sprite: (construction_state != 1);
  9615.                 }
  9616.                 building {
  9617.                     sprite: port_spriteset_6_spriteset_default_construction_state_2(0);
  9618.                     recolour_mode: RECOLOUR_REMAP;
  9619.                     palette: PALETTE_USE_DEFAULT;
  9620.                     xoffset: 0;
  9621.                     yoffset: 0;
  9622.                     zoffset: 0;
  9623.                     xextent: 16;
  9624.                     yextent: 16;
  9625.                     zextent: 32;
  9626.                     always_draw: 0;
  9627.                     hide_sprite: (construction_state != 2);
  9628.                 }
  9629.                 // construction states - optional (no snow awareness)
  9630.                 building {
  9631.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  9632.                     recolour_mode: RECOLOUR_REMAP;
  9633.                     palette: PALETTE_USE_DEFAULT;
  9634.                     xoffset: 0;
  9635.                     yoffset: 0;
  9636.                     zoffset: 0;
  9637.                     xextent: 16;
  9638.                     yextent: 16;
  9639.                     zextent: 32;
  9640.                     always_draw: 1;
  9641.                     hide_sprite: (construction_state != 0);
  9642.                 }
  9643.                 building {
  9644.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  9645.                     recolour_mode: RECOLOUR_REMAP;
  9646.                     palette: PALETTE_USE_DEFAULT;
  9647.                     xoffset: 0;
  9648.                     yoffset: 0;
  9649.                     zoffset: 0;
  9650.                     xextent: 16;
  9651.                     yextent: 16;
  9652.                     zextent: 32;
  9653.                     always_draw: 1;
  9654.                     hide_sprite: (construction_state != 1);
  9655.                 }
  9656.                 building {
  9657.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  9658.                     recolour_mode: RECOLOUR_REMAP;
  9659.                     palette: PALETTE_USE_DEFAULT;
  9660.                     xoffset: 0;
  9661.                     yoffset: 0;
  9662.                     zoffset: 0;
  9663.                     xextent: 16;
  9664.                     yextent: 16;
  9665.                     zextent: 32;
  9666.                     always_draw: 1;
  9667.                     hide_sprite: (construction_state != 2);
  9668.                 }
  9669.                 // construction states - optional (no snow awareness)
  9670.                 building {
  9671.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  9672.                     recolour_mode: RECOLOUR_REMAP;
  9673.                     palette: PALETTE_USE_DEFAULT;
  9674.                     xoffset: 0;
  9675.                     yoffset: 0;
  9676.                     zoffset: 18;
  9677.                     xextent: 16;
  9678.                     yextent: 16;
  9679.                     zextent: 32;
  9680.                     always_draw: 0;
  9681.                     hide_sprite: (construction_state != 0);
  9682.                 }
  9683.                 building {
  9684.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  9685.                     recolour_mode: RECOLOUR_REMAP;
  9686.                     palette: PALETTE_USE_DEFAULT;
  9687.                     xoffset: 0;
  9688.                     yoffset: 0;
  9689.                     zoffset: 18;
  9690.                     xextent: 16;
  9691.                     yextent: 16;
  9692.                     zextent: 32;
  9693.                     always_draw: 0;
  9694.                     hide_sprite: (construction_state != 1);
  9695.                 }
  9696.                 building {
  9697.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  9698.                     recolour_mode: RECOLOUR_REMAP;
  9699.                     palette: PALETTE_USE_DEFAULT;
  9700.                     xoffset: 0;
  9701.                     yoffset: 0;
  9702.                     zoffset: 18;
  9703.                     xextent: 16;
  9704.                     yextent: 16;
  9705.                     zextent: 32;
  9706.                     always_draw: 0;
  9707.                     hide_sprite: (construction_state != 2);
  9708.                 }
  9709.                     // buildings (snow aware)
  9710.                     building {
  9711.                         sprite: port_spriteset_6_0(0);
  9712.                         recolour_mode: RECOLOUR_REMAP;
  9713.                         palette: PALETTE_USE_DEFAULT;
  9714.                         xoffset: 0;
  9715.                         yoffset: 0;
  9716.                         zoffset: 0;
  9717.                         xextent: 16;
  9718.                         yextent: 16;
  9719.                         zextent: 32;
  9720.                         always_draw: 0;
  9721.                         hide_sprite: (LOAD_TEMP(255));
  9722.                     }
  9723.                     building {
  9724.                         sprite: port_spriteset_6_0_snow(0);
  9725.                         recolour_mode: RECOLOUR_REMAP;
  9726.                         palette: PALETTE_USE_DEFAULT;
  9727.                         xoffset: 0;
  9728.                         yoffset: 0;
  9729.                         zoffset: 0;
  9730.                         xextent: 16;
  9731.                         yextent: 16;
  9732.                         zextent: 32;
  9733.                         always_draw: 0;
  9734.                         hide_sprite: (LOAD_TEMP(245));
  9735.                     }
  9736.                     // buildings (snow aware)
  9737.                     building {
  9738.                         sprite: port_spriteset_1_0(0);
  9739.                         recolour_mode: RECOLOUR_REMAP;
  9740.                         palette: PALETTE_USE_DEFAULT;
  9741.                         xoffset: 0;
  9742.                         yoffset: 0;
  9743.                         zoffset: 0;
  9744.                         xextent: 16;
  9745.                         yextent: 16;
  9746.                         zextent: 32;
  9747.                         always_draw: 1;
  9748.                         hide_sprite: (LOAD_TEMP(255));
  9749.                     }
  9750.                     building {
  9751.                         sprite: port_spriteset_1_0_snow(0);
  9752.                         recolour_mode: RECOLOUR_REMAP;
  9753.                         palette: PALETTE_USE_DEFAULT;
  9754.                         xoffset: 0;
  9755.                         yoffset: 0;
  9756.                         zoffset: 0;
  9757.                         xextent: 16;
  9758.                         yextent: 16;
  9759.                         zextent: 32;
  9760.                         always_draw: 1;
  9761.                         hide_sprite: (LOAD_TEMP(245));
  9762.                     }
  9763.                     // buildings (snow aware)
  9764.                     building {
  9765.                         sprite: port_spriteset_8_0(0);
  9766.                         recolour_mode: RECOLOUR_REMAP;
  9767.                         palette: PALETTE_USE_DEFAULT;
  9768.                         xoffset: 0;
  9769.                         yoffset: 0;
  9770.                         zoffset: 18;
  9771.                         xextent: 16;
  9772.                         yextent: 16;
  9773.                         zextent: 32;
  9774.                         always_draw: 0;
  9775.                         hide_sprite: (LOAD_TEMP(255));
  9776.                     }
  9777.                     building {
  9778.                         sprite: port_spriteset_8_0_snow(0);
  9779.                         recolour_mode: RECOLOUR_REMAP;
  9780.                         palette: PALETTE_USE_DEFAULT;
  9781.                         xoffset: 0;
  9782.                         yoffset: 0;
  9783.                         zoffset: 18;
  9784.                         xextent: 16;
  9785.                         yextent: 16;
  9786.                         zextent: 32;
  9787.                         always_draw: 0;
  9788.                         hide_sprite: (LOAD_TEMP(245));
  9789.                     }
  9790.         }
  9791.         spritelayout port_spritelayout_coast_warehouse6 {
  9792.             // Industry-specific ground (snow aware)
  9793.             // non-snow
  9794.             childsprite {
  9795.                 sprite: port_spriteset_0_0(0);
  9796.                 recolour_mode: RECOLOUR_REMAP;
  9797.                 palette: PALETTE_USE_DEFAULT;
  9798.                 hide_sprite: (LOAD_TEMP(13));
  9799.                 always_draw: 1;
  9800.             }
  9801.             childsprite {
  9802.                 sprite: port_spriteset_0_0(0);
  9803.                 recolour_mode: RECOLOUR_REMAP;
  9804.                 palette: PALETTE_USE_DEFAULT;
  9805.                 hide_sprite: (LOAD_TEMP(13));
  9806.                 always_draw: 1;
  9807.             }
  9808.             // snow
  9809.             childsprite {
  9810.                 sprite: port_spriteset_0_0_snow(0);
  9811.                 recolour_mode: RECOLOUR_REMAP;
  9812.                 palette: PALETTE_USE_DEFAULT;
  9813.                 hide_sprite: (!LOAD_TEMP(13));
  9814.                 always_draw: 1;
  9815.             }
  9816.             childsprite {
  9817.                 sprite: port_spriteset_0_0_snow(0);
  9818.                 recolour_mode: RECOLOUR_REMAP;
  9819.                 palette: PALETTE_USE_DEFAULT;
  9820.                 hide_sprite: (!LOAD_TEMP(13));
  9821.                 always_draw: 1;
  9822.             }
  9823.                 // construction states - optional (no snow awareness)
  9824.                 building {
  9825.                     sprite: port_spriteset_5_spriteset_default_construction_state_0(0);
  9826.                     recolour_mode: RECOLOUR_REMAP;
  9827.                     palette: PALETTE_USE_DEFAULT;
  9828.                     xoffset: 0;
  9829.                     yoffset: 0;
  9830.                     zoffset: 0;
  9831.                     xextent: 16;
  9832.                     yextent: 16;
  9833.                     zextent: 32;
  9834.                     always_draw: 0;
  9835.                     hide_sprite: (construction_state != 0);
  9836.                 }
  9837.                 building {
  9838.                     sprite: port_spriteset_5_spriteset_default_construction_state_1(0);
  9839.                     recolour_mode: RECOLOUR_REMAP;
  9840.                     palette: PALETTE_USE_DEFAULT;
  9841.                     xoffset: 0;
  9842.                     yoffset: 0;
  9843.                     zoffset: 0;
  9844.                     xextent: 16;
  9845.                     yextent: 16;
  9846.                     zextent: 32;
  9847.                     always_draw: 0;
  9848.                     hide_sprite: (construction_state != 1);
  9849.                 }
  9850.                 building {
  9851.                     sprite: port_spriteset_5_spriteset_default_construction_state_2(0);
  9852.                     recolour_mode: RECOLOUR_REMAP;
  9853.                     palette: PALETTE_USE_DEFAULT;
  9854.                     xoffset: 0;
  9855.                     yoffset: 0;
  9856.                     zoffset: 0;
  9857.                     xextent: 16;
  9858.                     yextent: 16;
  9859.                     zextent: 32;
  9860.                     always_draw: 0;
  9861.                     hide_sprite: (construction_state != 2);
  9862.                 }
  9863.                 // construction states - optional (no snow awareness)
  9864.                 building {
  9865.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  9866.                     recolour_mode: RECOLOUR_REMAP;
  9867.                     palette: PALETTE_USE_DEFAULT;
  9868.                     xoffset: 0;
  9869.                     yoffset: 0;
  9870.                     zoffset: 0;
  9871.                     xextent: 16;
  9872.                     yextent: 16;
  9873.                     zextent: 32;
  9874.                     always_draw: 1;
  9875.                     hide_sprite: (construction_state != 0);
  9876.                 }
  9877.                 building {
  9878.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  9879.                     recolour_mode: RECOLOUR_REMAP;
  9880.                     palette: PALETTE_USE_DEFAULT;
  9881.                     xoffset: 0;
  9882.                     yoffset: 0;
  9883.                     zoffset: 0;
  9884.                     xextent: 16;
  9885.                     yextent: 16;
  9886.                     zextent: 32;
  9887.                     always_draw: 1;
  9888.                     hide_sprite: (construction_state != 1);
  9889.                 }
  9890.                 building {
  9891.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  9892.                     recolour_mode: RECOLOUR_REMAP;
  9893.                     palette: PALETTE_USE_DEFAULT;
  9894.                     xoffset: 0;
  9895.                     yoffset: 0;
  9896.                     zoffset: 0;
  9897.                     xextent: 16;
  9898.                     yextent: 16;
  9899.                     zextent: 32;
  9900.                     always_draw: 1;
  9901.                     hide_sprite: (construction_state != 2);
  9902.                 }
  9903.                 // construction states - optional (no snow awareness)
  9904.                 building {
  9905.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  9906.                     recolour_mode: RECOLOUR_REMAP;
  9907.                     palette: PALETTE_USE_DEFAULT;
  9908.                     xoffset: 0;
  9909.                     yoffset: 0;
  9910.                     zoffset: 0;
  9911.                     xextent: 16;
  9912.                     yextent: 16;
  9913.                     zextent: 32;
  9914.                     always_draw: 1;
  9915.                     hide_sprite: (construction_state != 0);
  9916.                 }
  9917.                 building {
  9918.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  9919.                     recolour_mode: RECOLOUR_REMAP;
  9920.                     palette: PALETTE_USE_DEFAULT;
  9921.                     xoffset: 0;
  9922.                     yoffset: 0;
  9923.                     zoffset: 0;
  9924.                     xextent: 16;
  9925.                     yextent: 16;
  9926.                     zextent: 32;
  9927.                     always_draw: 1;
  9928.                     hide_sprite: (construction_state != 1);
  9929.                 }
  9930.                 building {
  9931.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  9932.                     recolour_mode: RECOLOUR_REMAP;
  9933.                     palette: PALETTE_USE_DEFAULT;
  9934.                     xoffset: 0;
  9935.                     yoffset: 0;
  9936.                     zoffset: 0;
  9937.                     xextent: 16;
  9938.                     yextent: 16;
  9939.                     zextent: 32;
  9940.                     always_draw: 1;
  9941.                     hide_sprite: (construction_state != 2);
  9942.                 }
  9943.                 // construction states - optional (no snow awareness)
  9944.                 building {
  9945.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  9946.                     recolour_mode: RECOLOUR_REMAP;
  9947.                     palette: PALETTE_USE_DEFAULT;
  9948.                     xoffset: 0;
  9949.                     yoffset: 0;
  9950.                     zoffset: 18;
  9951.                     xextent: 16;
  9952.                     yextent: 16;
  9953.                     zextent: 32;
  9954.                     always_draw: 0;
  9955.                     hide_sprite: (construction_state != 0);
  9956.                 }
  9957.                 building {
  9958.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  9959.                     recolour_mode: RECOLOUR_REMAP;
  9960.                     palette: PALETTE_USE_DEFAULT;
  9961.                     xoffset: 0;
  9962.                     yoffset: 0;
  9963.                     zoffset: 18;
  9964.                     xextent: 16;
  9965.                     yextent: 16;
  9966.                     zextent: 32;
  9967.                     always_draw: 0;
  9968.                     hide_sprite: (construction_state != 1);
  9969.                 }
  9970.                 building {
  9971.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  9972.                     recolour_mode: RECOLOUR_REMAP;
  9973.                     palette: PALETTE_USE_DEFAULT;
  9974.                     xoffset: 0;
  9975.                     yoffset: 0;
  9976.                     zoffset: 18;
  9977.                     xextent: 16;
  9978.                     yextent: 16;
  9979.                     zextent: 32;
  9980.                     always_draw: 0;
  9981.                     hide_sprite: (construction_state != 2);
  9982.                 }
  9983.                     // buildings (snow aware)
  9984.                     building {
  9985.                         sprite: port_spriteset_5_0(0);
  9986.                         recolour_mode: RECOLOUR_REMAP;
  9987.                         palette: PALETTE_USE_DEFAULT;
  9988.                         xoffset: 0;
  9989.                         yoffset: 0;
  9990.                         zoffset: 0;
  9991.                         xextent: 16;
  9992.                         yextent: 16;
  9993.                         zextent: 32;
  9994.                         always_draw: 0;
  9995.                         hide_sprite: (LOAD_TEMP(255));
  9996.                     }
  9997.                     building {
  9998.                         sprite: port_spriteset_5_0_snow(0);
  9999.                         recolour_mode: RECOLOUR_REMAP;
  10000.                         palette: PALETTE_USE_DEFAULT;
  10001.                         xoffset: 0;
  10002.                         yoffset: 0;
  10003.                         zoffset: 0;
  10004.                         xextent: 16;
  10005.                         yextent: 16;
  10006.                         zextent: 32;
  10007.                         always_draw: 0;
  10008.                         hide_sprite: (LOAD_TEMP(245));
  10009.                     }
  10010.                     // buildings (snow aware)
  10011.                     building {
  10012.                         sprite: port_spriteset_2_0(0);
  10013.                         recolour_mode: RECOLOUR_REMAP;
  10014.                         palette: PALETTE_USE_DEFAULT;
  10015.                         xoffset: 0;
  10016.                         yoffset: 0;
  10017.                         zoffset: 0;
  10018.                         xextent: 16;
  10019.                         yextent: 16;
  10020.                         zextent: 32;
  10021.                         always_draw: 1;
  10022.                         hide_sprite: (LOAD_TEMP(255));
  10023.                     }
  10024.                     building {
  10025.                         sprite: port_spriteset_2_0_snow(0);
  10026.                         recolour_mode: RECOLOUR_REMAP;
  10027.                         palette: PALETTE_USE_DEFAULT;
  10028.                         xoffset: 0;
  10029.                         yoffset: 0;
  10030.                         zoffset: 0;
  10031.                         xextent: 16;
  10032.                         yextent: 16;
  10033.                         zextent: 32;
  10034.                         always_draw: 1;
  10035.                         hide_sprite: (LOAD_TEMP(245));
  10036.                     }
  10037.                     // buildings (snow aware)
  10038.                     building {
  10039.                         sprite: port_spriteset_1_0(0);
  10040.                         recolour_mode: RECOLOUR_REMAP;
  10041.                         palette: PALETTE_USE_DEFAULT;
  10042.                         xoffset: 0;
  10043.                         yoffset: 0;
  10044.                         zoffset: 0;
  10045.                         xextent: 16;
  10046.                         yextent: 16;
  10047.                         zextent: 32;
  10048.                         always_draw: 1;
  10049.                         hide_sprite: (LOAD_TEMP(255));
  10050.                     }
  10051.                     building {
  10052.                         sprite: port_spriteset_1_0_snow(0);
  10053.                         recolour_mode: RECOLOUR_REMAP;
  10054.                         palette: PALETTE_USE_DEFAULT;
  10055.                         xoffset: 0;
  10056.                         yoffset: 0;
  10057.                         zoffset: 0;
  10058.                         xextent: 16;
  10059.                         yextent: 16;
  10060.                         zextent: 32;
  10061.                         always_draw: 1;
  10062.                         hide_sprite: (LOAD_TEMP(245));
  10063.                     }
  10064.                     // buildings (snow aware)
  10065.                     building {
  10066.                         sprite: port_spriteset_8_0(0);
  10067.                         recolour_mode: RECOLOUR_REMAP;
  10068.                         palette: PALETTE_USE_DEFAULT;
  10069.                         xoffset: 0;
  10070.                         yoffset: 0;
  10071.                         zoffset: 18;
  10072.                         xextent: 16;
  10073.                         yextent: 16;
  10074.                         zextent: 32;
  10075.                         always_draw: 0;
  10076.                         hide_sprite: (LOAD_TEMP(255));
  10077.                     }
  10078.                     building {
  10079.                         sprite: port_spriteset_8_0_snow(0);
  10080.                         recolour_mode: RECOLOUR_REMAP;
  10081.                         palette: PALETTE_USE_DEFAULT;
  10082.                         xoffset: 0;
  10083.                         yoffset: 0;
  10084.                         zoffset: 18;
  10085.                         xextent: 16;
  10086.                         yextent: 16;
  10087.                         zextent: 32;
  10088.                         always_draw: 0;
  10089.                         hide_sprite: (LOAD_TEMP(245));
  10090.                     }
  10091.         }
  10092.         spritelayout port_spritelayout_coast_warehouse5 {
  10093.             // Industry-specific ground (snow aware)
  10094.             // non-snow
  10095.             childsprite {
  10096.                 sprite: port_spriteset_0_0(0);
  10097.                 recolour_mode: RECOLOUR_REMAP;
  10098.                 palette: PALETTE_USE_DEFAULT;
  10099.                 hide_sprite: (LOAD_TEMP(13));
  10100.                 always_draw: 1;
  10101.             }
  10102.             childsprite {
  10103.                 sprite: port_spriteset_0_0(0);
  10104.                 recolour_mode: RECOLOUR_REMAP;
  10105.                 palette: PALETTE_USE_DEFAULT;
  10106.                 hide_sprite: (LOAD_TEMP(13));
  10107.                 always_draw: 1;
  10108.             }
  10109.             // snow
  10110.             childsprite {
  10111.                 sprite: port_spriteset_0_0_snow(0);
  10112.                 recolour_mode: RECOLOUR_REMAP;
  10113.                 palette: PALETTE_USE_DEFAULT;
  10114.                 hide_sprite: (!LOAD_TEMP(13));
  10115.                 always_draw: 1;
  10116.             }
  10117.             childsprite {
  10118.                 sprite: port_spriteset_0_0_snow(0);
  10119.                 recolour_mode: RECOLOUR_REMAP;
  10120.                 palette: PALETTE_USE_DEFAULT;
  10121.                 hide_sprite: (!LOAD_TEMP(13));
  10122.                 always_draw: 1;
  10123.             }
  10124.                 // construction states - optional (no snow awareness)
  10125.                 building {
  10126.                     sprite: port_spriteset_5_spriteset_default_construction_state_0(0);
  10127.                     recolour_mode: RECOLOUR_REMAP;
  10128.                     palette: PALETTE_USE_DEFAULT;
  10129.                     xoffset: 0;
  10130.                     yoffset: 0;
  10131.                     zoffset: 0;
  10132.                     xextent: 16;
  10133.                     yextent: 16;
  10134.                     zextent: 32;
  10135.                     always_draw: 0;
  10136.                     hide_sprite: (construction_state != 0);
  10137.                 }
  10138.                 building {
  10139.                     sprite: port_spriteset_5_spriteset_default_construction_state_1(0);
  10140.                     recolour_mode: RECOLOUR_REMAP;
  10141.                     palette: PALETTE_USE_DEFAULT;
  10142.                     xoffset: 0;
  10143.                     yoffset: 0;
  10144.                     zoffset: 0;
  10145.                     xextent: 16;
  10146.                     yextent: 16;
  10147.                     zextent: 32;
  10148.                     always_draw: 0;
  10149.                     hide_sprite: (construction_state != 1);
  10150.                 }
  10151.                 building {
  10152.                     sprite: port_spriteset_5_spriteset_default_construction_state_2(0);
  10153.                     recolour_mode: RECOLOUR_REMAP;
  10154.                     palette: PALETTE_USE_DEFAULT;
  10155.                     xoffset: 0;
  10156.                     yoffset: 0;
  10157.                     zoffset: 0;
  10158.                     xextent: 16;
  10159.                     yextent: 16;
  10160.                     zextent: 32;
  10161.                     always_draw: 0;
  10162.                     hide_sprite: (construction_state != 2);
  10163.                 }
  10164.                 // construction states - optional (no snow awareness)
  10165.                 building {
  10166.                     sprite: port_spriteset_4_spriteset_default_construction_state_0(0);
  10167.                     recolour_mode: RECOLOUR_REMAP;
  10168.                     palette: PALETTE_USE_DEFAULT;
  10169.                     xoffset: 0;
  10170.                     yoffset: 0;
  10171.                     zoffset: 0;
  10172.                     xextent: 16;
  10173.                     yextent: 16;
  10174.                     zextent: 32;
  10175.                     always_draw: 0;
  10176.                     hide_sprite: (construction_state != 0);
  10177.                 }
  10178.                 building {
  10179.                     sprite: port_spriteset_4_spriteset_default_construction_state_1(0);
  10180.                     recolour_mode: RECOLOUR_REMAP;
  10181.                     palette: PALETTE_USE_DEFAULT;
  10182.                     xoffset: 0;
  10183.                     yoffset: 0;
  10184.                     zoffset: 0;
  10185.                     xextent: 16;
  10186.                     yextent: 16;
  10187.                     zextent: 32;
  10188.                     always_draw: 0;
  10189.                     hide_sprite: (construction_state != 1);
  10190.                 }
  10191.                 building {
  10192.                     sprite: port_spriteset_4_spriteset_default_construction_state_2(0);
  10193.                     recolour_mode: RECOLOUR_REMAP;
  10194.                     palette: PALETTE_USE_DEFAULT;
  10195.                     xoffset: 0;
  10196.                     yoffset: 0;
  10197.                     zoffset: 0;
  10198.                     xextent: 16;
  10199.                     yextent: 16;
  10200.                     zextent: 32;
  10201.                     always_draw: 0;
  10202.                     hide_sprite: (construction_state != 2);
  10203.                 }
  10204.                 // construction states - optional (no snow awareness)
  10205.                 building {
  10206.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  10207.                     recolour_mode: RECOLOUR_REMAP;
  10208.                     palette: PALETTE_USE_DEFAULT;
  10209.                     xoffset: 0;
  10210.                     yoffset: 0;
  10211.                     zoffset: 0;
  10212.                     xextent: 16;
  10213.                     yextent: 16;
  10214.                     zextent: 32;
  10215.                     always_draw: 1;
  10216.                     hide_sprite: (construction_state != 0);
  10217.                 }
  10218.                 building {
  10219.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  10220.                     recolour_mode: RECOLOUR_REMAP;
  10221.                     palette: PALETTE_USE_DEFAULT;
  10222.                     xoffset: 0;
  10223.                     yoffset: 0;
  10224.                     zoffset: 0;
  10225.                     xextent: 16;
  10226.                     yextent: 16;
  10227.                     zextent: 32;
  10228.                     always_draw: 1;
  10229.                     hide_sprite: (construction_state != 1);
  10230.                 }
  10231.                 building {
  10232.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  10233.                     recolour_mode: RECOLOUR_REMAP;
  10234.                     palette: PALETTE_USE_DEFAULT;
  10235.                     xoffset: 0;
  10236.                     yoffset: 0;
  10237.                     zoffset: 0;
  10238.                     xextent: 16;
  10239.                     yextent: 16;
  10240.                     zextent: 32;
  10241.                     always_draw: 1;
  10242.                     hide_sprite: (construction_state != 2);
  10243.                 }
  10244.                 // construction states - optional (no snow awareness)
  10245.                 building {
  10246.                     sprite: port_spriteset_8_spriteset_default_construction_state_0(0);
  10247.                     recolour_mode: RECOLOUR_REMAP;
  10248.                     palette: PALETTE_USE_DEFAULT;
  10249.                     xoffset: 0;
  10250.                     yoffset: 0;
  10251.                     zoffset: 18;
  10252.                     xextent: 16;
  10253.                     yextent: 16;
  10254.                     zextent: 32;
  10255.                     always_draw: 0;
  10256.                     hide_sprite: (construction_state != 0);
  10257.                 }
  10258.                 building {
  10259.                     sprite: port_spriteset_8_spriteset_default_construction_state_1(0);
  10260.                     recolour_mode: RECOLOUR_REMAP;
  10261.                     palette: PALETTE_USE_DEFAULT;
  10262.                     xoffset: 0;
  10263.                     yoffset: 0;
  10264.                     zoffset: 18;
  10265.                     xextent: 16;
  10266.                     yextent: 16;
  10267.                     zextent: 32;
  10268.                     always_draw: 0;
  10269.                     hide_sprite: (construction_state != 1);
  10270.                 }
  10271.                 building {
  10272.                     sprite: port_spriteset_8_spriteset_default_construction_state_2(0);
  10273.                     recolour_mode: RECOLOUR_REMAP;
  10274.                     palette: PALETTE_USE_DEFAULT;
  10275.                     xoffset: 0;
  10276.                     yoffset: 0;
  10277.                     zoffset: 18;
  10278.                     xextent: 16;
  10279.                     yextent: 16;
  10280.                     zextent: 32;
  10281.                     always_draw: 0;
  10282.                     hide_sprite: (construction_state != 2);
  10283.                 }
  10284.                     // buildings (snow aware)
  10285.                     building {
  10286.                         sprite: port_spriteset_5_0(0);
  10287.                         recolour_mode: RECOLOUR_REMAP;
  10288.                         palette: PALETTE_USE_DEFAULT;
  10289.                         xoffset: 0;
  10290.                         yoffset: 0;
  10291.                         zoffset: 0;
  10292.                         xextent: 16;
  10293.                         yextent: 16;
  10294.                         zextent: 32;
  10295.                         always_draw: 0;
  10296.                         hide_sprite: (LOAD_TEMP(255));
  10297.                     }
  10298.                     building {
  10299.                         sprite: port_spriteset_5_0_snow(0);
  10300.                         recolour_mode: RECOLOUR_REMAP;
  10301.                         palette: PALETTE_USE_DEFAULT;
  10302.                         xoffset: 0;
  10303.                         yoffset: 0;
  10304.                         zoffset: 0;
  10305.                         xextent: 16;
  10306.                         yextent: 16;
  10307.                         zextent: 32;
  10308.                         always_draw: 0;
  10309.                         hide_sprite: (LOAD_TEMP(245));
  10310.                     }
  10311.                     // buildings (snow aware)
  10312.                     building {
  10313.                         sprite: port_spriteset_4_0(0);
  10314.                         recolour_mode: RECOLOUR_REMAP;
  10315.                         palette: PALETTE_USE_DEFAULT;
  10316.                         xoffset: 0;
  10317.                         yoffset: 0;
  10318.                         zoffset: 0;
  10319.                         xextent: 16;
  10320.                         yextent: 16;
  10321.                         zextent: 32;
  10322.                         always_draw: 0;
  10323.                         hide_sprite: (LOAD_TEMP(255));
  10324.                     }
  10325.                     building {
  10326.                         sprite: port_spriteset_4_0_snow(0);
  10327.                         recolour_mode: RECOLOUR_REMAP;
  10328.                         palette: PALETTE_USE_DEFAULT;
  10329.                         xoffset: 0;
  10330.                         yoffset: 0;
  10331.                         zoffset: 0;
  10332.                         xextent: 16;
  10333.                         yextent: 16;
  10334.                         zextent: 32;
  10335.                         always_draw: 0;
  10336.                         hide_sprite: (LOAD_TEMP(245));
  10337.                     }
  10338.                     // buildings (snow aware)
  10339.                     building {
  10340.                         sprite: port_spriteset_1_0(0);
  10341.                         recolour_mode: RECOLOUR_REMAP;
  10342.                         palette: PALETTE_USE_DEFAULT;
  10343.                         xoffset: 0;
  10344.                         yoffset: 0;
  10345.                         zoffset: 0;
  10346.                         xextent: 16;
  10347.                         yextent: 16;
  10348.                         zextent: 32;
  10349.                         always_draw: 1;
  10350.                         hide_sprite: (LOAD_TEMP(255));
  10351.                     }
  10352.                     building {
  10353.                         sprite: port_spriteset_1_0_snow(0);
  10354.                         recolour_mode: RECOLOUR_REMAP;
  10355.                         palette: PALETTE_USE_DEFAULT;
  10356.                         xoffset: 0;
  10357.                         yoffset: 0;
  10358.                         zoffset: 0;
  10359.                         xextent: 16;
  10360.                         yextent: 16;
  10361.                         zextent: 32;
  10362.                         always_draw: 1;
  10363.                         hide_sprite: (LOAD_TEMP(245));
  10364.                     }
  10365.                     // buildings (snow aware)
  10366.                     building {
  10367.                         sprite: port_spriteset_8_0(0);
  10368.                         recolour_mode: RECOLOUR_REMAP;
  10369.                         palette: PALETTE_USE_DEFAULT;
  10370.                         xoffset: 0;
  10371.                         yoffset: 0;
  10372.                         zoffset: 18;
  10373.                         xextent: 16;
  10374.                         yextent: 16;
  10375.                         zextent: 32;
  10376.                         always_draw: 0;
  10377.                         hide_sprite: (LOAD_TEMP(255));
  10378.                     }
  10379.                     building {
  10380.                         sprite: port_spriteset_8_0_snow(0);
  10381.                         recolour_mode: RECOLOUR_REMAP;
  10382.                         palette: PALETTE_USE_DEFAULT;
  10383.                         xoffset: 0;
  10384.                         yoffset: 0;
  10385.                         zoffset: 18;
  10386.                         xextent: 16;
  10387.                         yextent: 16;
  10388.                         zextent: 32;
  10389.                         always_draw: 0;
  10390.                         hide_sprite: (LOAD_TEMP(245));
  10391.                     }
  10392.         }
  10393.         spritelayout port_spritelayout_coast_truck1 {
  10394.             // Industry-specific ground (snow aware)
  10395.             // non-snow
  10396.             childsprite {
  10397.                 sprite: port_spriteset_0_0(0);
  10398.                 recolour_mode: RECOLOUR_REMAP;
  10399.                 palette: PALETTE_USE_DEFAULT;
  10400.                 hide_sprite: (LOAD_TEMP(13));
  10401.                 always_draw: 1;
  10402.             }
  10403.             childsprite {
  10404.                 sprite: port_spriteset_0_0(0);
  10405.                 recolour_mode: RECOLOUR_REMAP;
  10406.                 palette: PALETTE_USE_DEFAULT;
  10407.                 hide_sprite: (LOAD_TEMP(13));
  10408.                 always_draw: 1;
  10409.             }
  10410.             // snow
  10411.             childsprite {
  10412.                 sprite: port_spriteset_0_0_snow(0);
  10413.                 recolour_mode: RECOLOUR_REMAP;
  10414.                 palette: PALETTE_USE_DEFAULT;
  10415.                 hide_sprite: (!LOAD_TEMP(13));
  10416.                 always_draw: 1;
  10417.             }
  10418.             childsprite {
  10419.                 sprite: port_spriteset_0_0_snow(0);
  10420.                 recolour_mode: RECOLOUR_REMAP;
  10421.                 palette: PALETTE_USE_DEFAULT;
  10422.                 hide_sprite: (!LOAD_TEMP(13));
  10423.                 always_draw: 1;
  10424.             }
  10425.                 // construction states - optional (no snow awareness)
  10426.                 building {
  10427.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  10428.                     recolour_mode: RECOLOUR_REMAP;
  10429.                     palette: PALETTE_USE_DEFAULT;
  10430.                     xoffset: 0;
  10431.                     yoffset: 0;
  10432.                     zoffset: 0;
  10433.                     xextent: 16;
  10434.                     yextent: 16;
  10435.                     zextent: 32;
  10436.                     always_draw: 1;
  10437.                     hide_sprite: (construction_state != 0);
  10438.                 }
  10439.                 building {
  10440.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  10441.                     recolour_mode: RECOLOUR_REMAP;
  10442.                     palette: PALETTE_USE_DEFAULT;
  10443.                     xoffset: 0;
  10444.                     yoffset: 0;
  10445.                     zoffset: 0;
  10446.                     xextent: 16;
  10447.                     yextent: 16;
  10448.                     zextent: 32;
  10449.                     always_draw: 1;
  10450.                     hide_sprite: (construction_state != 1);
  10451.                 }
  10452.                 building {
  10453.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  10454.                     recolour_mode: RECOLOUR_REMAP;
  10455.                     palette: PALETTE_USE_DEFAULT;
  10456.                     xoffset: 0;
  10457.                     yoffset: 0;
  10458.                     zoffset: 0;
  10459.                     xextent: 16;
  10460.                     yextent: 16;
  10461.                     zextent: 32;
  10462.                     always_draw: 1;
  10463.                     hide_sprite: (construction_state != 2);
  10464.                 }
  10465.                 // construction states - optional (no snow awareness)
  10466.                 building {
  10467.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  10468.                     recolour_mode: RECOLOUR_REMAP;
  10469.                     palette: PALETTE_USE_DEFAULT;
  10470.                     xoffset: 0;
  10471.                     yoffset: 0;
  10472.                     zoffset: 18;
  10473.                     xextent: 16;
  10474.                     yextent: 16;
  10475.                     zextent: 32;
  10476.                     always_draw: 0;
  10477.                     hide_sprite: (construction_state != 0);
  10478.                 }
  10479.                 building {
  10480.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  10481.                     recolour_mode: RECOLOUR_REMAP;
  10482.                     palette: PALETTE_USE_DEFAULT;
  10483.                     xoffset: 0;
  10484.                     yoffset: 0;
  10485.                     zoffset: 18;
  10486.                     xextent: 16;
  10487.                     yextent: 16;
  10488.                     zextent: 32;
  10489.                     always_draw: 0;
  10490.                     hide_sprite: (construction_state != 1);
  10491.                 }
  10492.                 building {
  10493.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  10494.                     recolour_mode: RECOLOUR_REMAP;
  10495.                     palette: PALETTE_USE_DEFAULT;
  10496.                     xoffset: 0;
  10497.                     yoffset: 0;
  10498.                     zoffset: 18;
  10499.                     xextent: 16;
  10500.                     yextent: 16;
  10501.                     zextent: 32;
  10502.                     always_draw: 0;
  10503.                     hide_sprite: (construction_state != 2);
  10504.                 }
  10505.                     // buildings (snow aware)
  10506.                     building {
  10507.                         sprite: port_spriteset_1_0(0);
  10508.                         recolour_mode: RECOLOUR_REMAP;
  10509.                         palette: PALETTE_USE_DEFAULT;
  10510.                         xoffset: 0;
  10511.                         yoffset: 0;
  10512.                         zoffset: 0;
  10513.                         xextent: 16;
  10514.                         yextent: 16;
  10515.                         zextent: 32;
  10516.                         always_draw: 1;
  10517.                         hide_sprite: (LOAD_TEMP(255));
  10518.                     }
  10519.                     building {
  10520.                         sprite: port_spriteset_1_0_snow(0);
  10521.                         recolour_mode: RECOLOUR_REMAP;
  10522.                         palette: PALETTE_USE_DEFAULT;
  10523.                         xoffset: 0;
  10524.                         yoffset: 0;
  10525.                         zoffset: 0;
  10526.                         xextent: 16;
  10527.                         yextent: 16;
  10528.                         zextent: 32;
  10529.                         always_draw: 1;
  10530.                         hide_sprite: (LOAD_TEMP(245));
  10531.                     }
  10532.                     // buildings (snow aware)
  10533.                     building {
  10534.                         sprite: port_spriteset_18_0(0);
  10535.                         recolour_mode: RECOLOUR_REMAP;
  10536.                         palette: PALETTE_USE_DEFAULT;
  10537.                         xoffset: 0;
  10538.                         yoffset: 0;
  10539.                         zoffset: 18;
  10540.                         xextent: 16;
  10541.                         yextent: 16;
  10542.                         zextent: 32;
  10543.                         always_draw: 0;
  10544.                         hide_sprite: (LOAD_TEMP(255));
  10545.                     }
  10546.                     building {
  10547.                         sprite: port_spriteset_18_0_snow(0);
  10548.                         recolour_mode: RECOLOUR_REMAP;
  10549.                         palette: PALETTE_USE_DEFAULT;
  10550.                         xoffset: 0;
  10551.                         yoffset: 0;
  10552.                         zoffset: 18;
  10553.                         xextent: 16;
  10554.                         yextent: 16;
  10555.                         zextent: 32;
  10556.                         always_draw: 0;
  10557.                         hide_sprite: (LOAD_TEMP(245));
  10558.                     }
  10559.         }
  10560.         spritelayout port_spritelayout_coast_truck4 {
  10561.             // Industry-specific ground (snow aware)
  10562.             // non-snow
  10563.             childsprite {
  10564.                 sprite: port_spriteset_0_0(0);
  10565.                 recolour_mode: RECOLOUR_REMAP;
  10566.                 palette: PALETTE_USE_DEFAULT;
  10567.                 hide_sprite: (LOAD_TEMP(13));
  10568.                 always_draw: 1;
  10569.             }
  10570.             childsprite {
  10571.                 sprite: port_spriteset_0_0(0);
  10572.                 recolour_mode: RECOLOUR_REMAP;
  10573.                 palette: PALETTE_USE_DEFAULT;
  10574.                 hide_sprite: (LOAD_TEMP(13));
  10575.                 always_draw: 1;
  10576.             }
  10577.             // snow
  10578.             childsprite {
  10579.                 sprite: port_spriteset_0_0_snow(0);
  10580.                 recolour_mode: RECOLOUR_REMAP;
  10581.                 palette: PALETTE_USE_DEFAULT;
  10582.                 hide_sprite: (!LOAD_TEMP(13));
  10583.                 always_draw: 1;
  10584.             }
  10585.             childsprite {
  10586.                 sprite: port_spriteset_0_0_snow(0);
  10587.                 recolour_mode: RECOLOUR_REMAP;
  10588.                 palette: PALETTE_USE_DEFAULT;
  10589.                 hide_sprite: (!LOAD_TEMP(13));
  10590.                 always_draw: 1;
  10591.             }
  10592.                 // construction states - optional (no snow awareness)
  10593.                 building {
  10594.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  10595.                     recolour_mode: RECOLOUR_REMAP;
  10596.                     palette: PALETTE_USE_DEFAULT;
  10597.                     xoffset: 0;
  10598.                     yoffset: 0;
  10599.                     zoffset: 0;
  10600.                     xextent: 16;
  10601.                     yextent: 16;
  10602.                     zextent: 32;
  10603.                     always_draw: 1;
  10604.                     hide_sprite: (construction_state != 0);
  10605.                 }
  10606.                 building {
  10607.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  10608.                     recolour_mode: RECOLOUR_REMAP;
  10609.                     palette: PALETTE_USE_DEFAULT;
  10610.                     xoffset: 0;
  10611.                     yoffset: 0;
  10612.                     zoffset: 0;
  10613.                     xextent: 16;
  10614.                     yextent: 16;
  10615.                     zextent: 32;
  10616.                     always_draw: 1;
  10617.                     hide_sprite: (construction_state != 1);
  10618.                 }
  10619.                 building {
  10620.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  10621.                     recolour_mode: RECOLOUR_REMAP;
  10622.                     palette: PALETTE_USE_DEFAULT;
  10623.                     xoffset: 0;
  10624.                     yoffset: 0;
  10625.                     zoffset: 0;
  10626.                     xextent: 16;
  10627.                     yextent: 16;
  10628.                     zextent: 32;
  10629.                     always_draw: 1;
  10630.                     hide_sprite: (construction_state != 2);
  10631.                 }
  10632.                 // construction states - optional (no snow awareness)
  10633.                 building {
  10634.                     sprite: port_spriteset_4_spriteset_default_construction_state_0(0);
  10635.                     recolour_mode: RECOLOUR_REMAP;
  10636.                     palette: PALETTE_USE_DEFAULT;
  10637.                     xoffset: 0;
  10638.                     yoffset: 0;
  10639.                     zoffset: 0;
  10640.                     xextent: 16;
  10641.                     yextent: 16;
  10642.                     zextent: 32;
  10643.                     always_draw: 0;
  10644.                     hide_sprite: (construction_state != 0);
  10645.                 }
  10646.                 building {
  10647.                     sprite: port_spriteset_4_spriteset_default_construction_state_1(0);
  10648.                     recolour_mode: RECOLOUR_REMAP;
  10649.                     palette: PALETTE_USE_DEFAULT;
  10650.                     xoffset: 0;
  10651.                     yoffset: 0;
  10652.                     zoffset: 0;
  10653.                     xextent: 16;
  10654.                     yextent: 16;
  10655.                     zextent: 32;
  10656.                     always_draw: 0;
  10657.                     hide_sprite: (construction_state != 1);
  10658.                 }
  10659.                 building {
  10660.                     sprite: port_spriteset_4_spriteset_default_construction_state_2(0);
  10661.                     recolour_mode: RECOLOUR_REMAP;
  10662.                     palette: PALETTE_USE_DEFAULT;
  10663.                     xoffset: 0;
  10664.                     yoffset: 0;
  10665.                     zoffset: 0;
  10666.                     xextent: 16;
  10667.                     yextent: 16;
  10668.                     zextent: 32;
  10669.                     always_draw: 0;
  10670.                     hide_sprite: (construction_state != 2);
  10671.                 }
  10672.                 // construction states - optional (no snow awareness)
  10673.                 building {
  10674.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  10675.                     recolour_mode: RECOLOUR_REMAP;
  10676.                     palette: PALETTE_USE_DEFAULT;
  10677.                     xoffset: 0;
  10678.                     yoffset: 0;
  10679.                     zoffset: 0;
  10680.                     xextent: 16;
  10681.                     yextent: 16;
  10682.                     zextent: 32;
  10683.                     always_draw: 1;
  10684.                     hide_sprite: (construction_state != 0);
  10685.                 }
  10686.                 building {
  10687.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  10688.                     recolour_mode: RECOLOUR_REMAP;
  10689.                     palette: PALETTE_USE_DEFAULT;
  10690.                     xoffset: 0;
  10691.                     yoffset: 0;
  10692.                     zoffset: 0;
  10693.                     xextent: 16;
  10694.                     yextent: 16;
  10695.                     zextent: 32;
  10696.                     always_draw: 1;
  10697.                     hide_sprite: (construction_state != 1);
  10698.                 }
  10699.                 building {
  10700.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  10701.                     recolour_mode: RECOLOUR_REMAP;
  10702.                     palette: PALETTE_USE_DEFAULT;
  10703.                     xoffset: 0;
  10704.                     yoffset: 0;
  10705.                     zoffset: 0;
  10706.                     xextent: 16;
  10707.                     yextent: 16;
  10708.                     zextent: 32;
  10709.                     always_draw: 1;
  10710.                     hide_sprite: (construction_state != 2);
  10711.                 }
  10712.                 // construction states - optional (no snow awareness)
  10713.                 building {
  10714.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  10715.                     recolour_mode: RECOLOUR_REMAP;
  10716.                     palette: PALETTE_USE_DEFAULT;
  10717.                     xoffset: 0;
  10718.                     yoffset: 0;
  10719.                     zoffset: 18;
  10720.                     xextent: 16;
  10721.                     yextent: 16;
  10722.                     zextent: 32;
  10723.                     always_draw: 0;
  10724.                     hide_sprite: (construction_state != 0);
  10725.                 }
  10726.                 building {
  10727.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  10728.                     recolour_mode: RECOLOUR_REMAP;
  10729.                     palette: PALETTE_USE_DEFAULT;
  10730.                     xoffset: 0;
  10731.                     yoffset: 0;
  10732.                     zoffset: 18;
  10733.                     xextent: 16;
  10734.                     yextent: 16;
  10735.                     zextent: 32;
  10736.                     always_draw: 0;
  10737.                     hide_sprite: (construction_state != 1);
  10738.                 }
  10739.                 building {
  10740.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  10741.                     recolour_mode: RECOLOUR_REMAP;
  10742.                     palette: PALETTE_USE_DEFAULT;
  10743.                     xoffset: 0;
  10744.                     yoffset: 0;
  10745.                     zoffset: 18;
  10746.                     xextent: 16;
  10747.                     yextent: 16;
  10748.                     zextent: 32;
  10749.                     always_draw: 0;
  10750.                     hide_sprite: (construction_state != 2);
  10751.                 }
  10752.                     // buildings (snow aware)
  10753.                     building {
  10754.                         sprite: port_spriteset_3_0(0);
  10755.                         recolour_mode: RECOLOUR_REMAP;
  10756.                         palette: PALETTE_USE_DEFAULT;
  10757.                         xoffset: 0;
  10758.                         yoffset: 0;
  10759.                         zoffset: 0;
  10760.                         xextent: 16;
  10761.                         yextent: 16;
  10762.                         zextent: 32;
  10763.                         always_draw: 1;
  10764.                         hide_sprite: (LOAD_TEMP(255));
  10765.                     }
  10766.                     building {
  10767.                         sprite: port_spriteset_3_0_snow(0);
  10768.                         recolour_mode: RECOLOUR_REMAP;
  10769.                         palette: PALETTE_USE_DEFAULT;
  10770.                         xoffset: 0;
  10771.                         yoffset: 0;
  10772.                         zoffset: 0;
  10773.                         xextent: 16;
  10774.                         yextent: 16;
  10775.                         zextent: 32;
  10776.                         always_draw: 1;
  10777.                         hide_sprite: (LOAD_TEMP(245));
  10778.                     }
  10779.                     // buildings (snow aware)
  10780.                     building {
  10781.                         sprite: port_spriteset_4_0(0);
  10782.                         recolour_mode: RECOLOUR_REMAP;
  10783.                         palette: PALETTE_USE_DEFAULT;
  10784.                         xoffset: 0;
  10785.                         yoffset: 0;
  10786.                         zoffset: 0;
  10787.                         xextent: 16;
  10788.                         yextent: 16;
  10789.                         zextent: 32;
  10790.                         always_draw: 0;
  10791.                         hide_sprite: (LOAD_TEMP(255));
  10792.                     }
  10793.                     building {
  10794.                         sprite: port_spriteset_4_0_snow(0);
  10795.                         recolour_mode: RECOLOUR_REMAP;
  10796.                         palette: PALETTE_USE_DEFAULT;
  10797.                         xoffset: 0;
  10798.                         yoffset: 0;
  10799.                         zoffset: 0;
  10800.                         xextent: 16;
  10801.                         yextent: 16;
  10802.                         zextent: 32;
  10803.                         always_draw: 0;
  10804.                         hide_sprite: (LOAD_TEMP(245));
  10805.                     }
  10806.                     // buildings (snow aware)
  10807.                     building {
  10808.                         sprite: port_spriteset_1_0(0);
  10809.                         recolour_mode: RECOLOUR_REMAP;
  10810.                         palette: PALETTE_USE_DEFAULT;
  10811.                         xoffset: 0;
  10812.                         yoffset: 0;
  10813.                         zoffset: 0;
  10814.                         xextent: 16;
  10815.                         yextent: 16;
  10816.                         zextent: 32;
  10817.                         always_draw: 1;
  10818.                         hide_sprite: (LOAD_TEMP(255));
  10819.                     }
  10820.                     building {
  10821.                         sprite: port_spriteset_1_0_snow(0);
  10822.                         recolour_mode: RECOLOUR_REMAP;
  10823.                         palette: PALETTE_USE_DEFAULT;
  10824.                         xoffset: 0;
  10825.                         yoffset: 0;
  10826.                         zoffset: 0;
  10827.                         xextent: 16;
  10828.                         yextent: 16;
  10829.                         zextent: 32;
  10830.                         always_draw: 1;
  10831.                         hide_sprite: (LOAD_TEMP(245));
  10832.                     }
  10833.                     // buildings (snow aware)
  10834.                     building {
  10835.                         sprite: port_spriteset_18_0(0);
  10836.                         recolour_mode: RECOLOUR_REMAP;
  10837.                         palette: PALETTE_USE_DEFAULT;
  10838.                         xoffset: 0;
  10839.                         yoffset: 0;
  10840.                         zoffset: 18;
  10841.                         xextent: 16;
  10842.                         yextent: 16;
  10843.                         zextent: 32;
  10844.                         always_draw: 0;
  10845.                         hide_sprite: (LOAD_TEMP(255));
  10846.                     }
  10847.                     building {
  10848.                         sprite: port_spriteset_18_0_snow(0);
  10849.                         recolour_mode: RECOLOUR_REMAP;
  10850.                         palette: PALETTE_USE_DEFAULT;
  10851.                         xoffset: 0;
  10852.                         yoffset: 0;
  10853.                         zoffset: 18;
  10854.                         xextent: 16;
  10855.                         yextent: 16;
  10856.                         zextent: 32;
  10857.                         always_draw: 0;
  10858.                         hide_sprite: (LOAD_TEMP(245));
  10859.                     }
  10860.         }
  10861.         spritelayout port_spritelayout_coast_truck3 {
  10862.             // Industry-specific ground (snow aware)
  10863.             // non-snow
  10864.             childsprite {
  10865.                 sprite: port_spriteset_0_0(0);
  10866.                 recolour_mode: RECOLOUR_REMAP;
  10867.                 palette: PALETTE_USE_DEFAULT;
  10868.                 hide_sprite: (LOAD_TEMP(13));
  10869.                 always_draw: 1;
  10870.             }
  10871.             childsprite {
  10872.                 sprite: port_spriteset_0_0(0);
  10873.                 recolour_mode: RECOLOUR_REMAP;
  10874.                 palette: PALETTE_USE_DEFAULT;
  10875.                 hide_sprite: (LOAD_TEMP(13));
  10876.                 always_draw: 1;
  10877.             }
  10878.             // snow
  10879.             childsprite {
  10880.                 sprite: port_spriteset_0_0_snow(0);
  10881.                 recolour_mode: RECOLOUR_REMAP;
  10882.                 palette: PALETTE_USE_DEFAULT;
  10883.                 hide_sprite: (!LOAD_TEMP(13));
  10884.                 always_draw: 1;
  10885.             }
  10886.             childsprite {
  10887.                 sprite: port_spriteset_0_0_snow(0);
  10888.                 recolour_mode: RECOLOUR_REMAP;
  10889.                 palette: PALETTE_USE_DEFAULT;
  10890.                 hide_sprite: (!LOAD_TEMP(13));
  10891.                 always_draw: 1;
  10892.             }
  10893.                 // construction states - optional (no snow awareness)
  10894.                 building {
  10895.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  10896.                     recolour_mode: RECOLOUR_REMAP;
  10897.                     palette: PALETTE_USE_DEFAULT;
  10898.                     xoffset: 0;
  10899.                     yoffset: 0;
  10900.                     zoffset: 0;
  10901.                     xextent: 16;
  10902.                     yextent: 16;
  10903.                     zextent: 32;
  10904.                     always_draw: 1;
  10905.                     hide_sprite: (construction_state != 0);
  10906.                 }
  10907.                 building {
  10908.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  10909.                     recolour_mode: RECOLOUR_REMAP;
  10910.                     palette: PALETTE_USE_DEFAULT;
  10911.                     xoffset: 0;
  10912.                     yoffset: 0;
  10913.                     zoffset: 0;
  10914.                     xextent: 16;
  10915.                     yextent: 16;
  10916.                     zextent: 32;
  10917.                     always_draw: 1;
  10918.                     hide_sprite: (construction_state != 1);
  10919.                 }
  10920.                 building {
  10921.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  10922.                     recolour_mode: RECOLOUR_REMAP;
  10923.                     palette: PALETTE_USE_DEFAULT;
  10924.                     xoffset: 0;
  10925.                     yoffset: 0;
  10926.                     zoffset: 0;
  10927.                     xextent: 16;
  10928.                     yextent: 16;
  10929.                     zextent: 32;
  10930.                     always_draw: 1;
  10931.                     hide_sprite: (construction_state != 2);
  10932.                 }
  10933.                 // construction states - optional (no snow awareness)
  10934.                 building {
  10935.                     sprite: port_spriteset_3_spriteset_default_construction_state_0(0);
  10936.                     recolour_mode: RECOLOUR_REMAP;
  10937.                     palette: PALETTE_USE_DEFAULT;
  10938.                     xoffset: 0;
  10939.                     yoffset: 0;
  10940.                     zoffset: 0;
  10941.                     xextent: 16;
  10942.                     yextent: 16;
  10943.                     zextent: 32;
  10944.                     always_draw: 1;
  10945.                     hide_sprite: (construction_state != 0);
  10946.                 }
  10947.                 building {
  10948.                     sprite: port_spriteset_3_spriteset_default_construction_state_1(0);
  10949.                     recolour_mode: RECOLOUR_REMAP;
  10950.                     palette: PALETTE_USE_DEFAULT;
  10951.                     xoffset: 0;
  10952.                     yoffset: 0;
  10953.                     zoffset: 0;
  10954.                     xextent: 16;
  10955.                     yextent: 16;
  10956.                     zextent: 32;
  10957.                     always_draw: 1;
  10958.                     hide_sprite: (construction_state != 1);
  10959.                 }
  10960.                 building {
  10961.                     sprite: port_spriteset_3_spriteset_default_construction_state_2(0);
  10962.                     recolour_mode: RECOLOUR_REMAP;
  10963.                     palette: PALETTE_USE_DEFAULT;
  10964.                     xoffset: 0;
  10965.                     yoffset: 0;
  10966.                     zoffset: 0;
  10967.                     xextent: 16;
  10968.                     yextent: 16;
  10969.                     zextent: 32;
  10970.                     always_draw: 1;
  10971.                     hide_sprite: (construction_state != 2);
  10972.                 }
  10973.                 // construction states - optional (no snow awareness)
  10974.                 building {
  10975.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  10976.                     recolour_mode: RECOLOUR_REMAP;
  10977.                     palette: PALETTE_USE_DEFAULT;
  10978.                     xoffset: 0;
  10979.                     yoffset: 0;
  10980.                     zoffset: 0;
  10981.                     xextent: 16;
  10982.                     yextent: 16;
  10983.                     zextent: 32;
  10984.                     always_draw: 1;
  10985.                     hide_sprite: (construction_state != 0);
  10986.                 }
  10987.                 building {
  10988.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  10989.                     recolour_mode: RECOLOUR_REMAP;
  10990.                     palette: PALETTE_USE_DEFAULT;
  10991.                     xoffset: 0;
  10992.                     yoffset: 0;
  10993.                     zoffset: 0;
  10994.                     xextent: 16;
  10995.                     yextent: 16;
  10996.                     zextent: 32;
  10997.                     always_draw: 1;
  10998.                     hide_sprite: (construction_state != 1);
  10999.                 }
  11000.                 building {
  11001.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  11002.                     recolour_mode: RECOLOUR_REMAP;
  11003.                     palette: PALETTE_USE_DEFAULT;
  11004.                     xoffset: 0;
  11005.                     yoffset: 0;
  11006.                     zoffset: 0;
  11007.                     xextent: 16;
  11008.                     yextent: 16;
  11009.                     zextent: 32;
  11010.                     always_draw: 1;
  11011.                     hide_sprite: (construction_state != 2);
  11012.                 }
  11013.                 // construction states - optional (no snow awareness)
  11014.                 building {
  11015.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  11016.                     recolour_mode: RECOLOUR_REMAP;
  11017.                     palette: PALETTE_USE_DEFAULT;
  11018.                     xoffset: 0;
  11019.                     yoffset: 0;
  11020.                     zoffset: 18;
  11021.                     xextent: 16;
  11022.                     yextent: 16;
  11023.                     zextent: 32;
  11024.                     always_draw: 0;
  11025.                     hide_sprite: (construction_state != 0);
  11026.                 }
  11027.                 building {
  11028.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  11029.                     recolour_mode: RECOLOUR_REMAP;
  11030.                     palette: PALETTE_USE_DEFAULT;
  11031.                     xoffset: 0;
  11032.                     yoffset: 0;
  11033.                     zoffset: 18;
  11034.                     xextent: 16;
  11035.                     yextent: 16;
  11036.                     zextent: 32;
  11037.                     always_draw: 0;
  11038.                     hide_sprite: (construction_state != 1);
  11039.                 }
  11040.                 building {
  11041.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  11042.                     recolour_mode: RECOLOUR_REMAP;
  11043.                     palette: PALETTE_USE_DEFAULT;
  11044.                     xoffset: 0;
  11045.                     yoffset: 0;
  11046.                     zoffset: 18;
  11047.                     xextent: 16;
  11048.                     yextent: 16;
  11049.                     zextent: 32;
  11050.                     always_draw: 0;
  11051.                     hide_sprite: (construction_state != 2);
  11052.                 }
  11053.                     // buildings (snow aware)
  11054.                     building {
  11055.                         sprite: port_spriteset_2_0(0);
  11056.                         recolour_mode: RECOLOUR_REMAP;
  11057.                         palette: PALETTE_USE_DEFAULT;
  11058.                         xoffset: 0;
  11059.                         yoffset: 0;
  11060.                         zoffset: 0;
  11061.                         xextent: 16;
  11062.                         yextent: 16;
  11063.                         zextent: 32;
  11064.                         always_draw: 1;
  11065.                         hide_sprite: (LOAD_TEMP(255));
  11066.                     }
  11067.                     building {
  11068.                         sprite: port_spriteset_2_0_snow(0);
  11069.                         recolour_mode: RECOLOUR_REMAP;
  11070.                         palette: PALETTE_USE_DEFAULT;
  11071.                         xoffset: 0;
  11072.                         yoffset: 0;
  11073.                         zoffset: 0;
  11074.                         xextent: 16;
  11075.                         yextent: 16;
  11076.                         zextent: 32;
  11077.                         always_draw: 1;
  11078.                         hide_sprite: (LOAD_TEMP(245));
  11079.                     }
  11080.                     // buildings (snow aware)
  11081.                     building {
  11082.                         sprite: port_spriteset_3_0(0);
  11083.                         recolour_mode: RECOLOUR_REMAP;
  11084.                         palette: PALETTE_USE_DEFAULT;
  11085.                         xoffset: 0;
  11086.                         yoffset: 0;
  11087.                         zoffset: 0;
  11088.                         xextent: 16;
  11089.                         yextent: 16;
  11090.                         zextent: 32;
  11091.                         always_draw: 1;
  11092.                         hide_sprite: (LOAD_TEMP(255));
  11093.                     }
  11094.                     building {
  11095.                         sprite: port_spriteset_3_0_snow(0);
  11096.                         recolour_mode: RECOLOUR_REMAP;
  11097.                         palette: PALETTE_USE_DEFAULT;
  11098.                         xoffset: 0;
  11099.                         yoffset: 0;
  11100.                         zoffset: 0;
  11101.                         xextent: 16;
  11102.                         yextent: 16;
  11103.                         zextent: 32;
  11104.                         always_draw: 1;
  11105.                         hide_sprite: (LOAD_TEMP(245));
  11106.                     }
  11107.                     // buildings (snow aware)
  11108.                     building {
  11109.                         sprite: port_spriteset_1_0(0);
  11110.                         recolour_mode: RECOLOUR_REMAP;
  11111.                         palette: PALETTE_USE_DEFAULT;
  11112.                         xoffset: 0;
  11113.                         yoffset: 0;
  11114.                         zoffset: 0;
  11115.                         xextent: 16;
  11116.                         yextent: 16;
  11117.                         zextent: 32;
  11118.                         always_draw: 1;
  11119.                         hide_sprite: (LOAD_TEMP(255));
  11120.                     }
  11121.                     building {
  11122.                         sprite: port_spriteset_1_0_snow(0);
  11123.                         recolour_mode: RECOLOUR_REMAP;
  11124.                         palette: PALETTE_USE_DEFAULT;
  11125.                         xoffset: 0;
  11126.                         yoffset: 0;
  11127.                         zoffset: 0;
  11128.                         xextent: 16;
  11129.                         yextent: 16;
  11130.                         zextent: 32;
  11131.                         always_draw: 1;
  11132.                         hide_sprite: (LOAD_TEMP(245));
  11133.                     }
  11134.                     // buildings (snow aware)
  11135.                     building {
  11136.                         sprite: port_spriteset_18_0(0);
  11137.                         recolour_mode: RECOLOUR_REMAP;
  11138.                         palette: PALETTE_USE_DEFAULT;
  11139.                         xoffset: 0;
  11140.                         yoffset: 0;
  11141.                         zoffset: 18;
  11142.                         xextent: 16;
  11143.                         yextent: 16;
  11144.                         zextent: 32;
  11145.                         always_draw: 0;
  11146.                         hide_sprite: (LOAD_TEMP(255));
  11147.                     }
  11148.                     building {
  11149.                         sprite: port_spriteset_18_0_snow(0);
  11150.                         recolour_mode: RECOLOUR_REMAP;
  11151.                         palette: PALETTE_USE_DEFAULT;
  11152.                         xoffset: 0;
  11153.                         yoffset: 0;
  11154.                         zoffset: 18;
  11155.                         xextent: 16;
  11156.                         yextent: 16;
  11157.                         zextent: 32;
  11158.                         always_draw: 0;
  11159.                         hide_sprite: (LOAD_TEMP(245));
  11160.                     }
  11161.         }
  11162.         spritelayout port_spritelayout_coast_truck2 {
  11163.             // Industry-specific ground (snow aware)
  11164.             // non-snow
  11165.             childsprite {
  11166.                 sprite: port_spriteset_0_0(0);
  11167.                 recolour_mode: RECOLOUR_REMAP;
  11168.                 palette: PALETTE_USE_DEFAULT;
  11169.                 hide_sprite: (LOAD_TEMP(13));
  11170.                 always_draw: 1;
  11171.             }
  11172.             childsprite {
  11173.                 sprite: port_spriteset_0_0(0);
  11174.                 recolour_mode: RECOLOUR_REMAP;
  11175.                 palette: PALETTE_USE_DEFAULT;
  11176.                 hide_sprite: (LOAD_TEMP(13));
  11177.                 always_draw: 1;
  11178.             }
  11179.             // snow
  11180.             childsprite {
  11181.                 sprite: port_spriteset_0_0_snow(0);
  11182.                 recolour_mode: RECOLOUR_REMAP;
  11183.                 palette: PALETTE_USE_DEFAULT;
  11184.                 hide_sprite: (!LOAD_TEMP(13));
  11185.                 always_draw: 1;
  11186.             }
  11187.             childsprite {
  11188.                 sprite: port_spriteset_0_0_snow(0);
  11189.                 recolour_mode: RECOLOUR_REMAP;
  11190.                 palette: PALETTE_USE_DEFAULT;
  11191.                 hide_sprite: (!LOAD_TEMP(13));
  11192.                 always_draw: 1;
  11193.             }
  11194.                 // construction states - optional (no snow awareness)
  11195.                 building {
  11196.                     sprite: port_spriteset_7_spriteset_default_construction_state_0(0);
  11197.                     recolour_mode: RECOLOUR_REMAP;
  11198.                     palette: PALETTE_USE_DEFAULT;
  11199.                     xoffset: 0;
  11200.                     yoffset: 0;
  11201.                     zoffset: 0;
  11202.                     xextent: 16;
  11203.                     yextent: 16;
  11204.                     zextent: 32;
  11205.                     always_draw: 0;
  11206.                     hide_sprite: (construction_state != 0);
  11207.                 }
  11208.                 building {
  11209.                     sprite: port_spriteset_7_spriteset_default_construction_state_1(0);
  11210.                     recolour_mode: RECOLOUR_REMAP;
  11211.                     palette: PALETTE_USE_DEFAULT;
  11212.                     xoffset: 0;
  11213.                     yoffset: 0;
  11214.                     zoffset: 0;
  11215.                     xextent: 16;
  11216.                     yextent: 16;
  11217.                     zextent: 32;
  11218.                     always_draw: 0;
  11219.                     hide_sprite: (construction_state != 1);
  11220.                 }
  11221.                 building {
  11222.                     sprite: port_spriteset_7_spriteset_default_construction_state_2(0);
  11223.                     recolour_mode: RECOLOUR_REMAP;
  11224.                     palette: PALETTE_USE_DEFAULT;
  11225.                     xoffset: 0;
  11226.                     yoffset: 0;
  11227.                     zoffset: 0;
  11228.                     xextent: 16;
  11229.                     yextent: 16;
  11230.                     zextent: 32;
  11231.                     always_draw: 0;
  11232.                     hide_sprite: (construction_state != 2);
  11233.                 }
  11234.                 // construction states - optional (no snow awareness)
  11235.                 building {
  11236.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  11237.                     recolour_mode: RECOLOUR_REMAP;
  11238.                     palette: PALETTE_USE_DEFAULT;
  11239.                     xoffset: 0;
  11240.                     yoffset: 0;
  11241.                     zoffset: 0;
  11242.                     xextent: 16;
  11243.                     yextent: 16;
  11244.                     zextent: 32;
  11245.                     always_draw: 1;
  11246.                     hide_sprite: (construction_state != 0);
  11247.                 }
  11248.                 building {
  11249.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  11250.                     recolour_mode: RECOLOUR_REMAP;
  11251.                     palette: PALETTE_USE_DEFAULT;
  11252.                     xoffset: 0;
  11253.                     yoffset: 0;
  11254.                     zoffset: 0;
  11255.                     xextent: 16;
  11256.                     yextent: 16;
  11257.                     zextent: 32;
  11258.                     always_draw: 1;
  11259.                     hide_sprite: (construction_state != 1);
  11260.                 }
  11261.                 building {
  11262.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  11263.                     recolour_mode: RECOLOUR_REMAP;
  11264.                     palette: PALETTE_USE_DEFAULT;
  11265.                     xoffset: 0;
  11266.                     yoffset: 0;
  11267.                     zoffset: 0;
  11268.                     xextent: 16;
  11269.                     yextent: 16;
  11270.                     zextent: 32;
  11271.                     always_draw: 1;
  11272.                     hide_sprite: (construction_state != 2);
  11273.                 }
  11274.                 // construction states - optional (no snow awareness)
  11275.                 building {
  11276.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  11277.                     recolour_mode: RECOLOUR_REMAP;
  11278.                     palette: PALETTE_USE_DEFAULT;
  11279.                     xoffset: 0;
  11280.                     yoffset: 0;
  11281.                     zoffset: 18;
  11282.                     xextent: 16;
  11283.                     yextent: 16;
  11284.                     zextent: 32;
  11285.                     always_draw: 0;
  11286.                     hide_sprite: (construction_state != 0);
  11287.                 }
  11288.                 building {
  11289.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  11290.                     recolour_mode: RECOLOUR_REMAP;
  11291.                     palette: PALETTE_USE_DEFAULT;
  11292.                     xoffset: 0;
  11293.                     yoffset: 0;
  11294.                     zoffset: 18;
  11295.                     xextent: 16;
  11296.                     yextent: 16;
  11297.                     zextent: 32;
  11298.                     always_draw: 0;
  11299.                     hide_sprite: (construction_state != 1);
  11300.                 }
  11301.                 building {
  11302.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  11303.                     recolour_mode: RECOLOUR_REMAP;
  11304.                     palette: PALETTE_USE_DEFAULT;
  11305.                     xoffset: 0;
  11306.                     yoffset: 0;
  11307.                     zoffset: 18;
  11308.                     xextent: 16;
  11309.                     yextent: 16;
  11310.                     zextent: 32;
  11311.                     always_draw: 0;
  11312.                     hide_sprite: (construction_state != 2);
  11313.                 }
  11314.                     // buildings (snow aware)
  11315.                     building {
  11316.                         sprite: port_spriteset_7_0(0);
  11317.                         recolour_mode: RECOLOUR_REMAP;
  11318.                         palette: PALETTE_USE_DEFAULT;
  11319.                         xoffset: 0;
  11320.                         yoffset: 0;
  11321.                         zoffset: 0;
  11322.                         xextent: 16;
  11323.                         yextent: 16;
  11324.                         zextent: 32;
  11325.                         always_draw: 0;
  11326.                         hide_sprite: (LOAD_TEMP(255));
  11327.                     }
  11328.                     building {
  11329.                         sprite: port_spriteset_7_0_snow(0);
  11330.                         recolour_mode: RECOLOUR_REMAP;
  11331.                         palette: PALETTE_USE_DEFAULT;
  11332.                         xoffset: 0;
  11333.                         yoffset: 0;
  11334.                         zoffset: 0;
  11335.                         xextent: 16;
  11336.                         yextent: 16;
  11337.                         zextent: 32;
  11338.                         always_draw: 0;
  11339.                         hide_sprite: (LOAD_TEMP(245));
  11340.                     }
  11341.                     // buildings (snow aware)
  11342.                     building {
  11343.                         sprite: port_spriteset_1_0(0);
  11344.                         recolour_mode: RECOLOUR_REMAP;
  11345.                         palette: PALETTE_USE_DEFAULT;
  11346.                         xoffset: 0;
  11347.                         yoffset: 0;
  11348.                         zoffset: 0;
  11349.                         xextent: 16;
  11350.                         yextent: 16;
  11351.                         zextent: 32;
  11352.                         always_draw: 1;
  11353.                         hide_sprite: (LOAD_TEMP(255));
  11354.                     }
  11355.                     building {
  11356.                         sprite: port_spriteset_1_0_snow(0);
  11357.                         recolour_mode: RECOLOUR_REMAP;
  11358.                         palette: PALETTE_USE_DEFAULT;
  11359.                         xoffset: 0;
  11360.                         yoffset: 0;
  11361.                         zoffset: 0;
  11362.                         xextent: 16;
  11363.                         yextent: 16;
  11364.                         zextent: 32;
  11365.                         always_draw: 1;
  11366.                         hide_sprite: (LOAD_TEMP(245));
  11367.                     }
  11368.                     // buildings (snow aware)
  11369.                     building {
  11370.                         sprite: port_spriteset_18_0(0);
  11371.                         recolour_mode: RECOLOUR_REMAP;
  11372.                         palette: PALETTE_USE_DEFAULT;
  11373.                         xoffset: 0;
  11374.                         yoffset: 0;
  11375.                         zoffset: 18;
  11376.                         xextent: 16;
  11377.                         yextent: 16;
  11378.                         zextent: 32;
  11379.                         always_draw: 0;
  11380.                         hide_sprite: (LOAD_TEMP(255));
  11381.                     }
  11382.                     building {
  11383.                         sprite: port_spriteset_18_0_snow(0);
  11384.                         recolour_mode: RECOLOUR_REMAP;
  11385.                         palette: PALETTE_USE_DEFAULT;
  11386.                         xoffset: 0;
  11387.                         yoffset: 0;
  11388.                         zoffset: 18;
  11389.                         xextent: 16;
  11390.                         yextent: 16;
  11391.                         zextent: 32;
  11392.                         always_draw: 0;
  11393.                         hide_sprite: (LOAD_TEMP(245));
  11394.                     }
  11395.         }
  11396.         spritelayout port_spritelayout_coast_truck8 {
  11397.             // Industry-specific ground (snow aware)
  11398.             // non-snow
  11399.             childsprite {
  11400.                 sprite: port_spriteset_0_0(0);
  11401.                 recolour_mode: RECOLOUR_REMAP;
  11402.                 palette: PALETTE_USE_DEFAULT;
  11403.                 hide_sprite: (LOAD_TEMP(13));
  11404.                 always_draw: 1;
  11405.             }
  11406.             childsprite {
  11407.                 sprite: port_spriteset_0_0(0);
  11408.                 recolour_mode: RECOLOUR_REMAP;
  11409.                 palette: PALETTE_USE_DEFAULT;
  11410.                 hide_sprite: (LOAD_TEMP(13));
  11411.                 always_draw: 1;
  11412.             }
  11413.             // snow
  11414.             childsprite {
  11415.                 sprite: port_spriteset_0_0_snow(0);
  11416.                 recolour_mode: RECOLOUR_REMAP;
  11417.                 palette: PALETTE_USE_DEFAULT;
  11418.                 hide_sprite: (!LOAD_TEMP(13));
  11419.                 always_draw: 1;
  11420.             }
  11421.             childsprite {
  11422.                 sprite: port_spriteset_0_0_snow(0);
  11423.                 recolour_mode: RECOLOUR_REMAP;
  11424.                 palette: PALETTE_USE_DEFAULT;
  11425.                 hide_sprite: (!LOAD_TEMP(13));
  11426.                 always_draw: 1;
  11427.             }
  11428.                 // construction states - optional (no snow awareness)
  11429.                 building {
  11430.                     sprite: port_spriteset_6_spriteset_default_construction_state_0(0);
  11431.                     recolour_mode: RECOLOUR_REMAP;
  11432.                     palette: PALETTE_USE_DEFAULT;
  11433.                     xoffset: 0;
  11434.                     yoffset: 0;
  11435.                     zoffset: 0;
  11436.                     xextent: 16;
  11437.                     yextent: 16;
  11438.                     zextent: 32;
  11439.                     always_draw: 0;
  11440.                     hide_sprite: (construction_state != 0);
  11441.                 }
  11442.                 building {
  11443.                     sprite: port_spriteset_6_spriteset_default_construction_state_1(0);
  11444.                     recolour_mode: RECOLOUR_REMAP;
  11445.                     palette: PALETTE_USE_DEFAULT;
  11446.                     xoffset: 0;
  11447.                     yoffset: 0;
  11448.                     zoffset: 0;
  11449.                     xextent: 16;
  11450.                     yextent: 16;
  11451.                     zextent: 32;
  11452.                     always_draw: 0;
  11453.                     hide_sprite: (construction_state != 1);
  11454.                 }
  11455.                 building {
  11456.                     sprite: port_spriteset_6_spriteset_default_construction_state_2(0);
  11457.                     recolour_mode: RECOLOUR_REMAP;
  11458.                     palette: PALETTE_USE_DEFAULT;
  11459.                     xoffset: 0;
  11460.                     yoffset: 0;
  11461.                     zoffset: 0;
  11462.                     xextent: 16;
  11463.                     yextent: 16;
  11464.                     zextent: 32;
  11465.                     always_draw: 0;
  11466.                     hide_sprite: (construction_state != 2);
  11467.                 }
  11468.                 // construction states - optional (no snow awareness)
  11469.                 building {
  11470.                     sprite: port_spriteset_7_spriteset_default_construction_state_0(0);
  11471.                     recolour_mode: RECOLOUR_REMAP;
  11472.                     palette: PALETTE_USE_DEFAULT;
  11473.                     xoffset: 0;
  11474.                     yoffset: 0;
  11475.                     zoffset: 0;
  11476.                     xextent: 16;
  11477.                     yextent: 16;
  11478.                     zextent: 32;
  11479.                     always_draw: 0;
  11480.                     hide_sprite: (construction_state != 0);
  11481.                 }
  11482.                 building {
  11483.                     sprite: port_spriteset_7_spriteset_default_construction_state_1(0);
  11484.                     recolour_mode: RECOLOUR_REMAP;
  11485.                     palette: PALETTE_USE_DEFAULT;
  11486.                     xoffset: 0;
  11487.                     yoffset: 0;
  11488.                     zoffset: 0;
  11489.                     xextent: 16;
  11490.                     yextent: 16;
  11491.                     zextent: 32;
  11492.                     always_draw: 0;
  11493.                     hide_sprite: (construction_state != 1);
  11494.                 }
  11495.                 building {
  11496.                     sprite: port_spriteset_7_spriteset_default_construction_state_2(0);
  11497.                     recolour_mode: RECOLOUR_REMAP;
  11498.                     palette: PALETTE_USE_DEFAULT;
  11499.                     xoffset: 0;
  11500.                     yoffset: 0;
  11501.                     zoffset: 0;
  11502.                     xextent: 16;
  11503.                     yextent: 16;
  11504.                     zextent: 32;
  11505.                     always_draw: 0;
  11506.                     hide_sprite: (construction_state != 2);
  11507.                 }
  11508.                 // construction states - optional (no snow awareness)
  11509.                 building {
  11510.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  11511.                     recolour_mode: RECOLOUR_REMAP;
  11512.                     palette: PALETTE_USE_DEFAULT;
  11513.                     xoffset: 0;
  11514.                     yoffset: 0;
  11515.                     zoffset: 0;
  11516.                     xextent: 16;
  11517.                     yextent: 16;
  11518.                     zextent: 32;
  11519.                     always_draw: 1;
  11520.                     hide_sprite: (construction_state != 0);
  11521.                 }
  11522.                 building {
  11523.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  11524.                     recolour_mode: RECOLOUR_REMAP;
  11525.                     palette: PALETTE_USE_DEFAULT;
  11526.                     xoffset: 0;
  11527.                     yoffset: 0;
  11528.                     zoffset: 0;
  11529.                     xextent: 16;
  11530.                     yextent: 16;
  11531.                     zextent: 32;
  11532.                     always_draw: 1;
  11533.                     hide_sprite: (construction_state != 1);
  11534.                 }
  11535.                 building {
  11536.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  11537.                     recolour_mode: RECOLOUR_REMAP;
  11538.                     palette: PALETTE_USE_DEFAULT;
  11539.                     xoffset: 0;
  11540.                     yoffset: 0;
  11541.                     zoffset: 0;
  11542.                     xextent: 16;
  11543.                     yextent: 16;
  11544.                     zextent: 32;
  11545.                     always_draw: 1;
  11546.                     hide_sprite: (construction_state != 2);
  11547.                 }
  11548.                 // construction states - optional (no snow awareness)
  11549.                 building {
  11550.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  11551.                     recolour_mode: RECOLOUR_REMAP;
  11552.                     palette: PALETTE_USE_DEFAULT;
  11553.                     xoffset: 0;
  11554.                     yoffset: 0;
  11555.                     zoffset: 18;
  11556.                     xextent: 16;
  11557.                     yextent: 16;
  11558.                     zextent: 32;
  11559.                     always_draw: 0;
  11560.                     hide_sprite: (construction_state != 0);
  11561.                 }
  11562.                 building {
  11563.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  11564.                     recolour_mode: RECOLOUR_REMAP;
  11565.                     palette: PALETTE_USE_DEFAULT;
  11566.                     xoffset: 0;
  11567.                     yoffset: 0;
  11568.                     zoffset: 18;
  11569.                     xextent: 16;
  11570.                     yextent: 16;
  11571.                     zextent: 32;
  11572.                     always_draw: 0;
  11573.                     hide_sprite: (construction_state != 1);
  11574.                 }
  11575.                 building {
  11576.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  11577.                     recolour_mode: RECOLOUR_REMAP;
  11578.                     palette: PALETTE_USE_DEFAULT;
  11579.                     xoffset: 0;
  11580.                     yoffset: 0;
  11581.                     zoffset: 18;
  11582.                     xextent: 16;
  11583.                     yextent: 16;
  11584.                     zextent: 32;
  11585.                     always_draw: 0;
  11586.                     hide_sprite: (construction_state != 2);
  11587.                 }
  11588.                     // buildings (snow aware)
  11589.                     building {
  11590.                         sprite: port_spriteset_6_0(0);
  11591.                         recolour_mode: RECOLOUR_REMAP;
  11592.                         palette: PALETTE_USE_DEFAULT;
  11593.                         xoffset: 0;
  11594.                         yoffset: 0;
  11595.                         zoffset: 0;
  11596.                         xextent: 16;
  11597.                         yextent: 16;
  11598.                         zextent: 32;
  11599.                         always_draw: 0;
  11600.                         hide_sprite: (LOAD_TEMP(255));
  11601.                     }
  11602.                     building {
  11603.                         sprite: port_spriteset_6_0_snow(0);
  11604.                         recolour_mode: RECOLOUR_REMAP;
  11605.                         palette: PALETTE_USE_DEFAULT;
  11606.                         xoffset: 0;
  11607.                         yoffset: 0;
  11608.                         zoffset: 0;
  11609.                         xextent: 16;
  11610.                         yextent: 16;
  11611.                         zextent: 32;
  11612.                         always_draw: 0;
  11613.                         hide_sprite: (LOAD_TEMP(245));
  11614.                     }
  11615.                     // buildings (snow aware)
  11616.                     building {
  11617.                         sprite: port_spriteset_7_0(0);
  11618.                         recolour_mode: RECOLOUR_REMAP;
  11619.                         palette: PALETTE_USE_DEFAULT;
  11620.                         xoffset: 0;
  11621.                         yoffset: 0;
  11622.                         zoffset: 0;
  11623.                         xextent: 16;
  11624.                         yextent: 16;
  11625.                         zextent: 32;
  11626.                         always_draw: 0;
  11627.                         hide_sprite: (LOAD_TEMP(255));
  11628.                     }
  11629.                     building {
  11630.                         sprite: port_spriteset_7_0_snow(0);
  11631.                         recolour_mode: RECOLOUR_REMAP;
  11632.                         palette: PALETTE_USE_DEFAULT;
  11633.                         xoffset: 0;
  11634.                         yoffset: 0;
  11635.                         zoffset: 0;
  11636.                         xextent: 16;
  11637.                         yextent: 16;
  11638.                         zextent: 32;
  11639.                         always_draw: 0;
  11640.                         hide_sprite: (LOAD_TEMP(245));
  11641.                     }
  11642.                     // buildings (snow aware)
  11643.                     building {
  11644.                         sprite: port_spriteset_1_0(0);
  11645.                         recolour_mode: RECOLOUR_REMAP;
  11646.                         palette: PALETTE_USE_DEFAULT;
  11647.                         xoffset: 0;
  11648.                         yoffset: 0;
  11649.                         zoffset: 0;
  11650.                         xextent: 16;
  11651.                         yextent: 16;
  11652.                         zextent: 32;
  11653.                         always_draw: 1;
  11654.                         hide_sprite: (LOAD_TEMP(255));
  11655.                     }
  11656.                     building {
  11657.                         sprite: port_spriteset_1_0_snow(0);
  11658.                         recolour_mode: RECOLOUR_REMAP;
  11659.                         palette: PALETTE_USE_DEFAULT;
  11660.                         xoffset: 0;
  11661.                         yoffset: 0;
  11662.                         zoffset: 0;
  11663.                         xextent: 16;
  11664.                         yextent: 16;
  11665.                         zextent: 32;
  11666.                         always_draw: 1;
  11667.                         hide_sprite: (LOAD_TEMP(245));
  11668.                     }
  11669.                     // buildings (snow aware)
  11670.                     building {
  11671.                         sprite: port_spriteset_18_0(0);
  11672.                         recolour_mode: RECOLOUR_REMAP;
  11673.                         palette: PALETTE_USE_DEFAULT;
  11674.                         xoffset: 0;
  11675.                         yoffset: 0;
  11676.                         zoffset: 18;
  11677.                         xextent: 16;
  11678.                         yextent: 16;
  11679.                         zextent: 32;
  11680.                         always_draw: 0;
  11681.                         hide_sprite: (LOAD_TEMP(255));
  11682.                     }
  11683.                     building {
  11684.                         sprite: port_spriteset_18_0_snow(0);
  11685.                         recolour_mode: RECOLOUR_REMAP;
  11686.                         palette: PALETTE_USE_DEFAULT;
  11687.                         xoffset: 0;
  11688.                         yoffset: 0;
  11689.                         zoffset: 18;
  11690.                         xextent: 16;
  11691.                         yextent: 16;
  11692.                         zextent: 32;
  11693.                         always_draw: 0;
  11694.                         hide_sprite: (LOAD_TEMP(245));
  11695.                     }
  11696.         }
  11697.         spritelayout port_spritelayout_coast_truck7 {
  11698.             // Industry-specific ground (snow aware)
  11699.             // non-snow
  11700.             childsprite {
  11701.                 sprite: port_spriteset_0_0(0);
  11702.                 recolour_mode: RECOLOUR_REMAP;
  11703.                 palette: PALETTE_USE_DEFAULT;
  11704.                 hide_sprite: (LOAD_TEMP(13));
  11705.                 always_draw: 1;
  11706.             }
  11707.             childsprite {
  11708.                 sprite: port_spriteset_0_0(0);
  11709.                 recolour_mode: RECOLOUR_REMAP;
  11710.                 palette: PALETTE_USE_DEFAULT;
  11711.                 hide_sprite: (LOAD_TEMP(13));
  11712.                 always_draw: 1;
  11713.             }
  11714.             // snow
  11715.             childsprite {
  11716.                 sprite: port_spriteset_0_0_snow(0);
  11717.                 recolour_mode: RECOLOUR_REMAP;
  11718.                 palette: PALETTE_USE_DEFAULT;
  11719.                 hide_sprite: (!LOAD_TEMP(13));
  11720.                 always_draw: 1;
  11721.             }
  11722.             childsprite {
  11723.                 sprite: port_spriteset_0_0_snow(0);
  11724.                 recolour_mode: RECOLOUR_REMAP;
  11725.                 palette: PALETTE_USE_DEFAULT;
  11726.                 hide_sprite: (!LOAD_TEMP(13));
  11727.                 always_draw: 1;
  11728.             }
  11729.                 // construction states - optional (no snow awareness)
  11730.                 building {
  11731.                     sprite: port_spriteset_6_spriteset_default_construction_state_0(0);
  11732.                     recolour_mode: RECOLOUR_REMAP;
  11733.                     palette: PALETTE_USE_DEFAULT;
  11734.                     xoffset: 0;
  11735.                     yoffset: 0;
  11736.                     zoffset: 0;
  11737.                     xextent: 16;
  11738.                     yextent: 16;
  11739.                     zextent: 32;
  11740.                     always_draw: 0;
  11741.                     hide_sprite: (construction_state != 0);
  11742.                 }
  11743.                 building {
  11744.                     sprite: port_spriteset_6_spriteset_default_construction_state_1(0);
  11745.                     recolour_mode: RECOLOUR_REMAP;
  11746.                     palette: PALETTE_USE_DEFAULT;
  11747.                     xoffset: 0;
  11748.                     yoffset: 0;
  11749.                     zoffset: 0;
  11750.                     xextent: 16;
  11751.                     yextent: 16;
  11752.                     zextent: 32;
  11753.                     always_draw: 0;
  11754.                     hide_sprite: (construction_state != 1);
  11755.                 }
  11756.                 building {
  11757.                     sprite: port_spriteset_6_spriteset_default_construction_state_2(0);
  11758.                     recolour_mode: RECOLOUR_REMAP;
  11759.                     palette: PALETTE_USE_DEFAULT;
  11760.                     xoffset: 0;
  11761.                     yoffset: 0;
  11762.                     zoffset: 0;
  11763.                     xextent: 16;
  11764.                     yextent: 16;
  11765.                     zextent: 32;
  11766.                     always_draw: 0;
  11767.                     hide_sprite: (construction_state != 2);
  11768.                 }
  11769.                 // construction states - optional (no snow awareness)
  11770.                 building {
  11771.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  11772.                     recolour_mode: RECOLOUR_REMAP;
  11773.                     palette: PALETTE_USE_DEFAULT;
  11774.                     xoffset: 0;
  11775.                     yoffset: 0;
  11776.                     zoffset: 0;
  11777.                     xextent: 16;
  11778.                     yextent: 16;
  11779.                     zextent: 32;
  11780.                     always_draw: 1;
  11781.                     hide_sprite: (construction_state != 0);
  11782.                 }
  11783.                 building {
  11784.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  11785.                     recolour_mode: RECOLOUR_REMAP;
  11786.                     palette: PALETTE_USE_DEFAULT;
  11787.                     xoffset: 0;
  11788.                     yoffset: 0;
  11789.                     zoffset: 0;
  11790.                     xextent: 16;
  11791.                     yextent: 16;
  11792.                     zextent: 32;
  11793.                     always_draw: 1;
  11794.                     hide_sprite: (construction_state != 1);
  11795.                 }
  11796.                 building {
  11797.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  11798.                     recolour_mode: RECOLOUR_REMAP;
  11799.                     palette: PALETTE_USE_DEFAULT;
  11800.                     xoffset: 0;
  11801.                     yoffset: 0;
  11802.                     zoffset: 0;
  11803.                     xextent: 16;
  11804.                     yextent: 16;
  11805.                     zextent: 32;
  11806.                     always_draw: 1;
  11807.                     hide_sprite: (construction_state != 2);
  11808.                 }
  11809.                 // construction states - optional (no snow awareness)
  11810.                 building {
  11811.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  11812.                     recolour_mode: RECOLOUR_REMAP;
  11813.                     palette: PALETTE_USE_DEFAULT;
  11814.                     xoffset: 0;
  11815.                     yoffset: 0;
  11816.                     zoffset: 18;
  11817.                     xextent: 16;
  11818.                     yextent: 16;
  11819.                     zextent: 32;
  11820.                     always_draw: 0;
  11821.                     hide_sprite: (construction_state != 0);
  11822.                 }
  11823.                 building {
  11824.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  11825.                     recolour_mode: RECOLOUR_REMAP;
  11826.                     palette: PALETTE_USE_DEFAULT;
  11827.                     xoffset: 0;
  11828.                     yoffset: 0;
  11829.                     zoffset: 18;
  11830.                     xextent: 16;
  11831.                     yextent: 16;
  11832.                     zextent: 32;
  11833.                     always_draw: 0;
  11834.                     hide_sprite: (construction_state != 1);
  11835.                 }
  11836.                 building {
  11837.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  11838.                     recolour_mode: RECOLOUR_REMAP;
  11839.                     palette: PALETTE_USE_DEFAULT;
  11840.                     xoffset: 0;
  11841.                     yoffset: 0;
  11842.                     zoffset: 18;
  11843.                     xextent: 16;
  11844.                     yextent: 16;
  11845.                     zextent: 32;
  11846.                     always_draw: 0;
  11847.                     hide_sprite: (construction_state != 2);
  11848.                 }
  11849.                     // buildings (snow aware)
  11850.                     building {
  11851.                         sprite: port_spriteset_6_0(0);
  11852.                         recolour_mode: RECOLOUR_REMAP;
  11853.                         palette: PALETTE_USE_DEFAULT;
  11854.                         xoffset: 0;
  11855.                         yoffset: 0;
  11856.                         zoffset: 0;
  11857.                         xextent: 16;
  11858.                         yextent: 16;
  11859.                         zextent: 32;
  11860.                         always_draw: 0;
  11861.                         hide_sprite: (LOAD_TEMP(255));
  11862.                     }
  11863.                     building {
  11864.                         sprite: port_spriteset_6_0_snow(0);
  11865.                         recolour_mode: RECOLOUR_REMAP;
  11866.                         palette: PALETTE_USE_DEFAULT;
  11867.                         xoffset: 0;
  11868.                         yoffset: 0;
  11869.                         zoffset: 0;
  11870.                         xextent: 16;
  11871.                         yextent: 16;
  11872.                         zextent: 32;
  11873.                         always_draw: 0;
  11874.                         hide_sprite: (LOAD_TEMP(245));
  11875.                     }
  11876.                     // buildings (snow aware)
  11877.                     building {
  11878.                         sprite: port_spriteset_1_0(0);
  11879.                         recolour_mode: RECOLOUR_REMAP;
  11880.                         palette: PALETTE_USE_DEFAULT;
  11881.                         xoffset: 0;
  11882.                         yoffset: 0;
  11883.                         zoffset: 0;
  11884.                         xextent: 16;
  11885.                         yextent: 16;
  11886.                         zextent: 32;
  11887.                         always_draw: 1;
  11888.                         hide_sprite: (LOAD_TEMP(255));
  11889.                     }
  11890.                     building {
  11891.                         sprite: port_spriteset_1_0_snow(0);
  11892.                         recolour_mode: RECOLOUR_REMAP;
  11893.                         palette: PALETTE_USE_DEFAULT;
  11894.                         xoffset: 0;
  11895.                         yoffset: 0;
  11896.                         zoffset: 0;
  11897.                         xextent: 16;
  11898.                         yextent: 16;
  11899.                         zextent: 32;
  11900.                         always_draw: 1;
  11901.                         hide_sprite: (LOAD_TEMP(245));
  11902.                     }
  11903.                     // buildings (snow aware)
  11904.                     building {
  11905.                         sprite: port_spriteset_18_0(0);
  11906.                         recolour_mode: RECOLOUR_REMAP;
  11907.                         palette: PALETTE_USE_DEFAULT;
  11908.                         xoffset: 0;
  11909.                         yoffset: 0;
  11910.                         zoffset: 18;
  11911.                         xextent: 16;
  11912.                         yextent: 16;
  11913.                         zextent: 32;
  11914.                         always_draw: 0;
  11915.                         hide_sprite: (LOAD_TEMP(255));
  11916.                     }
  11917.                     building {
  11918.                         sprite: port_spriteset_18_0_snow(0);
  11919.                         recolour_mode: RECOLOUR_REMAP;
  11920.                         palette: PALETTE_USE_DEFAULT;
  11921.                         xoffset: 0;
  11922.                         yoffset: 0;
  11923.                         zoffset: 18;
  11924.                         xextent: 16;
  11925.                         yextent: 16;
  11926.                         zextent: 32;
  11927.                         always_draw: 0;
  11928.                         hide_sprite: (LOAD_TEMP(245));
  11929.                     }
  11930.         }
  11931.         spritelayout port_spritelayout_coast_truck6 {
  11932.             // Industry-specific ground (snow aware)
  11933.             // non-snow
  11934.             childsprite {
  11935.                 sprite: port_spriteset_0_0(0);
  11936.                 recolour_mode: RECOLOUR_REMAP;
  11937.                 palette: PALETTE_USE_DEFAULT;
  11938.                 hide_sprite: (LOAD_TEMP(13));
  11939.                 always_draw: 1;
  11940.             }
  11941.             childsprite {
  11942.                 sprite: port_spriteset_0_0(0);
  11943.                 recolour_mode: RECOLOUR_REMAP;
  11944.                 palette: PALETTE_USE_DEFAULT;
  11945.                 hide_sprite: (LOAD_TEMP(13));
  11946.                 always_draw: 1;
  11947.             }
  11948.             // snow
  11949.             childsprite {
  11950.                 sprite: port_spriteset_0_0_snow(0);
  11951.                 recolour_mode: RECOLOUR_REMAP;
  11952.                 palette: PALETTE_USE_DEFAULT;
  11953.                 hide_sprite: (!LOAD_TEMP(13));
  11954.                 always_draw: 1;
  11955.             }
  11956.             childsprite {
  11957.                 sprite: port_spriteset_0_0_snow(0);
  11958.                 recolour_mode: RECOLOUR_REMAP;
  11959.                 palette: PALETTE_USE_DEFAULT;
  11960.                 hide_sprite: (!LOAD_TEMP(13));
  11961.                 always_draw: 1;
  11962.             }
  11963.                 // construction states - optional (no snow awareness)
  11964.                 building {
  11965.                     sprite: port_spriteset_5_spriteset_default_construction_state_0(0);
  11966.                     recolour_mode: RECOLOUR_REMAP;
  11967.                     palette: PALETTE_USE_DEFAULT;
  11968.                     xoffset: 0;
  11969.                     yoffset: 0;
  11970.                     zoffset: 0;
  11971.                     xextent: 16;
  11972.                     yextent: 16;
  11973.                     zextent: 32;
  11974.                     always_draw: 0;
  11975.                     hide_sprite: (construction_state != 0);
  11976.                 }
  11977.                 building {
  11978.                     sprite: port_spriteset_5_spriteset_default_construction_state_1(0);
  11979.                     recolour_mode: RECOLOUR_REMAP;
  11980.                     palette: PALETTE_USE_DEFAULT;
  11981.                     xoffset: 0;
  11982.                     yoffset: 0;
  11983.                     zoffset: 0;
  11984.                     xextent: 16;
  11985.                     yextent: 16;
  11986.                     zextent: 32;
  11987.                     always_draw: 0;
  11988.                     hide_sprite: (construction_state != 1);
  11989.                 }
  11990.                 building {
  11991.                     sprite: port_spriteset_5_spriteset_default_construction_state_2(0);
  11992.                     recolour_mode: RECOLOUR_REMAP;
  11993.                     palette: PALETTE_USE_DEFAULT;
  11994.                     xoffset: 0;
  11995.                     yoffset: 0;
  11996.                     zoffset: 0;
  11997.                     xextent: 16;
  11998.                     yextent: 16;
  11999.                     zextent: 32;
  12000.                     always_draw: 0;
  12001.                     hide_sprite: (construction_state != 2);
  12002.                 }
  12003.                 // construction states - optional (no snow awareness)
  12004.                 building {
  12005.                     sprite: port_spriteset_2_spriteset_default_construction_state_0(0);
  12006.                     recolour_mode: RECOLOUR_REMAP;
  12007.                     palette: PALETTE_USE_DEFAULT;
  12008.                     xoffset: 0;
  12009.                     yoffset: 0;
  12010.                     zoffset: 0;
  12011.                     xextent: 16;
  12012.                     yextent: 16;
  12013.                     zextent: 32;
  12014.                     always_draw: 1;
  12015.                     hide_sprite: (construction_state != 0);
  12016.                 }
  12017.                 building {
  12018.                     sprite: port_spriteset_2_spriteset_default_construction_state_1(0);
  12019.                     recolour_mode: RECOLOUR_REMAP;
  12020.                     palette: PALETTE_USE_DEFAULT;
  12021.                     xoffset: 0;
  12022.                     yoffset: 0;
  12023.                     zoffset: 0;
  12024.                     xextent: 16;
  12025.                     yextent: 16;
  12026.                     zextent: 32;
  12027.                     always_draw: 1;
  12028.                     hide_sprite: (construction_state != 1);
  12029.                 }
  12030.                 building {
  12031.                     sprite: port_spriteset_2_spriteset_default_construction_state_2(0);
  12032.                     recolour_mode: RECOLOUR_REMAP;
  12033.                     palette: PALETTE_USE_DEFAULT;
  12034.                     xoffset: 0;
  12035.                     yoffset: 0;
  12036.                     zoffset: 0;
  12037.                     xextent: 16;
  12038.                     yextent: 16;
  12039.                     zextent: 32;
  12040.                     always_draw: 1;
  12041.                     hide_sprite: (construction_state != 2);
  12042.                 }
  12043.                 // construction states - optional (no snow awareness)
  12044.                 building {
  12045.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  12046.                     recolour_mode: RECOLOUR_REMAP;
  12047.                     palette: PALETTE_USE_DEFAULT;
  12048.                     xoffset: 0;
  12049.                     yoffset: 0;
  12050.                     zoffset: 0;
  12051.                     xextent: 16;
  12052.                     yextent: 16;
  12053.                     zextent: 32;
  12054.                     always_draw: 1;
  12055.                     hide_sprite: (construction_state != 0);
  12056.                 }
  12057.                 building {
  12058.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  12059.                     recolour_mode: RECOLOUR_REMAP;
  12060.                     palette: PALETTE_USE_DEFAULT;
  12061.                     xoffset: 0;
  12062.                     yoffset: 0;
  12063.                     zoffset: 0;
  12064.                     xextent: 16;
  12065.                     yextent: 16;
  12066.                     zextent: 32;
  12067.                     always_draw: 1;
  12068.                     hide_sprite: (construction_state != 1);
  12069.                 }
  12070.                 building {
  12071.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  12072.                     recolour_mode: RECOLOUR_REMAP;
  12073.                     palette: PALETTE_USE_DEFAULT;
  12074.                     xoffset: 0;
  12075.                     yoffset: 0;
  12076.                     zoffset: 0;
  12077.                     xextent: 16;
  12078.                     yextent: 16;
  12079.                     zextent: 32;
  12080.                     always_draw: 1;
  12081.                     hide_sprite: (construction_state != 2);
  12082.                 }
  12083.                 // construction states - optional (no snow awareness)
  12084.                 building {
  12085.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  12086.                     recolour_mode: RECOLOUR_REMAP;
  12087.                     palette: PALETTE_USE_DEFAULT;
  12088.                     xoffset: 0;
  12089.                     yoffset: 0;
  12090.                     zoffset: 18;
  12091.                     xextent: 16;
  12092.                     yextent: 16;
  12093.                     zextent: 32;
  12094.                     always_draw: 0;
  12095.                     hide_sprite: (construction_state != 0);
  12096.                 }
  12097.                 building {
  12098.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  12099.                     recolour_mode: RECOLOUR_REMAP;
  12100.                     palette: PALETTE_USE_DEFAULT;
  12101.                     xoffset: 0;
  12102.                     yoffset: 0;
  12103.                     zoffset: 18;
  12104.                     xextent: 16;
  12105.                     yextent: 16;
  12106.                     zextent: 32;
  12107.                     always_draw: 0;
  12108.                     hide_sprite: (construction_state != 1);
  12109.                 }
  12110.                 building {
  12111.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  12112.                     recolour_mode: RECOLOUR_REMAP;
  12113.                     palette: PALETTE_USE_DEFAULT;
  12114.                     xoffset: 0;
  12115.                     yoffset: 0;
  12116.                     zoffset: 18;
  12117.                     xextent: 16;
  12118.                     yextent: 16;
  12119.                     zextent: 32;
  12120.                     always_draw: 0;
  12121.                     hide_sprite: (construction_state != 2);
  12122.                 }
  12123.                     // buildings (snow aware)
  12124.                     building {
  12125.                         sprite: port_spriteset_5_0(0);
  12126.                         recolour_mode: RECOLOUR_REMAP;
  12127.                         palette: PALETTE_USE_DEFAULT;
  12128.                         xoffset: 0;
  12129.                         yoffset: 0;
  12130.                         zoffset: 0;
  12131.                         xextent: 16;
  12132.                         yextent: 16;
  12133.                         zextent: 32;
  12134.                         always_draw: 0;
  12135.                         hide_sprite: (LOAD_TEMP(255));
  12136.                     }
  12137.                     building {
  12138.                         sprite: port_spriteset_5_0_snow(0);
  12139.                         recolour_mode: RECOLOUR_REMAP;
  12140.                         palette: PALETTE_USE_DEFAULT;
  12141.                         xoffset: 0;
  12142.                         yoffset: 0;
  12143.                         zoffset: 0;
  12144.                         xextent: 16;
  12145.                         yextent: 16;
  12146.                         zextent: 32;
  12147.                         always_draw: 0;
  12148.                         hide_sprite: (LOAD_TEMP(245));
  12149.                     }
  12150.                     // buildings (snow aware)
  12151.                     building {
  12152.                         sprite: port_spriteset_2_0(0);
  12153.                         recolour_mode: RECOLOUR_REMAP;
  12154.                         palette: PALETTE_USE_DEFAULT;
  12155.                         xoffset: 0;
  12156.                         yoffset: 0;
  12157.                         zoffset: 0;
  12158.                         xextent: 16;
  12159.                         yextent: 16;
  12160.                         zextent: 32;
  12161.                         always_draw: 1;
  12162.                         hide_sprite: (LOAD_TEMP(255));
  12163.                     }
  12164.                     building {
  12165.                         sprite: port_spriteset_2_0_snow(0);
  12166.                         recolour_mode: RECOLOUR_REMAP;
  12167.                         palette: PALETTE_USE_DEFAULT;
  12168.                         xoffset: 0;
  12169.                         yoffset: 0;
  12170.                         zoffset: 0;
  12171.                         xextent: 16;
  12172.                         yextent: 16;
  12173.                         zextent: 32;
  12174.                         always_draw: 1;
  12175.                         hide_sprite: (LOAD_TEMP(245));
  12176.                     }
  12177.                     // buildings (snow aware)
  12178.                     building {
  12179.                         sprite: port_spriteset_1_0(0);
  12180.                         recolour_mode: RECOLOUR_REMAP;
  12181.                         palette: PALETTE_USE_DEFAULT;
  12182.                         xoffset: 0;
  12183.                         yoffset: 0;
  12184.                         zoffset: 0;
  12185.                         xextent: 16;
  12186.                         yextent: 16;
  12187.                         zextent: 32;
  12188.                         always_draw: 1;
  12189.                         hide_sprite: (LOAD_TEMP(255));
  12190.                     }
  12191.                     building {
  12192.                         sprite: port_spriteset_1_0_snow(0);
  12193.                         recolour_mode: RECOLOUR_REMAP;
  12194.                         palette: PALETTE_USE_DEFAULT;
  12195.                         xoffset: 0;
  12196.                         yoffset: 0;
  12197.                         zoffset: 0;
  12198.                         xextent: 16;
  12199.                         yextent: 16;
  12200.                         zextent: 32;
  12201.                         always_draw: 1;
  12202.                         hide_sprite: (LOAD_TEMP(245));
  12203.                     }
  12204.                     // buildings (snow aware)
  12205.                     building {
  12206.                         sprite: port_spriteset_18_0(0);
  12207.                         recolour_mode: RECOLOUR_REMAP;
  12208.                         palette: PALETTE_USE_DEFAULT;
  12209.                         xoffset: 0;
  12210.                         yoffset: 0;
  12211.                         zoffset: 18;
  12212.                         xextent: 16;
  12213.                         yextent: 16;
  12214.                         zextent: 32;
  12215.                         always_draw: 0;
  12216.                         hide_sprite: (LOAD_TEMP(255));
  12217.                     }
  12218.                     building {
  12219.                         sprite: port_spriteset_18_0_snow(0);
  12220.                         recolour_mode: RECOLOUR_REMAP;
  12221.                         palette: PALETTE_USE_DEFAULT;
  12222.                         xoffset: 0;
  12223.                         yoffset: 0;
  12224.                         zoffset: 18;
  12225.                         xextent: 16;
  12226.                         yextent: 16;
  12227.                         zextent: 32;
  12228.                         always_draw: 0;
  12229.                         hide_sprite: (LOAD_TEMP(245));
  12230.                     }
  12231.         }
  12232.         spritelayout port_spritelayout_coast_truck5 {
  12233.             // Industry-specific ground (snow aware)
  12234.             // non-snow
  12235.             childsprite {
  12236.                 sprite: port_spriteset_0_0(0);
  12237.                 recolour_mode: RECOLOUR_REMAP;
  12238.                 palette: PALETTE_USE_DEFAULT;
  12239.                 hide_sprite: (LOAD_TEMP(13));
  12240.                 always_draw: 1;
  12241.             }
  12242.             childsprite {
  12243.                 sprite: port_spriteset_0_0(0);
  12244.                 recolour_mode: RECOLOUR_REMAP;
  12245.                 palette: PALETTE_USE_DEFAULT;
  12246.                 hide_sprite: (LOAD_TEMP(13));
  12247.                 always_draw: 1;
  12248.             }
  12249.             // snow
  12250.             childsprite {
  12251.                 sprite: port_spriteset_0_0_snow(0);
  12252.                 recolour_mode: RECOLOUR_REMAP;
  12253.                 palette: PALETTE_USE_DEFAULT;
  12254.                 hide_sprite: (!LOAD_TEMP(13));
  12255.                 always_draw: 1;
  12256.             }
  12257.             childsprite {
  12258.                 sprite: port_spriteset_0_0_snow(0);
  12259.                 recolour_mode: RECOLOUR_REMAP;
  12260.                 palette: PALETTE_USE_DEFAULT;
  12261.                 hide_sprite: (!LOAD_TEMP(13));
  12262.                 always_draw: 1;
  12263.             }
  12264.                 // construction states - optional (no snow awareness)
  12265.                 building {
  12266.                     sprite: port_spriteset_5_spriteset_default_construction_state_0(0);
  12267.                     recolour_mode: RECOLOUR_REMAP;
  12268.                     palette: PALETTE_USE_DEFAULT;
  12269.                     xoffset: 0;
  12270.                     yoffset: 0;
  12271.                     zoffset: 0;
  12272.                     xextent: 16;
  12273.                     yextent: 16;
  12274.                     zextent: 32;
  12275.                     always_draw: 0;
  12276.                     hide_sprite: (construction_state != 0);
  12277.                 }
  12278.                 building {
  12279.                     sprite: port_spriteset_5_spriteset_default_construction_state_1(0);
  12280.                     recolour_mode: RECOLOUR_REMAP;
  12281.                     palette: PALETTE_USE_DEFAULT;
  12282.                     xoffset: 0;
  12283.                     yoffset: 0;
  12284.                     zoffset: 0;
  12285.                     xextent: 16;
  12286.                     yextent: 16;
  12287.                     zextent: 32;
  12288.                     always_draw: 0;
  12289.                     hide_sprite: (construction_state != 1);
  12290.                 }
  12291.                 building {
  12292.                     sprite: port_spriteset_5_spriteset_default_construction_state_2(0);
  12293.                     recolour_mode: RECOLOUR_REMAP;
  12294.                     palette: PALETTE_USE_DEFAULT;
  12295.                     xoffset: 0;
  12296.                     yoffset: 0;
  12297.                     zoffset: 0;
  12298.                     xextent: 16;
  12299.                     yextent: 16;
  12300.                     zextent: 32;
  12301.                     always_draw: 0;
  12302.                     hide_sprite: (construction_state != 2);
  12303.                 }
  12304.                 // construction states - optional (no snow awareness)
  12305.                 building {
  12306.                     sprite: port_spriteset_4_spriteset_default_construction_state_0(0);
  12307.                     recolour_mode: RECOLOUR_REMAP;
  12308.                     palette: PALETTE_USE_DEFAULT;
  12309.                     xoffset: 0;
  12310.                     yoffset: 0;
  12311.                     zoffset: 0;
  12312.                     xextent: 16;
  12313.                     yextent: 16;
  12314.                     zextent: 32;
  12315.                     always_draw: 0;
  12316.                     hide_sprite: (construction_state != 0);
  12317.                 }
  12318.                 building {
  12319.                     sprite: port_spriteset_4_spriteset_default_construction_state_1(0);
  12320.                     recolour_mode: RECOLOUR_REMAP;
  12321.                     palette: PALETTE_USE_DEFAULT;
  12322.                     xoffset: 0;
  12323.                     yoffset: 0;
  12324.                     zoffset: 0;
  12325.                     xextent: 16;
  12326.                     yextent: 16;
  12327.                     zextent: 32;
  12328.                     always_draw: 0;
  12329.                     hide_sprite: (construction_state != 1);
  12330.                 }
  12331.                 building {
  12332.                     sprite: port_spriteset_4_spriteset_default_construction_state_2(0);
  12333.                     recolour_mode: RECOLOUR_REMAP;
  12334.                     palette: PALETTE_USE_DEFAULT;
  12335.                     xoffset: 0;
  12336.                     yoffset: 0;
  12337.                     zoffset: 0;
  12338.                     xextent: 16;
  12339.                     yextent: 16;
  12340.                     zextent: 32;
  12341.                     always_draw: 0;
  12342.                     hide_sprite: (construction_state != 2);
  12343.                 }
  12344.                 // construction states - optional (no snow awareness)
  12345.                 building {
  12346.                     sprite: port_spriteset_1_spriteset_default_construction_state_0(0);
  12347.                     recolour_mode: RECOLOUR_REMAP;
  12348.                     palette: PALETTE_USE_DEFAULT;
  12349.                     xoffset: 0;
  12350.                     yoffset: 0;
  12351.                     zoffset: 0;
  12352.                     xextent: 16;
  12353.                     yextent: 16;
  12354.                     zextent: 32;
  12355.                     always_draw: 1;
  12356.                     hide_sprite: (construction_state != 0);
  12357.                 }
  12358.                 building {
  12359.                     sprite: port_spriteset_1_spriteset_default_construction_state_1(0);
  12360.                     recolour_mode: RECOLOUR_REMAP;
  12361.                     palette: PALETTE_USE_DEFAULT;
  12362.                     xoffset: 0;
  12363.                     yoffset: 0;
  12364.                     zoffset: 0;
  12365.                     xextent: 16;
  12366.                     yextent: 16;
  12367.                     zextent: 32;
  12368.                     always_draw: 1;
  12369.                     hide_sprite: (construction_state != 1);
  12370.                 }
  12371.                 building {
  12372.                     sprite: port_spriteset_1_spriteset_default_construction_state_2(0);
  12373.                     recolour_mode: RECOLOUR_REMAP;
  12374.                     palette: PALETTE_USE_DEFAULT;
  12375.                     xoffset: 0;
  12376.                     yoffset: 0;
  12377.                     zoffset: 0;
  12378.                     xextent: 16;
  12379.                     yextent: 16;
  12380.                     zextent: 32;
  12381.                     always_draw: 1;
  12382.                     hide_sprite: (construction_state != 2);
  12383.                 }
  12384.                 // construction states - optional (no snow awareness)
  12385.                 building {
  12386.                     sprite: port_spriteset_18_spriteset_default_construction_state_0(0);
  12387.                     recolour_mode: RECOLOUR_REMAP;
  12388.                     palette: PALETTE_USE_DEFAULT;
  12389.                     xoffset: 0;
  12390.                     yoffset: 0;
  12391.                     zoffset: 18;
  12392.                     xextent: 16;
  12393.                     yextent: 16;
  12394.                     zextent: 32;
  12395.                     always_draw: 0;
  12396.                     hide_sprite: (construction_state != 0);
  12397.                 }
  12398.                 building {
  12399.                     sprite: port_spriteset_18_spriteset_default_construction_state_1(0);
  12400.                     recolour_mode: RECOLOUR_REMAP;
  12401.                     palette: PALETTE_USE_DEFAULT;
  12402.                     xoffset: 0;
  12403.                     yoffset: 0;
  12404.                     zoffset: 18;
  12405.                     xextent: 16;
  12406.                     yextent: 16;
  12407.                     zextent: 32;
  12408.                     always_draw: 0;
  12409.                     hide_sprite: (construction_state != 1);
  12410.                 }
  12411.                 building {
  12412.                     sprite: port_spriteset_18_spriteset_default_construction_state_2(0);
  12413.                     recolour_mode: RECOLOUR_REMAP;
  12414.                     palette: PALETTE_USE_DEFAULT;
  12415.                     xoffset: 0;
  12416.                     yoffset: 0;
  12417.                     zoffset: 18;
  12418.                     xextent: 16;
  12419.                     yextent: 16;
  12420.                     zextent: 32;
  12421.                     always_draw: 0;
  12422.                     hide_sprite: (construction_state != 2);
  12423.                 }
  12424.                     // buildings (snow aware)
  12425.                     building {
  12426.                         sprite: port_spriteset_5_0(0);
  12427.                         recolour_mode: RECOLOUR_REMAP;
  12428.                         palette: PALETTE_USE_DEFAULT;
  12429.                         xoffset: 0;
  12430.                         yoffset: 0;
  12431.                         zoffset: 0;
  12432.                         xextent: 16;
  12433.                         yextent: 16;
  12434.                         zextent: 32;
  12435.                         always_draw: 0;
  12436.                         hide_sprite: (LOAD_TEMP(255));
  12437.                     }
  12438.                     building {
  12439.                         sprite: port_spriteset_5_0_snow(0);
  12440.                         recolour_mode: RECOLOUR_REMAP;
  12441.                         palette: PALETTE_USE_DEFAULT;
  12442.                         xoffset: 0;
  12443.                         yoffset: 0;
  12444.                         zoffset: 0;
  12445.                         xextent: 16;
  12446.                         yextent: 16;
  12447.                         zextent: 32;
  12448.                         always_draw: 0;
  12449.                         hide_sprite: (LOAD_TEMP(245));
  12450.                     }
  12451.                     // buildings (snow aware)
  12452.                     building {
  12453.                         sprite: port_spriteset_4_0(0);
  12454.                         recolour_mode: RECOLOUR_REMAP;
  12455.                         palette: PALETTE_USE_DEFAULT;
  12456.                         xoffset: 0;
  12457.                         yoffset: 0;
  12458.                         zoffset: 0;
  12459.                         xextent: 16;
  12460.                         yextent: 16;
  12461.                         zextent: 32;
  12462.                         always_draw: 0;
  12463.                         hide_sprite: (LOAD_TEMP(255));
  12464.                     }
  12465.                     building {
  12466.                         sprite: port_spriteset_4_0_snow(0);
  12467.                         recolour_mode: RECOLOUR_REMAP;
  12468.                         palette: PALETTE_USE_DEFAULT;
  12469.                         xoffset: 0;
  12470.                         yoffset: 0;
  12471.                         zoffset: 0;
  12472.                         xextent: 16;
  12473.                         yextent: 16;
  12474.                         zextent: 32;
  12475.                         always_draw: 0;
  12476.                         hide_sprite: (LOAD_TEMP(245));
  12477.                     }
  12478.                     // buildings (snow aware)
  12479.                     building {
  12480.                         sprite: port_spriteset_1_0(0);
  12481.                         recolour_mode: RECOLOUR_REMAP;
  12482.                         palette: PALETTE_USE_DEFAULT;
  12483.                         xoffset: 0;
  12484.                         yoffset: 0;
  12485.                         zoffset: 0;
  12486.                         xextent: 16;
  12487.                         yextent: 16;
  12488.                         zextent: 32;
  12489.                         always_draw: 1;
  12490.                         hide_sprite: (LOAD_TEMP(255));
  12491.                     }
  12492.                     building {
  12493.                         sprite: port_spriteset_1_0_snow(0);
  12494.                         recolour_mode: RECOLOUR_REMAP;
  12495.                         palette: PALETTE_USE_DEFAULT;
  12496.                         xoffset: 0;
  12497.                         yoffset: 0;
  12498.                         zoffset: 0;
  12499.                         xextent: 16;
  12500.                         yextent: 16;
  12501.                         zextent: 32;
  12502.                         always_draw: 1;
  12503.                         hide_sprite: (LOAD_TEMP(245));
  12504.                     }
  12505.                     // buildings (snow aware)
  12506.                     building {
  12507.                         sprite: port_spriteset_18_0(0);
  12508.                         recolour_mode: RECOLOUR_REMAP;
  12509.                         palette: PALETTE_USE_DEFAULT;
  12510.                         xoffset: 0;
  12511.                         yoffset: 0;
  12512.                         zoffset: 18;
  12513.                         xextent: 16;
  12514.                         yextent: 16;
  12515.                         zextent: 32;
  12516.                         always_draw: 0;
  12517.                         hide_sprite: (LOAD_TEMP(255));
  12518.                     }
  12519.                     building {
  12520.                         sprite: port_spriteset_18_0_snow(0);
  12521.                         recolour_mode: RECOLOUR_REMAP;
  12522.                         palette: PALETTE_USE_DEFAULT;
  12523.                         xoffset: 0;
  12524.                         yoffset: 0;
  12525.                         zoffset: 18;
  12526.                         xextent: 16;
  12527.                         yextent: 16;
  12528.                         zextent: 32;
  12529.                         always_draw: 0;
  12530.                         hide_sprite: (LOAD_TEMP(245));
  12531.                     }
  12532.         }
  12533.         switch(FEAT_INDUSTRYTILES, SELF, port_spritelayout_coast_warehouse, nearby_tile_slope(0,0)) {
  12534.                 0: port_spritelayout_coast_warehouse1;
  12535.                 1: port_spritelayout_coast_warehouse4;
  12536.                 2: port_spritelayout_coast_warehouse8;
  12537.                 3: port_spritelayout_coast_warehouse2;
  12538.                 4: port_spritelayout_coast_warehouse6;
  12539.                 5: port_spritelayout_coast_warehouse5;
  12540.                 6: port_spritelayout_coast_warehouse7;
  12541.                 7: port_spritelayout_coast_warehouse1;
  12542.                 8: port_spritelayout_coast_warehouse3;
  12543.                 9: port_spritelayout_coast_warehouse4;
  12544.                 10: port_spritelayout_coast_warehouse8;
  12545.                 11: port_spritelayout_coast_warehouse2;
  12546.                 12: port_spritelayout_coast_warehouse6;
  12547.                 13: port_spritelayout_coast_warehouse5;
  12548.                 14: port_spritelayout_coast_warehouse7;
  12549.             port_spritelayout_coast_warehouse1;
  12550.         }
  12551.         switch(FEAT_INDUSTRYTILES, SELF, port_spritelayout_coast_truck, nearby_tile_slope(0,0)) {
  12552.                 0: port_spritelayout_coast_truck1;
  12553.                 1: port_spritelayout_coast_truck4;
  12554.                 2: port_spritelayout_coast_truck8;
  12555.                 3: port_spritelayout_coast_truck2;
  12556.                 4: port_spritelayout_coast_truck6;
  12557.                 5: port_spritelayout_coast_truck5;
  12558.                 6: port_spritelayout_coast_truck7;
  12559.                 7: port_spritelayout_coast_truck1;
  12560.                 8: port_spritelayout_coast_truck3;
  12561.                 9: port_spritelayout_coast_truck4;
  12562.                 10: port_spritelayout_coast_truck8;
  12563.                 11: port_spritelayout_coast_truck2;
  12564.                 12: port_spritelayout_coast_truck6;
  12565.                 13: port_spritelayout_coast_truck5;
  12566.                 14: port_spritelayout_coast_truck7;
  12567.             port_spritelayout_coast_truck1;
  12568.         }
  12569.         switch(FEAT_INDUSTRYTILES, SELF, port_industry_layout_1_graphics_switch, relative_pos) {
  12570.                 relative_coord(0, 3): port_spritelayout_27;
  12571.                 relative_coord(0, 4): port_spritelayout_coast_truck;
  12572.                 relative_coord(1, 0): port_spritelayout_null;
  12573.                 relative_coord(1, 1): port_spritelayout_11;
  12574.                 relative_coord(1, 2): port_spritelayout_29;
  12575.                 relative_coord(1, 3): port_spritelayout_11;
  12576.                 relative_coord(1, 4): port_spritelayout_coast_warehouse;
  12577.                 relative_coord(2, 1): port_spritelayout_24;
  12578.                 relative_coord(2, 2): port_spritelayout_24;
  12579.             port_spritelayout_27; // a default is needed, but should never be reached, layout definitions are explicit
  12580.         }
  12581.         switch(FEAT_INDUSTRYTILES, SELF, port_industry_layout_2_graphics_switch, relative_pos) {
  12582.                 relative_coord(0, 0): port_spritelayout_null;
  12583.                 relative_coord(0, 1): port_spritelayout_null;
  12584.                 relative_coord(0, 2): port_spritelayout_null;
  12585.                 relative_coord(1, 0): port_spritelayout_23;
  12586.                 relative_coord(1, 1): port_spritelayout_23;
  12587.                 relative_coord(1, 255): port_spritelayout_null;
  12588.                 relative_coord(2, 0): port_spritelayout_30;
  12589.                 relative_coord(2, 1): port_spritelayout_12;
  12590.                 relative_coord(2, 2): port_spritelayout_21;
  12591.                 relative_coord(2, 255): port_spritelayout_null;
  12592.                 relative_coord(3, 1): port_spritelayout_coast_warehouse;
  12593.                 relative_coord(3, 2): port_spritelayout_coast_truck;
  12594.             port_spritelayout_null; // a default is needed, but should never be reached, layout definitions are explicit
  12595.         }
  12596.         switch(FEAT_INDUSTRYTILES, SELF, port_industry_layout_3_graphics_switch, relative_pos) {
  12597.                 relative_coord(0, 0): port_spritelayout_coast_warehouse;
  12598.                 relative_coord(0, 1): port_spritelayout_coast_warehouse;
  12599.                 relative_coord(0, 2): port_spritelayout_coast_warehouse;
  12600.                 relative_coord(1, 0): port_spritelayout_24;
  12601.                 relative_coord(1, 2): port_spritelayout_2;
  12602.                 relative_coord(2, 1): port_spritelayout_26;
  12603.                 relative_coord(2, 2): port_spritelayout_28;
  12604.                 relative_coord(2, 3): port_spritelayout_22;
  12605.                 relative_coord(2, 4): port_spritelayout_null;
  12606.                 relative_coord(3, 2): port_spritelayout_null;
  12607.                 relative_coord(3, 3): port_spritelayout_null;
  12608.             port_spritelayout_coast_warehouse; // a default is needed, but should never be reached, layout definitions are explicit
  12609.         }
  12610.         switch(FEAT_INDUSTRYTILES, SELF, port_industry_layout_4_graphics_switch, relative_pos) {
  12611.                 relative_coord(0, 0): port_spritelayout_coast_warehouse;
  12612.                 relative_coord(0, 1): port_spritelayout_2;
  12613.                 relative_coord(0, 2): port_spritelayout_29;
  12614.                 relative_coord(0, 3): port_spritelayout_11;
  12615.                 relative_coord(0, 4): port_spritelayout_28;
  12616.                 relative_coord(0, 5): port_spritelayout_null;
  12617.                 relative_coord(1, 0): port_spritelayout_coast_warehouse;
  12618.                 relative_coord(1, 1): port_spritelayout_28;
  12619.                 relative_coord(1, 2): port_spritelayout_25;
  12620.                 relative_coord(1, 4): port_spritelayout_25;
  12621.                 relative_coord(1, 5): port_spritelayout_null;
  12622.                 relative_coord(2, 3): port_spritelayout_null;
  12623.                 relative_coord(2, 4): port_spritelayout_null;
  12624.                 relative_coord(2, 5): port_spritelayout_null;
  12625.             port_spritelayout_coast_warehouse; // a default is needed, but should never be reached, layout definitions are explicit
  12626.         }
  12627.         switch(FEAT_INDUSTRYTILES, SELF, port_industry_layout_5_graphics_switch, relative_pos) {
  12628.                 relative_coord(0, 0): port_spritelayout_coast_warehouse;
  12629.                 relative_coord(1, 0): port_spritelayout_12;
  12630.                 relative_coord(1, 2): port_spritelayout_null;
  12631.                 relative_coord(2, 0): port_spritelayout_12;
  12632.                 relative_coord(2, 1): port_spritelayout_29;
  12633.                 relative_coord(2, 2): port_spritelayout_28;
  12634.                 relative_coord(2, 3): port_spritelayout_null;
  12635.                 relative_coord(3, 0): port_spritelayout_12;
  12636.                 relative_coord(3, 1): port_spritelayout_2;
  12637.                 relative_coord(3, 2): port_spritelayout_28;
  12638.                 relative_coord(3, 3): port_spritelayout_null;
  12639.                 relative_coord(4, 255): port_spritelayout_null;
  12640.                 relative_coord(4, 0): port_spritelayout_13;
  12641.                 relative_coord(4, 1): port_spritelayout_24;
  12642.                 relative_coord(4, 2): port_spritelayout_24;
  12643.                 relative_coord(4, 3): port_spritelayout_null;
  12644.                 relative_coord(5, 255): port_spritelayout_null;
  12645.                 relative_coord(5, 0): port_spritelayout_null;
  12646.                 relative_coord(5, 1): port_spritelayout_null;
  12647.                 relative_coord(5, 2): port_spritelayout_null;
  12648.                 relative_coord(5, 3): port_spritelayout_null;
  12649.             port_spritelayout_coast_warehouse; // a default is needed, but should never be reached, layout definitions are explicit
  12650.         }
  12651.     switch(FEAT_INDUSTRYTILES, PARENT, port_industry_graphics_switch_layouts, layout_num) {
  12652.             1: port_industry_layout_1_graphics_switch;
  12653.             2: port_industry_layout_2_graphics_switch;
  12654.             3: port_industry_layout_3_graphics_switch;
  12655.             4: port_industry_layout_4_graphics_switch;
  12656.             5: port_industry_layout_5_graphics_switch;
  12657.         port_industry_layout_1_graphics_switch; // default
  12658.     }
  12659.     switch(FEAT_INDUSTRYTILES, SELF, port_industry_construction_state_graphics_switch, construction_state) {
  12660.         0..2: port_industry_graphics_switch_layouts;
  12661.         port_industry_graphics_switch_layouts; // default
  12662.     }
  12663.     switch(FEAT_INDUSTRYTILES, SELF, port_store_temp_vars,
  12664.             [STORE_TEMP(terrain_type == TILETYPE_SNOW, 13)
  12665.                     , STORE_TEMP(0,
  12666.                                  255)
  12667.                     , STORE_TEMP(construction_state != 3 ? 1 : LOAD_TEMP(255),
  12668.                                  255)
  12669.                     , STORE_TEMP(LOAD_TEMP(13) == 0 ? 1 : LOAD_TEMP(255),
  12670.                                  245)
  12671.                     , STORE_TEMP(LOAD_TEMP(13) == 1 ? 1 : LOAD_TEMP(255),
  12672.                                  255)
  12673.             ]) {
  12674.         port_industry_construction_state_graphics_switch; // default
  12675.     }
  12676.     switch(FEAT_INDUSTRYTILES, PARENT, port_industry_master_graphics_switch, STORE_TEMP(random_bits, 14)) {
  12677.         port_store_temp_vars; // default
  12678.     }
  12679.     switch (FEAT_INDUSTRYTILES, SELF, port_tile_fence_station, [
  12680.                 STORE_TEMP(LOAD_TEMP(9) * (nearby_tile_class(-1,  0) != TILE_CLASS_STATION), 9),
  12681.                 STORE_TEMP(LOAD_TEMP(10) * (nearby_tile_class( 0, -1) != TILE_CLASS_STATION), 10),
  12682.                 STORE_TEMP(LOAD_TEMP(11) * (nearby_tile_class( 0,  1) != TILE_CLASS_STATION), 11),
  12683.                 STORE_TEMP(LOAD_TEMP(12) * (nearby_tile_class( 1,  0) != TILE_CLASS_STATION), 12),
  12684.             ]) {
  12685.         port_industry_master_graphics_switch;
  12686.     }
  12687.     switch (FEAT_INDUSTRYTILES, SELF, port_tile_fence_industry, [
  12688.                 STORE_TEMP(LOAD_TEMP(9) * !nearby_tile_is_same_industry(-1,  0), 9),
  12689.                 STORE_TEMP(LOAD_TEMP(10) * !nearby_tile_is_same_industry( 0, -1), 10),
  12690.                 STORE_TEMP(LOAD_TEMP(11) * !nearby_tile_is_same_industry( 0,  1), 11),
  12691.                 STORE_TEMP(LOAD_TEMP(12) * !nearby_tile_is_same_industry( 1,  0), 12),
  12692.             ]) {
  12693.         port_tile_fence_station;
  12694.     }
  12695.     switch (FEAT_INDUSTRYTILES, SELF, port_tile_fences, [
  12696.                 STORE_TEMP(0, 1),
  12697.                 STORE_TEMP(0, 2),
  12698.                 STORE_TEMP(0, 3),
  12699.                 STORE_TEMP(0, 4),
  12700.                 STORE_TEMP(1, 9),
  12701.                 STORE_TEMP(1, 10),
  12702.                 STORE_TEMP(1, 11),
  12703.                 STORE_TEMP(1, 12),
  12704.                 STORE_TEMP(0, 5),
  12705.                 STORE_TEMP(0, 6),
  12706.                 STORE_TEMP(0, 7),
  12707.                 STORE_TEMP(0, 8),
  12708.                 ]) {
  12709.         port_tile_fence_industry;
  12710.     }
  12711.     switch(FEAT_INDUSTRYTILES, SELF, port_tile_2_lc_1, nearby_tile_slope(0,0) == SLOPE_FLAT) {
  12712.         1: return CB_RESULT_LOCATION_DISALLOW;
  12713.         return CB_RESULT_LOCATION_ALLOW;
  12714.     }
  12715.     switch(FEAT_INDUSTRYTILES, SELF, port_tile_2_lc_0, nearby_tile_water_class(0,0)) {
  12716.         WATER_CLASS_SEA: port_tile_2_lc_1;
  12717.         WATER_CLASS_NONE: port_tile_2_lc_1;
  12718.         return CB_RESULT_LOCATION_DISALLOW;
  12719.     }
  12720.     item(FEAT_INDUSTRYTILES, port_tile_1, 169) {
  12721.         property {
  12722.             substitute:         0;
  12723.             land_shape_flags:   bitmask(LSF_ONLY_ON_FLAT_LAND);
  12724.             animation_triggers: bitmask();
  12725.         }
  12726.         graphics {
  12727.             port_tile_fences;
  12728.         }
  12729.     }
  12730.         if (economy==0) {
  12731.                 item(FEAT_INDUSTRYTILES, port_tile_1, 169) {
  12732.                     property {
  12733.                         accepted_cargos:  [[cargotype("BEER"), 8],[cargotype("GOOD"), 8]];
  12734.                     }
  12735.                 }
  12736.         }
  12737.         if (economy==1) {
  12738.                 item(FEAT_INDUSTRYTILES, port_tile_1, 169) {
  12739.                     property {
  12740.                         accepted_cargos:  [[cargotype("PAPR"), 8],[cargotype("ZINC"), 8]];
  12741.                     }
  12742.                 }
  12743.         }
  12744.         if (economy==4) {
  12745.                 item(FEAT_INDUSTRYTILES, port_tile_1, 169) {
  12746.                     property {
  12747.                         accepted_cargos:  [[cargotype("COPR"), 8],[cargotype("JAVA"), 8],[cargotype("WOOL"), 8]];
  12748.                     }
  12749.                 }
  12750.         }
  12751.         if (economy==5) {
  12752.                 item(FEAT_INDUSTRYTILES, port_tile_1, 169) {
  12753.                     property {
  12754.                         accepted_cargos:  [[cargotype("FOOD"), 8],[cargotype("PIPE"), 8]];
  12755.                     }
  12756.                 }
  12757.         }
  12758.         if (economy==3) {
  12759.                 item(FEAT_INDUSTRYTILES, port_tile_1, 169) {
  12760.                     property {
  12761.                         accepted_cargos:  [[cargotype("WDPR"), 8],[cargotype("COPR"), 8],[cargotype("FRUT"), 8]];
  12762.                     }
  12763.                 }
  12764.         }
  12765.         if (economy==2) {
  12766.                 item(FEAT_INDUSTRYTILES, port_tile_1, 169) {
  12767.                     property {
  12768.                         accepted_cargos:  [[cargotype("FOOD"), 8],[cargotype("BDMT"), 8],[cargotype("MAIL"), 8]];
  12769.                     }
  12770.                 }
  12771.         }
  12772.     item(FEAT_INDUSTRYTILES, port_tile_2, 170) {
  12773.         property {
  12774.             substitute:         0;
  12775.             land_shape_flags:   0;
  12776.             animation_triggers: bitmask();
  12777.         }
  12778.         graphics {
  12779.                 tile_check: port_tile_2_lc_0;
  12780.                 foundations: return CB_RESULT_NO_FOUNDATIONS;
  12781.             port_tile_fences;
  12782.         }
  12783.     }
  12784.         if (economy==0) {
  12785.                 item(FEAT_INDUSTRYTILES, port_tile_2, 170) {
  12786.                     property {
  12787.                         accepted_cargos:  [[cargotype("BEER"), 8],[cargotype("GOOD"), 8]];
  12788.                     }
  12789.                 }
  12790.         }
  12791.         if (economy==1) {
  12792.                 item(FEAT_INDUSTRYTILES, port_tile_2, 170) {
  12793.                     property {
  12794.                         accepted_cargos:  [[cargotype("PAPR"), 8],[cargotype("ZINC"), 8]];
  12795.                     }
  12796.                 }
  12797.         }
  12798.         if (economy==4) {
  12799.                 item(FEAT_INDUSTRYTILES, port_tile_2, 170) {
  12800.                     property {
  12801.                         accepted_cargos:  [[cargotype("COPR"), 8],[cargotype("JAVA"), 8],[cargotype("WOOL"), 8]];
  12802.                     }
  12803.                 }
  12804.         }
  12805.         if (economy==5) {
  12806.                 item(FEAT_INDUSTRYTILES, port_tile_2, 170) {
  12807.                     property {
  12808.                         accepted_cargos:  [[cargotype("FOOD"), 8],[cargotype("PIPE"), 8]];
  12809.                     }
  12810.                 }
  12811.         }
  12812.         if (economy==3) {
  12813.                 item(FEAT_INDUSTRYTILES, port_tile_2, 170) {
  12814.                     property {
  12815.                         accepted_cargos:  [[cargotype("WDPR"), 8],[cargotype("COPR"), 8],[cargotype("FRUT"), 8]];
  12816.                     }
  12817.                 }
  12818.         }
  12819.         if (economy==2) {
  12820.                 item(FEAT_INDUSTRYTILES, port_tile_2, 170) {
  12821.                     property {
  12822.                         accepted_cargos:  [[cargotype("FOOD"), 8],[cargotype("BDMT"), 8],[cargotype("MAIL"), 8]];
  12823.                     }
  12824.                 }
  12825.         }
  12826. /* *************************************************
  12827.  * Definition of the industry
  12828.  * *************************************************/
  12829.     tilelayout port_industry_layout_1_tilelayout {
  12830.             0, 3: port_tile_1;
  12831.             0, 4: port_tile_2;
  12832.             1, 0: 255;
  12833.             1, 1: port_tile_1;
  12834.             1, 2: port_tile_1;
  12835.             1, 3: port_tile_1;
  12836.             1, 4: port_tile_2;
  12837.             2, 1: port_tile_1;
  12838.             2, 2: port_tile_1;
  12839.     }
  12840.     tilelayout port_industry_layout_2_tilelayout {
  12841.             0, 0: 255;
  12842.             0, 1: 255;
  12843.             0, 2: 255;
  12844.             1, 0: port_tile_1;
  12845.             1, 1: port_tile_1;
  12846.             1, 255: 255;
  12847.             2, 0: port_tile_1;
  12848.             2, 1: port_tile_1;
  12849.             2, 2: port_tile_1;
  12850.             2, 255: 255;
  12851.             3, 1: port_tile_2;
  12852.             3, 2: port_tile_2;
  12853.     }
  12854.     tilelayout port_industry_layout_3_tilelayout {
  12855.             0, 0: port_tile_2;
  12856.             0, 1: port_tile_2;
  12857.             0, 2: port_tile_2;
  12858.             1, 0: port_tile_1;
  12859.             1, 2: port_tile_1;
  12860.             2, 1: port_tile_1;
  12861.             2, 2: port_tile_1;
  12862.             2, 3: port_tile_1;
  12863.             2, 4: 255;
  12864.             3, 2: 255;
  12865.             3, 3: 255;
  12866.     }
  12867.     tilelayout port_industry_layout_4_tilelayout {
  12868.             0, 0: port_tile_2;
  12869.             0, 1: port_tile_1;
  12870.             0, 2: port_tile_1;
  12871.             0, 3: port_tile_1;
  12872.             0, 4: port_tile_1;
  12873.             0, 5: 255;
  12874.             1, 0: port_tile_2;
  12875.             1, 1: port_tile_1;
  12876.             1, 2: port_tile_1;
  12877.             1, 4: port_tile_1;
  12878.             1, 5: 255;
  12879.             2, 3: 255;
  12880.             2, 4: 255;
  12881.             2, 5: 255;
  12882.     }
  12883.     tilelayout port_industry_layout_5_tilelayout {
  12884.             0, 0: port_tile_2;
  12885.             1, 0: port_tile_1;
  12886.             1, 2: 255;
  12887.             2, 0: port_tile_1;
  12888.             2, 1: port_tile_1;
  12889.             2, 2: port_tile_1;
  12890.             2, 3: 255;
  12891.             3, 0: port_tile_1;
  12892.             3, 1: port_tile_1;
  12893.             3, 2: port_tile_1;
  12894.             3, 3: 255;
  12895.             4, 255: 255;
  12896.             4, 0: port_tile_1;
  12897.             4, 1: port_tile_1;
  12898.             4, 2: port_tile_1;
  12899.             4, 3: 255;
  12900.             5, 255: 255;
  12901.             5, 0: 255;
  12902.             5, 1: 255;
  12903.             5, 2: 255;
  12904.             5, 3: 255;
  12905.     }
  12906. switch(FEAT_INDUSTRIES, SELF, port_extra_text, [
  12907.     STORE_TEMP((primary_level1_requirement * 8) |
  12908.     (primary_level2_requirement * 8) << 16, 0x100),
  12909.     LOAD_PERM(3)
  12910. ]) {
  12911.     primary_level2_bonus: return string(STR_PORT_PRODUCTION_4X);
  12912.     primary_level1_bonus: return string(STR_PORT_PRODUCTION_2X);
  12913.     return string(STR_PORT_PRODUCTION_1X);
  12914. }
  12915. switch (FEAT_INDUSTRIES, SELF, port_cargo_subtype_display, 1) {
  12916.     return 0x3800 + string(STR_EMPTY);
  12917. }
  12918. /* Primary production which is boosted by supplies */
  12919.     produce(port_production, 9999, 9999, 9999, 0, 0, 0);
  12920.     switch(FEAT_INDUSTRIES, SELF, port_produce, STORE_PERM(waiting_cargo_1 + waiting_cargo_2 + waiting_cargo_3 + LOAD_PERM(0), 0)) {
  12921.         port_production;
  12922.     }
  12923.     produce(port_production_256, 0, 0, 0, LOAD_TEMP(9) * production_rate_1 / 100, LOAD_TEMP(9) * production_rate_2 / 100, 0);
  12924.     switch(FEAT_INDUSTRIES, SELF, port_produce_256_ticks,
  12925.             [STORE_TEMP(
  12926.                 LOAD_PERM(0) +
  12927.                 LOAD_PERM(1) +
  12928.                 LOAD_PERM(2),
  12929.             8),
  12930.             STORE_TEMP((LOAD_TEMP(8) >= (8 * primary_level2_requirement)) ? primary_level2_bonus :
  12931.                        (LOAD_TEMP(8) >= (8 * primary_level1_requirement)) ? primary_level1_bonus : 0, 9),
  12932.             STORE_PERM(LOAD_TEMP(9), 3)
  12933.             ]) {
  12934.         port_production_256;
  12935.     }
  12936. /* =================================== */
  12937. /* Production change evaluated monthly */
  12938. /* =================================== */
  12939.     switch(FEAT_INDUSTRIES, SELF, port_monthly_update, [
  12940.         STORE_PERM(LOAD_PERM(1), 2),
  12941.         STORE_PERM(LOAD_PERM(0), 1),
  12942.         STORE_PERM(0, 0)
  12943.     ]) {
  12944.         return CB_RESULT_IND_PROD_NO_CHANGE;
  12945.     }
  12946. switch(FEAT_INDUSTRIES, SELF, port_check_availability_param, restrict_open_during_gameplay) {
  12947.     1..255: return CB_RESULT_IND_NO_CONSTRUCTION;         // disallow when restrictions in place
  12948.     return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;       // we may build
  12949. }
  12950. switch (FEAT_INDUSTRIES, SELF, port_check_map_gen, extra_callback_info2 == IND_CREATION_GENERATION) {
  12951.     1: return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;
  12952.     port_check_availability_param;
  12953. }
  12954. switch (FEAT_INDUSTRIES, SELF, port_available_game_mode, game_mode == GAMEMODE_GAME) {
  12955.     1: port_check_map_gen;
  12956.     return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;
  12957. }
  12958.     /* 0 */
  12959.     switch (FEAT_INDUSTRIES, SELF, port_check_availability_0, current_date) {
  12960.         date(0,1,1) .. date(5000000,12,31): port_available_game_mode;
  12961.         return CB_RESULT_IND_NO_CONSTRUCTION;
  12962.     }
  12963.     /* 0 */
  12964.     switch (FEAT_INDUSTRIES, SELF, port_check_availability_1, current_date) {
  12965.         date(0,1,1) .. date(5000000,12,31): port_available_game_mode;
  12966.         return CB_RESULT_IND_NO_CONSTRUCTION;
  12967.     }
  12968.     /* 0 */
  12969.     switch (FEAT_INDUSTRIES, SELF, port_check_availability_4, current_date) {
  12970.         date(0,1,1) .. date(5000000,12,31): port_available_game_mode;
  12971.         return CB_RESULT_IND_NO_CONSTRUCTION;
  12972.     }
  12973.     /* 0 */
  12974.     switch (FEAT_INDUSTRIES, SELF, port_check_availability_5, current_date) {
  12975.         date(0,1,1) .. date(5000000,12,31): port_available_game_mode;
  12976.         return CB_RESULT_IND_NO_CONSTRUCTION;
  12977.     }
  12978.     /* 0 */
  12979.     switch (FEAT_INDUSTRIES, SELF, port_check_availability_3, current_date) {
  12980.         date(0,1,1) .. date(5000000,12,31): port_available_game_mode;
  12981.         return CB_RESULT_IND_NO_CONSTRUCTION;
  12982.     }
  12983.     /* 0 */
  12984.     switch (FEAT_INDUSTRIES, SELF, port_check_availability_2, current_date) {
  12985.         date(0,1,1) .. date(5000000,12,31): port_available_game_mode;
  12986.         return CB_RESULT_IND_NO_CONSTRUCTION;
  12987.     }
  12988. switch (FEAT_INDUSTRIES, SELF, port_check_availability, economy) {
  12989.         0: port_check_availability_0;
  12990.         1: port_check_availability_1;
  12991.         4: port_check_availability_4;
  12992.         5: port_check_availability_5;
  12993.         3: port_check_availability_3;
  12994.         2: port_check_availability_2;
  12995. }
  12996.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_45, industry_distance(45)) {
  12997.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  12998.         return CB_RESULT_LOCATION_ALLOW;
  12999.     }
  13000.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_35, industry_distance(35)) {
  13001.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13002.         port_min_distance_45;
  13003.     }
  13004.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_67, industry_distance(67)) {
  13005.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13006.         port_min_distance_35;
  13007.     }
  13008.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_51, industry_distance(51)) {
  13009.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13010.         port_min_distance_67;
  13011.     }
  13012.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_50, industry_distance(50)) {
  13013.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13014.         port_min_distance_51;
  13015.     }
  13016.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_57, industry_distance(57)) {
  13017.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13018.         port_min_distance_50;
  13019.     }
  13020.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_69, industry_distance(69)) {
  13021.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13022.         port_min_distance_57;
  13023.     }
  13024.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_59, industry_distance(59)) {
  13025.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13026.         port_min_distance_69;
  13027.     }
  13028.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_70, industry_distance(70)) {
  13029.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13030.         port_min_distance_59;
  13031.     }
  13032.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_52, industry_distance(52)) {
  13033.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13034.         port_min_distance_70;
  13035.     }
  13036.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_30, industry_distance(30)) {
  13037.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13038.         port_min_distance_52;
  13039.     }
  13040.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_82, industry_distance(82)) {
  13041.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13042.         port_min_distance_30;
  13043.     }
  13044.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_31, industry_distance(31)) {
  13045.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13046.         port_min_distance_82;
  13047.     }
  13048.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_12, industry_distance(12)) {
  13049.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13050.         port_min_distance_31;
  13051.     }
  13052.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_34, industry_distance(34)) {
  13053.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13054.         port_min_distance_12;
  13055.     }
  13056.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_87, industry_distance(87)) {
  13057.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13058.         port_min_distance_34;
  13059.     }
  13060.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_56, industry_distance(56)) {
  13061.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13062.         port_min_distance_87;
  13063.     }
  13064.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_68, industry_distance(68)) {
  13065.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13066.         port_min_distance_56;
  13067.     }
  13068.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_60, industry_distance(60)) {
  13069.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13070.         port_min_distance_68;
  13071.     }
  13072.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_89, industry_distance(89)) {
  13073.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13074.         port_min_distance_60;
  13075.     }
  13076.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_13, industry_distance(13)) {
  13077.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13078.         port_min_distance_89;
  13079.     }
  13080.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_58, industry_distance(58)) {
  13081.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13082.         port_min_distance_13;
  13083.     }
  13084.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_84, industry_distance(84)) {
  13085.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13086.         port_min_distance_58;
  13087.     }
  13088.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_90, industry_distance(90)) {
  13089.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13090.         port_min_distance_84;
  13091.     }
  13092.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_43, industry_distance(43)) {
  13093.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13094.         port_min_distance_90;
  13095.     }
  13096.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_47, industry_distance(47)) {
  13097.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13098.         port_min_distance_43;
  13099.     }
  13100.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_9, industry_distance(9)) {
  13101.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13102.         port_min_distance_47;
  13103.     }
  13104.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_41, industry_distance(41)) {
  13105.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13106.         port_min_distance_9;
  13107.     }
  13108.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_61, industry_distance(61)) {
  13109.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13110.         port_min_distance_41;
  13111.     }
  13112.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_2, industry_distance(2)) {
  13113.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13114.         port_min_distance_61;
  13115.     }
  13116.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_29, industry_distance(29)) {
  13117.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13118.         port_min_distance_2;
  13119.     }
  13120.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_36, industry_distance(36)) {
  13121.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13122.         port_min_distance_29;
  13123.     }
  13124.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_72, industry_distance(72)) {
  13125.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13126.         port_min_distance_36;
  13127.     }
  13128.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_48, industry_distance(48)) {
  13129.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13130.         port_min_distance_72;
  13131.     }
  13132.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_85, industry_distance(85)) {
  13133.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13134.         port_min_distance_48;
  13135.     }
  13136.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_27, industry_distance(27)) {
  13137.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13138.         port_min_distance_85;
  13139.     }
  13140.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_94, industry_distance(94)) {
  13141.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13142.         port_min_distance_27;
  13143.     }
  13144.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_37, industry_distance(37)) {
  13145.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13146.         port_min_distance_94;
  13147.     }
  13148.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_22, industry_distance(22)) {
  13149.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13150.         port_min_distance_37;
  13151.     }
  13152.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_14, industry_distance(14)) {
  13153.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13154.         port_min_distance_22;
  13155.     }
  13156.     switch (FEAT_INDUSTRIES, SELF, port_min_distance_39, industry_distance(39)) {
  13157.         0 .. 16: return CB_RESULT_LOCATION_DISALLOW;
  13158.         port_min_distance_14;
  13159.     }
  13160.     switch (FEAT_INDUSTRIES, SELF, port_check_location, (
  13161.                 (extra_callback_info2 == IND_CREATION_FUND) ||
  13162.                 (extra_callback_info2 == IND_CREATION_PROSPECT)
  13163.                 )
  13164.             ) {
  13165.         1: return CB_RESULT_LOCATION_ALLOW;
  13166.         port_min_distance_39;
  13167.     }
  13168.         if (economy==0) {
  13169.             item(FEAT_INDUSTRIES, port, 39) {
  13170.                 property {
  13171.                     substitute: 0;
  13172.                     override: 0;
  13173.                     map_colour: 186;
  13174.                     life_type: IND_LIFE_TYPE_BLACK_HOLE;
  13175.                     min_cargo_distr: 5;
  13176.                     spec_flags: bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_LONG_CARGO_TYPE_LISTS);
  13177.                     layouts: [port_industry_layout_1_tilelayout,port_industry_layout_2_tilelayout,port_industry_layout_3_tilelayout,port_industry_layout_4_tilelayout,port_industry_layout_5_tilelayout];
  13178.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  13179.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  13180.                     name: string(STR_IND_PORT);
  13181.                     prod_multiplier: [19];
  13182.                     input_multiplier_1: [0, 0];
  13183.                     input_multiplier_2: [0, 0];
  13184.                     input_multiplier_3: [0, 0];
  13185.                     prob_random: 6;
  13186.                     prob_in_game: 2;
  13187.                     prospect_chance: 0.75;
  13188.                     fund_cost_multiplier: 152;
  13189.                     remove_cost_multiplier: 0;
  13190.                     remove_cost_multiplier: 0;
  13191.                     accept_cargo_types: [cargotype("BEER"),cargotype("GOOD")];
  13192.                     prod_cargo_types: [cargotype("ENSP")];
  13193.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_INDUSTRY_HARBOUR_2));
  13194.                 }
  13195.             }
  13196.         }
  13197.         if (economy==1) {
  13198.             item(FEAT_INDUSTRIES, port, 39) {
  13199.                 property {
  13200.                     substitute: 0;
  13201.                     override: 0;
  13202.                     map_colour: 186;
  13203.                     life_type: IND_LIFE_TYPE_BLACK_HOLE;
  13204.                     min_cargo_distr: 5;
  13205.                     spec_flags: bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_LONG_CARGO_TYPE_LISTS);
  13206.                     layouts: [port_industry_layout_1_tilelayout,port_industry_layout_2_tilelayout,port_industry_layout_3_tilelayout,port_industry_layout_4_tilelayout,port_industry_layout_5_tilelayout];
  13207.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  13208.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  13209.                     name: string(STR_IND_PORT);
  13210.                     prod_multiplier: [9];
  13211.                     input_multiplier_1: [0, 0];
  13212.                     input_multiplier_2: [0, 0];
  13213.                     input_multiplier_3: [0, 0];
  13214.                     prob_random: 6;
  13215.                     prob_in_game: 2;
  13216.                     prospect_chance: 0.75;
  13217.                     fund_cost_multiplier: 152;
  13218.                     remove_cost_multiplier: 0;
  13219.                     remove_cost_multiplier: 0;
  13220.                     accept_cargo_types: [cargotype("PAPR"),cargotype("ZINC")];
  13221.                     prod_cargo_types: [cargotype("ENSP")];
  13222.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_INDUSTRY_HARBOUR_2));
  13223.                 }
  13224.             }
  13225.         }
  13226.         if (economy==4) {
  13227.             item(FEAT_INDUSTRIES, port, 39) {
  13228.                 property {
  13229.                     substitute: 0;
  13230.                     override: 0;
  13231.                     map_colour: 186;
  13232.                     life_type: IND_LIFE_TYPE_BLACK_HOLE;
  13233.                     min_cargo_distr: 5;
  13234.                     spec_flags: bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_LONG_CARGO_TYPE_LISTS);
  13235.                     layouts: [port_industry_layout_1_tilelayout,port_industry_layout_2_tilelayout,port_industry_layout_3_tilelayout,port_industry_layout_4_tilelayout,port_industry_layout_5_tilelayout];
  13236.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  13237.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  13238.                     name: string(STR_IND_PORT);
  13239.                     prod_multiplier: [8, 17];
  13240.                     input_multiplier_1: [0, 0];
  13241.                     input_multiplier_2: [0, 0];
  13242.                     input_multiplier_3: [0, 0];
  13243.                     prob_random: 6;
  13244.                     prob_in_game: 2;
  13245.                     prospect_chance: 0.75;
  13246.                     fund_cost_multiplier: 152;
  13247.                     remove_cost_multiplier: 0;
  13248.                     remove_cost_multiplier: 0;
  13249.                     accept_cargo_types: [cargotype("COPR"),cargotype("JAVA"),cargotype("WOOL")];
  13250.                     prod_cargo_types: [cargotype("ENSP"),cargotype("GOOD")];
  13251.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_INDUSTRY_HARBOUR_2));
  13252.                 }
  13253.             }
  13254.         }
  13255.         if (economy==5) {
  13256.             item(FEAT_INDUSTRIES, port, 39) {
  13257.                 property {
  13258.                     substitute: 0;
  13259.                     override: 0;
  13260.                     map_colour: 186;
  13261.                     life_type: IND_LIFE_TYPE_BLACK_HOLE;
  13262.                     min_cargo_distr: 5;
  13263.                     spec_flags: bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_LONG_CARGO_TYPE_LISTS);
  13264.                     layouts: [port_industry_layout_1_tilelayout,port_industry_layout_2_tilelayout,port_industry_layout_3_tilelayout,port_industry_layout_4_tilelayout,port_industry_layout_5_tilelayout];
  13265.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  13266.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  13267.                     name: string(STR_IND_PORT);
  13268.                     prod_multiplier: [16, 16];
  13269.                     input_multiplier_1: [0, 0];
  13270.                     input_multiplier_2: [0, 0];
  13271.                     input_multiplier_3: [0, 0];
  13272.                     prob_random: 6;
  13273.                     prob_in_game: 2;
  13274.                     prospect_chance: 0.75;
  13275.                     fund_cost_multiplier: 152;
  13276.                     remove_cost_multiplier: 0;
  13277.                     remove_cost_multiplier: 0;
  13278.                     accept_cargo_types: [cargotype("FOOD"),cargotype("PIPE")];
  13279.                     prod_cargo_types: [cargotype("ZINC"),cargotype("RUBR")];
  13280.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_INDUSTRY_HARBOUR_2));
  13281.                 }
  13282.             }
  13283.         }
  13284.         if (economy==3) {
  13285.             item(FEAT_INDUSTRIES, port, 39) {
  13286.                 property {
  13287.                     substitute: 0;
  13288.                     override: 0;
  13289.                     map_colour: 186;
  13290.                     life_type: IND_LIFE_TYPE_BLACK_HOLE;
  13291.                     min_cargo_distr: 5;
  13292.                     spec_flags: bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_LONG_CARGO_TYPE_LISTS);
  13293.                     layouts: [port_industry_layout_1_tilelayout,port_industry_layout_2_tilelayout,port_industry_layout_3_tilelayout,port_industry_layout_4_tilelayout,port_industry_layout_5_tilelayout];
  13294.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  13295.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  13296.                     name: string(STR_IND_PORT);
  13297.                     prod_multiplier: [17, 14];
  13298.                     input_multiplier_1: [0, 0];
  13299.                     input_multiplier_2: [0, 0];
  13300.                     input_multiplier_3: [0, 0];
  13301.                     prob_random: 6;
  13302.                     prob_in_game: 2;
  13303.                     prospect_chance: 0.75;
  13304.                     fund_cost_multiplier: 152;
  13305.                     remove_cost_multiplier: 0;
  13306.                     remove_cost_multiplier: 0;
  13307.                     accept_cargo_types: [cargotype("WDPR"),cargotype("COPR"),cargotype("FRUT")];
  13308.                     prod_cargo_types: [cargotype("ENSP"),cargotype("GOOD")];
  13309.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_INDUSTRY_HARBOUR_2));
  13310.                 }
  13311.             }
  13312.         }
  13313.         if (economy==2) {
  13314.             item(FEAT_INDUSTRIES, port, 39) {
  13315.                 property {
  13316.                     substitute: 0;
  13317.                     override: 0;
  13318.                     map_colour: 186;
  13319.                     life_type: IND_LIFE_TYPE_BLACK_HOLE;
  13320.                     min_cargo_distr: 5;
  13321.                     spec_flags: bitmask(IND_FLAG_BUILT_ON_WATER, IND_FLAG_LONG_CARGO_TYPE_LISTS);
  13322.                     layouts: [port_industry_layout_1_tilelayout,port_industry_layout_2_tilelayout,port_industry_layout_3_tilelayout,port_industry_layout_4_tilelayout,port_industry_layout_5_tilelayout];
  13323.                     conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this
  13324.                     random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)
  13325.                     name: string(STR_IND_PORT);
  13326.                     prod_multiplier: [9, 7, 20, 14];
  13327.                     input_multiplier_1: [0, 0];
  13328.                     input_multiplier_2: [0, 0];
  13329.                     input_multiplier_3: [0, 0];
  13330.                     prob_random: 6;
  13331.                     prob_in_game: 2;
  13332.                     prospect_chance: 0.75;
  13333.                     fund_cost_multiplier: 152;
  13334.                     remove_cost_multiplier: 0;
  13335.                     remove_cost_multiplier: 0;
  13336.                     accept_cargo_types: [cargotype("FOOD"),cargotype("BDMT"),cargotype("MAIL"),cargotype("FRUT"),cargotype("GOOD")];
  13337.                     prod_cargo_types: [cargotype("ENUM"),cargotype("GLUE"),cargotype("PASS"),cargotype("BEER")];
  13338.                     nearby_station_name: string(STR_STATION, string(STR_TOWN),string(STR_STATION_INDUSTRY_HARBOUR_2));
  13339.                 }
  13340.             }
  13341.         }
  13342.         if (economy==0) {
  13343.             item(FEAT_INDUSTRIES, port, 39) {
  13344.                 graphics {
  13345.                     construction_probability: port_check_availability;
  13346.                     build_prod_change:        randomise_primary_production_on_build;
  13347.                     produce_cargo_arrival:    port_produce;
  13348.                     produce_256_ticks:        port_produce_256_ticks;
  13349.                     monthly_prod_change:      port_monthly_update;
  13350.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  13351.                     location_check:           port_check_location;
  13352.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  13353.                     extra_text_industry:      port_extra_text;
  13354.                     cargo_subtype_display:    port_cargo_subtype_display;
  13355.                     colour:                   switch_colour;
  13356.                 }
  13357.             }
  13358.         }
  13359.         if (economy==1) {
  13360.             item(FEAT_INDUSTRIES, port, 39) {
  13361.                 graphics {
  13362.                     construction_probability: port_check_availability;
  13363.                     build_prod_change:        randomise_primary_production_on_build;
  13364.                     produce_cargo_arrival:    port_produce;
  13365.                     produce_256_ticks:        port_produce_256_ticks;
  13366.                     monthly_prod_change:      port_monthly_update;
  13367.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  13368.                     location_check:           port_check_location;
  13369.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  13370.                     extra_text_industry:      port_extra_text;
  13371.                     cargo_subtype_display:    port_cargo_subtype_display;
  13372.                     colour:                   switch_colour;
  13373.                 }
  13374.             }
  13375.         }
  13376.         if (economy==4) {
  13377.             item(FEAT_INDUSTRIES, port, 39) {
  13378.                 graphics {
  13379.                     construction_probability: port_check_availability;
  13380.                     build_prod_change:        randomise_primary_production_on_build;
  13381.                     produce_cargo_arrival:    port_produce;
  13382.                     produce_256_ticks:        port_produce_256_ticks;
  13383.                     monthly_prod_change:      port_monthly_update;
  13384.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  13385.                     location_check:           port_check_location;
  13386.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  13387.                     extra_text_industry:      port_extra_text;
  13388.                     cargo_subtype_display:    port_cargo_subtype_display;
  13389.                     colour:                   switch_colour;
  13390.                 }
  13391.             }
  13392.         }
  13393.         if (economy==5) {
  13394.             item(FEAT_INDUSTRIES, port, 39) {
  13395.                 graphics {
  13396.                     construction_probability: port_check_availability;
  13397.                     build_prod_change:        randomise_primary_production_on_build;
  13398.                     produce_cargo_arrival:    port_produce;
  13399.                     produce_256_ticks:        port_produce_256_ticks;
  13400.                     monthly_prod_change:      port_monthly_update;
  13401.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  13402.                     location_check:           port_check_location;
  13403.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  13404.                     extra_text_industry:      port_extra_text;
  13405.                     cargo_subtype_display:    port_cargo_subtype_display;
  13406.                     colour:                   switch_colour;
  13407.                 }
  13408.             }
  13409.         }
  13410.         if (economy==3) {
  13411.             item(FEAT_INDUSTRIES, port, 39) {
  13412.                 graphics {
  13413.                     construction_probability: port_check_availability;
  13414.                     build_prod_change:        randomise_primary_production_on_build;
  13415.                     produce_cargo_arrival:    port_produce;
  13416.                     produce_256_ticks:        port_produce_256_ticks;
  13417.                     monthly_prod_change:      port_monthly_update;
  13418.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  13419.                     location_check:           port_check_location;
  13420.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  13421.                     extra_text_industry:      port_extra_text;
  13422.                     cargo_subtype_display:    port_cargo_subtype_display;
  13423.                     colour:                   switch_colour;
  13424.                 }
  13425.             }
  13426.         }
  13427.         if (economy==2) {
  13428.             item(FEAT_INDUSTRIES, port, 39) {
  13429.                 graphics {
  13430.                     construction_probability: port_check_availability;
  13431.                     build_prod_change:        randomise_primary_production_on_build;
  13432.                     produce_cargo_arrival:    port_produce;
  13433.                     produce_256_ticks:        port_produce_256_ticks;
  13434.                     monthly_prod_change:      port_monthly_update;
  13435.                     random_prod_change:       return CB_RESULT_IND_PROD_NO_CHANGE;
  13436.                     location_check:           port_check_location;
  13437.                     extra_text_fund:          return CB_RESULT_NO_TEXT;
  13438.                     extra_text_industry:      port_extra_text;
  13439.                     cargo_subtype_display:    port_cargo_subtype_display;
  13440.                     colour:                   switch_colour;
  13441.                 }
  13442.             }
  13443.         }

Comments