summaryrefslogtreecommitdiff
path: root/src/table/roadtypes.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/table/roadtypes.h')
-rw-r--r--src/table/roadtypes.h183
1 files changed, 183 insertions, 0 deletions
diff --git a/src/table/roadtypes.h b/src/table/roadtypes.h
new file mode 100644
index 000000000..348cdb677
--- /dev/null
+++ b/src/table/roadtypes.h
@@ -0,0 +1,183 @@
+/* $Id$ */
+
+/*
+ * This file is part of OpenTTD.
+ * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
+ * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/**
+ * @file roadtypes.h
+ * All the roadtype-specific information is stored here.
+ */
+
+#ifndef ROADTYPES_H
+#define ROADTYPES_H
+
+/**
+ * Global Roadtype definition
+ */
+static const RoadTypeInfo _original_roadtypes[] = {
+ /* Road */
+ {
+ /* GUI sprites */
+ {
+ SPR_IMG_ROAD_X_DIR,
+ SPR_IMG_ROAD_Y_DIR,
+ SPR_IMG_AUTOROAD,
+ SPR_IMG_ROAD_DEPOT,
+ SPR_IMG_ROAD_TUNNEL,
+ SPR_IMG_CONVERT_ROAD,
+ },
+
+ {
+ SPR_CURSOR_ROAD_NESW,
+ SPR_CURSOR_ROAD_NWSE,
+ SPR_CURSOR_AUTOROAD,
+ SPR_CURSOR_ROAD_DEPOT,
+ SPR_CURSOR_TUNNEL_RAIL,
+ SPR_CURSOR_CONVERT_ROAD,
+ },
+
+ /* strings */
+ {
+ STR_ROAD_NAME_ROAD,
+ STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION,
+ STR_ROAD_MENU_ROAD_CONSTRUCTION,
+ STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION,
+ STR_REPLACE_ROAD_VEHICLES,
+ STR_ENGINE_PREVIEW_ROAD_VEHICLE,
+
+ STR_ERROR_CAN_T_BUILD_ROAD_HERE,
+ STR_ERROR_CAN_T_REMOVE_ROAD_FROM,
+ STR_ERROR_CAN_T_BUILD_ROAD_DEPOT,
+ { STR_ERROR_CAN_T_BUILD_BUS_STATION, STR_ERROR_CAN_T_BUILD_TRUCK_STATION },
+ { STR_ERROR_CAN_T_REMOVE_BUS_STATION, STR_ERROR_CAN_T_REMOVE_TRUCK_STATION },
+ STR_ERROR_CAN_T_CONVERT_ROAD,
+ { STR_STATION_BUILD_BUS_ORIENTATION, STR_STATION_BUILD_TRUCK_ORIENTATION },
+ { STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP, STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP },
+ },
+
+ /* Powered roadtypes */
+ ROADTYPES_ROAD,
+
+ /* flags */
+ ROTFB_TOWN_BUILD,
+
+ /* cost multiplier */
+ 8,
+
+ /* maintenance cost multiplier */
+ 16,
+
+ /* max speed */
+ 0,
+
+ /* road type label */
+ 'ROAD',
+
+ /* alternate labels */
+ RoadTypeLabelList(),
+
+ /* map colour */
+ 0x01,
+
+ /* introduction date */
+ MIN_YEAR,
+
+ /* roadtypes required for this to be introduced */
+ ROADTYPES_NONE,
+
+ /* introduction road types */
+ ROADTYPES_ROAD,
+
+ /* sort order */
+ 0x07,
+
+ { nullptr },
+ { nullptr },
+ },
+
+ /* Electrified Tram */
+ {
+ /* GUI sprites */
+ {
+ SPR_IMG_TRAMWAY_X_DIR,
+ SPR_IMG_TRAMWAY_Y_DIR,
+ SPR_IMG_AUTOTRAM,
+ SPR_IMG_ROAD_DEPOT,
+ SPR_IMG_ROAD_TUNNEL,
+ SPR_IMG_CONVERT_TRAM,
+ },
+
+ {
+ SPR_CURSOR_TRAMWAY_NESW,
+ SPR_CURSOR_TRAMWAY_NWSE,
+ SPR_CURSOR_AUTOTRAM,
+ SPR_CURSOR_ROAD_DEPOT,
+ SPR_CURSOR_TUNNEL_RAIL,
+ SPR_CURSOR_CONVERT_TRAM,
+ },
+
+ /* strings */
+ {
+ STR_ROAD_NAME_TRAM,
+ STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION,
+ STR_ROAD_MENU_TRAM_CONSTRUCTION,
+ STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION,
+ STR_REPLACE_TRAM_VEHICLES,
+ STR_ENGINE_PREVIEW_TRAM_VEHICLE,
+
+ STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE,
+ STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM,
+ STR_ERROR_CAN_T_BUILD_TRAM_DEPOT,
+ { STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION, STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION },
+ { STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION, STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION },
+ STR_ERROR_CAN_T_CONVERT_TRAMWAY,
+ { STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION, STR_STATION_BUILD_CARGO_TRAM_ORIENTATION },
+ { STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP, STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP },
+ },
+
+ /* Powered roadtypes */
+ ROADTYPES_TRAM,
+
+ /* flags */
+ ROTFB_CATENARY | ROTFB_NO_HOUSES,
+
+ /* cost multiplier */
+ 16,
+
+ /* maintenance cost multiplier */
+ 24,
+
+ /* max speed */
+ 0,
+
+ /* road type label */
+ 'ELRL',
+
+ /* alternate labels */
+ RoadTypeLabelList(),
+
+ /* map colour */
+ 0x01,
+
+ /* introduction date */
+ INVALID_DATE,
+
+ /* roadtypes required for this to be introduced */
+ ROADTYPES_NONE,
+
+ /* introduction road types */
+ ROADTYPES_TRAM,
+
+ /* sort order */
+ 0x17,
+
+ { nullptr },
+ { nullptr },
+ },
+};
+
+#endif /* ROADTYPES_H */