OpenTTD Source  20240919-master-gdf0233f4c2
engines.h
Go to the documentation of this file.
1 /*
2  * This file is part of OpenTTD.
3  * 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.
4  * 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.
5  * 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/>.
6  */
7 
13 #ifndef ENGINES_H
14 #define ENGINES_H
15 
27 #define MT(a, b, c, d, e, f) { CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 5, f, INVALID_CARGO, e, 0, 8, 0, 0, 0, STR_EMPTY, Ticks::CARGO_AGING_TICKS, INVALID_ENGINE, ExtraEngineFlags::None }
28 
40 #define MM(a, b, c, d, e, f) { CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 5, f, INVALID_CARGO, e, 0, 8, 1 << EF_RAIL_IS_MU, 0, 0, STR_EMPTY, Ticks::CARGO_AGING_TICKS, INVALID_ENGINE, ExtraEngineFlags::None }
41 
53 #define MW(a, b, c, d, e, f) { CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 5, f, INVALID_CARGO, e, 0, 8, 0, 0, 0, STR_EMPTY, Ticks::CARGO_AGING_TICKS, INVALID_ENGINE, ExtraEngineFlags::None }
54 
66 #define MR(a, b, c, d, e, f) { CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 5, f, INVALID_CARGO, e, 0, 8, 0, 0, 0, STR_EMPTY, Ticks::CARGO_AGING_TICKS, INVALID_ENGINE, ExtraEngineFlags::None }
67 
78 #define MS(a, b, c, d, e, f) { CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 10, f, INVALID_CARGO, e, 0, 8, 0, 0, 0, STR_EMPTY, Ticks::CARGO_AGING_TICKS, INVALID_ENGINE, ExtraEngineFlags::None }
79 
89 #define MA(a, b, c, d, e) { CalendarTime::DAYS_TILL_ORIGINAL_BASE_YEAR + a, c, d, b, 20, e, INVALID_CARGO, CT_INVALID, 0, 8, 0, 0, 0, STR_EMPTY, Ticks::CARGO_AGING_TICKS, INVALID_ENGINE, ExtraEngineFlags::None }
90 
91 /* Climates
92  * T = Temperate
93  * A = Sub-Arctic
94  * S = Sub-Tropic
95  * Y = Toyland */
96 #define T 1
97 #define A 2
98 #define S 4
99 #define Y 8
100 static const EngineInfo _orig_engine_info[] = {
101  /* base_intro base_life
102  * | decay_speed cargo_type
103  * | | lifelength | climates
104  * | | | | | | */
105  MT( 1827, 20, 15, 30, CT_NONE , T ), // 0 Kirby Paul Tank (Steam)
106  MT( 12784, 20, 22, 30, CT_NONE , A|S ), // 1 MJS 250 (Diesel)
107  MT( 9497, 20, 20, 50, CT_NONE , Y), // 2 Ploddyphut Choo-Choo
108  MT( 11688, 20, 20, 30, CT_NONE , Y), // 3 Powernaut Choo-Choo
109  MT( 16802, 20, 20, 30, CT_NONE , Y), // 4 Mightymover Choo-Choo
110  MT( 18993, 20, 20, 30, CT_NONE , Y), // 5 Ploddyphut Diesel
111  MT( 20820, 20, 20, 30, CT_NONE , Y), // 6 Powernaut Diesel
112  MT( 8766, 20, 20, 30, CT_NONE , A|S ), // 7 Wills 2-8-0 (Steam)
113  MT( 5114, 20, 21, 30, CT_NONE , T ), // 8 Chaney 'Jubilee' (Steam)
114  MT( 5479, 20, 20, 30, CT_NONE , T ), // 9 Ginzu 'A4' (Steam)
115  MT( 12419, 20, 23, 25, CT_NONE , T ), // 10 SH '8P' (Steam)
116  MM( 13149, 20, 12, 30, CT_PASSENGERS , T ), // 11 Manley-Morel DMU (Diesel)
117  MM( 23376, 20, 15, 35, CT_PASSENGERS , T ), // 12 'Dash' (Diesel)
118  MT( 14976, 20, 18, 28, CT_NONE , T ), // 13 SH/Hendry '25' (Diesel)
119  MT( 14245, 20, 20, 30, CT_NONE , T ), // 14 UU '37' (Diesel)
120  MT( 15341, 20, 22, 33, CT_NONE , T ), // 15 Floss '47' (Diesel)
121  MT( 14976, 20, 20, 25, CT_NONE , A|S ), // 16 CS 4000 (Diesel)
122  MT( 16437, 20, 20, 30, CT_NONE , A|S ), // 17 CS 2400 (Diesel)
123  MT( 18993, 20, 22, 30, CT_NONE , A|S ), // 18 Centennial (Diesel)
124  MT( 13880, 20, 22, 30, CT_NONE , A|S ), // 19 Kelling 3100 (Diesel)
125  MM( 20454, 20, 22, 30, CT_NONE , A|S ), // 20 Turner Turbo (Diesel)
126  MT( 16071, 20, 22, 30, CT_NONE , A|S ), // 21 MJS 1000 (Diesel)
127  MT( 20820, 20, 20, 25, CT_MAIL , T ), // 22 SH '125' (Diesel)
128  MT( 16437, 20, 23, 30, CT_NONE , T ), // 23 SH '30' (Electric)
129  MT( 19359, 20, 23, 80, CT_NONE , T ), // 24 SH '40' (Electric)
130  MM( 23376, 20, 25, 30, CT_NONE , T ), // 25 'T.I.M.' (Electric)
131  MM( 26298, 20, 25, 50, CT_NONE , T ), // 26 'AsiaStar' (Electric)
132  MW( 1827, 20, 20, 50, CT_PASSENGERS , T|A|S|Y), // 27 Passenger Carriage
133  MW( 1827, 20, 20, 50, CT_MAIL , T|A|S|Y), // 28 Mail Van
134  MW( 1827, 20, 20, 50, CT_COAL , T|A ), // 29 Coal Truck
135  MW( 1827, 20, 20, 50, CT_OIL , T|A|S ), // 30 Oil Tanker
136  MW( 1827, 20, 20, 50, CT_LIVESTOCK , T|A ), // 31 Livestock Van
137  MW( 1827, 20, 20, 50, CT_GOODS , T|A|S ), // 32 Goods Van
138  MW( 1827, 20, 20, 50, MCT_GRAIN_WHEAT_MAIZE, T|A|S ), // 33 Grain Hopper
139  MW( 1827, 20, 20, 50, CT_WOOD , T|A|S ), // 34 Wood Truck
140  MW( 1827, 20, 20, 50, CT_IRON_ORE , T ), // 35 Iron Ore Hopper
141  MW( 1827, 20, 20, 50, CT_STEEL , T ), // 36 Steel Truck
142  MW( 1827, 20, 20, 50, MCT_VALUABLES_GOLD_DIAMONDS, T|A|S ), // 37 Armoured Van
143  MW( 1827, 20, 20, 50, CT_FOOD , A|S ), // 38 Food Van
144  MW( 1827, 20, 20, 50, CT_PAPER , A ), // 39 Paper Truck
145  MW( 1827, 20, 20, 50, CT_COPPER_ORE , S ), // 40 Copper Ore Hopper
146  MW( 1827, 20, 20, 50, CT_WATER , S ), // 41 Water Tanker
147  MW( 1827, 20, 20, 50, CT_FRUIT , S ), // 42 Fruit Truck
148  MW( 1827, 20, 20, 50, CT_RUBBER , S ), // 43 Rubber Truck
149  MW( 1827, 20, 20, 50, CT_SUGAR , Y), // 44 Sugar Truck
150  MW( 1827, 20, 20, 50, CT_COTTON_CANDY, Y), // 45 Candyfloss Hopper
151  MW( 1827, 20, 20, 50, CT_TOFFEE , Y), // 46 Toffee Hopper
152  MW( 1827, 20, 20, 50, CT_BUBBLES , Y), // 47 Bubble Van
153  MW( 1827, 20, 20, 50, CT_COLA , Y), // 48 Cola Tanker
154  MW( 1827, 20, 20, 50, CT_CANDY , Y), // 49 Sweet Van
155  MW( 1827, 20, 20, 50, CT_TOYS , Y), // 50 Toy Van
156  MW( 1827, 20, 20, 50, CT_BATTERIES , Y), // 51 Battery Truck
157  MW( 1827, 20, 20, 50, CT_FIZZY_DRINKS, Y), // 52 Fizzy Drink Truck
158  MW( 1827, 20, 20, 50, CT_PLASTIC , Y), // 53 Plastic Truck
159  MT( 28490, 20, 20, 50, CT_NONE , T|A|S ), // 54 'X2001' (Electric)
160  MT( 31047, 20, 20, 50, CT_PASSENGERS , T|A|S ), // 55 'Millennium Z1' (Electric)
161  MT( 28855, 20, 20, 50, CT_NONE , Y), // 56 Wizzowow Z99
162  MW( 1827, 20, 20, 50, CT_PASSENGERS , T|A|S|Y), // 57 Passenger Carriage
163  MW( 1827, 20, 20, 50, CT_MAIL , T|A|S|Y), // 58 Mail Van
164  MW( 1827, 20, 20, 50, CT_COAL , T|A ), // 59 Coal Truck
165  MW( 1827, 20, 20, 50, CT_OIL , T|A|S ), // 60 Oil Tanker
166  MW( 1827, 20, 20, 50, CT_LIVESTOCK , T|A ), // 61 Livestock Van
167  MW( 1827, 20, 20, 50, CT_GOODS , T|A|S ), // 62 Goods Van
168  MW( 1827, 20, 20, 50, MCT_GRAIN_WHEAT_MAIZE, T|A|S ), // 63 Grain Hopper
169  MW( 1827, 20, 20, 50, CT_WOOD , T|A|S ), // 64 Wood Truck
170  MW( 1827, 20, 20, 50, CT_IRON_ORE , T ), // 65 Iron Ore Hopper
171  MW( 1827, 20, 20, 50, CT_STEEL , T ), // 66 Steel Truck
172  MW( 1827, 20, 20, 50, MCT_VALUABLES_GOLD_DIAMONDS, T|A|S ), // 67 Armoured Van
173  MW( 1827, 20, 20, 50, CT_FOOD , A|S ), // 68 Food Van
174  MW( 1827, 20, 20, 50, CT_PAPER , A ), // 69 Paper Truck
175  MW( 1827, 20, 20, 50, CT_COPPER_ORE , S ), // 70 Copper Ore Hopper
176  MW( 1827, 20, 20, 50, CT_WATER , S ), // 71 Water Tanker
177  MW( 1827, 20, 20, 50, CT_FRUIT , S ), // 72 Fruit Truck
178  MW( 1827, 20, 20, 50, CT_RUBBER , S ), // 73 Rubber Truck
179  MW( 1827, 20, 20, 50, CT_SUGAR , Y), // 74 Sugar Truck
180  MW( 1827, 20, 20, 50, CT_COTTON_CANDY, Y), // 75 Candyfloss Hopper
181  MW( 1827, 20, 20, 50, CT_TOFFEE , Y), // 76 Toffee Hopper
182  MW( 1827, 20, 20, 50, CT_BUBBLES , Y), // 77 Bubble Van
183  MW( 1827, 20, 20, 50, CT_COLA , Y), // 78 Cola Tanker
184  MW( 1827, 20, 20, 50, CT_CANDY , Y), // 79 Sweet Van
185  MW( 1827, 20, 20, 50, CT_TOYS , Y), // 80 Toy Van
186  MW( 1827, 20, 20, 50, CT_BATTERIES , Y), // 81 Battery Truck
187  MW( 1827, 20, 20, 50, CT_FIZZY_DRINKS, Y), // 82 Fizzy Drink Truck
188  MW( 1827, 20, 20, 50, CT_PLASTIC , Y), // 83 Plastic Truck
189  MT( 36525, 20, 20, 50, CT_NONE , T|A|S ), // 84 Lev1 'Leviathan' (Electric)
190  MT( 39447, 20, 20, 50, CT_NONE , T|A|S ), // 85 Lev2 'Cyclops' (Electric)
191  MT( 42004, 20, 20, 50, CT_NONE , T|A|S ), // 86 Lev3 'Pegasus' (Electric)
192  MT( 42735, 20, 20, 50, CT_NONE , T|A|S ), // 87 Lev4 'Chimaera' (Electric)
193  MT( 36891, 20, 20, 60, CT_NONE , Y), // 88 Wizzowow Rocketeer
194  MW( 1827, 20, 20, 50, CT_PASSENGERS , T|A|S|Y), // 89 Passenger Carriage
195  MW( 1827, 20, 20, 50, CT_MAIL , T|A|S|Y), // 90 Mail Van
196  MW( 1827, 20, 20, 50, CT_COAL , T|A ), // 91 Coal Truck
197  MW( 1827, 20, 20, 50, CT_OIL , T|A|S ), // 92 Oil Tanker
198  MW( 1827, 20, 20, 50, CT_LIVESTOCK , T|A ), // 93 Livestock Van
199  MW( 1827, 20, 20, 50, CT_GOODS , T|A|S ), // 94 Goods Van
200  MW( 1827, 20, 20, 50, MCT_GRAIN_WHEAT_MAIZE, T|A|S ), // 95 Grain Hopper
201  MW( 1827, 20, 20, 50, CT_WOOD , T|A|S ), // 96 Wood Truck
202  MW( 1827, 20, 20, 50, CT_IRON_ORE , T ), // 97 Iron Ore Hopper
203  MW( 1827, 20, 20, 50, CT_STEEL , T ), // 98 Steel Truck
204  MW( 1827, 20, 20, 50, MCT_VALUABLES_GOLD_DIAMONDS, T|A|S ), // 99 Armoured Van
205  MW( 1827, 20, 20, 50, CT_FOOD , A|S ), // 100 Food Van
206  MW( 1827, 20, 20, 50, CT_PAPER , A ), // 101 Paper Truck
207  MW( 1827, 20, 20, 50, CT_COPPER_ORE , S ), // 102 Copper Ore Hopper
208  MW( 1827, 20, 20, 50, CT_WATER , S ), // 103 Water Tanker
209  MW( 1827, 20, 20, 50, CT_FRUIT , S ), // 104 Fruit Truck
210  MW( 1827, 20, 20, 50, CT_RUBBER , S ), // 105 Rubber Truck
211  MW( 1827, 20, 20, 50, CT_SUGAR , Y), // 106 Sugar Truck
212  MW( 1827, 20, 20, 50, CT_COTTON_CANDY, Y), // 107 Candyfloss Hopper
213  MW( 1827, 20, 20, 50, CT_TOFFEE , Y), // 108 Toffee Hopper
214  MW( 1827, 20, 20, 50, CT_BUBBLES , Y), // 109 Bubble Van
215  MW( 1827, 20, 20, 50, CT_COLA , Y), // 110 Cola Tanker
216  MW( 1827, 20, 20, 50, CT_CANDY , Y), // 111 Sweet Van
217  MW( 1827, 20, 20, 50, CT_TOYS , Y), // 112 Toy Van
218  MW( 1827, 20, 20, 50, CT_BATTERIES , Y), // 113 Battery Truck
219  MW( 1827, 20, 20, 50, CT_FIZZY_DRINKS, Y), // 114 Fizzy Drink Truck
220  MW( 1827, 20, 20, 50, CT_PLASTIC , Y), // 115 Plastic Truck
221  MR( 3378, 20, 12, 40, CT_PASSENGERS , T|A|S ), // 116 MPS Regal Bus
222  MR( 16071, 20, 15, 30, CT_PASSENGERS , T|A|S ), // 117 Hereford Leopard Bus
223  MR( 24107, 20, 15, 40, CT_PASSENGERS , T|A|S ), // 118 Foster Bus
224  MR( 32142, 20, 15, 80, CT_PASSENGERS , T|A|S ), // 119 Foster MkII Superbus
225  MR( 9132, 20, 15, 40, CT_PASSENGERS , Y), // 120 Ploddyphut MkI Bus
226  MR( 18993, 20, 15, 40, CT_PASSENGERS , Y), // 121 Ploddyphut MkII Bus
227  MR( 32873, 20, 15, 80, CT_PASSENGERS , Y), // 122 Ploddyphut MkIII Bus
228  MR( 5479, 20, 15, 55, CT_COAL , T|A ), // 123 Balogh Coal Truck
229  MR( 20089, 20, 15, 55, CT_COAL , T|A ), // 124 Uhl Coal Truck
230  MR( 33969, 20, 15, 85, CT_COAL , T|A ), // 125 DW Coal Truck
231  MR( 5479, 20, 15, 55, CT_MAIL , T|A|S ), // 126 MPS Mail Truck
232  MR( 21550, 20, 15, 55, CT_MAIL , T|A|S ), // 127 Reynard Mail Truck
233  MR( 35795, 20, 15, 85, CT_MAIL , T|A|S ), // 128 Perry Mail Truck
234  MR( 5479, 20, 15, 55, CT_MAIL , Y), // 129 MightyMover Mail Truck
235  MR( 21550, 20, 15, 55, CT_MAIL , Y), // 130 Powernaught Mail Truck
236  MR( 35795, 20, 15, 85, CT_MAIL , Y), // 131 Wizzowow Mail Truck
237  MR( 5479, 20, 15, 55, CT_OIL , T|A|S ), // 132 Witcombe Oil Tanker
238  MR( 19359, 20, 15, 55, CT_OIL , T|A|S ), // 133 Foster Oil Tanker
239  MR( 31047, 20, 15, 85, CT_OIL , T|A|S ), // 134 Perry Oil Tanker
240  MR( 5479, 20, 15, 55, CT_LIVESTOCK , T|A ), // 135 Talbott Livestock Van
241  MR( 21915, 20, 15, 55, CT_LIVESTOCK , T|A ), // 136 Uhl Livestock Van
242  MR( 37256, 20, 15, 85, CT_LIVESTOCK , T|A ), // 137 Foster Livestock Van
243  MR( 5479, 20, 15, 55, CT_GOODS , T|A|S ), // 138 Balogh Goods Truck
244  MR( 19724, 20, 15, 55, CT_GOODS , T|A|S ), // 139 Craighead Goods Truck
245  MR( 31047, 20, 15, 85, CT_GOODS , T|A|S ), // 140 Goss Goods Truck
246  MR( 5479, 20, 15, 55, MCT_GRAIN_WHEAT_MAIZE, T|A|S ), // 141 Hereford Grain Truck
247  MR( 21185, 20, 15, 55, MCT_GRAIN_WHEAT_MAIZE, T|A|S ), // 142 Thomas Grain Truck
248  MR( 32873, 20, 15, 85, MCT_GRAIN_WHEAT_MAIZE, T|A|S ), // 143 Goss Grain Truck
249  MR( 5479, 20, 15, 55, CT_WOOD , T|A|S ), // 144 Witcombe Wood Truck
250  MR( 19724, 20, 15, 55, CT_WOOD , T|A|S ), // 145 Foster Wood Truck
251  MR( 35430, 20, 15, 85, CT_WOOD , T|A|S ), // 146 Moreland Wood Truck
252  MR( 5479, 20, 15, 55, CT_IRON_ORE , T ), // 147 MPS Iron Ore Truck
253  MR( 20820, 20, 15, 55, CT_IRON_ORE , T ), // 148 Uhl Iron Ore Truck
254  MR( 33238, 20, 15, 85, CT_IRON_ORE , T ), // 149 Chippy Iron Ore Truck
255  MR( 5479, 20, 15, 55, CT_STEEL , T ), // 150 Balogh Steel Truck
256  MR( 21185, 20, 15, 55, CT_STEEL , T ), // 151 Uhl Steel Truck
257  MR( 31777, 20, 15, 85, CT_STEEL , T ), // 152 Kelling Steel Truck
258  MR( 5479, 20, 15, 55, MCT_VALUABLES_GOLD_DIAMONDS, T|A|S ), // 153 Balogh Armoured Truck
259  MR( 22281, 20, 15, 55, MCT_VALUABLES_GOLD_DIAMONDS, T|A|S ), // 154 Uhl Armoured Truck
260  MR( 33603, 20, 15, 85, MCT_VALUABLES_GOLD_DIAMONDS, T|A|S ), // 155 Foster Armoured Truck
261  MR( 5479, 20, 15, 55, CT_FOOD , A|S ), // 156 Foster Food Van
262  MR( 18628, 20, 15, 55, CT_FOOD , A|S ), // 157 Perry Food Van
263  MR( 30681, 20, 15, 85, CT_FOOD , A|S ), // 158 Chippy Food Van
264  MR( 5479, 20, 15, 55, CT_PAPER , A ), // 159 Uhl Paper Truck
265  MR( 21185, 20, 15, 55, CT_PAPER , A ), // 160 Balogh Paper Truck
266  MR( 31777, 20, 15, 85, CT_PAPER , A ), // 161 MPS Paper Truck
267  MR( 5479, 20, 15, 55, CT_COPPER_ORE , S ), // 162 MPS Copper Ore Truck
268  MR( 20820, 20, 15, 55, CT_COPPER_ORE , S ), // 163 Uhl Copper Ore Truck
269  MR( 33238, 20, 15, 85, CT_COPPER_ORE , S ), // 164 Goss Copper Ore Truck
270  MR( 5479, 20, 15, 55, CT_WATER , S ), // 165 Uhl Water Tanker
271  MR( 20970, 20, 15, 55, CT_WATER , S ), // 166 Balogh Water Tanker
272  MR( 33388, 20, 15, 85, CT_WATER , S ), // 167 MPS Water Tanker
273  MR( 5479, 20, 15, 55, CT_FRUIT , S ), // 168 Balogh Fruit Truck
274  MR( 21335, 20, 15, 55, CT_FRUIT , S ), // 169 Uhl Fruit Truck
275  MR( 33753, 20, 15, 85, CT_FRUIT , S ), // 170 Kelling Fruit Truck
276  MR( 5479, 20, 15, 55, CT_RUBBER , S ), // 171 Balogh Rubber Truck
277  MR( 20604, 20, 15, 55, CT_RUBBER , S ), // 172 Uhl Rubber Truck
278  MR( 33023, 20, 15, 85, CT_RUBBER , S ), // 173 RMT Rubber Truck
279  MR( 5479, 20, 15, 55, CT_SUGAR , Y), // 174 MightyMover Sugar Truck
280  MR( 19724, 20, 15, 55, CT_SUGAR , Y), // 175 Powernaught Sugar Truck
281  MR( 33238, 20, 15, 85, CT_SUGAR , Y), // 176 Wizzowow Sugar Truck
282  MR( 5479, 20, 15, 55, CT_COLA , Y), // 177 MightyMover Cola Truck
283  MR( 20089, 20, 15, 55, CT_COLA , Y), // 178 Powernaught Cola Truck
284  MR( 33603, 20, 15, 85, CT_COLA , Y), // 179 Wizzowow Cola Truck
285  MR( 5479, 20, 15, 55, CT_COTTON_CANDY, Y), // 180 MightyMover Candyfloss Truck
286  MR( 20454, 20, 15, 55, CT_COTTON_CANDY, Y), // 181 Powernaught Candyfloss Truck
287  MR( 33969, 20, 15, 85, CT_COTTON_CANDY, Y), // 182 Wizzowow Candyfloss Truck
288  MR( 5479, 20, 15, 55, CT_TOFFEE , Y), // 183 MightyMover Toffee Truck
289  MR( 20820, 20, 15, 55, CT_TOFFEE , Y), // 184 Powernaught Toffee Truck
290  MR( 34334, 20, 15, 85, CT_TOFFEE , Y), // 185 Wizzowow Toffee Truck
291  MR( 5479, 20, 15, 55, CT_TOYS , Y), // 186 MightyMover Toy Van
292  MR( 21185, 20, 15, 55, CT_TOYS , Y), // 187 Powernaught Toy Van
293  MR( 34699, 20, 15, 85, CT_TOYS , Y), // 188 Wizzowow Toy Van
294  MR( 5479, 20, 15, 55, CT_CANDY , Y), // 189 MightyMover Sweet Truck
295  MR( 21550, 20, 15, 55, CT_CANDY , Y), // 190 Powernaught Sweet Truck
296  MR( 35064, 20, 15, 85, CT_CANDY , Y), // 191 Wizzowow Sweet Truck
297  MR( 5479, 20, 15, 55, CT_BATTERIES , Y), // 192 MightyMover Battery Truck
298  MR( 19874, 20, 15, 55, CT_BATTERIES , Y), // 193 Powernaught Battery Truck
299  MR( 35430, 20, 15, 85, CT_BATTERIES , Y), // 194 Wizzowow Battery Truck
300  MR( 5479, 20, 15, 55, CT_FIZZY_DRINKS, Y), // 195 MightyMover Fizzy Drink Truck
301  MR( 20239, 20, 15, 55, CT_FIZZY_DRINKS, Y), // 196 Powernaught Fizzy Drink Truck
302  MR( 35795, 20, 15, 85, CT_FIZZY_DRINKS, Y), // 197 Wizzowow Fizzy Drink Truck
303  MR( 5479, 20, 15, 55, CT_PLASTIC , Y), // 198 MightyMover Plastic Truck
304  MR( 20604, 20, 15, 55, CT_PLASTIC , Y), // 199 Powernaught Plastic Truck
305  MR( 32873, 20, 15, 85, CT_PLASTIC , Y), // 200 Wizzowow Plastic Truck
306  MR( 5479, 20, 15, 55, CT_BUBBLES , Y), // 201 MightyMover Bubble Truck
307  MR( 20970, 20, 15, 55, CT_BUBBLES , Y), // 202 Powernaught Bubble Truck
308  MR( 33023, 20, 15, 85, CT_BUBBLES , Y), // 203 Wizzowow Bubble Truck
309  MS( 2922, 5, 30, 50, CT_OIL , T|A|S ), // 204 MPS Oil Tanker
310  MS( 17167, 5, 30, 90, CT_OIL , T|A|S ), // 205 CS-Inc. Oil Tanker
311  MS( 2192, 5, 30, 55, CT_PASSENGERS , T|A|S ), // 206 MPS Passenger Ferry
312  MS( 18628, 5, 30, 90, CT_PASSENGERS , T|A|S ), // 207 FFP Passenger Ferry
313  MS( 17257, 10, 25, 90, CT_PASSENGERS , T|A|S ), // 208 Bakewell 300 Hovercraft
314  MS( 9587, 5, 30, 40, CT_PASSENGERS , Y), // 209 Chugger-Chug Passenger Ferry
315  MS( 20544, 5, 30, 90, CT_PASSENGERS , Y), // 210 Shivershake Passenger Ferry
316  MS( 2557, 5, 30, 55, CT_GOODS , T|A|S ), // 211 Yate Cargo ship
317  MS( 19724, 5, 30, 98, CT_GOODS , T|A|S ), // 212 Bakewell Cargo ship
318  MS( 9587, 5, 30, 45, CT_GOODS , Y), // 213 Mightymover Cargo ship
319  MS( 22371, 5, 30, 90, CT_GOODS , Y), // 214 Powernaut Cargo ship
320  MA( 2922, 20, 20, 20, T|A|S ), // 215 Sampson U52
321  MA( 9922, 20, 24, 20, T|A|S ), // 216 Coleman Count
322  MA( 12659, 20, 18, 20, T|A|S ), // 217 FFP Dart
323  MA( 17652, 20, 25, 35, T|A|S ), // 218 Yate Haugan
324  MA( 4929, 20, 30, 30, T|A|S ), // 219 Bakewell Cotswald LB-3
325  MA( 13695, 20, 23, 25, T|A|S ), // 220 Bakewell Luckett LB-8
326  MA( 16341, 20, 26, 30, T|A|S ), // 221 Bakewell Luckett LB-9
327  MA( 21395, 20, 25, 30, T|A|S ), // 222 Bakewell Luckett LB80
328  MA( 18263, 20, 20, 30, T|A|S ), // 223 Bakewell Luckett LB-10
329  MA( 25233, 20, 25, 30, T|A|S ), // 224 Bakewell Luckett LB-11
330  MA( 15371, 20, 22, 25, T|A|S ), // 225 Yate Aerospace YAC 1-11
331  MA( 15461, 20, 25, 25, T|A|S ), // 226 Darwin 100
332  MA( 16952, 20, 22, 25, T|A|S ), // 227 Darwin 200
333  MA( 17227, 20, 25, 30, T|A|S ), // 228 Darwin 300
334  MA( 22371, 20, 25, 35, T|A|S ), // 229 Darwin 400
335  MA( 22341, 20, 25, 30, T|A|S ), // 230 Darwin 500
336  MA( 27209, 20, 25, 30, T|A|S ), // 231 Darwin 600
337  MA( 17988, 20, 20, 30, T|A|S ), // 232 Guru Galaxy
338  MA( 18993, 20, 24, 35, T|A|S ), // 233 Airtaxi A21
339  MA( 22401, 20, 24, 30, T|A|S ), // 234 Airtaxi A31
340  MA( 24472, 20, 24, 30, T|A|S ), // 235 Airtaxi A32
341  MA( 26724, 20, 24, 30, T|A|S ), // 236 Airtaxi A33
342  MA( 22005, 20, 25, 30, T|A|S ), // 237 Yate Aerospace YAe46
343  MA( 24107, 20, 20, 35, T|A|S ), // 238 Dinger 100
344  MA( 29310, 20, 25, 60, T|A|S ), // 239 AirTaxi A34-1000
345  MA( 35520, 20, 22, 30, T|A|S ), // 240 Yate Z-Shuttle
346  MA( 36981, 20, 22, 30, T|A|S ), // 241 Kelling K1
347  MA( 38807, 20, 22, 50, T|A|S ), // 242 Kelling K6
348  MA( 42094, 20, 25, 30, T|A|S ), // 243 Kelling K7
349  MA( 44651, 20, 23, 30, T|A|S ), // 244 Darwin 700
350  MA( 40268, 20, 25, 30, T|A|S ), // 245 FFP Hyperdart 2
351  MA( 33693, 20, 25, 50, T|A|S ), // 246 Dinger 200
352  MA( 32963, 20, 20, 60, T|A|S ), // 247 Dinger 1000
353  MA( 9222, 20, 20, 35, Y), // 248 Ploddyphut 100
354  MA( 12874, 20, 20, 35, Y), // 249 Ploddyphut 500
355  MA( 16892, 20, 20, 35, Y), // 250 Flashbang X1
356  MA( 21275, 20, 20, 99, Y), // 251 Juggerplane M1
357  MA( 23832, 20, 20, 99, Y), // 252 Flashbang Wizzer
358  MA( 13575, 20, 20, 40, T|A|S ), // 253 Tricario Helicopter
359  MA( 28215, 20, 20, 30, T|A|S ), // 254 Guru X2 Helicopter
360  MA( 13575, 20, 20, 99, Y), // 255 Powernaut Helicopter
361 };
362 #undef Y
363 #undef S
364 #undef A
365 #undef T
366 #undef MT
367 #undef MW
368 #undef MR
369 #undef MS
370 #undef MA
371 
389 #define RVI(a, b, c, d, e, f, g, h, i, j, k) { a, b, c, j, j, d, e, f, g, h, k, i, 0, 0, 0, VE_DEFAULT, 0, 76, 0, 0, 0 }
390 #define M RAILVEH_MULTIHEAD
391 #define W RAILVEH_WAGON
392 #define G RAILVEH_SINGLEHEAD
393 #define S EC_STEAM
394 #define D EC_DIESEL
395 #define E EC_ELECTRIC
396 #define N EC_MONORAIL
397 #define V EC_MAGLEV
398 /* Wagons always have engine type 0, i.e. steam. */
399 #define A EC_STEAM
400 
401 #define R RAILTYPE_RAIL
402 #define C RAILTYPE_ELECTRIC
403 #define O RAILTYPE_MONO
404 #define L RAILTYPE_MAGLEV
405 
406 #define RC_S PR_RUNNING_TRAIN_STEAM
407 #define RC_D PR_RUNNING_TRAIN_DIESEL
408 #define RC_E PR_RUNNING_TRAIN_ELECTRIC
409 #define RC_W INVALID_PRICE
410 
411 static const RailVehicleInfo _orig_rail_vehicle_info[] = {
412  /* image_index max_speed running_cost engclass
413  * | type | power | running_cost_class
414  * | | cost_factor | weight | | capacity
415  * | | | | | | | | | railtype
416  * | | | | | | | | | | | */
417  /* Rail */
418  RVI( 2, G, 7, 64, 300, 47, 50, RC_S, 0, R, S), // 0 Kirby Paul Tank (Steam)
419  RVI(19, G, 8, 80, 600, 65, 65, RC_D, 0, R, D), // 1 MJS 250 (Diesel)
420  RVI( 2, G, 10, 72, 400, 85, 90, RC_S, 0, R, S), // 2 Ploddyphut Choo-Choo
421  RVI( 0, G, 15, 96, 900, 130, 130, RC_S, 0, R, S), // 3 Powernaut Choo-Choo
422  RVI( 1, G, 19, 112, 1000, 140, 145, RC_S, 0, R, S), // 4 Mightymover Choo-Choo
423  RVI(12, G, 16, 120, 1400, 95, 125, RC_D, 0, R, D), // 5 Ploddyphut Diesel
424  RVI(14, G, 20, 152, 2000, 120, 135, RC_D, 0, R, D), // 6 Powernaut Diesel
425  RVI( 3, G, 14, 88, 1100, 145, 130, RC_S, 0, R, S), // 7 Wills 2-8-0 (Steam)
426  RVI( 0, G, 13, 112, 1000, 131, 120, RC_S, 0, R, S), // 8 Chaney 'Jubilee' (Steam)
427  RVI( 1, G, 19, 128, 1200, 162, 140, RC_S, 0, R, S), // 9 Ginzu 'A4' (Steam)
428  RVI( 0, G, 22, 144, 1600, 170, 130, RC_S, 0, R, S), // 10 SH '8P' (Steam)
429  RVI( 8, M, 11, 112, 600, 32, 85, RC_D, 38, R, D), // 11 Manley-Morel DMU (Diesel)
430  RVI(10, M, 14, 120, 700, 38, 70, RC_D, 40, R, D), // 12 'Dash' (Diesel)
431  RVI( 4, G, 15, 128, 1250, 72, 95, RC_D, 0, R, D), // 13 SH/Hendry '25' (Diesel)
432  RVI( 5, G, 17, 144, 1750, 101, 120, RC_D, 0, R, D), // 14 UU '37' (Diesel)
433  RVI( 4, G, 18, 160, 2580, 112, 140, RC_D, 0, R, D), // 15 Floss '47' (Diesel)
434  RVI(14, G, 23, 96, 4000, 150, 135, RC_D, 0, R, D), // 16 CS 4000 (Diesel)
435  RVI(12, G, 16, 112, 2400, 120, 105, RC_D, 0, R, D), // 17 CS 2400 (Diesel)
436  RVI(13, G, 30, 112, 6600, 207, 155, RC_D, 0, R, D), // 18 Centennial (Diesel)
437  RVI(15, G, 18, 104, 1500, 110, 105, RC_D, 0, R, D), // 19 Kelling 3100 (Diesel)
438  RVI(16, M, 35, 160, 3500, 95, 205, RC_D, 0, R, D), // 20 Turner Turbo (Diesel)
439  RVI(18, G, 21, 104, 2200, 120, 145, RC_D, 0, R, D), // 21 MJS 1000 (Diesel)
440  RVI( 6, M, 20, 200, 4500, 70, 190, RC_D, 4, R, D), // 22 SH '125' (Diesel)
441  RVI(20, G, 26, 160, 3600, 84, 180, RC_E, 0, C, E), // 23 SH '30' (Electric)
442  RVI(20, G, 30, 176, 5000, 82, 205, RC_E, 0, C, E), // 24 SH '40' (Electric)
443  RVI(21, M, 40, 240, 7000, 90, 240, RC_E, 0, C, E), // 25 'T.I.M.' (Electric)
444  RVI(23, M, 43, 264, 8000, 95, 250, RC_E, 0, C, E), // 26 'AsiaStar' (Electric)
445  RVI(33, W, 247, 0, 0, 25, 0, RC_W, 40, R, A), // 27 Passenger Carriage
446  RVI(35, W, 228, 0, 0, 21, 0, RC_W, 30, R, A), // 28 Mail Van
447  RVI(34, W, 176, 0, 0, 18, 0, RC_W, 30, R, A), // 29 Coal Truck
448  RVI(36, W, 200, 0, 0, 24, 0, RC_W, 30, R, A), // 30 Oil Tanker
449  RVI(37, W, 192, 0, 0, 20, 0, RC_W, 25, R, A), // 31 Livestock Van
450  RVI(38, W, 190, 0, 0, 21, 0, RC_W, 25, R, A), // 32 Goods Van
451  RVI(39, W, 182, 0, 0, 19, 0, RC_W, 30, R, A), // 33 Grain Hopper
452  RVI(40, W, 181, 0, 0, 16, 0, RC_W, 30, R, A), // 34 Wood Truck
453  RVI(41, W, 179, 0, 0, 19, 0, RC_W, 30, R, A), // 35 Iron Ore Hopper
454  RVI(42, W, 196, 0, 0, 18, 0, RC_W, 20, R, A), // 36 Steel Truck
455  RVI(43, W, 255, 0, 0, 30, 0, RC_W, 20, R, A), // 37 Armoured Van
456  RVI(44, W, 191, 0, 0, 22, 0, RC_W, 25, R, A), // 38 Food Van
457  RVI(45, W, 196, 0, 0, 18, 0, RC_W, 20, R, A), // 39 Paper Truck
458  RVI(46, W, 179, 0, 0, 19, 0, RC_W, 30, R, A), // 40 Copper Ore Hopper
459  RVI(47, W, 199, 0, 0, 25, 0, RC_W, 25, R, A), // 41 Water Tanker
460  RVI(48, W, 182, 0, 0, 18, 0, RC_W, 25, R, A), // 42 Fruit Truck
461  RVI(49, W, 185, 0, 0, 19, 0, RC_W, 21, R, A), // 43 Rubber Truck
462  RVI(50, W, 176, 0, 0, 19, 0, RC_W, 30, R, A), // 44 Sugar Truck
463  RVI(51, W, 178, 0, 0, 20, 0, RC_W, 30, R, A), // 45 Candyfloss Hopper
464  RVI(52, W, 192, 0, 0, 20, 0, RC_W, 30, R, A), // 46 Toffee Hopper
465  RVI(53, W, 190, 0, 0, 21, 0, RC_W, 20, R, A), // 47 Bubble Van
466  RVI(54, W, 182, 0, 0, 24, 0, RC_W, 25, R, A), // 48 Cola Tanker
467  RVI(55, W, 181, 0, 0, 21, 0, RC_W, 25, R, A), // 49 Sweet Van
468  RVI(56, W, 183, 0, 0, 21, 0, RC_W, 20, R, A), // 50 Toy Van
469  RVI(57, W, 196, 0, 0, 18, 0, RC_W, 22, R, A), // 51 Battery Truck
470  RVI(58, W, 193, 0, 0, 18, 0, RC_W, 25, R, A), // 52 Fizzy Drink Truck
471  RVI(59, W, 191, 0, 0, 18, 0, RC_W, 30, R, A), // 53 Plastic Truck
472  /* Monorail */
473  RVI(25, G, 52, 304, 9000, 95, 230, RC_E, 0, O, N), // 54 'X2001' (Electric)
474  RVI(26, M, 60, 336, 10000, 85, 240, RC_E, 25, O, N), // 55 'Millennium Z1' (Electric)
475  RVI(26, G, 53, 320, 5000, 95, 230, RC_E, 0, O, N), // 56 Wizzowow Z99
476  RVI(60, W, 247, 0, 0, 25, 0, RC_W, 45, O, A), // 57 Passenger Carriage
477  RVI(62, W, 228, 0, 0, 21, 0, RC_W, 35, O, A), // 58 Mail Van
478  RVI(61, W, 176, 0, 0, 18, 0, RC_W, 35, O, A), // 59 Coal Truck
479  RVI(63, W, 200, 0, 0, 24, 0, RC_W, 35, O, A), // 60 Oil Tanker
480  RVI(64, W, 192, 0, 0, 20, 0, RC_W, 30, O, A), // 61 Livestock Van
481  RVI(65, W, 190, 0, 0, 21, 0, RC_W, 30, O, A), // 62 Goods Van
482  RVI(66, W, 182, 0, 0, 19, 0, RC_W, 35, O, A), // 63 Grain Hopper
483  RVI(67, W, 181, 0, 0, 16, 0, RC_W, 35, O, A), // 64 Wood Truck
484  RVI(68, W, 179, 0, 0, 19, 0, RC_W, 35, O, A), // 65 Iron Ore Hopper
485  RVI(69, W, 196, 0, 0, 18, 0, RC_W, 25, O, A), // 66 Steel Truck
486  RVI(70, W, 255, 0, 0, 30, 0, RC_W, 25, O, A), // 67 Armoured Van
487  RVI(71, W, 191, 0, 0, 22, 0, RC_W, 30, O, A), // 68 Food Van
488  RVI(72, W, 196, 0, 0, 18, 0, RC_W, 25, O, A), // 69 Paper Truck
489  RVI(73, W, 179, 0, 0, 19, 0, RC_W, 35, O, A), // 70 Copper Ore Hopper
490  RVI(47, W, 199, 0, 0, 25, 0, RC_W, 30, O, A), // 71 Water Tanker
491  RVI(48, W, 182, 0, 0, 18, 0, RC_W, 30, O, A), // 72 Fruit Truck
492  RVI(49, W, 185, 0, 0, 19, 0, RC_W, 26, O, A), // 73 Rubber Truck
493  RVI(50, W, 176, 0, 0, 19, 0, RC_W, 35, O, A), // 74 Sugar Truck
494  RVI(51, W, 178, 0, 0, 20, 0, RC_W, 35, O, A), // 75 Candyfloss Hopper
495  RVI(52, W, 192, 0, 0, 20, 0, RC_W, 35, O, A), // 76 Toffee Hopper
496  RVI(53, W, 190, 0, 0, 21, 0, RC_W, 25, O, A), // 77 Bubble Van
497  RVI(54, W, 182, 0, 0, 24, 0, RC_W, 30, O, A), // 78 Cola Tanker
498  RVI(55, W, 181, 0, 0, 21, 0, RC_W, 30, O, A), // 79 Sweet Van
499  RVI(56, W, 183, 0, 0, 21, 0, RC_W, 25, O, A), // 80 Toy Van
500  RVI(57, W, 196, 0, 0, 18, 0, RC_W, 27, O, A), // 81 Battery Truck
501  RVI(58, W, 193, 0, 0, 18, 0, RC_W, 30, O, A), // 82 Fizzy Drink Truck
502  RVI(59, W, 191, 0, 0, 18, 0, RC_W, 35, O, A), // 83 Plastic Truck
503  /* Maglev */
504  RVI(28, G, 70, 400, 10000, 105, 250, RC_E, 0, L, V), // 84 Lev1 'Leviathan' (Electric)
505  RVI(29, G, 74, 448, 12000, 120, 253, RC_E, 0, L, V), // 85 Lev2 'Cyclops' (Electric)
506  RVI(30, G, 82, 480, 15000, 130, 254, RC_E, 0, L, V), // 86 Lev3 'Pegasus' (Electric)
507  RVI(31, M, 95, 640, 20000, 150, 255, RC_E, 0, L, V), // 87 Lev4 'Chimaera' (Electric)
508  RVI(28, G, 70, 480, 10000, 120, 250, RC_E, 0, L, V), // 88 Wizzowow Rocketeer
509  RVI(60, W, 247, 0, 0, 25, 0, RC_W, 47, L, A), // 89 Passenger Carriage
510  RVI(62, W, 228, 0, 0, 21, 0, RC_W, 37, L, A), // 90 Mail Van
511  RVI(61, W, 176, 0, 0, 18, 0, RC_W, 37, L, A), // 91 Coal Truck
512  RVI(63, W, 200, 0, 0, 24, 0, RC_W, 37, L, A), // 92 Oil Tanker
513  RVI(64, W, 192, 0, 0, 20, 0, RC_W, 32, L, A), // 93 Livestock Van
514  RVI(65, W, 190, 0, 0, 21, 0, RC_W, 32, L, A), // 94 Goods Van
515  RVI(66, W, 182, 0, 0, 19, 0, RC_W, 37, L, A), // 95 Grain Hopper
516  RVI(67, W, 181, 0, 0, 16, 0, RC_W, 37, L, A), // 96 Wood Truck
517  RVI(68, W, 179, 0, 0, 19, 0, RC_W, 37, L, A), // 97 Iron Ore Hopper
518  RVI(69, W, 196, 0, 0, 18, 0, RC_W, 27, L, A), // 98 Steel Truck
519  RVI(70, W, 255, 0, 0, 30, 0, RC_W, 27, L, A), // 99 Armoured Van
520  RVI(71, W, 191, 0, 0, 22, 0, RC_W, 32, L, A), // 100 Food Van
521  RVI(72, W, 196, 0, 0, 18, 0, RC_W, 27, L, A), // 101 Paper Truck
522  RVI(73, W, 179, 0, 0, 19, 0, RC_W, 37, L, A), // 102 Copper Ore Hopper
523  RVI(47, W, 199, 0, 0, 25, 0, RC_W, 32, L, A), // 103 Water Tanker
524  RVI(48, W, 182, 0, 0, 18, 0, RC_W, 32, L, A), // 104 Fruit Truck
525  RVI(49, W, 185, 0, 0, 19, 0, RC_W, 28, L, A), // 105 Rubber Truck
526  RVI(50, W, 176, 0, 0, 19, 0, RC_W, 37, L, A), // 106 Sugar Truck
527  RVI(51, W, 178, 0, 0, 20, 0, RC_W, 37, L, A), // 107 Candyfloss Hopper
528  RVI(52, W, 192, 0, 0, 20, 0, RC_W, 37, L, A), // 108 Toffee Hopper
529  RVI(53, W, 190, 0, 0, 21, 0, RC_W, 27, L, A), // 109 Bubble Van
530  RVI(54, W, 182, 0, 0, 24, 0, RC_W, 32, L, A), // 110 Cola Tanker
531  RVI(55, W, 181, 0, 0, 21, 0, RC_W, 32, L, A), // 111 Sweet Van
532  RVI(56, W, 183, 0, 0, 21, 0, RC_W, 27, L, A), // 112 Toy Van
533  RVI(57, W, 196, 0, 0, 18, 0, RC_W, 29, L, A), // 113 Battery Truck
534  RVI(58, W, 193, 0, 0, 18, 0, RC_W, 32, L, A), // 114 Fizzy Drink Truck
535  RVI(59, W, 191, 0, 0, 18, 0, RC_W, 37, L, A), // 115 Plastic Truck
536 };
537 #undef RC_W
538 #undef RC_E
539 #undef RC_D
540 #undef RC_S
541 #undef L
542 #undef O
543 #undef C
544 #undef R
545 #undef V
546 #undef N
547 #undef E
548 #undef D
549 #undef S
550 #undef G
551 #undef W
552 #undef M
553 #undef RVI
554 
567 #define SVI(a, b, c, d, e, f, g, h) { a, b, c, d, e, f, g, h, VE_DEFAULT, 0, 0 }
568 static const ShipVehicleInfo _orig_ship_vehicle_info[] = {
569  /* image_index max_speed sfx refittable
570  * | cost_factor capacity | |
571  * | | acceleration running_cost |
572  * | | | | | | | | */
573  SVI( 1, 160, 1, 48, 220, 140, SND_06_DEPARTURE_CARGO_SHIP, 0 ), // 0 MPS Oil Tanker
574  SVI( 1, 176, 1, 80, 350, 125, SND_06_DEPARTURE_CARGO_SHIP, 0 ), // 1 CS-Inc. Oil Tanker
575  SVI( 2, 96, 1, 64, 100, 90, SND_07_DEPARTURE_FERRY, 0 ), // 2 MPS Passenger Ferry
576  SVI( 2, 112, 1, 128, 130, 80, SND_07_DEPARTURE_FERRY, 0 ), // 3 FFP Passenger Ferry
577  SVI( 3, 148, 1, 224, 100, 190, SND_07_DEPARTURE_FERRY, 0 ), // 4 Bakewell 300 Hovercraft
578  SVI( 2, 96, 1, 64, 100, 90, SND_07_DEPARTURE_FERRY, 0 ), // 5 Chugger-Chug Passenger Ferry
579  SVI( 2, 112, 1, 128, 130, 80, SND_07_DEPARTURE_FERRY, 0 ), // 6 Shivershake Passenger Ferry
580  SVI( 0, 128, 1, 48, 160, 150, SND_06_DEPARTURE_CARGO_SHIP, 1 ), // 7 Yate Cargo ship
581  SVI( 0, 144, 1, 80, 190, 113, SND_06_DEPARTURE_CARGO_SHIP, 1 ), // 8 Bakewell Cargo ship
582  SVI( 0, 128, 1, 48, 160, 150, SND_06_DEPARTURE_CARGO_SHIP, 1 ), // 9 Mightymover Cargo ship
583  SVI( 0, 144, 1, 80, 190, 113, SND_06_DEPARTURE_CARGO_SHIP, 1 ), // 10 Powernaut Cargo ship
584 };
585 #undef SVI
586 
600 #define AVI(a, b, c, d, e, f, g, h, i) { a, b, c, d, e, f, (g * 128) / 10, h, i, 0 }
601 #define H AIR_HELI
602 #define P AIR_CTOL
603 #define J AIR_CTOL | AIR_FAST
604 static const AircraftVehicleInfo _orig_aircraft_vehicle_info[] = {
605  /* image_index sfx acceleration
606  * | cost_factor | | max_speed
607  * | | running_cost | | mail_capacity
608  * | | | subtype | | | | passenger_capacity
609  * | | | | | | | | | */
610  AVI( 1, 14, 85, P, SND_08_TAKEOFF_PROPELLER, 18, 37, 4, 25 ), // 0 Sampson U52
611  AVI( 0, 15, 100, P, SND_08_TAKEOFF_PROPELLER, 20, 37, 8, 65 ), // 1 Coleman Count
612  AVI( 2, 16, 130, J, SND_09_TAKEOFF_JET, 35, 74, 10, 90 ), // 2 FFP Dart
613  AVI( 8, 75, 250, J, SND_3B_TAKEOFF_JET_FAST, 50, 181, 20, 100 ), // 3 Yate Haugan
614  AVI( 5, 15, 98, P, SND_08_TAKEOFF_PROPELLER, 20, 37, 6, 30 ), // 4 Bakewell Cotswald LB-3
615  AVI( 6, 18, 240, J, SND_09_TAKEOFF_JET, 40, 74, 30, 200 ), // 5 Bakewell Luckett LB-8
616  AVI( 2, 17, 150, P, SND_09_TAKEOFF_JET, 35, 74, 15, 100 ), // 6 Bakewell Luckett LB-9
617  AVI( 2, 18, 245, J, SND_09_TAKEOFF_JET, 40, 74, 30, 150 ), // 7 Bakewell Luckett LB80
618  AVI( 3, 19, 192, J, SND_09_TAKEOFF_JET, 40, 74, 40, 220 ), // 8 Bakewell Luckett LB-10
619  AVI( 3, 20, 190, J, SND_09_TAKEOFF_JET, 40, 74, 25, 230 ), // 9 Bakewell Luckett LB-11
620  AVI( 2, 16, 135, J, SND_09_TAKEOFF_JET, 35, 74, 10, 95 ), // 10 Yate Aerospace YAC 1-11
621  AVI( 2, 18, 240, J, SND_09_TAKEOFF_JET, 40, 74, 35, 170 ), // 11 Darwin 100
622  AVI( 4, 17, 155, J, SND_09_TAKEOFF_JET, 40, 74, 15, 110 ), // 12 Darwin 200
623  AVI( 7, 30, 253, J, SND_3D_TAKEOFF_JET_BIG, 40, 74, 50, 300 ), // 13 Darwin 300
624  AVI( 4, 18, 210, J, SND_09_TAKEOFF_JET, 40, 74, 25, 200 ), // 14 Darwin 400
625  AVI( 4, 19, 220, J, SND_09_TAKEOFF_JET, 40, 74, 25, 240 ), // 15 Darwin 500
626  AVI( 4, 27, 230, J, SND_09_TAKEOFF_JET, 40, 74, 40, 260 ), // 16 Darwin 600
627  AVI( 3, 25, 225, J, SND_09_TAKEOFF_JET, 40, 74, 35, 240 ), // 17 Guru Galaxy
628  AVI( 4, 20, 235, J, SND_09_TAKEOFF_JET, 40, 74, 30, 260 ), // 18 Airtaxi A21
629  AVI( 4, 19, 220, J, SND_09_TAKEOFF_JET, 40, 74, 25, 210 ), // 19 Airtaxi A31
630  AVI( 4, 18, 170, J, SND_09_TAKEOFF_JET, 40, 74, 20, 160 ), // 20 Airtaxi A32
631  AVI( 4, 26, 210, J, SND_09_TAKEOFF_JET, 40, 74, 20, 220 ), // 21 Airtaxi A33
632  AVI( 6, 16, 125, P, SND_09_TAKEOFF_JET, 50, 74, 10, 80 ), // 22 Yate Aerospace YAe46
633  AVI( 2, 17, 145, P, SND_09_TAKEOFF_JET, 40, 74, 10, 85 ), // 23 Dinger 100
634  AVI( 11, 16, 130, P, SND_09_TAKEOFF_JET, 40, 74, 10, 75 ), // 24 AirTaxi A34-1000
635  AVI( 10, 16, 149, P, SND_09_TAKEOFF_JET, 40, 74, 10, 85 ), // 25 Yate Z-Shuttle
636  AVI( 15, 17, 170, P, SND_09_TAKEOFF_JET, 40, 74, 18, 65 ), // 26 Kelling K1
637  AVI( 12, 18, 210, J, SND_09_TAKEOFF_JET, 40, 74, 25, 110 ), // 27 Kelling K6
638  AVI( 13, 20, 230, J, SND_09_TAKEOFF_JET, 40, 74, 60, 180 ), // 28 Kelling K7
639  AVI( 14, 21, 220, J, SND_09_TAKEOFF_JET, 40, 74, 65, 150 ), // 29 Darwin 700
640  AVI( 16, 19, 160, J, SND_09_TAKEOFF_JET, 40, 181, 45, 85 ), // 30 FFP Hyperdart 2
641  AVI( 17, 24, 248, J, SND_3D_TAKEOFF_JET_BIG, 40, 74, 80, 400 ), // 31 Dinger 200
642  AVI( 18, 80, 251, J, SND_3B_TAKEOFF_JET_FAST, 50, 181, 45, 130 ), // 32 Dinger 1000
643  AVI( 20, 13, 85, P, SND_45_TAKEOFF_PROPELLER_TOYLAND_1, 18, 37, 5, 25 ), // 33 Ploddyphut 100
644  AVI( 21, 18, 100, P, SND_46_TAKEOFF_PROPELLER_TOYLAND_2, 20, 37, 9, 60 ), // 34 Ploddyphut 500
645  AVI( 22, 25, 140, P, SND_09_TAKEOFF_JET, 40, 74, 12, 90 ), // 35 Flashbang X1
646  AVI( 23, 32, 220, J, SND_3D_TAKEOFF_JET_BIG, 40, 74, 40, 200 ), // 36 Juggerplane M1
647  AVI( 24, 80, 255, J, SND_3B_TAKEOFF_JET_FAST, 50, 181, 30, 100 ), // 37 Flashbang Wizzer
648  AVI( 9, 15, 81, H, SND_09_TAKEOFF_JET, 20, 25, 15, 40 ), // 38 Tricario Helicopter
649  AVI( 19, 17, 77, H, SND_09_TAKEOFF_JET, 20, 40, 20, 55 ), // 39 Guru X2 Helicopter
650  AVI( 25, 15, 80, H, SND_09_TAKEOFF_JET, 20, 25, 10, 40 ), // 40 Powernaut Helicopter
651 };
652 #undef J
653 #undef P
654 #undef H
655 #undef AVI
656 
671 #define ROV(a, b, c, d, e, f, g, h) { a, b, c, PR_RUNNING_ROADVEH, d, e, f, g, h, 76, 0, VE_DEFAULT, 0, ROADTYPE_ROAD }
672 static const RoadVehicleInfo _orig_road_vehicle_info[] = {
673  /* image_index sfx max_speed power
674  * | cost_factor | | capacity |
675  * | | running_cost | | weight
676  * | | | | | | | |*/
677  ROV( 0, 120, 91, SND_19_DEPARTURE_OLD_RV_1, 112, 31, 42, 9), // 0 MPS Regal Bus
678  ROV( 17, 140, 128, SND_1C_DEPARTURE_OLD_BUS, 176, 35, 60, 12), // 1 Hereford Leopard Bus
679  ROV( 17, 150, 178, SND_1B_DEPARTURE_MODERN_BUS, 224, 37, 70, 15), // 2 Foster Bus
680  ROV( 34, 160, 240, SND_1B_DEPARTURE_MODERN_BUS, 255, 40, 100, 25), // 3 Foster MkII Superbus
681  ROV( 51, 120, 91, SND_3C_DEPARTURE_BUS_TOYLAND_1, 112, 30, 42, 9), // 4 Ploddyphut MkI Bus
682  ROV( 51, 140, 171, SND_3E_DEPARTURE_BUS_TOYLAND_2, 192, 35, 60, 15), // 5 Ploddyphut MkII Bus
683  ROV( 51, 160, 240, SND_3C_DEPARTURE_BUS_TOYLAND_1, 240, 38, 90, 25), // 6 Ploddyphut MkIII Bus
684  ROV( 1, 108, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 20, 38, 12), // 7 Balogh Coal Truck
685  ROV( 18, 128, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 25, 48, 22), // 8 Uhl Coal Truck
686  ROV( 35, 138, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 28, 69, 45), // 9 DW Coal Truck
687  ROV( 2, 115, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 22, 38, 12), // 10 MPS Mail Truck
688  ROV( 19, 135, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 28, 48, 22), // 11 Reynard Mail Truck
689  ROV( 36, 145, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 30, 69, 45), // 12 Perry Mail Truck
690  ROV( 57, 115, 90, SND_3E_DEPARTURE_BUS_TOYLAND_2, 96, 22, 38, 12), // 13 MightyMover Mail Truck
691  ROV( 57, 135, 168, SND_3C_DEPARTURE_BUS_TOYLAND_1, 176, 28, 48, 22), // 14 Powernaught Mail Truck
692  ROV( 57, 145, 240, SND_3E_DEPARTURE_BUS_TOYLAND_2, 224, 30, 69, 45), // 15 Wizzowow Mail Truck
693  ROV( 3, 110, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 21, 38, 12), // 16 Witcombe Oil Tanker
694  ROV( 20, 140, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 25, 48, 22), // 17 Foster Oil Tanker
695  ROV( 37, 150, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 27, 69, 45), // 18 Perry Oil Tanker
696  ROV( 4, 105, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 14, 38, 12), // 19 Talbott Livestock Van
697  ROV( 21, 130, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 16, 48, 22), // 20 Uhl Livestock Van
698  ROV( 38, 140, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 18, 69, 45), // 21 Foster Livestock Van
699  ROV( 5, 107, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 14, 38, 12), // 22 Balogh Goods Truck
700  ROV( 22, 130, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 16, 48, 22), // 23 Craighead Goods Truck
701  ROV( 39, 140, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 18, 69, 45), // 24 Goss Goods Truck
702  ROV( 6, 114, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 20, 38, 12), // 25 Hereford Grain Truck
703  ROV( 23, 133, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 25, 48, 22), // 26 Thomas Grain Truck
704  ROV( 40, 143, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 30, 69, 45), // 27 Goss Grain Truck
705  ROV( 7, 118, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 20, 38, 12), // 28 Witcombe Wood Truck
706  ROV( 24, 137, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 22, 48, 22), // 29 Foster Wood Truck
707  ROV( 41, 147, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 24, 69, 45), // 30 Moreland Wood Truck
708  ROV( 8, 121, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 22, 38, 12), // 31 MPS Iron Ore Truck
709  ROV( 25, 140, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 25, 48, 22), // 32 Uhl Iron Ore Truck
710  ROV( 42, 150, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 27, 69, 45), // 33 Chippy Iron Ore Truck
711  ROV( 9, 112, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 15, 38, 12), // 34 Balogh Steel Truck
712  ROV( 26, 135, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 18, 48, 22), // 35 Uhl Steel Truck
713  ROV( 43, 145, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 20, 69, 45), // 36 Kelling Steel Truck
714  ROV( 10, 145, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 12, 38, 12), // 37 Balogh Armoured Truck
715  ROV( 27, 170, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 15, 48, 22), // 38 Uhl Armoured Truck
716  ROV( 44, 180, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 16, 69, 45), // 39 Foster Armoured Truck
717  ROV( 11, 112, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 17, 38, 12), // 40 Foster Food Van
718  ROV( 28, 134, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 20, 48, 22), // 41 Perry Food Van
719  ROV( 45, 144, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 22, 69, 45), // 42 Chippy Food Van
720  ROV( 12, 112, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 15, 38, 12), // 43 Uhl Paper Truck
721  ROV( 29, 135, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 18, 48, 22), // 44 Balogh Paper Truck
722  ROV( 46, 145, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 20, 69, 45), // 45 MPS Paper Truck
723  ROV( 13, 121, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 22, 38, 12), // 46 MPS Copper Ore Truck
724  ROV( 30, 140, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 25, 48, 22), // 47 Uhl Copper Ore Truck
725  ROV( 47, 150, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 27, 69, 45), // 48 Goss Copper Ore Truck
726  ROV( 14, 111, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 21, 38, 12), // 49 Uhl Water Tanker
727  ROV( 31, 141, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 25, 48, 22), // 50 Balogh Water Tanker
728  ROV( 48, 151, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 27, 69, 45), // 51 MPS Water Tanker
729  ROV( 15, 118, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 18, 38, 12), // 52 Balogh Fruit Truck
730  ROV( 32, 148, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 20, 48, 22), // 53 Uhl Fruit Truck
731  ROV( 49, 158, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 23, 69, 45), // 54 Kelling Fruit Truck
732  ROV( 16, 117, 90, SND_19_DEPARTURE_OLD_RV_1, 96, 17, 38, 12), // 55 Balogh Rubber Truck
733  ROV( 33, 147, 168, SND_19_DEPARTURE_OLD_RV_1, 176, 19, 48, 22), // 56 Uhl Rubber Truck
734  ROV( 50, 157, 240, SND_19_DEPARTURE_OLD_RV_1, 224, 22, 69, 45), // 57 RMT Rubber Truck
735  ROV( 52, 117, 90, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 96, 17, 38, 12), // 58 MightyMover Sugar Truck
736  ROV( 52, 147, 168, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 176, 19, 48, 22), // 59 Powernaught Sugar Truck
737  ROV( 52, 157, 240, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 224, 22, 69, 45), // 60 Wizzowow Sugar Truck
738  ROV( 53, 117, 90, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 96, 17, 38, 12), // 61 MightyMover Cola Truck
739  ROV( 53, 147, 168, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 176, 19, 48, 22), // 62 Powernaught Cola Truck
740  ROV( 53, 157, 240, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 224, 22, 69, 45), // 63 Wizzowow Cola Truck
741  ROV( 54, 117, 90, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 96, 17, 38, 12), // 64 MightyMover Candyfloss Truck
742  ROV( 54, 147, 168, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 176, 19, 48, 22), // 65 Powernaught Candyfloss Truck
743  ROV( 54, 157, 240, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 224, 22, 69, 45), // 66 Wizzowow Candyfloss Truck
744  ROV( 55, 117, 90, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 96, 17, 38, 12), // 67 MightyMover Toffee Truck
745  ROV( 55, 147, 168, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 176, 19, 48, 22), // 68 Powernaught Toffee Truck
746  ROV( 55, 157, 240, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 224, 22, 69, 45), // 69 Wizzowow Toffee Truck
747  ROV( 56, 117, 90, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 96, 17, 38, 12), // 70 MightyMover Toy Van
748  ROV( 56, 147, 168, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 176, 19, 48, 22), // 71 Powernaught Toy Van
749  ROV( 56, 157, 240, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 224, 22, 69, 45), // 72 Wizzowow Toy Van
750  ROV( 58, 117, 90, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 96, 17, 38, 12), // 73 MightyMover Sweet Truck
751  ROV( 58, 147, 168, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 176, 19, 48, 22), // 74 Powernaught Sweet Truck
752  ROV( 58, 157, 240, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 224, 22, 69, 45), // 75 Wizzowow Sweet Truck
753  ROV( 59, 117, 90, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 96, 17, 38, 12), // 76 MightyMover Battery Truck
754  ROV( 59, 147, 168, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 176, 19, 48, 22), // 77 Powernaught Battery Truck
755  ROV( 59, 157, 240, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 224, 22, 69, 45), // 78 Wizzowow Battery Truck
756  ROV( 60, 117, 90, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 96, 17, 38, 12), // 79 MightyMover Fizzy Drink Truck
757  ROV( 60, 147, 168, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 176, 19, 48, 22), // 80 Powernaught Fizzy Drink Truck
758  ROV( 60, 157, 240, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 224, 22, 69, 45), // 81 Wizzowow Fizzy Drink Truck
759  ROV( 61, 117, 90, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 96, 17, 38, 12), // 82 MightyMover Plastic Truck
760  ROV( 61, 147, 168, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 176, 19, 48, 22), // 83 Powernaught Plastic Truck
761  ROV( 61, 157, 240, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 224, 22, 69, 45), // 84 Wizzowow Plastic Truck
762  ROV( 62, 117, 90, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 96, 17, 38, 12), // 85 MightyMover Bubble Truck
763  ROV( 62, 147, 168, SND_3F_DEPARTURE_TRUCK_TOYLAND_1, 176, 19, 48, 22), // 86 Powernaught Bubble Truck
764  ROV( 62, 157, 240, SND_40_DEPARTURE_TRUCK_TOYLAND_2, 224, 22, 69, 45), // 87 Wizzowow Bubble Truck
765 };
766 #undef ROV
767 
768 #endif /* ENGINES_H */
SND_06_DEPARTURE_CARGO_SHIP
@ SND_06_DEPARTURE_CARGO_SHIP
4 == 0x04 Station departure: cargo ships
Definition: sound_type.h:43
MCT_GRAIN_WHEAT_MAIZE
@ MCT_GRAIN_WHEAT_MAIZE
Cargo can be grain, wheat or maize.
Definition: cargo_type.h:85
SND_3B_TAKEOFF_JET_FAST
@ SND_3B_TAKEOFF_JET_FAST
59 == 0x3B Takeoff: supersonic plane (fast)
Definition: sound_type.h:98
SND_40_DEPARTURE_TRUCK_TOYLAND_2
@ SND_40_DEPARTURE_TRUCK_TOYLAND_2
64 == 0x40 Station departure: truck (2) (toyland)
Definition: sound_type.h:103
SND_1C_DEPARTURE_OLD_BUS
@ SND_1C_DEPARTURE_OLD_BUS
26 == 0x1A Station departure: old bus (non-toyland)
Definition: sound_type.h:65
SND_3E_DEPARTURE_BUS_TOYLAND_2
@ SND_3E_DEPARTURE_BUS_TOYLAND_2
62 == 0x3E Station departure: bus (2) (toyland)
Definition: sound_type.h:101
SND_19_DEPARTURE_OLD_RV_1
@ SND_19_DEPARTURE_OLD_RV_1
23 == 0x17 Station departure: truck and old bus (1) (non-toyland)
Definition: sound_type.h:62
EngineInfo
Information about a vehicle.
Definition: engine_type.h:144
ROV
#define ROV(a, b, c, d, e, f, g, h)
Writes the properties of a road vehicle into the RoadVehicleInfo struct.
Definition: engines.h:671
RailVehicleInfo
Information about a rail vehicle.
Definition: engine_type.h:42
SND_1B_DEPARTURE_MODERN_BUS
@ SND_1B_DEPARTURE_MODERN_BUS
25 == 0x19 Station departure: modern bus (non-toyland)
Definition: sound_type.h:64
M
#define M(x)
Helper for creating a bitset of slopes.
Definition: slope_type.h:84
CT_NONE
static constexpr CargoLabel CT_NONE
Dummy label for engines that carry no cargo; they actually carry 0 passengers.
Definition: cargo_type.h:69
RoadVehicleInfo
Information about a road vehicle.
Definition: engine_type.h:114
MR
#define MR(a, b, c, d, e, f)
Writes the properties of a road vehicle into the EngineInfo struct.
Definition: engines.h:66
RVI
#define RVI(a, b, c, d, e, f, g, h, i, j, k)
Writes the properties of a rail vehicle into the RailVehicleInfo struct.
Definition: engines.h:389
SND_09_TAKEOFF_JET
@ SND_09_TAKEOFF_JET
7 == 0x07 Takeoff: regular jet plane
Definition: sound_type.h:46
MW
#define MW(a, b, c, d, e, f)
Writes the properties of a train carriage into the EngineInfo struct.
Definition: engines.h:53
CT_PASSENGERS
static constexpr CargoLabel CT_PASSENGERS
Available types of cargo Labels may be re-used between different climates.
Definition: cargo_type.h:30
SVI
#define SVI(a, b, c, d, e, f, g, h)
Writes the properties of a ship into the ShipVehicleInfo struct.
Definition: engines.h:567
SND_3F_DEPARTURE_TRUCK_TOYLAND_1
@ SND_3F_DEPARTURE_TRUCK_TOYLAND_1
63 == 0x3F Station departure: truck (1) (toyland)
Definition: sound_type.h:102
SND_46_TAKEOFF_PROPELLER_TOYLAND_2
@ SND_46_TAKEOFF_PROPELLER_TOYLAND_2
70 == 0x46 Takeoff: propeller plane (2) (toyland)
Definition: sound_type.h:109
MS
#define MS(a, b, c, d, e, f)
Writes the properties of a ship into the EngineInfo struct.
Definition: engines.h:78
SND_3C_DEPARTURE_BUS_TOYLAND_1
@ SND_3C_DEPARTURE_BUS_TOYLAND_1
60 == 0x3C Station departure: bus (1) (toyland)
Definition: sound_type.h:99
ShipVehicleInfo
Information about a ship vehicle.
Definition: engine_type.h:67
AVI
#define AVI(a, b, c, d, e, f, g, h, i)
Writes the properties of an aircraft into the AircraftVehicleInfo struct.
Definition: engines.h:600
MM
#define MM(a, b, c, d, e, f)
Writes the properties of a multiple-unit train into the EngineInfo struct.
Definition: engines.h:40
MCT_VALUABLES_GOLD_DIAMONDS
@ MCT_VALUABLES_GOLD_DIAMONDS
Cargo can be valuables, gold or diamonds.
Definition: cargo_type.h:86
SND_08_TAKEOFF_PROPELLER
@ SND_08_TAKEOFF_PROPELLER
6 == 0x06 Takeoff: propeller plane (non-toyland)
Definition: sound_type.h:45
SND_3D_TAKEOFF_JET_BIG
@ SND_3D_TAKEOFF_JET_BIG
61 == 0x3D Takeoff: huge jet plane (high capacity)
Definition: sound_type.h:100
AircraftVehicleInfo
Information about a aircraft vehicle.
Definition: engine_type.h:100
MA
#define MA(a, b, c, d, e)
Writes the properties of an aeroplane into the EngineInfo struct.
Definition: engines.h:89
MT
#define MT(a, b, c, d, e, f)
Writes the properties of a train into the EngineInfo struct.
Definition: engines.h:27
SND_45_TAKEOFF_PROPELLER_TOYLAND_1
@ SND_45_TAKEOFF_PROPELLER_TOYLAND_1
69 == 0x45 Takeoff: propeller plane (1) (toyland)
Definition: sound_type.h:108
SND_07_DEPARTURE_FERRY
@ SND_07_DEPARTURE_FERRY
5 == 0x05 Station departure: passenger ships
Definition: sound_type.h:44