changeset 15078:9447ea559549 draft

(svn r19704) -Codechange: unify the style of GSF enums; now they're plural instead of mixed
author rubidium <rubidium@openttd.org>
date Sat, 24 Apr 2010 11:52:58 +0000
parents 670ce3cdb193
children f18f4ccb3269
files src/ai/api/ai_rail.cpp src/newgrf.cpp src/newgrf.h src/table/pricebase.h
diffstat 4 files changed, 108 insertions(+), 108 deletions(-) [+]
line wrap: on
line diff
--- a/src/ai/api/ai_rail.cpp
+++ b/src/ai/api/ai_rail.cpp
@@ -164,7 +164,7 @@
 	if (station_id != AIStation::STATION_JOIN_ADJACENT) p1 |= (1 << 24);
 
 	const GRFFile *file;
-	uint16 res = GetAiPurchaseCallbackResult(GSF_STATION, cargo_id, 0, source_industry, goal_industry, min(255, distance / 2), AICE_STATION_GET_STATION_ID, source_station ? 0 : 1, min(15, num_platforms) << 4 | min(15, platform_length), &file);
+	uint16 res = GetAiPurchaseCallbackResult(GSF_STATIONS, cargo_id, 0, source_industry, goal_industry, min(255, distance / 2), AICE_STATION_GET_STATION_ID, source_station ? 0 : 1, min(15, num_platforms) << 4 | min(15, platform_length), &file);
 	uint32 p2 = (AIStation::IsValidStation(station_id) ? station_id : INVALID_STATION) << 16;
 	if (res != CALLBACK_FAILED) {
 		int index = 0;
--- a/src/newgrf.cpp
+++ b/src/newgrf.cpp
@@ -3059,24 +3059,24 @@
 	 * V new-info      new bytes of info (variable size; depends on properties) */
 
 	static const VCI_Handler handler[] = {
-		/* GSF_TRAIN */        RailVehicleChangeInfo,
-		/* GSF_ROAD */         RoadVehicleChangeInfo,
-		/* GSF_SHIP */         ShipVehicleChangeInfo,
-		/* GSF_AIRCRAFT */     AircraftVehicleChangeInfo,
-		/* GSF_STATION */      StationChangeInfo,
-		/* GSF_CANAL */        CanalChangeInfo,
-		/* GSF_BRIDGE */       BridgeChangeInfo,
-		/* GSF_TOWNHOUSE */    TownHouseChangeInfo,
-		/* GSF_GLOBALVAR */    GlobalVarChangeInfo,
-		/* GSF_INDUSTRYTILES */IndustrytilesChangeInfo,
-		/* GSF_INDUSTRIES */   IndustriesChangeInfo,
-		/* GSF_CARGOS */       NULL, // Cargo is handled during reservation
-		/* GSF_SOUNDFX */      SoundEffectChangeInfo,
-		/* GSF_AIRPORTS */     AirportChangeInfo,
-		/* GSF_SIGNALS */      NULL,
-		/* GSF_OBJECTS */      NULL,
-		/* GSF_RAILTYPES */    RailTypeChangeInfo,
-		/* GSF_AIRPORTTILES */ AirportTilesChangeInfo,
+		/* GSF_TRAINS */        RailVehicleChangeInfo,
+		/* GSF_ROADVEHICLES */  RoadVehicleChangeInfo,
+		/* GSF_SHIPS */         ShipVehicleChangeInfo,
+		/* GSF_AIRCRAFT */      AircraftVehicleChangeInfo,
+		/* GSF_STATIONS */      StationChangeInfo,
+		/* GSF_CANALS */        CanalChangeInfo,
+		/* GSF_BRIDGES */       BridgeChangeInfo,
+		/* GSF_HOUSES */        TownHouseChangeInfo,
+		/* GSF_GLOBALVAR */     GlobalVarChangeInfo,
+		/* GSF_INDUSTRYTILES */ IndustrytilesChangeInfo,
+		/* GSF_INDUSTRIES */    IndustriesChangeInfo,
+		/* GSF_CARGOS */        NULL, // Cargo is handled during reservation
+		/* GSF_SOUNDFX */       SoundEffectChangeInfo,
+		/* GSF_AIRPORTS */      AirportChangeInfo,
+		/* GSF_SIGNALS */       NULL,
+		/* GSF_OBJECTS */       NULL,
+		/* GSF_RAILTYPES */     RailTypeChangeInfo,
+		/* GSF_AIRPORTTILES */  AirportTilesChangeInfo,
 	};
 
 	uint8 feature  = buf->ReadByte();
@@ -3111,7 +3111,7 @@
 	uint numinfo = buf->ReadByte();
 	buf->ReadExtendedByte(); // id
 
-	if (feature == GSF_BRIDGE && numprops == 1) {
+	if (feature == GSF_BRIDGES && numprops == 1) {
 		uint8 prop = buf->ReadByte();
 		/* Bridge property 0x0D is redefinition of sprite layout tables, which
 		 * is considered safe. */
@@ -3401,12 +3401,12 @@
 		default:
 		{
 			switch (feature) {
-				case GSF_TRAIN:
-				case GSF_ROAD:
-				case GSF_SHIP:
+				case GSF_TRAINS:
+				case GSF_ROADVEHICLES:
+				case GSF_SHIPS:
 				case GSF_AIRCRAFT:
-				case GSF_STATION:
-				case GSF_CANAL:
+				case GSF_STATIONS:
+				case GSF_CANALS:
 				case GSF_CARGOS:
 				case GSF_AIRPORTS:
 				case GSF_RAILTYPES:
@@ -3446,7 +3446,7 @@
 					break;
 				}
 
-				case GSF_TOWNHOUSE:
+				case GSF_HOUSES:
 				case GSF_AIRPORTTILES:
 				case GSF_INDUSTRYTILES: {
 					byte num_spriteset_ents   = _cur_grffile->spriteset_numents;
@@ -3568,7 +3568,7 @@
 static CargoID TranslateCargo(uint8 feature, uint8 ctype)
 {
 	/* Special cargo types for purchase list and stations */
-	if (feature == GSF_STATION && ctype == 0xFE) return CT_DEFAULT_NA;
+	if (feature == GSF_STATIONS && ctype == 0xFE) return CT_DEFAULT_NA;
 	if (ctype == 0xFF) return CT_PURCHASE;
 
 	if (_cur_grffile->cargo_max == 0) {
@@ -3738,7 +3738,7 @@
 		uint16 groupid = buf->ReadWord();
 		if (!IsValidGroupID(groupid, "StationMapSpriteGroup")) continue;
 
-		ctype = TranslateCargo(GSF_STATION, ctype);
+		ctype = TranslateCargo(GSF_STATIONS, ctype);
 		if (ctype == CT_INVALID) continue;
 
 		for (uint i = 0; i < idcount; i++) {
@@ -4028,22 +4028,22 @@
 	grfmsg(6, "FeatureMapSpriteGroup: Feature %d, %d ids", feature, idcount);
 
 	switch (feature) {
-		case GSF_TRAIN:
-		case GSF_ROAD:
-		case GSF_SHIP:
+		case GSF_TRAINS:
+		case GSF_ROADVEHICLES:
+		case GSF_SHIPS:
 		case GSF_AIRCRAFT:
 			VehicleMapSpriteGroup(buf, feature, idcount);
 			return;
 
-		case GSF_CANAL:
+		case GSF_CANALS:
 			CanalMapSpriteGroup(buf, idcount);
 			return;
 
-		case GSF_STATION:
+		case GSF_STATIONS:
 			StationMapSpriteGroup(buf, idcount);
 			return;
 
-		case GSF_TOWNHOUSE:
+		case GSF_HOUSES:
 			TownHouseMapSpriteGroup(buf, idcount);
 			return;
 
@@ -4123,9 +4123,9 @@
 		grfmsg(8, "FeatureNewName: 0x%04X <- %s", id, name);
 
 		switch (feature) {
-			case GSF_TRAIN:
-			case GSF_ROAD:
-			case GSF_SHIP:
+			case GSF_TRAINS:
+			case GSF_ROADVEHICLES:
+			case GSF_SHIPS:
 			case GSF_AIRCRAFT:
 				if (!generic) {
 					Engine *e = GetNewEngine(_cur_grffile, (VehicleType)feature, id, HasBit(_cur_grfconfig->flags, GCF_STATIC));
@@ -4142,7 +4142,7 @@
 				break;
 			}
 
-			case GSF_TOWNHOUSE:
+			case GSF_HOUSES:
 			default:
 				switch (GB(id, 8, 8)) {
 					case 0xC4: // Station class name
@@ -4193,8 +4193,8 @@
 				break;
 
 #if 0
-				case GSF_CANAL :
-				case GSF_BRIDGE :
+				case GSF_CANALS:
+				case GSF_BRIDGES:
 					AddGRFString(_cur_spriteid, id, lang, name);
 					switch (GB(id, 8, 8)) {
 						case 0xC9: // House name
@@ -6839,7 +6839,7 @@
 static void FinalisePriceBaseMultipliers()
 {
 	extern const PriceBaseSpec _price_base_specs[];
-	static const uint32 override_features = (1 << GSF_TRAIN) | (1 << GSF_ROAD) | (1 << GSF_SHIP) | (1 << GSF_AIRCRAFT);
+	static const uint32 override_features = (1 << GSF_TRAINS) | (1 << GSF_ROADVEHICLES) | (1 << GSF_SHIPS) | (1 << GSF_AIRCRAFT);
 
 	/* Evaluate grf overrides */
 	int num_grfs = _grf_files.Length();
--- a/src/newgrf.h
+++ b/src/newgrf.h
@@ -41,14 +41,14 @@
 };
 
 enum GrfSpecFeature {
-	GSF_TRAIN,
-	GSF_ROAD,
-	GSF_SHIP,
+	GSF_TRAINS,
+	GSF_ROADVEHICLES,
+	GSF_SHIPS,
 	GSF_AIRCRAFT,
-	GSF_STATION,
-	GSF_CANAL,
-	GSF_BRIDGE,
-	GSF_TOWNHOUSE,
+	GSF_STATIONS,
+	GSF_CANALS,
+	GSF_BRIDGES,
+	GSF_HOUSES,
 	GSF_GLOBALVAR,
 	GSF_INDUSTRYTILES,
 	GSF_INDUSTRIES,
--- a/src/table/pricebase.h
+++ b/src/table/pricebase.h
@@ -10,65 +10,65 @@
 /** @file pricebase.h Price Bases */
 
 extern const PriceBaseSpec _price_base_specs[] = {
-	{    100, PCAT_NONE,         GSF_END,        INVALID_PRICE         }, ///< PR_STATION_VALUE
-	{    100, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_RAIL
-	{     95, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_ROAD
-	{     65, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_SIGNALS
-	{    275, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_BRIDGE
-	{    600, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_DEPOT_TRAIN
-	{    500, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_DEPOT_ROAD
-	{    700, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_DEPOT_SHIP
-	{    450, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_TUNNEL
-	{    200, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_STATION_RAIL
-	{    180, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_STATION_RAIL_LENGTH
-	{    600, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_STATION_AIRPORT
-	{    200, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_STATION_BUS
-	{    200, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_STATION_TRUCK
-	{    350, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_STATION_DOCK
-	{ 400000, PCAT_CONSTRUCTION, GSF_TRAIN,      INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_TRAIN
-	{   2000, PCAT_CONSTRUCTION, GSF_TRAIN,      INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_WAGON
-	{ 700000, PCAT_CONSTRUCTION, GSF_AIRCRAFT,   INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_AIRCRAFT
-	{  14000, PCAT_CONSTRUCTION, GSF_ROAD,       INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_ROAD
-	{  65000, PCAT_CONSTRUCTION, GSF_SHIP,       INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_SHIP
-	{     20, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_TREES
-	{    250, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_TERRAFORM
-	{     20, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_GRASS
-	{     40, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_ROUGH
-	{    200, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_ROCKS
-	{    500, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_FIELDS
-	{     20, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_TREES
-	{    -70, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_RAIL
-	{     10, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_SIGNALS
-	{     50, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_BRIDGE
-	{     80, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_DEPOT_TRAIN
-	{     80, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_DEPOT_ROAD
-	{     90, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_DEPOT_SHIP
-	{     30, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_TUNNEL
-	{  10000, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_WATER
-	{     50, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_STATION_RAIL
-	{     30, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_STATION_AIRPORT
-	{     50, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_STATION_BUS
-	{     50, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_STATION_TRUCK
-	{     55, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_STATION_DOCK
-	{   1600, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_HOUSE
-	{     40, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_CLEAR_ROAD
-	{   5600, PCAT_RUNNING,      GSF_TRAIN,      INVALID_PRICE         }, ///< PR_RUNNING_TRAIN_STEAM
-	{   5200, PCAT_RUNNING,      GSF_TRAIN,      INVALID_PRICE         }, ///< PR_RUNNING_TRAIN_DIESEL
-	{   4800, PCAT_RUNNING,      GSF_TRAIN,      INVALID_PRICE         }, ///< PR_RUNNING_TRAIN_ELECTRIC
-	{   9600, PCAT_RUNNING,      GSF_AIRCRAFT,   INVALID_PRICE         }, ///< PR_RUNNING_AIRCRAFT
-	{   1600, PCAT_RUNNING,      GSF_ROAD,       INVALID_PRICE         }, ///< PR_RUNNING_ROADVEH
-	{   5600, PCAT_RUNNING,      GSF_SHIP,       INVALID_PRICE         }, ///< PR_RUNNING_SHIP
-	{1000000, PCAT_CONSTRUCTION, GSF_END,        INVALID_PRICE         }, ///< PR_BUILD_INDUSTRY
-	{   1600, PCAT_CONSTRUCTION, GSF_END,        PR_CLEAR_HOUSE        }, ///< PR_CLEAR_INDUSTRY
-	{     40, PCAT_CONSTRUCTION, GSF_END,        PR_CLEAR_ROUGH        }, ///< PR_BUILD_UNMOVABLE
-	{     40, PCAT_CONSTRUCTION, GSF_END,        PR_CLEAR_ROUGH        }, ///< PR_CLEAR_UNMOVABLE
-	{    600, PCAT_CONSTRUCTION, GSF_END,        PR_BUILD_DEPOT_TRAIN  }, ///< PR_BUILD_WAYPOINT_RAIL
-	{     80, PCAT_CONSTRUCTION, GSF_END,        PR_CLEAR_DEPOT_TRAIN  }, ///< PR_CLEAR_WAYPOINT_RAIL
-	{    350, PCAT_CONSTRUCTION, GSF_END,        PR_BUILD_STATION_DOCK }, ///< PR_BUILD_WAYPOINT_BUOY
-	{     50, PCAT_CONSTRUCTION, GSF_END,        PR_CLEAR_STATION_TRUCK}, ///< PR_CLEAR_WAYPOINT_BUOY
-	{1000000, PCAT_CONSTRUCTION, GSF_END,        PR_BUILD_INDUSTRY     }, ///< PR_TOWN_ACTION
-	{    250, PCAT_CONSTRUCTION, GSF_END,        PR_TERRAFORM          }, ///< PR_BUILD_FOUNDATION
-	{8000000, PCAT_CONSTRUCTION, GSF_END,        PR_BUILD_INDUSTRY     }, ///< PR_BUILD_INDUSTRY_RAW
-	{1000000, PCAT_CONSTRUCTION, GSF_END,        PR_BUILD_INDUSTRY     }, ///< PR_BUILD_TOWN
+	{    100, PCAT_NONE,         GSF_END,          INVALID_PRICE         }, ///< PR_STATION_VALUE
+	{    100, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_RAIL
+	{     95, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_ROAD
+	{     65, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_SIGNALS
+	{    275, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_BRIDGE
+	{    600, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_DEPOT_TRAIN
+	{    500, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_DEPOT_ROAD
+	{    700, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_DEPOT_SHIP
+	{    450, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_TUNNEL
+	{    200, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_STATION_RAIL
+	{    180, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_STATION_RAIL_LENGTH
+	{    600, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_STATION_AIRPORT
+	{    200, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_STATION_BUS
+	{    200, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_STATION_TRUCK
+	{    350, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_STATION_DOCK
+	{ 400000, PCAT_CONSTRUCTION, GSF_TRAINS,       INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_TRAIN
+	{   2000, PCAT_CONSTRUCTION, GSF_TRAINS,       INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_WAGON
+	{ 700000, PCAT_CONSTRUCTION, GSF_AIRCRAFT,     INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_AIRCRAFT
+	{  14000, PCAT_CONSTRUCTION, GSF_ROADVEHICLES, INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_ROAD
+	{  65000, PCAT_CONSTRUCTION, GSF_SHIPS,        INVALID_PRICE         }, ///< PR_BUILD_VEHICLE_SHIP
+	{     20, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_TREES
+	{    250, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_TERRAFORM
+	{     20, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_GRASS
+	{     40, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_ROUGH
+	{    200, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_ROCKS
+	{    500, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_FIELDS
+	{     20, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_TREES
+	{    -70, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_RAIL
+	{     10, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_SIGNALS
+	{     50, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_BRIDGE
+	{     80, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_DEPOT_TRAIN
+	{     80, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_DEPOT_ROAD
+	{     90, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_DEPOT_SHIP
+	{     30, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_TUNNEL
+	{  10000, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_WATER
+	{     50, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_STATION_RAIL
+	{     30, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_STATION_AIRPORT
+	{     50, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_STATION_BUS
+	{     50, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_STATION_TRUCK
+	{     55, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_STATION_DOCK
+	{   1600, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_HOUSE
+	{     40, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_CLEAR_ROAD
+	{   5600, PCAT_RUNNING,      GSF_TRAINS,       INVALID_PRICE         }, ///< PR_RUNNING_TRAIN_STEAM
+	{   5200, PCAT_RUNNING,      GSF_TRAINS,       INVALID_PRICE         }, ///< PR_RUNNING_TRAIN_DIESEL
+	{   4800, PCAT_RUNNING,      GSF_TRAINS,       INVALID_PRICE         }, ///< PR_RUNNING_TRAIN_ELECTRIC
+	{   9600, PCAT_RUNNING,      GSF_AIRCRAFT,     INVALID_PRICE         }, ///< PR_RUNNING_AIRCRAFT
+	{   1600, PCAT_RUNNING,      GSF_ROADVEHICLES, INVALID_PRICE         }, ///< PR_RUNNING_ROADVEH
+	{   5600, PCAT_RUNNING,      GSF_SHIPS,        INVALID_PRICE         }, ///< PR_RUNNING_SHIP
+	{1000000, PCAT_CONSTRUCTION, GSF_END,          INVALID_PRICE         }, ///< PR_BUILD_INDUSTRY
+	{   1600, PCAT_CONSTRUCTION, GSF_END,          PR_CLEAR_HOUSE        }, ///< PR_CLEAR_INDUSTRY
+	{     40, PCAT_CONSTRUCTION, GSF_END,          PR_CLEAR_ROUGH        }, ///< PR_BUILD_UNMOVABLE
+	{     40, PCAT_CONSTRUCTION, GSF_END,          PR_CLEAR_ROUGH        }, ///< PR_CLEAR_UNMOVABLE
+	{    600, PCAT_CONSTRUCTION, GSF_END,          PR_BUILD_DEPOT_TRAIN  }, ///< PR_BUILD_WAYPOINT_RAIL
+	{     80, PCAT_CONSTRUCTION, GSF_END,          PR_CLEAR_DEPOT_TRAIN  }, ///< PR_CLEAR_WAYPOINT_RAIL
+	{    350, PCAT_CONSTRUCTION, GSF_END,          PR_BUILD_STATION_DOCK }, ///< PR_BUILD_WAYPOINT_BUOY
+	{     50, PCAT_CONSTRUCTION, GSF_END,          PR_CLEAR_STATION_TRUCK}, ///< PR_CLEAR_WAYPOINT_BUOY
+	{1000000, PCAT_CONSTRUCTION, GSF_END,          PR_BUILD_INDUSTRY     }, ///< PR_TOWN_ACTION
+	{    250, PCAT_CONSTRUCTION, GSF_END,          PR_TERRAFORM          }, ///< PR_BUILD_FOUNDATION
+	{8000000, PCAT_CONSTRUCTION, GSF_END,          PR_BUILD_INDUSTRY     }, ///< PR_BUILD_INDUSTRY_RAW
+	{1000000, PCAT_CONSTRUCTION, GSF_END,          PR_BUILD_INDUSTRY     }, ///< PR_BUILD_TOWN
 };
 assert_compile(lengthof(_price_base_specs) == PR_END);