OpenTTD
roadtypes.h
Go to the documentation of this file.
1 /* $Id$ */
2 
3 /*
4  * This file is part of OpenTTD.
5  * 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.
6  * 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.
7  * 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/>.
8  */
9 
15 #ifndef ROADTYPES_H
16 #define ROADTYPES_H
17 
22  /* Road */
23  {
24  /* GUI sprites */
25  {
26  SPR_IMG_ROAD_X_DIR,
27  SPR_IMG_ROAD_Y_DIR,
28  SPR_IMG_AUTOROAD,
29  SPR_IMG_ROAD_DEPOT,
30  SPR_IMG_ROAD_TUNNEL,
31  SPR_IMG_CONVERT_ROAD,
32  },
33 
34  {
35  SPR_CURSOR_ROAD_NESW,
36  SPR_CURSOR_ROAD_NWSE,
37  SPR_CURSOR_AUTOROAD,
38  SPR_CURSOR_ROAD_DEPOT,
39  SPR_CURSOR_ROAD_TUNNEL,
40  SPR_CURSOR_CONVERT_ROAD,
41  },
42 
43  /* strings */
44  {
45  STR_ROAD_NAME_ROAD,
46  STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION,
47  STR_ROAD_MENU_ROAD_CONSTRUCTION,
48  STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION,
49  STR_REPLACE_ROAD_VEHICLES,
50  STR_ENGINE_PREVIEW_ROAD_VEHICLE,
51 
52  STR_ERROR_CAN_T_BUILD_ROAD_HERE,
53  STR_ERROR_CAN_T_REMOVE_ROAD_FROM,
54  STR_ERROR_CAN_T_BUILD_ROAD_DEPOT,
55  { STR_ERROR_CAN_T_BUILD_BUS_STATION, STR_ERROR_CAN_T_BUILD_TRUCK_STATION },
56  { STR_ERROR_CAN_T_REMOVE_BUS_STATION, STR_ERROR_CAN_T_REMOVE_TRUCK_STATION },
57  STR_ERROR_CAN_T_CONVERT_ROAD,
58  { STR_STATION_BUILD_BUS_ORIENTATION, STR_STATION_BUILD_TRUCK_ORIENTATION },
59  { STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP, STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP },
60  },
61 
62  /* Powered roadtypes */
64 
65  /* flags */
67 
68  /* cost multiplier */
69  8,
70 
71  /* maintenance cost multiplier */
72  16,
73 
74  /* max speed */
75  0,
76 
77  /* road type label */
78  'ROAD',
79 
80  /* alternate labels */
82 
83  /* map colour */
84  0x01,
85 
86  /* introduction date */
87  MIN_YEAR,
88 
89  /* roadtypes required for this to be introduced */
91 
92  /* introduction road types */
94 
95  /* sort order */
96  0x07,
97 
98  { nullptr },
99  { nullptr },
100  },
101 
102  /* Electrified Tram */
103  {
104  /* GUI sprites */
105  {
106  SPR_IMG_TRAMWAY_X_DIR,
107  SPR_IMG_TRAMWAY_Y_DIR,
108  SPR_IMG_AUTOTRAM,
109  SPR_IMG_ROAD_DEPOT,
110  SPR_IMG_ROAD_TUNNEL,
111  SPR_IMG_CONVERT_TRAM,
112  },
113 
114  {
115  SPR_CURSOR_TRAMWAY_NESW,
116  SPR_CURSOR_TRAMWAY_NWSE,
117  SPR_CURSOR_AUTOTRAM,
118  SPR_CURSOR_ROAD_DEPOT,
119  SPR_CURSOR_ROAD_TUNNEL,
120  SPR_CURSOR_CONVERT_TRAM,
121  },
122 
123  /* strings */
124  {
125  STR_ROAD_NAME_TRAM,
126  STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION,
127  STR_ROAD_MENU_TRAM_CONSTRUCTION,
128  STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION,
129  STR_REPLACE_TRAM_VEHICLES,
130  STR_ENGINE_PREVIEW_TRAM_VEHICLE,
131 
132  STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE,
133  STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM,
134  STR_ERROR_CAN_T_BUILD_TRAM_DEPOT,
135  { STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION, STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION },
136  { STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION, STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION },
137  STR_ERROR_CAN_T_CONVERT_TRAMWAY,
138  { STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION, STR_STATION_BUILD_CARGO_TRAM_ORIENTATION },
139  { STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP, STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP },
140  },
141 
142  /* Powered roadtypes */
144 
145  /* flags */
147 
148  /* cost multiplier */
149  16,
150 
151  /* maintenance cost multiplier */
152  24,
153 
154  /* max speed */
155  0,
156 
157  /* road type label */
158  'ELRL',
159 
160  /* alternate labels */
162 
163  /* map colour */
164  0x01,
165 
166  /* introduction date */
167  INVALID_DATE,
168 
169  /* roadtypes required for this to be introduced */
171 
172  /* introduction road types */
174 
175  /* sort order */
176  0x17,
177 
178  { nullptr },
179  { nullptr },
180  },
181 };
182 
183 #endif /* ROADTYPES_H */
Value for allowing towns to build this roadtype.
Definition: road.h:52
Trams.
Definition: road_type.h:44
static const Date INVALID_DATE
Representation of an invalid date.
Definition: date_type.h:110
Value for for setting this roadtype as not house friendly.
Definition: road.h:50
std::vector< RoadTypeLabel > RoadTypeLabelList
List of road type labels.
Definition: road.h:75
static const RoadTypeInfo _original_roadtypes[]
Global Roadtype definition.
Definition: roadtypes.h:21
Value for drawing a catenary.
Definition: road.h:48
static const Year MIN_YEAR
The absolute minimum & maximum years in OTTD.
Definition: date_type.h:85
No roadtypes.
Definition: road_type.h:42