Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
This file has been truncated, but you can view the full file.
grf {
grfid: "\F1%\00\08";
name: string(STR_GRF_NAME);
desc: string(STR_GRF_DESC);
url: string(STR_GRF_DOCS_URL);
version: 6517;
min_compatible_version: 6513;
param 0 {
economy_selection {
name: string(STR_PARAM_NAME_ECONOMIES);
desc: string(STR_PARAM_DESC_ECONOMIES);
min_value: 0;
max_value: 4;
names: {
0: string(STR_PARAM_VALUE_ECONOMIES_BASIC_TEMPERATE);
1: string(STR_PARAM_VALUE_ECONOMIES_BASIC_ARCTIC);
2: string(STR_PARAM_VALUE_ECONOMIES_BASIC_TROPIC);
3: string(STR_PARAM_VALUE_ECONOMIES_STEELTOWN);
4: string(STR_PARAM_VALUE_ECONOMIES_IN_A_HOT_COUNTRY);
};
}
}
param 2 {
restrict_open_during_gameplay {
name: string(STR_PARAM_NAME_NO_OPENINGS);
desc: string(STR_PARAM_DESC_NO_OPENINGS);
type: bool;
bit: 2;
}
}
param 7 {
primary_level1_produced_percent {
name: string(STR_PARAM_NAME_PRIMARY_LEVEL1_BONUS);
desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);
def_value: 150;
min_value: 100;
max_value: 1000;
}
}
param 9 {
primary_level2_produced_percent {
name: string(STR_PARAM_NAME_PRIMARY_LEVEL2_BONUS);
desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);
def_value: 300;
min_value: 100;
max_value: 1000;
}
}
param 6 {
primary_level1_requirement {
name: string(STR_PARAM_NAME_PRIMARY_LEVEL1_REQUIREMENT);
desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);
def_value: 16;
min_value: 1;
max_value: 10000;
}
}
param 8 {
primary_level2_requirement {
name: string(STR_PARAM_NAME_PRIMARY_LEVEL2_REQUIREMENT);
desc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);
def_value: 80;
min_value: 1;
max_value: 10000;
}
}
param 4 {
marine_industry_max_coastal_distance {
name: string(STR_PARAM_NAME_COAST_DISTANCE_MARINE_INDUSTRY);
desc: string(STR_PARAM_DESC_COAST_DISTANCE_MARINE_INDUSTRY);
type: int;
def_value: 0;
min_value: 0;
max_value: 255;
names: {
0: string(STR_PARAM_VALUE_SECONDARY_NEVER_CLOSE_0);
};
}
}
}
basecost {
PR_BUILD_INDUSTRY: 2; // Industries are more expensive
PR_BUILD_INDUSTRY_RAW : 2; // Building primary industries is also expensive
PR_CLEAR_INDUSTRY : 2; // Deleting industries must also be expensive
}
if (param[6] == 0) { param[6] = 100; }
if (param[7] == 0) { param[7] = 100; }
if (param[8] == 0) { param[8] = 400; }
if (param[9] == 0) { param[9] = 300; }
disable_item(FEAT_INDUSTRIES, 0, 36);if (ttd_platform != PLATFORM_OPENTTD || openttd_version < version_openttd(1, 7, 0, 27769)) {
error(FATAL, REQUIRES_OPENTTD, string(STR_ERR_OPENTTD_VERSION));
exit;
}
if (grf_future_status("\F1\25\00\05")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "FIRS v1"));
}
if (grf_future_status("\F1\25\00\06")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "FIRS v2"));
}
if (grf_future_status("\F1\25\00\07")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "FIRS v3"));
}
if (grf_future_status("mb\07\00")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Alpine Climate"));
}
if (grf_future_status("\45\4E\15\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Apollo Rocket Industry Set"));
}
if (grf_future_status("\47\47\01\04")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Australian Industries"));
}
if (grf_future_status("\47\47\20\30")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Australian Industries Set AuzIn"));
}
if (grf_future_status("\47\47\20\31")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Australian Industry AuzInd2"));
}
if (grf_future_status("\47\47\60\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Australian Industry AuzInd6"));
}
if (grf_future_status("\42\58\00\02")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "BSPI"));
}
if (grf_future_status("\4D\49\02\09")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "CZTR Engines-Diesel"));
}
if (grf_future_status("\4D\49\02\08")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "CZTR Engines-Electric"));
}
if (grf_future_status("\4D\49\02\10")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "CZTR Engines-EMU"));
}
if (grf_future_status("\4D\49\02\07")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "CZTR Engines-Steam"));
}
if (grf_future_status("Meo\97")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Agricultural Vector"));
}
if (grf_future_status("Meo\98")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Basic for Arctic"));
}
if (grf_future_status("Meo\99")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Basic for Tropic"));
}
if (grf_future_status("Meo\92")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Basic Vector"));
}
if (grf_future_status("Meo\93")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Chemical Vector"));
}
if (grf_future_status("Meo\9B")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Construction Vector by Pikkabird"));
}
if (grf_future_status("Meo\9C")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Chemical Vector II"));
}
if (grf_future_status("Meo\96")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Construction Vector"));
}
if (grf_future_status("Meo\94")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Machinery Vector"));
}
if (grf_future_status("Meo\9A")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Machinery for Tropic"));
}
if (grf_future_status("Meo\91")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Town Vector"));
}
if (grf_future_status("Meo\95")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "ECS Wood Vector"));
}
if (grf_future_status("EX\01\02")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Ex Citybuilder"));
}
if (grf_future_status("EX\01\03")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Ex Citybuilder"));
}
if (grf_future_status("EH\01\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Experts hard industries"));
}
if (grf_future_status("\4a\44\88\07")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Extreme Industry Set"));
}
if (grf_future_status("\52\53\01\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Improved Oil Rig Layout"));
}
if (grf_future_status("\54\54\04\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Improved Town Industries"));
}
if (grf_future_status("SK\05\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
}
if (grf_future_status("JS\0A\02")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
}
if (grf_future_status("JS\0A\03")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
}
if (grf_future_status("JS\0A\04")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
}
if (grf_future_status("JS\0A\05")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Luukland Citybuilder"));
}
if (grf_future_status("frMI")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Manual Industries"));
}
if (grf_future_status("AL\01\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Nearby Station Names"));
}
if (grf_future_status("Meo\81")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "New Cargos"));
}
if (grf_future_status("Meo\82")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "New Cargos Petrol + Tourists"));
}
if (grf_future_status("mb\08\00")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "NewCargos by Michael Blunck"));
}
if (grf_future_status("\4E\4D\11\13")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "North American Industry Set"));
}
if (grf_future_status("EN\31\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "North Korean Industry Set v1"));
}
if (grf_future_status("EN\31\03")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "North Korean Industry Set v1 Fix"));
}
if (grf_future_status("EN\31\02")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "North Korean Industry Set v2"));
}
if (grf_future_status("SZ\13D")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Oil well decrease neutralizer"));
}
if (grf_future_status("OG+3")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "OpenGFX+ Industries"));
}
if (grf_future_status("DD\06\02")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Pikka Basic Industries"));
}
if (grf_future_status("\31\ff\05\03")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Stock Piled industries 1.1"));
}
if (grf_future_status("\31\ff\05\04")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Stock Piled industries 1.2"));
}
if (grf_future_status("\31\ff\05\05")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Stock Piled industries 1.3"));
}
if (grf_future_status("SLTU")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Tourist Set"));
}
if (grf_future_status("DD\06\03")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "UKRS Brick Chain"));
}
if (grf_future_status("DD\06\01")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "UKRS Industries"));
}
if (grf_future_status("\42\58\00\02")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Vanilla Industries in Stockpiling mode"));
}
/* this one might not survive as artic-only
if (climate == CLIMATE_ARCTIC) {
INCOMPATIBLE_GRF("mb\07\00", "Alpine Climate");
}
*/
if (grf_future_status("MG\08\00", "\FF\FF\FF\00")) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Lumber Mill"));
}
if (grf_future_status("CACa")) {
if (param["CACa", 1] != 0) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_PARAM_CITYSET));
}
}
if (grf_future_status("CASa")) {
if (param["CASa", 1] != 0) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_PARAM_CANSET));
}
}
if (grf_future_status("VC\00\01")) {
if (param["VC\00\01", 254] <= 17) {
error(FATAL, string(STR_ERR_INCOMPATIBLE_SET_TTRS_VERSION));
}
}// parameters also referenced by action 14 stuff - likely to be found in header.pynml, unless it got moved
// map_size is total number of tiles on the map
// compute relative size of the map, compared to 256*256
relative_map_size = map_size / (256 * 256);
// number of industry closures is proportional to map size (maps <= 256x256 will have 1 cluster)
industry_clusters = (relative_map_size / 2) + 1;
param_max_coastal_distance = marine_industry_max_coastal_distance;
if (marine_industry_max_coastal_distance == 0) {
param_max_coastal_distance = 255;
}
// I want to specify the order of the economies in parameter menu without worrying about breaking savegames etc
// but action 14 can't separate parameter value and position in menu for economies
// so here we remap selected economy to actual numeric value
// !! having tested, this doesn't actually prevent savegame breaking
// !! as the selected value in the action 14 UI remains constant (thereby changing which economy is active)
// !! there is zero chance of it being worthwhile to write a migration for existing savegames
// !! therefore rethink this - whether it's worthwhile, or whether to just reset economy order every time when adding new economies
if (economy_selection == 0) {
economy = 0;
}
if (economy_selection == 1) {
economy = 1;
}
if (economy_selection == 2) {
economy = 4;
}
if (economy_selection == 3) {
economy = 5;
}
if (economy_selection == 4) {
economy = 3;
}template tmpl_building_sprite(x, y, h, dy) {
[x, y, 64, h, -31, dy, ANIM]
}
template tmpl_building_sprite_filename(x, y, h, dy, filename) {
[x, y, 64, h, -31, dy, ANIM | NOCROP, filename]
}cargotable {
ACID,
BEER,
STAL,
ALUM,
NH3_,
BEAN,
BDMT,
CBLK,
STCB,
CASS,
CSTI,
CMNT,
RFPR,
CHLO,
CLAY,
SOAP,
COAL,
CTAR,
JAVA,
COKE,
COPR,
CORE,
DIAM,
EOIL,
POWR,
ENSP,
BOOM,
FMSP,
FECR,
FERT,
FISH,
FOOD,
FRUT,
GLAS,
GOOD,
GRAI,
IORE,
KAOL,
LVST,
WDPR,
LIME,
WOOD,
LYE_,
MAIL,
MAIZ,
MNO2,
MILK,
NITR,
NUTS,
OIL_,
O2__,
COAT,
PAPR,
PASS,
PEAT,
PETR,
PHOS,
IRON,
PIPE,
PLAS,
POTA,
PORE,
QLME,
RUBR,
SAND,
SALT,
SCMT,
SLAG,
SASH,
STST,
STEL,
STSE,
STSH,
STWR,
GRVL,
SULP,
TYRE,
VBOD,
VENG,
VPTS,
VEHI,
WOOL,
ZINC,
}
disable_item(FEAT_CARGOS, 0, 29);
disable_item(FEAT_CARGOS, 31, 31);
spriteset(cargoicon_acid) {
[10 + 20 * 4, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, acid_STEELTOWN, 1) {
property {
type_name: string(STR_CARGO_NAME_ACID);
unit_name: string(STR_CARGO_NAME_ACID);
type_abbreviation: string(STR_CID_ACID);
sprite: NEW_CARGO_SPRITE;
weight: 1.5;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_ACID);
penalty_lowerbound: 24;
single_penalty_length: 48;
capacity_multiplier: 1;
cargo_payment_list_colour: 183;
station_list_colour: 183;
price_factor: 109;
cargo_label: "ACID";
number: 1;
}
graphics {
cargoicon_acid;
}
}
}
spriteset(cargoicon_alcohol) {
[10 + 20 * 7, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, alcohol_BASIC_TEMPERATE, 1) {
property {
type_name: string(STR_CARGO_NAME_ALCOHOL);
unit_name: string(STR_CARGO_NAME_ALCOHOL);
type_abbreviation: string(STR_CID_ALCOHOL);
sprite: NEW_CARGO_SPRITE;
weight: 1.1;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
penalty_lowerbound: 9;
single_penalty_length: 36;
capacity_multiplier: 1;
cargo_payment_list_colour: 183;
station_list_colour: 183;
price_factor: 166;
cargo_label: "BEER";
number: 1;
}
graphics {
cargoicon_alcohol;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, alcohol_BASIC_TROPIC, 1) {
property {
type_name: string(STR_CARGO_NAME_ALCOHOL);
unit_name: string(STR_CARGO_NAME_ALCOHOL);
type_abbreviation: string(STR_CID_ALCOHOL);
sprite: NEW_CARGO_SPRITE;
weight: 1.1;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
penalty_lowerbound: 9;
single_penalty_length: 36;
capacity_multiplier: 1;
cargo_payment_list_colour: 183;
station_list_colour: 183;
price_factor: 166;
cargo_label: "BEER";
number: 1;
}
graphics {
cargoicon_alcohol;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, alcohol_IN_A_HOT_COUNTRY, 1) {
property {
type_name: string(STR_CARGO_NAME_ALCOHOL);
unit_name: string(STR_CARGO_NAME_ALCOHOL);
type_abbreviation: string(STR_CID_ALCOHOL);
sprite: NEW_CARGO_SPRITE;
weight: 1.1;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_LIQUID);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_ALCOHOL);
penalty_lowerbound: 9;
single_penalty_length: 36;
capacity_multiplier: 1;
cargo_payment_list_colour: 183;
station_list_colour: 183;
price_factor: 166;
cargo_label: "BEER";
number: 1;
}
graphics {
cargoicon_alcohol;
}
}
}
spriteset(cargoicon_alloy_steel) {
[10 + 20 * 11, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, alloy_steel_STEELTOWN, 3) {
property {
type_name: string(STR_CARGO_NAME_ALLOY_STEEL);
unit_name: string(STR_CARGO_NAME_ALLOY_STEEL);
type_abbreviation: string(STR_CID_ALLOY_STEEL);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_ALLOY_STEEL);
penalty_lowerbound: 14;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 61;
station_list_colour: 61;
price_factor: 128;
cargo_label: "STAL";
number: 3;
}
graphics {
cargoicon_alloy_steel;
}
}
}
spriteset(cargoicon_aluminium) {
[10 + 20 * 1, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, aluminium_STEELTOWN, 4) {
property {
type_name: string(STR_CARGO_NAME_ALUMINIUM);
unit_name: string(STR_CARGO_NAME_ALUMINIUM);
type_abbreviation: string(STR_CID_ALUMINIUM);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_ALUMINIUM);
penalty_lowerbound: 7;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 166;
station_list_colour: 166;
price_factor: 140;
cargo_label: "ALUM";
number: 4;
}
graphics {
cargoicon_aluminium;
}
}
}
spriteset(cargoicon_ammonia) {
[10 + 20 * 15, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, ammonia_BASIC_ARCTIC, 1) {
property {
type_name: string(STR_CARGO_NAME_AMMONIA);
unit_name: string(STR_CARGO_NAME_AMMONIA);
type_abbreviation: string(STR_CID_AMMONIA);
sprite: NEW_CARGO_SPRITE;
weight: 0.60;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_AMMONIA);
penalty_lowerbound: 32;
single_penalty_length: 64;
capacity_multiplier: 1;
cargo_payment_list_colour: 183;
station_list_colour: 183;
price_factor: 109;
cargo_label: "NH3_";
number: 1;
}
graphics {
cargoicon_ammonia;
}
}
}
spriteset(cargoicon_beans) {
[10 + 20 * 6, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==4) {
item(FEAT_CARGOS, beans_BASIC_TROPIC, 3) {
property {
type_name: string(STR_CARGO_NAME_BEANS);
unit_name: string(STR_CARGO_NAME_BEANS);
type_abbreviation: string(STR_CID_BEANS);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_BEANS);
penalty_lowerbound: 4;
single_penalty_length: 40;
capacity_multiplier: 1;
cargo_payment_list_colour: 61;
station_list_colour: 61;
price_factor: 119;
cargo_label: "BEAN";
number: 3;
}
graphics {
cargoicon_beans;
}
}
}
spriteset(cargoicon_building_materials) {
[10 + 20 * 1, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, building_materials_IN_A_HOT_COUNTRY, 3) {
property {
type_name: string(STR_CARGO_NAME_BUILDING_MATERIALS);
unit_name: string(STR_CARGO_NAME_BUILDING_MATERIALS);
type_abbreviation: string(STR_CID_BUILDING_MATERIALS);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS, CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_BUILDING_MATERIALS);
penalty_lowerbound: 12;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 61;
station_list_colour: 61;
price_factor: 133;
cargo_label: "BDMT";
number: 3;
}
graphics {
cargoicon_building_materials;
}
}
}
spriteset(cargoicon_carbon_black) {
[10 + 20 * 13, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, carbon_black_STEELTOWN, 6) {
property {
type_name: string(STR_CARGO_NAME_CARBON_BLACK);
unit_name: string(STR_CARGO_NAME_CARBON_BLACK);
type_abbreviation: string(STR_CID_CARBON_BLACK);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS, CC_BULK, CC_COVERED, CC_POWDERIZED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_CARBON_BLACK);
penalty_lowerbound: 40;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 157;
station_list_colour: 157;
price_factor: 153;
cargo_label: "CBLK";
number: 6;
}
graphics {
cargoicon_carbon_black;
}
}
}
spriteset(cargoicon_carbon_steel) {
[10 + 20 * 12, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, carbon_steel_STEELTOWN, 7) {
property {
type_name: string(STR_CARGO_NAME_CARBON_STEEL);
unit_name: string(STR_CARGO_NAME_CARBON_STEEL);
type_abbreviation: string(STR_CID_CARBON_STEEL);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_CARBON_STEEL);
penalty_lowerbound: 14;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 51;
station_list_colour: 51;
price_factor: 127;
cargo_label: "STCB";
number: 7;
}
graphics {
cargoicon_carbon_steel;
}
}
}
spriteset(cargoicon_cassava) {
[10 + 20 * 11, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, cassava_IN_A_HOT_COUNTRY, 4) {
property {
type_name: string(STR_CARGO_NAME_CASSAVA);
unit_name: string(STR_CARGO_NAME_CASSAVA);
type_abbreviation: string(STR_CID_CASSAVA);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_CASSAVA);
penalty_lowerbound: 4;
single_penalty_length: 40;
capacity_multiplier: 1;
cargo_payment_list_colour: 166;
station_list_colour: 166;
price_factor: 105;
cargo_label: "CASS";
number: 4;
}
graphics {
cargoicon_cassava;
}
}
}
spriteset(cargoicon_cast_iron) {
[10 + 20 * 0, 10 + 20 * 5, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, cast_iron_STEELTOWN, 8) {
property {
type_name: string(STR_CARGO_NAME_CAST_IRON);
unit_name: string(STR_CARGO_NAME_CAST_IRON);
type_abbreviation: string(STR_CID_CAST_IRON);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_CAST_IRON);
penalty_lowerbound: 15;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 141;
station_list_colour: 141;
price_factor: 120;
cargo_label: "CSTI";
number: 8;
}
graphics {
cargoicon_cast_iron;
}
}
}
spriteset(cargoicon_cement) {
[10 + 20 * 8, 10 + 20 * 3, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, cement_STEELTOWN, 9) {
property {
type_name: string(STR_CARGO_NAME_CEMENT);
unit_name: string(STR_CARGO_NAME_CEMENT);
type_abbreviation: string(STR_CID_CEMENT);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK, CC_COVERED, CC_POWDERIZED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_CEMENT);
penalty_lowerbound: 18;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 189;
station_list_colour: 189;
price_factor: 118;
cargo_label: "CMNT";
number: 9;
}
graphics {
cargoicon_cement;
}
}
}
spriteset(cargoicon_chemicals) {
[10 + 20 * 10, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, chemicals_BASIC_TEMPERATE, 3) {
property {
type_name: string(STR_CARGO_NAME_CHEMICALS);
unit_name: string(STR_CARGO_NAME_CHEMICALS);
type_abbreviation: string(STR_CID_CHEMICALS);
sprite: NEW_CARGO_SPRITE;
weight: 1.2;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_PIECE_GOODS, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_CHEMICALS);
penalty_lowerbound: 20;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 61;
station_list_colour: 61;
price_factor: 115;
cargo_label: "RFPR";
number: 3;
}
graphics {
cargoicon_chemicals;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, chemicals_BASIC_TROPIC, 4) {
property {
type_name: string(STR_CARGO_NAME_CHEMICALS);
unit_name: string(STR_CARGO_NAME_CHEMICALS);
type_abbreviation: string(STR_CID_CHEMICALS);
sprite: NEW_CARGO_SPRITE;
weight: 1.2;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_PIECE_GOODS, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_CHEMICALS);
penalty_lowerbound: 20;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 166;
station_list_colour: 166;
price_factor: 115;
cargo_label: "RFPR";
number: 4;
}
graphics {
cargoicon_chemicals;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, chemicals_IN_A_HOT_COUNTRY, 6) {
property {
type_name: string(STR_CARGO_NAME_CHEMICALS);
unit_name: string(STR_CARGO_NAME_CHEMICALS);
type_abbreviation: string(STR_CID_CHEMICALS);
sprite: NEW_CARGO_SPRITE;
weight: 1.2;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_PIECE_GOODS, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_CHEMICALS);
penalty_lowerbound: 20;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 157;
station_list_colour: 157;
price_factor: 115;
cargo_label: "RFPR";
number: 6;
}
graphics {
cargoicon_chemicals;
}
}
}
spriteset(cargoicon_chlorine) {
[10 + 20 * 2, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, chlorine_STEELTOWN, 10) {
property {
type_name: string(STR_CARGO_NAME_CHLORINE);
unit_name: string(STR_CARGO_NAME_CHLORINE);
type_abbreviation: string(STR_CID_CHLORINE);
sprite: NEW_CARGO_SPRITE;
weight: 2.0;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_CHLORINE);
penalty_lowerbound: 20;
single_penalty_length: 40;
capacity_multiplier: 1;
cargo_payment_list_colour: 55;
station_list_colour: 55;
price_factor: 115;
cargo_label: "CHLO";
number: 10;
}
graphics {
cargoicon_chlorine;
}
}
}
spriteset(cargoicon_clay) {
[10 + 20 * 9, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, clay_IN_A_HOT_COUNTRY, 7) {
property {
type_name: string(STR_CARGO_NAME_CLAY);
unit_name: string(STR_CARGO_NAME_CLAY);
type_abbreviation: string(STR_CID_CLAY);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK, CC_COVERED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_CLAY);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 51;
station_list_colour: 51;
price_factor: 100;
cargo_label: "CLAY";
number: 7;
}
graphics {
cargoicon_clay;
}
}
}
spriteset(cargoicon_cleaning_agents) {
[10 + 20 * 9, 10 + 20 * 5, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, cleaning_agents_STEELTOWN, 12) {
property {
type_name: string(STR_CARGO_NAME_CLEANING_AGENTS);
unit_name: string(STR_CARGO_NAME_CLEANING_AGENTS);
type_abbreviation: string(STR_CID_CLEANING_AGENTS);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_CLEANING_AGENTS);
penalty_lowerbound: 20;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 43;
station_list_colour: 43;
price_factor: 121;
cargo_label: "SOAP";
number: 12;
}
graphics {
cargoicon_cleaning_agents;
}
}
}
spriteset(cargoicon_coal) {
[10 + 20 * 1, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, coal_BASIC_TEMPERATE, 4) {
property {
type_name: TTD_STR_CARGO_PLURAL_COAL;
unit_name: TTD_STR_CARGO_SINGULAR_COAL;
type_abbreviation: TTD_STR_ABBREV_COAL;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_COAL;
penalty_lowerbound: 40;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 166;
station_list_colour: 166;
price_factor: 86;
cargo_label: "COAL";
number: 4;
}
graphics {
cargoicon_coal;
}
}
}
if (economy==5) {
item(FEAT_CARGOS, coal_STEELTOWN, 13) {
property {
type_name: TTD_STR_CARGO_PLURAL_COAL;
unit_name: TTD_STR_CARGO_SINGULAR_COAL;
type_abbreviation: TTD_STR_ABBREV_COAL;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_COAL;
penalty_lowerbound: 40;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 148;
station_list_colour: 148;
price_factor: 86;
cargo_label: "COAL";
number: 13;
}
graphics {
cargoicon_coal;
}
}
}
spriteset(cargoicon_coal_tar) {
[10 + 20 * 14, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, coal_tar_STEELTOWN, 14) {
property {
type_name: string(STR_CARGO_NAME_COAL_TAR);
unit_name: string(STR_CARGO_NAME_COAL_TAR);
type_abbreviation: string(STR_CID_COAL_TAR);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_COAL_TAR);
penalty_lowerbound: 64;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 5;
station_list_colour: 5;
price_factor: 98;
cargo_label: "CTAR";
number: 14;
}
graphics {
cargoicon_coal_tar;
}
}
}
spriteset(cargoicon_coffee) {
[10 + 20 * 4, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==4) {
item(FEAT_CARGOS, coffee_BASIC_TROPIC, 6) {
property {
type_name: string(STR_CARGO_NAME_COFFEE);
unit_name: string(STR_CARGO_NAME_COFFEE);
type_abbreviation: string(STR_CID_COFFEE);
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS, CC_EXPRESS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: string(STR_CARGO_UNIT_COFFEE);
penalty_lowerbound: 0;
single_penalty_length: 26;
capacity_multiplier: 1;
cargo_payment_list_colour: 157;
station_list_colour: 157;
price_factor: 173;
cargo_label: "JAVA";
number: 6;
}
graphics {
cargoicon_coffee;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, coffee_IN_A_HOT_COUNTRY, 8) {
property {
type_name: string(STR_CARGO_NAME_COFFEE);
unit_name: string(STR_CARGO_NAME_COFFEE);
type_abbreviation: string(STR_CID_COFFEE);
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS, CC_EXPRESS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: string(STR_CARGO_UNIT_COFFEE);
penalty_lowerbound: 0;
single_penalty_length: 26;
capacity_multiplier: 1;
cargo_payment_list_colour: 141;
station_list_colour: 141;
price_factor: 173;
cargo_label: "JAVA";
number: 8;
}
graphics {
cargoicon_coffee;
}
}
}
spriteset(cargoicon_coke) {
[10 + 20 * 1, 10 + 20 * 3, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, coke_STEELTOWN, 15) {
property {
type_name: string(STR_CARGO_NAME_COKE);
unit_name: string(STR_CARGO_NAME_COKE);
type_abbreviation: string(STR_CID_COKE);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_COKE);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 160;
station_list_colour: 160;
price_factor: 97;
cargo_label: "COKE";
number: 15;
}
graphics {
cargoicon_coke;
}
}
}
spriteset(cargoicon_copper) {
[10 + 20 * 8, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==4) {
item(FEAT_CARGOS, copper_BASIC_TROPIC, 7) {
property {
type_name: string(STR_CARGO_NAME_COPPER);
unit_name: string(STR_CARGO_NAME_COPPER);
type_abbreviation: string(STR_CID_COPPER);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_COPPER);
penalty_lowerbound: 7;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 51;
station_list_colour: 51;
price_factor: 146;
cargo_label: "COPR";
number: 7;
}
graphics {
cargoicon_copper;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, copper_IN_A_HOT_COUNTRY, 9) {
property {
type_name: string(STR_CARGO_NAME_COPPER);
unit_name: string(STR_CARGO_NAME_COPPER);
type_abbreviation: string(STR_CID_COPPER);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_COPPER);
penalty_lowerbound: 7;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 189;
station_list_colour: 189;
price_factor: 146;
cargo_label: "COPR";
number: 9;
}
graphics {
cargoicon_copper;
}
}
}
spriteset(cargoicon_copper_ore) {
[10 + 20 * 1, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==4) {
item(FEAT_CARGOS, copper_ore_BASIC_TROPIC, 8) {
property {
type_name: TTD_STR_CARGO_PLURAL_COPPER_ORE;
unit_name: TTD_STR_CARGO_SINGULAR_COPPER_ORE;
type_abbreviation: TTD_STR_ABBREV_COPPER_ORE;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_COPPER_ORE;
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 141;
station_list_colour: 141;
price_factor: 89;
cargo_label: "CORE";
number: 8;
}
graphics {
cargoicon_copper_ore;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, copper_ore_IN_A_HOT_COUNTRY, 10) {
property {
type_name: TTD_STR_CARGO_PLURAL_COPPER_ORE;
unit_name: TTD_STR_CARGO_SINGULAR_COPPER_ORE;
type_abbreviation: TTD_STR_ABBREV_COPPER_ORE;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_COPPER_ORE;
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 55;
station_list_colour: 55;
price_factor: 89;
cargo_label: "CORE";
number: 10;
}
graphics {
cargoicon_copper_ore;
}
}
}
spriteset(cargoicon_diamonds) {
[10 + 20 * 3, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, diamonds_IN_A_HOT_COUNTRY, 12) {
property {
type_name: TTD_STR_CARGO_PLURAL_DIAMONDS;
unit_name: TTD_STR_CARGO_SINGULAR_DIAMOND;
type_abbreviation: TTD_STR_ABBREV_DIAMONDS;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_ARMOURED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: TTD_STR_QUANTITY_DIAMONDS;
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 43;
station_list_colour: 43;
price_factor: 162;
cargo_label: "DIAM";
number: 12;
}
graphics {
cargoicon_diamonds;
}
}
}
spriteset(cargoicon_edible_oil) {
[10 + 20 * 0, 10 + 20 * 3, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, edible_oil_IN_A_HOT_COUNTRY, 13) {
property {
type_name: string(STR_CARGO_NAME_EDIBLE_OIL);
unit_name: string(STR_CARGO_NAME_EDIBLE_OIL);
type_abbreviation: string(STR_CID_EDIBLE_OIL);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS, CC_LIQUID);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_EDIBLE_OIL);
penalty_lowerbound: 20;
single_penalty_length: 128;
capacity_multiplier: 1;
cargo_payment_list_colour: 148;
station_list_colour: 148;
price_factor: 116;
cargo_label: "EOIL";
number: 13;
}
graphics {
cargoicon_edible_oil;
}
}
}
spriteset(cargoicon_electrical_parts) {
[10 + 20 * 5, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, electrical_parts_STEELTOWN, 16) {
property {
type_name: string(STR_CARGO_NAME_ELECTRICAL_PARTS);
unit_name: string(STR_CARGO_NAME_ELECTRICAL_PARTS);
type_abbreviation: string(STR_CID_ELECTRICAL_PARTS);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_ELECTRICAL_PARTS);
penalty_lowerbound: 7;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 127;
station_list_colour: 127;
price_factor: 148;
cargo_label: "POWR";
number: 16;
}
graphics {
cargoicon_electrical_parts;
}
}
}
spriteset(cargoicon_engineering_supplies) {
[10 + 20 * 11, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, engineering_supplies_BASIC_TEMPERATE, 6) {
property {
type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 157;
station_list_colour: 157;
price_factor: 172;
cargo_label: "ENSP";
number: 6;
}
graphics {
cargoicon_engineering_supplies;
}
}
}
if (economy==1) {
item(FEAT_CARGOS, engineering_supplies_BASIC_ARCTIC, 3) {
property {
type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 61;
station_list_colour: 61;
price_factor: 172;
cargo_label: "ENSP";
number: 3;
}
graphics {
cargoicon_engineering_supplies;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, engineering_supplies_BASIC_TROPIC, 9) {
property {
type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 189;
station_list_colour: 189;
price_factor: 172;
cargo_label: "ENSP";
number: 9;
}
graphics {
cargoicon_engineering_supplies;
}
}
}
if (economy==5) {
item(FEAT_CARGOS, engineering_supplies_STEELTOWN, 17) {
property {
type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 143;
station_list_colour: 143;
price_factor: 172;
cargo_label: "ENSP";
number: 17;
}
graphics {
cargoicon_engineering_supplies;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, engineering_supplies_IN_A_HOT_COUNTRY, 14) {
property {
type_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
unit_name: string(STR_CARGO_NAME_ENGINEERING_SUPPLIES);
type_abbreviation: string(STR_CID_ENGINEERING_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_ENGINEERING_SUPPLIES);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 5;
station_list_colour: 5;
price_factor: 172;
cargo_label: "ENSP";
number: 14;
}
graphics {
cargoicon_engineering_supplies;
}
}
}
spriteset(cargoicon_explosives) {
[10 + 20 * 2, 10 + 20 * 3, 10, 10, 0, 0, ANIM, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, explosives_BASIC_ARCTIC, 4) {
property {
type_name: string(STR_CARGO_NAME_EXPLOSIVES);
unit_name: string(STR_CARGO_NAME_EXPLOSIVES);
type_abbreviation: string(STR_CID_EXPLOSIVES);
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_EXPLOSIVES);
penalty_lowerbound: 6;
single_penalty_length: 42;
capacity_multiplier: 1;
cargo_payment_list_colour: 166;
station_list_colour: 166;
price_factor: 158;
cargo_label: "BOOM";
number: 4;
}
graphics {
cargoicon_explosives;
}
}
}
spriteset(cargoicon_farm_supplies) {
[10 + 20 * 8, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, farm_supplies_BASIC_TEMPERATE, 7) {
property {
type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
type_abbreviation: string(STR_CID_FARM_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_FMSP);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 51;
station_list_colour: 51;
price_factor: 170;
cargo_label: "FMSP";
number: 7;
}
graphics {
cargoicon_farm_supplies;
}
}
}
if (economy==1) {
item(FEAT_CARGOS, farm_supplies_BASIC_ARCTIC, 5) {
property {
type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
type_abbreviation: string(STR_CID_FARM_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_FMSP);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 45;
station_list_colour: 45;
price_factor: 170;
cargo_label: "FMSP";
number: 5;
}
graphics {
cargoicon_farm_supplies;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, farm_supplies_BASIC_TROPIC, 10) {
property {
type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
type_abbreviation: string(STR_CID_FARM_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_FMSP);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 55;
station_list_colour: 55;
price_factor: 170;
cargo_label: "FMSP";
number: 10;
}
graphics {
cargoicon_farm_supplies;
}
}
}
if (economy==5) {
item(FEAT_CARGOS, farm_supplies_STEELTOWN, 18) {
property {
type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
type_abbreviation: string(STR_CID_FARM_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_FMSP);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 37;
station_list_colour: 37;
price_factor: 170;
cargo_label: "FMSP";
number: 18;
}
graphics {
cargoicon_farm_supplies;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, farm_supplies_IN_A_HOT_COUNTRY, 15) {
property {
type_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
unit_name: string(STR_CARGO_NAME_FARM_SUPPLIES);
type_abbreviation: string(STR_CID_FARM_SUPPLIES);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: string(STR_CARGO_UNIT_FMSP);
penalty_lowerbound: 2;
single_penalty_length: 32;
capacity_multiplier: 1;
cargo_payment_list_colour: 160;
station_list_colour: 160;
price_factor: 170;
cargo_label: "FMSP";
number: 15;
}
graphics {
cargoicon_farm_supplies;
}
}
}
spriteset(cargoicon_ferrochrome) {
[10 + 20 * 8, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, ferrochrome_STEELTOWN, 19) {
property {
type_name: string(STR_CARGO_NAME_FERROCHROME);
unit_name: string(STR_CARGO_NAME_FERROCHROME);
type_abbreviation: string(STR_CID_FERROCHROME);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FERROCHROME);
penalty_lowerbound: 40;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 146;
station_list_colour: 146;
price_factor: 106;
cargo_label: "FECR";
number: 19;
}
graphics {
cargoicon_ferrochrome;
}
}
}
spriteset(cargoicon_fertiliser) {
[10 + 20 * 3, 10 + 20 * 3, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, fertiliser_BASIC_ARCTIC, 6) {
property {
type_name: string(STR_CARGO_NAME_FERTILISER);
unit_name: string(STR_CARGO_NAME_FERTILISER);
type_abbreviation: string(STR_CID_FERTILISER);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS, CC_BULK, CC_COVERED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FERTILISER);
penalty_lowerbound: 22;
single_penalty_length: 44;
capacity_multiplier: 1;
cargo_payment_list_colour: 157;
station_list_colour: 157;
price_factor: 123;
cargo_label: "FERT";
number: 6;
}
graphics {
cargoicon_fertiliser;
}
}
}
spriteset(cargoicon_fish) {
[10 + 20 * 15, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, fish_BASIC_TEMPERATE, 8) {
property {
type_name: string(STR_CARGO_NAME_FISH);
unit_name: string(STR_CARGO_NAME_FISH);
type_abbreviation: string(STR_CID_FISH);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_REFRIGERATED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FISH);
penalty_lowerbound: 0;
single_penalty_length: 18;
capacity_multiplier: 1;
cargo_payment_list_colour: 141;
station_list_colour: 141;
price_factor: 134;
cargo_label: "FISH";
number: 8;
}
graphics {
cargoicon_fish;
}
}
}
if (economy==1) {
item(FEAT_CARGOS, fish_BASIC_ARCTIC, 7) {
property {
type_name: string(STR_CARGO_NAME_FISH);
unit_name: string(STR_CARGO_NAME_FISH);
type_abbreviation: string(STR_CID_FISH);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_REFRIGERATED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FISH);
penalty_lowerbound: 0;
single_penalty_length: 18;
capacity_multiplier: 1;
cargo_payment_list_colour: 51;
station_list_colour: 51;
price_factor: 134;
cargo_label: "FISH";
number: 7;
}
graphics {
cargoicon_fish;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, fish_BASIC_TROPIC, 12) {
property {
type_name: string(STR_CARGO_NAME_FISH);
unit_name: string(STR_CARGO_NAME_FISH);
type_abbreviation: string(STR_CID_FISH);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_REFRIGERATED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FISH);
penalty_lowerbound: 0;
single_penalty_length: 18;
capacity_multiplier: 1;
cargo_payment_list_colour: 43;
station_list_colour: 43;
price_factor: 134;
cargo_label: "FISH";
number: 12;
}
graphics {
cargoicon_fish;
}
}
}
spriteset(cargoicon_food) {
[10 + 20 * 12, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, food_BASIC_TEMPERATE, 11) {
property {
type_name: TTD_STR_CARGO_PLURAL_FOOD;
unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
type_abbreviation: TTD_STR_ABBREV_FOOD;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
town_growth_effect: TOWNGROWTH_FOOD;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_FOOD;
penalty_lowerbound: 0;
single_penalty_length: 20;
capacity_multiplier: 1;
cargo_payment_list_colour: 186;
station_list_colour: 186;
price_factor: 168;
cargo_label: "FOOD";
number: 11;
}
graphics {
cargoicon_food;
}
}
}
if (economy==1) {
item(FEAT_CARGOS, food_BASIC_ARCTIC, 11) {
property {
type_name: TTD_STR_CARGO_PLURAL_FOOD;
unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
type_abbreviation: TTD_STR_ABBREV_FOOD;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
town_growth_effect: TOWNGROWTH_FOOD;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_FOOD;
penalty_lowerbound: 0;
single_penalty_length: 20;
capacity_multiplier: 1;
cargo_payment_list_colour: 186;
station_list_colour: 186;
price_factor: 168;
cargo_label: "FOOD";
number: 11;
}
graphics {
cargoicon_food;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, food_BASIC_TROPIC, 11) {
property {
type_name: TTD_STR_CARGO_PLURAL_FOOD;
unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
type_abbreviation: TTD_STR_ABBREV_FOOD;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
town_growth_effect: TOWNGROWTH_FOOD;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_FOOD;
penalty_lowerbound: 0;
single_penalty_length: 20;
capacity_multiplier: 1;
cargo_payment_list_colour: 186;
station_list_colour: 186;
price_factor: 168;
cargo_label: "FOOD";
number: 11;
}
graphics {
cargoicon_food;
}
}
}
if (economy==5) {
item(FEAT_CARGOS, food_STEELTOWN, 11) {
property {
type_name: TTD_STR_CARGO_PLURAL_FOOD;
unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
type_abbreviation: TTD_STR_ABBREV_FOOD;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
town_growth_effect: TOWNGROWTH_FOOD;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_FOOD;
penalty_lowerbound: 0;
single_penalty_length: 20;
capacity_multiplier: 1;
cargo_payment_list_colour: 186;
station_list_colour: 186;
price_factor: 168;
cargo_label: "FOOD";
number: 11;
}
graphics {
cargoicon_food;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, food_IN_A_HOT_COUNTRY, 11) {
property {
type_name: TTD_STR_CARGO_PLURAL_FOOD;
unit_name: TTD_STR_CARGO_SINGULAR_FOOD;
type_abbreviation: TTD_STR_ABBREV_FOOD;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_REFRIGERATED, CC_EXPRESS);
town_growth_effect: TOWNGROWTH_FOOD;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_FOOD;
penalty_lowerbound: 0;
single_penalty_length: 20;
capacity_multiplier: 1;
cargo_payment_list_colour: 186;
station_list_colour: 186;
price_factor: 168;
cargo_label: "FOOD";
number: 11;
}
graphics {
cargoicon_food;
}
}
}
spriteset(cargoicon_fruits) {
[10 + 20 * 14, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, fruits_BASIC_TEMPERATE, 9) {
property {
type_name: string(STR_CARGO_NAME_FRUITS);
unit_name: string(STR_CARGO_NAME_FRUITS);
type_abbreviation: TTD_STR_ABBREV_FRUIT;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_REFRIGERATED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FRUITS);
penalty_lowerbound: 0;
single_penalty_length: 26;
capacity_multiplier: 1;
cargo_payment_list_colour: 189;
station_list_colour: 189;
price_factor: 124;
cargo_label: "FRUT";
number: 9;
}
graphics {
cargoicon_fruits;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, fruits_BASIC_TROPIC, 13) {
property {
type_name: string(STR_CARGO_NAME_FRUITS);
unit_name: string(STR_CARGO_NAME_FRUITS);
type_abbreviation: TTD_STR_ABBREV_FRUIT;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_REFRIGERATED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FRUITS);
penalty_lowerbound: 0;
single_penalty_length: 26;
capacity_multiplier: 1;
cargo_payment_list_colour: 148;
station_list_colour: 148;
price_factor: 124;
cargo_label: "FRUT";
number: 13;
}
graphics {
cargoicon_fruits;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, fruits_IN_A_HOT_COUNTRY, 16) {
property {
type_name: string(STR_CARGO_NAME_FRUITS);
unit_name: string(STR_CARGO_NAME_FRUITS);
type_abbreviation: TTD_STR_ABBREV_FRUIT;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_PIECE_GOODS, CC_REFRIGERATED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_FRUITS);
penalty_lowerbound: 0;
single_penalty_length: 26;
capacity_multiplier: 1;
cargo_payment_list_colour: 127;
station_list_colour: 127;
price_factor: 124;
cargo_label: "FRUT";
number: 16;
}
graphics {
cargoicon_fruits;
}
}
}
spriteset(cargoicon_glass) {
[10 + 20 * 7, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, glass_STEELTOWN, 20) {
property {
type_name: string(STR_CARGO_NAME_GLASS);
unit_name: string(STR_CARGO_NAME_GLASS);
type_abbreviation: string(STR_CID_GLASS);
sprite: NEW_CARGO_SPRITE;
weight: 0.65;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_GLASS);
penalty_lowerbound: 12;
single_penalty_length: 180;
capacity_multiplier: 1;
cargo_payment_list_colour: 214;
station_list_colour: 214;
price_factor: 132;
cargo_label: "GLAS";
number: 20;
}
graphics {
cargoicon_glass;
}
}
}
spriteset(cargoicon_goods) {
[10 + 20 * 5, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, goods_BASIC_TEMPERATE, 5) {
property {
type_name: TTD_STR_CARGO_PLURAL_GOODS;
unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
type_abbreviation: TTD_STR_ABBREV_GOODS;
sprite: NEW_CARGO_SPRITE;
weight: 0.5;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS);
town_growth_effect: TOWNGROWTH_WATER;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: TTD_STR_QUANTITY_GOODS;
penalty_lowerbound: 10;
single_penalty_length: 56;
capacity_multiplier: 2;
cargo_payment_list_colour: 45;
station_list_colour: 45;
price_factor: 163;
cargo_label: "GOOD";
number: 5;
}
graphics {
cargoicon_goods;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, goods_BASIC_TROPIC, 5) {
property {
type_name: TTD_STR_CARGO_PLURAL_GOODS;
unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
type_abbreviation: TTD_STR_ABBREV_GOODS;
sprite: NEW_CARGO_SPRITE;
weight: 0.5;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS);
town_growth_effect: TOWNGROWTH_WATER;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: TTD_STR_QUANTITY_GOODS;
penalty_lowerbound: 10;
single_penalty_length: 56;
capacity_multiplier: 2;
cargo_payment_list_colour: 45;
station_list_colour: 45;
price_factor: 163;
cargo_label: "GOOD";
number: 5;
}
graphics {
cargoicon_goods;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, goods_IN_A_HOT_COUNTRY, 5) {
property {
type_name: TTD_STR_CARGO_PLURAL_GOODS;
unit_name: TTD_STR_CARGO_SINGULAR_GOODS;
type_abbreviation: TTD_STR_ABBREV_GOODS;
sprite: NEW_CARGO_SPRITE;
weight: 0.5;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS);
town_growth_effect: TOWNGROWTH_WATER;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_CRATES;
items_of_cargo: TTD_STR_QUANTITY_GOODS;
penalty_lowerbound: 10;
single_penalty_length: 56;
capacity_multiplier: 2;
cargo_payment_list_colour: 45;
station_list_colour: 45;
price_factor: 163;
cargo_label: "GOOD";
number: 5;
}
graphics {
cargoicon_goods;
}
}
}
spriteset(cargoicon_grain) {
[10 + 20 * 6, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==4) {
item(FEAT_CARGOS, grain_BASIC_TROPIC, 14) {
property {
type_name: TTD_STR_CARGO_PLURAL_GRAIN;
unit_name: TTD_STR_CARGO_SINGULAR_GRAIN;
type_abbreviation: TTD_STR_ABBREV_GRAIN;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_GRAIN;
penalty_lowerbound: 4;
single_penalty_length: 40;
capacity_multiplier: 1;
cargo_payment_list_colour: 5;
station_list_colour: 5;
price_factor: 114;
cargo_label: "GRAI";
number: 14;
}
graphics {
cargoicon_grain;
}
}
}
spriteset(cargoicon_iron_ore) {
[10 + 20 * 9, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, iron_ore_BASIC_TEMPERATE, 10) {
property {
type_name: TTD_STR_CARGO_PLURAL_IRON_ORE;
unit_name: TTD_STR_CARGO_SINGULAR_IRON_ORE;
type_abbreviation: TTD_STR_ABBREV_IRON_ORE;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_IRON_ORE;
penalty_lowerbound: 40;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 55;
station_list_colour: 55;
price_factor: 90;
cargo_label: "IORE";
number: 10;
}
graphics {
cargoicon_iron_ore;
}
}
}
if (economy==5) {
item(FEAT_CARGOS, iron_ore_STEELTOWN, 21) {
property {
type_name: TTD_STR_CARGO_PLURAL_IRON_ORE;
unit_name: TTD_STR_CARGO_SINGULAR_IRON_ORE;
type_abbreviation: TTD_STR_ABBREV_IRON_ORE;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_IRON_ORE;
penalty_lowerbound: 40;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 8;
station_list_colour: 8;
price_factor: 90;
cargo_label: "IORE";
number: 21;
}
graphics {
cargoicon_iron_ore;
}
}
}
spriteset(cargoicon_kaolin) {
[10 + 20 * 5, 10 + 20 * 3, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, kaolin_BASIC_TEMPERATE, 12) {
property {
type_name: string(STR_CARGO_NAME_KAOLIN);
unit_name: string(STR_CARGO_NAME_KAOLIN);
type_abbreviation: string(STR_CID_KAOLIN);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK, CC_LIQUID, CC_COVERED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_KAOLIN);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 43;
station_list_colour: 43;
price_factor: 100;
cargo_label: "KAOL";
number: 12;
}
graphics {
cargoicon_kaolin;
}
}
}
if (economy==1) {
item(FEAT_CARGOS, kaolin_BASIC_ARCTIC, 8) {
property {
type_name: string(STR_CARGO_NAME_KAOLIN);
unit_name: string(STR_CARGO_NAME_KAOLIN);
type_abbreviation: string(STR_CID_KAOLIN);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK, CC_LIQUID, CC_COVERED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_KAOLIN);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 141;
station_list_colour: 141;
price_factor: 100;
cargo_label: "KAOL";
number: 8;
}
graphics {
cargoicon_kaolin;
}
}
}
spriteset(cargoicon_livestock) {
[10 + 20 * 4, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, livestock_BASIC_TEMPERATE, 13) {
property {
type_name: TTD_STR_CARGO_PLURAL_LIVESTOCK;
unit_name: TTD_STR_CARGO_SINGULAR_LIVESTOCK;
type_abbreviation: TTD_STR_ABBREV_LIVESTOCK;
sprite: NEW_CARGO_SPRITE;
weight: 0.1875;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_ITEMS;
items_of_cargo: TTD_STR_QUANTITY_LIVESTOCK;
penalty_lowerbound: 0;
single_penalty_length: 15;
capacity_multiplier: 1;
cargo_payment_list_colour: 148;
station_list_colour: 148;
price_factor: 122;
cargo_label: "LVST";
number: 13;
}
graphics {
cargoicon_livestock;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, livestock_BASIC_TROPIC, 15) {
property {
type_name: TTD_STR_CARGO_PLURAL_LIVESTOCK;
unit_name: TTD_STR_CARGO_SINGULAR_LIVESTOCK;
type_abbreviation: TTD_STR_ABBREV_LIVESTOCK;
sprite: NEW_CARGO_SPRITE;
weight: 0.1875;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_ITEMS;
items_of_cargo: TTD_STR_QUANTITY_LIVESTOCK;
penalty_lowerbound: 0;
single_penalty_length: 15;
capacity_multiplier: 1;
cargo_payment_list_colour: 160;
station_list_colour: 160;
price_factor: 122;
cargo_label: "LVST";
number: 15;
}
graphics {
cargoicon_livestock;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, livestock_IN_A_HOT_COUNTRY, 17) {
property {
type_name: TTD_STR_CARGO_PLURAL_LIVESTOCK;
unit_name: TTD_STR_CARGO_SINGULAR_LIVESTOCK;
type_abbreviation: TTD_STR_ABBREV_LIVESTOCK;
sprite: NEW_CARGO_SPRITE;
weight: 0.1875;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_ITEMS;
items_of_cargo: TTD_STR_QUANTITY_LIVESTOCK;
penalty_lowerbound: 0;
single_penalty_length: 15;
capacity_multiplier: 1;
cargo_payment_list_colour: 143;
station_list_colour: 143;
price_factor: 122;
cargo_label: "LVST";
number: 17;
}
graphics {
cargoicon_livestock;
}
}
}
spriteset(cargoicon_lumber) {
[10 + 20 * 6, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, lumber_BASIC_ARCTIC, 10) {
property {
type_name: string(STR_CARGO_NAME_LUMBER);
unit_name: string(STR_CARGO_NAME_LUMBER);
type_abbreviation: string(STR_CID_LUMBER);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_LUMBER);
penalty_lowerbound: 18;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 55;
station_list_colour: 55;
price_factor: 117;
cargo_label: "WDPR";
number: 10;
}
graphics {
cargoicon_lumber;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, lumber_IN_A_HOT_COUNTRY, 19) {
property {
type_name: string(STR_CARGO_NAME_LUMBER);
unit_name: string(STR_CARGO_NAME_LUMBER);
type_abbreviation: string(STR_CID_LUMBER);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_LUMBER);
penalty_lowerbound: 18;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 146;
station_list_colour: 146;
price_factor: 117;
cargo_label: "WDPR";
number: 19;
}
graphics {
cargoicon_lumber;
}
}
}
spriteset(cargoicon_limestone) {
[10 + 20 * 0, 10 + 20 * 4, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, limestone_STEELTOWN, 22) {
property {
type_name: string(STR_CARGO_NAME_LIMESTONE);
unit_name: string(STR_CARGO_NAME_LIMESTONE);
type_abbreviation: string(STR_CID_LIMESTONE);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_LIMESTONE);
penalty_lowerbound: 38;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 172;
station_list_colour: 172;
price_factor: 92;
cargo_label: "LIME";
number: 22;
}
graphics {
cargoicon_limestone;
}
}
}
spriteset(cargoicon_logs) {
[10 + 20 * 8, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, logs_BASIC_ARCTIC, 9) {
property {
type_name: string(STR_CARGO_NAME_LOGS);
unit_name: string(STR_CARGO_NAME_LOGS);
type_abbreviation: string(STR_CID_LOGS);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_LOGS);
penalty_lowerbound: 24;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 189;
station_list_colour: 189;
price_factor: 104;
cargo_label: "WOOD";
number: 9;
}
graphics {
cargoicon_logs;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, logs_IN_A_HOT_COUNTRY, 18) {
property {
type_name: string(STR_CARGO_NAME_LOGS);
unit_name: string(STR_CARGO_NAME_LOGS);
type_abbreviation: string(STR_CID_LOGS);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_LOGS);
penalty_lowerbound: 24;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 37;
station_list_colour: 37;
price_factor: 104;
cargo_label: "WOOD";
number: 18;
}
graphics {
cargoicon_logs;
}
}
}
spriteset(cargoicon_lye) {
[10 + 20 * 4, 10 + 20 * 5, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, lye_STEELTOWN, 23) {
property {
type_name: string(STR_CARGO_NAME_LYE);
unit_name: string(STR_CARGO_NAME_LYE);
type_abbreviation: string(STR_CID_LYE);
sprite: NEW_CARGO_SPRITE;
weight: 1.5;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_HAZARDOUS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_LYE);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 177;
station_list_colour: 177;
price_factor: 108;
cargo_label: "LYE_";
number: 23;
}
graphics {
cargoicon_lye;
}
}
}
spriteset(cargoicon_mail) {
[10 + 20 * 2, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, mail_BASIC_TEMPERATE, 2) {
property {
type_name: TTD_STR_CARGO_PLURAL_MAIL;
unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
type_abbreviation: TTD_STR_ABBREV_MAIL;
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 0;
cargo_classes: bitmask(CC_MAIL);
town_growth_effect: TOWNGROWTH_MAIL;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: TTD_STR_QUANTITY_MAIL;
penalty_lowerbound: 6;
single_penalty_length: 24;
capacity_multiplier: 2;
cargo_payment_list_colour: 15;
station_list_colour: 15;
price_factor: 167;
cargo_label: "MAIL";
number: 2;
}
graphics {
cargoicon_mail;
}
}
}
if (economy==1) {
item(FEAT_CARGOS, mail_BASIC_ARCTIC, 2) {
property {
type_name: TTD_STR_CARGO_PLURAL_MAIL;
unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
type_abbreviation: TTD_STR_ABBREV_MAIL;
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 0;
cargo_classes: bitmask(CC_MAIL);
town_growth_effect: TOWNGROWTH_MAIL;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: TTD_STR_QUANTITY_MAIL;
penalty_lowerbound: 6;
single_penalty_length: 24;
capacity_multiplier: 2;
cargo_payment_list_colour: 15;
station_list_colour: 15;
price_factor: 167;
cargo_label: "MAIL";
number: 2;
}
graphics {
cargoicon_mail;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, mail_BASIC_TROPIC, 2) {
property {
type_name: TTD_STR_CARGO_PLURAL_MAIL;
unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
type_abbreviation: TTD_STR_ABBREV_MAIL;
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 0;
cargo_classes: bitmask(CC_MAIL);
town_growth_effect: TOWNGROWTH_MAIL;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: TTD_STR_QUANTITY_MAIL;
penalty_lowerbound: 6;
single_penalty_length: 24;
capacity_multiplier: 2;
cargo_payment_list_colour: 15;
station_list_colour: 15;
price_factor: 167;
cargo_label: "MAIL";
number: 2;
}
graphics {
cargoicon_mail;
}
}
}
if (economy==5) {
item(FEAT_CARGOS, mail_STEELTOWN, 2) {
property {
type_name: TTD_STR_CARGO_PLURAL_MAIL;
unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
type_abbreviation: TTD_STR_ABBREV_MAIL;
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 0;
cargo_classes: bitmask(CC_MAIL);
town_growth_effect: TOWNGROWTH_MAIL;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: TTD_STR_QUANTITY_MAIL;
penalty_lowerbound: 6;
single_penalty_length: 24;
capacity_multiplier: 2;
cargo_payment_list_colour: 15;
station_list_colour: 15;
price_factor: 167;
cargo_label: "MAIL";
number: 2;
}
graphics {
cargoicon_mail;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, mail_IN_A_HOT_COUNTRY, 2) {
property {
type_name: TTD_STR_CARGO_PLURAL_MAIL;
unit_name: TTD_STR_CARGO_SINGULAR_MAIL;
type_abbreviation: TTD_STR_ABBREV_MAIL;
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 0;
cargo_classes: bitmask(CC_MAIL);
town_growth_effect: TOWNGROWTH_MAIL;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: TTD_STR_QUANTITY_MAIL;
penalty_lowerbound: 6;
single_penalty_length: 24;
capacity_multiplier: 2;
cargo_payment_list_colour: 15;
station_list_colour: 15;
price_factor: 167;
cargo_label: "MAIL";
number: 2;
}
graphics {
cargoicon_mail;
}
}
}
spriteset(cargoicon_maize) {
[10 + 20 * 11, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, maize_IN_A_HOT_COUNTRY, 20) {
property {
type_name: TTD_STR_CARGO_PLURAL_MAIZE;
unit_name: TTD_STR_CARGO_SINGULAR_MAIZE;
type_abbreviation: TTD_STR_ABBREV_MAIZE;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_MAIZE;
penalty_lowerbound: 4;
single_penalty_length: 40;
capacity_multiplier: 1;
cargo_payment_list_colour: 214;
station_list_colour: 214;
price_factor: 111;
cargo_label: "MAIZ";
number: 20;
}
graphics {
cargoicon_maize;
}
}
}
spriteset(cargoicon_manganese) {
[10 + 20 * 9, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, manganese_STEELTOWN, 24) {
property {
type_name: string(STR_CARGO_NAME_MANGANESE);
unit_name: string(STR_CARGO_NAME_MANGANESE);
type_abbreviation: string(STR_CID_MANGANESE);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_MANGANESE);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 181;
station_list_colour: 181;
price_factor: 95;
cargo_label: "MNO2";
number: 24;
}
graphics {
cargoicon_manganese;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, manganese_IN_A_HOT_COUNTRY, 21) {
property {
type_name: string(STR_CARGO_NAME_MANGANESE);
unit_name: string(STR_CARGO_NAME_MANGANESE);
type_abbreviation: string(STR_CID_MANGANESE);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_MANGANESE);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 8;
station_list_colour: 8;
price_factor: 95;
cargo_label: "MNO2";
number: 21;
}
graphics {
cargoicon_manganese;
}
}
}
spriteset(cargoicon_milk) {
[10 + 20 * 13, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, milk_BASIC_TEMPERATE, 14) {
property {
type_name: string(STR_CARGO_NAME_MILK);
unit_name: string(STR_CARGO_NAME_MILK);
type_abbreviation: string(STR_CID_MILK);
sprite: NEW_CARGO_SPRITE;
weight: 1.1;
is_freight: 1;
cargo_classes: bitmask(CC_EXPRESS, CC_LIQUID, CC_REFRIGERATED);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_MILK);
penalty_lowerbound: 0;
single_penalty_length: 16;
capacity_multiplier: 1;
cargo_payment_list_colour: 5;
station_list_colour: 5;
price_factor: 131;
cargo_label: "MILK";
number: 14;
}
graphics {
cargoicon_milk;
}
}
}
spriteset(cargoicon_nitrates) {
[10 + 20 * 7, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==4) {
item(FEAT_CARGOS, nitrates_BASIC_TROPIC, 16) {
property {
type_name: string(STR_CARGO_NAME_NITRATES);
unit_name: string(STR_CARGO_NAME_NITRATES);
type_abbreviation: string(STR_CID_NITRATES);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_NITRATES);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 127;
station_list_colour: 127;
price_factor: 103;
cargo_label: "NITR";
number: 16;
}
graphics {
cargoicon_nitrates;
}
}
}
spriteset(cargoicon_nuts) {
[10 + 20 * 12, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, nuts_IN_A_HOT_COUNTRY, 22) {
property {
type_name: string(STR_CARGO_NAME_NUTS);
unit_name: string(STR_CARGO_NAME_NUTS);
type_abbreviation: string(STR_CID_NUTS);
sprite: NEW_CARGO_SPRITE;
weight: 0.25;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_BAGS;
items_of_cargo: string(STR_CARGO_UNIT_NUTS);
penalty_lowerbound: 4;
single_penalty_length: 40;
capacity_multiplier: 1;
cargo_payment_list_colour: 172;
station_list_colour: 172;
price_factor: 113;
cargo_label: "NUTS";
number: 22;
}
graphics {
cargoicon_nuts;
}
}
}
spriteset(cargoicon_oil) {
[10 + 20 * 3, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==4) {
item(FEAT_CARGOS, oil_BASIC_TROPIC, 17) {
property {
type_name: TTD_STR_CARGO_PLURAL_OIL;
unit_name: TTD_STR_CARGO_SINGULAR_OIL;
type_abbreviation: TTD_STR_ABBREV_OIL;
sprite: NEW_CARGO_SPRITE;
weight: 0.9;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: TTD_STR_QUANTITY_OIL;
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 143;
station_list_colour: 143;
price_factor: 101;
cargo_label: "OIL_";
number: 17;
}
graphics {
cargoicon_oil;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, oil_IN_A_HOT_COUNTRY, 23) {
property {
type_name: TTD_STR_CARGO_PLURAL_OIL;
unit_name: TTD_STR_CARGO_SINGULAR_OIL;
type_abbreviation: TTD_STR_ABBREV_OIL;
sprite: NEW_CARGO_SPRITE;
weight: 0.9;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: TTD_STR_QUANTITY_OIL;
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 177;
station_list_colour: 177;
price_factor: 101;
cargo_label: "OIL_";
number: 23;
}
graphics {
cargoicon_oil;
}
}
}
spriteset(cargoicon_oxygen) {
[10 + 20 * 1, 10 + 20 * 5, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, oxygen_STEELTOWN, 25) {
property {
type_name: string(STR_CARGO_NAME_OXYGEN);
unit_name: string(STR_CARGO_NAME_OXYGEN);
type_abbreviation: string(STR_CID_OXYGEN);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_OXYGEN);
penalty_lowerbound: 22;
single_penalty_length: 44;
capacity_multiplier: 1;
cargo_payment_list_colour: 194;
station_list_colour: 194;
price_factor: 136;
cargo_label: "O2__";
number: 25;
}
graphics {
cargoicon_oxygen;
}
}
}
spriteset(cargoicon_paints_and_coatings) {
[10 + 20 * 5, 10 + 20 * 5, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==5) {
item(FEAT_CARGOS, paints_and_coatings_STEELTOWN, 26) {
property {
type_name: string(STR_CARGO_NAME_PAINTS_AND_COATINGS);
unit_name: string(STR_CARGO_NAME_PAINTS_AND_COATINGS);
type_abbreviation: string(STR_CID_PAINTS_AND_COATINGS);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID, CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_PAINTS_AND_COATINGS);
penalty_lowerbound: 20;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 168;
station_list_colour: 168;
price_factor: 135;
cargo_label: "COAT";
number: 26;
}
graphics {
cargoicon_paints_and_coatings;
}
}
}
spriteset(cargoicon_paper) {
[10 + 20 * 5, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, paper_BASIC_ARCTIC, 12) {
property {
type_name: TTD_STR_CARGO_PLURAL_PAPER;
unit_name: TTD_STR_CARGO_SINGULAR_PAPER;
type_abbreviation: TTD_STR_ABBREV_PAPER;
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_PIECE_GOODS);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: TTD_STR_QUANTITY_PAPER;
penalty_lowerbound: 12;
single_penalty_length: 60;
capacity_multiplier: 1;
cargo_payment_list_colour: 43;
station_list_colour: 43;
price_factor: 143;
cargo_label: "PAPR";
number: 12;
}
graphics {
cargoicon_paper;
}
}
}
spriteset(cargoicon_passengers) {
[10 + 20 * 0, 10 + 20 * 0, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==0) {
item(FEAT_CARGOS, passengers_BASIC_TEMPERATE, 0) {
property {
type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
sprite: NEW_CARGO_SPRITE;
weight: 0.0625;
is_freight: 0;
cargo_classes: bitmask(CC_PASSENGERS);
town_growth_effect: TOWNGROWTH_PASSENGERS;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_PASSENGERS;
items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
penalty_lowerbound: 0;
single_penalty_length: 22;
capacity_multiplier: 4;
cargo_payment_list_colour: 152;
station_list_colour: 152;
price_factor: 137;
cargo_label: "PASS";
number: 0;
}
graphics {
cargoicon_passengers;
}
}
}
if (economy==1) {
item(FEAT_CARGOS, passengers_BASIC_ARCTIC, 0) {
property {
type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
sprite: NEW_CARGO_SPRITE;
weight: 0.0625;
is_freight: 0;
cargo_classes: bitmask(CC_PASSENGERS);
town_growth_effect: TOWNGROWTH_PASSENGERS;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_PASSENGERS;
items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
penalty_lowerbound: 0;
single_penalty_length: 22;
capacity_multiplier: 4;
cargo_payment_list_colour: 152;
station_list_colour: 152;
price_factor: 137;
cargo_label: "PASS";
number: 0;
}
graphics {
cargoicon_passengers;
}
}
}
if (economy==4) {
item(FEAT_CARGOS, passengers_BASIC_TROPIC, 0) {
property {
type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
sprite: NEW_CARGO_SPRITE;
weight: 0.0625;
is_freight: 0;
cargo_classes: bitmask(CC_PASSENGERS);
town_growth_effect: TOWNGROWTH_PASSENGERS;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_PASSENGERS;
items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
penalty_lowerbound: 0;
single_penalty_length: 22;
capacity_multiplier: 4;
cargo_payment_list_colour: 152;
station_list_colour: 152;
price_factor: 137;
cargo_label: "PASS";
number: 0;
}
graphics {
cargoicon_passengers;
}
}
}
if (economy==5) {
item(FEAT_CARGOS, passengers_STEELTOWN, 0) {
property {
type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
sprite: NEW_CARGO_SPRITE;
weight: 0.0625;
is_freight: 0;
cargo_classes: bitmask(CC_PASSENGERS);
town_growth_effect: TOWNGROWTH_PASSENGERS;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_PASSENGERS;
items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
penalty_lowerbound: 0;
single_penalty_length: 22;
capacity_multiplier: 4;
cargo_payment_list_colour: 152;
station_list_colour: 152;
price_factor: 137;
cargo_label: "PASS";
number: 0;
}
graphics {
cargoicon_passengers;
}
}
}
if (economy==3) {
item(FEAT_CARGOS, passengers_IN_A_HOT_COUNTRY, 0) {
property {
type_name: TTD_STR_CARGO_PLURAL_PASSENGERS;
unit_name: TTD_STR_CARGO_SINGULAR_PASSENGER;
type_abbreviation: TTD_STR_ABBREV_PASSENGERS;
sprite: NEW_CARGO_SPRITE;
weight: 0.0625;
is_freight: 0;
cargo_classes: bitmask(CC_PASSENGERS);
town_growth_effect: TOWNGROWTH_PASSENGERS;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_PASSENGERS;
items_of_cargo: TTD_STR_QUANTITY_PASSENGERS;
penalty_lowerbound: 0;
single_penalty_length: 22;
capacity_multiplier: 4;
cargo_payment_list_colour: 152;
station_list_colour: 152;
price_factor: 137;
cargo_label: "PASS";
number: 0;
}
graphics {
cargoicon_passengers;
}
}
}
spriteset(cargoicon_peat) {
[10 + 20 * 6, 10 + 20 * 3, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, peat_BASIC_ARCTIC, 13) {
property {
type_name: string(STR_CARGO_NAME_PEAT);
unit_name: string(STR_CARGO_NAME_PEAT);
type_abbreviation: string(STR_CID_PEAT);
sprite: NEW_CARGO_SPRITE;
weight: 1.0;
is_freight: 1;
cargo_classes: bitmask(CC_BULK);
town_growth_effect: TOWNGROWTH_NONE;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_TONS;
items_of_cargo: string(STR_CARGO_UNIT_PEAT);
penalty_lowerbound: 30;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 148;
station_list_colour: 148;
price_factor: 89;
cargo_label: "PEAT";
number: 13;
}
graphics {
cargoicon_peat;
}
}
}
spriteset(cargoicon_petrol) {
[10 + 20 * 12, 10 + 20 * 1, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==3) {
item(FEAT_CARGOS, petrol_IN_A_HOT_COUNTRY, 24) {
property {
type_name: string(STR_CARGO_NAME_PETROL);
unit_name: string(STR_CARGO_NAME_PETROL);
type_abbreviation: string(STR_CID_PETROL);
sprite: NEW_CARGO_SPRITE;
weight: 0.8;
is_freight: 1;
cargo_classes: bitmask(CC_LIQUID);
town_growth_effect: TOWNGROWTH_GOODS;
town_growth_multiplier: 1.0;
units_of_cargo: TTD_STR_LITERS;
items_of_cargo: string(STR_CARGO_UNIT_PETROL);
penalty_lowerbound: 18;
single_penalty_length: 255;
capacity_multiplier: 1;
cargo_payment_list_colour: 181;
station_list_colour: 181;
price_factor: 145;
cargo_label: "PETR";
number: 24;
}
graphics {
cargoicon_petrol;
}
}
}
spriteset(cargoicon_phosphate) {
[10 + 20 * 10, 10 + 20 * 2, 10, 10, 0, 0, "src/graphics/other/cargoicons.png"]
}
if (economy==1) {
item(FEAT_CARGOS, phosphate_BASIC_ARCTIC, 14) {
property {