# railtypes.h

Go to the documentation of this file.

    00001 /* $Id: railtypes.h 18509 2009-12-15 13:59:20Z peter1138 $ */
    00002
    00003 /*
    00004  * This file is part of OpenTTD.
    00005  * 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.
    00006  * 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.
    00007  * 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/>.
    00008  */
    00009
    00014 #ifndef RAILTYPES_H
    00015 #define RAILTYPES_H
    00016
    00019 static const RailtypeInfo _original_railtypes[] = {
    00021   { // Main Sprites
    00022     { SPR_RAIL_TRACK_Y, SPR_RAIL_TRACK_N_S, SPR_RAIL_TRACK_BASE, SPR_RAIL_SINGLE_X, SPR_RAIL_SINGLE_Y,
    00023       SPR_RAIL_SINGLE_NORTH, SPR_RAIL_SINGLE_SOUTH, SPR_RAIL_SINGLE_EAST, SPR_RAIL_SINGLE_WEST,
    00024       SPR_TRACKS_FOR_SLOPES_RAIL_BASE,
    00025       SPR_CROSSING_OFF_X_RAIL,
    00026       SPR_TUNNEL_ENTRY_REAR_RAIL
    00027     },
    00028
    00029     /* GUI sprites */
    00030     { 0x4E3, 0x4E4, 0x4E5, 0x4E6,
    00031       SPR_IMG_AUTORAIL,
    00032       SPR_IMG_DEPOT_RAIL,
    00033       SPR_IMG_TUNNEL_RAIL,
    00034       SPR_IMG_CONVERT_RAIL
    00035     },
    00036
    00037     {
    00038       SPR_CURSOR_NS_TRACK,
    00039       SPR_CURSOR_SWNE_TRACK,
    00040       SPR_CURSOR_EW_TRACK,
    00041       SPR_CURSOR_NWSE_TRACK,
    00042       SPR_CURSOR_AUTORAIL,
    00043       SPR_CURSOR_RAIL_DEPOT,
    00044       SPR_CURSOR_TUNNEL_RAIL,
    00045       SPR_CURSOR_CONVERT_RAIL
    00046     },
    00047
    00048     /* strings */
    00049     {
    00050       STR_RAIL_TOOLBAR_RAILROAD_CONSTRUCTION_CAPTION,
    00051       STR_RAIL_MENU_RAILROAD_CONSTRUCTION,
    00052       STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION,
    00053       STR_REPLACE_RAIL_VEHICLES,
    00054       STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE,
    00055     },
    00056
    00057     /* Offset of snow tiles */
    00058     SPR_RAIL_SNOW_OFFSET,
    00059
    00060     /* Powered railtypes */
    00061     RAILTYPES_RAIL | RAILTYPES_ELECTRIC,
    00062
    00063     /* Compatible railtypes */
    00064     RAILTYPES_RAIL | RAILTYPES_ELECTRIC,
    00065
    00066     /* main offset */
    00067     0,
    00068
    00069     /* bridge offset */
    00070     0,
    00071
    00072     /* custom ground offset */
    00073     0,
    00074
    00075     /* curve speed advantage (multiplier) */
    00076     0,
    00077
    00078     /* flags */
    00079     RTFB_NONE,
    00080
    00081     /* cost multiplier */
    00082     8,
    00083
    00084     /* rail type label */
    00085     'RAIL',
    00086   },
    00087
    00089   { // Main Sprites
    00090     { SPR_RAIL_TRACK_Y, SPR_RAIL_TRACK_N_S, SPR_RAIL_TRACK_BASE, SPR_RAIL_SINGLE_X, SPR_RAIL_SINGLE_Y,
    00091       SPR_RAIL_SINGLE_NORTH, SPR_RAIL_SINGLE_SOUTH, SPR_RAIL_SINGLE_EAST, SPR_RAIL_SINGLE_WEST,
    00092       SPR_TRACKS_FOR_SLOPES_RAIL_BASE,
    00093       SPR_CROSSING_OFF_X_RAIL,
    00094       SPR_TUNNEL_ENTRY_REAR_RAIL
    00095     },
    00096
    00097     /* GUI sprites */
    00098     {
    00099       SPR_BUILD_NS_ELRAIL,
    00100       SPR_BUILD_X_ELRAIL,
    00101       SPR_BUILD_EW_ELRAIL,
    00102       SPR_BUILD_Y_ELRAIL,
    00103       SPR_IMG_AUTOELRAIL,
    00104       SPR_IMG_DEPOT_ELRAIL,
    00105       SPR_BUILD_TUNNEL_ELRAIL,
    00106       SPR_IMG_CONVERT_ELRAIL
    00107     },
    00108
    00109     {
    00110       SPR_CURSOR_NS_ELRAIL,
    00111       SPR_CURSOR_SWNE_ELRAIL,
    00112       SPR_CURSOR_EW_ELRAIL,
    00113       SPR_CURSOR_NWSE_ELRAIL,
    00114       SPR_CURSOR_AUTOELRAIL,
    00115       SPR_CURSOR_ELRAIL_DEPOT,
    00116       SPR_CURSOR_TUNNEL_ELRAIL,
    00117       SPR_CURSOR_CONVERT_ELRAIL
    00118     },
    00119
    00120     /* strings */
    00121     {
    00122       STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION,
    00123       STR_RAIL_MENU_ELRAIL_CONSTRUCTION,
    00124       STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION,
    00125       STR_REPLACE_ELRAIL_VEHICLES,
    00126       STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE,
    00127     },
    00128
    00129     /* Offset of snow tiles */
    00130     SPR_RAIL_SNOW_OFFSET,
    00131
    00132     /* Powered railtypes */
    00133     RAILTYPES_ELECTRIC,
    00134
    00135     /* Compatible railtypes */
    00136     RAILTYPES_ELECTRIC | RAILTYPES_RAIL,
    00137
    00138     /* main offset */
    00139     0,
    00140
    00141     /* bridge offset */
    00142     0,
    00143
    00144     /* custom ground offset */
    00145     0,
    00146
    00147     /* curve speed advantage (multiplier) */
    00148     0,
    00149
    00150     /* flags */
    00151     RTFB_CATENARY,
    00152
    00153     /* cost multiplier */
    00154     12,
    00155
    00156     /* rail type label */
    00157     'ELRL',
    00158   },
    00159
    00161   { // Main Sprites
    00162     { SPR_MONO_TRACK_Y, SPR_MONO_TRACK_N_S, SPR_MONO_TRACK_BASE, SPR_MONO_SINGLE_X, SPR_MONO_SINGLE_Y,
    00163       SPR_MONO_SINGLE_NORTH, SPR_MONO_SINGLE_SOUTH, SPR_MONO_SINGLE_EAST, SPR_MONO_SINGLE_WEST,
    00164       SPR_TRACKS_FOR_SLOPES_MONO_BASE,
    00165       SPR_CROSSING_OFF_X_MONO,
    00166       SPR_TUNNEL_ENTRY_REAR_MONO
    00167     },
    00168
    00169     /* GUI sprites */
    00170     { 0x4E7, 0x4E8, 0x4E9, 0x4EA,
    00171       SPR_IMG_AUTOMONO,
    00172       SPR_IMG_DEPOT_MONO,
    00173       SPR_IMG_TUNNEL_MONO,
    00174       SPR_IMG_CONVERT_MONO
    00175     },
    00176
    00177     {
    00178       SPR_CURSOR_NS_MONO,
    00179       SPR_CURSOR_SWNE_MONO,
    00180       SPR_CURSOR_EW_MONO,
    00181       SPR_CURSOR_NWSE_MONO,
    00182       SPR_CURSOR_AUTOMONO,
    00183       SPR_CURSOR_MONO_DEPOT,
    00184       SPR_CURSOR_TUNNEL_MONO,
    00185       SPR_CURSOR_CONVERT_MONO
    00186     },
    00187
    00188     /* strings */
    00189     {
    00190       STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION,
    00191       STR_RAIL_MENU_MONORAIL_CONSTRUCTION,
    00192       STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION,
    00193       STR_REPLACE_MONORAIL_VEHICLES,
    00194       STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE,
    00195     },
    00196
    00197     /* Offset of snow tiles */
    00198     SPR_MONO_SNOW_OFFSET,
    00199
    00200     /* Powered railtypes */
    00201     RAILTYPES_MONO,
    00202
    00203     /* Compatible Railtypes */
    00204     RAILTYPES_MONO,
    00205
    00206     /* main offset */
    00207     82,
    00208
    00209     /* bridge offset */
    00210     16,
    00211
    00212     /* custom ground offset */
    00213     1,
    00214
    00215     /* curve speed advantage (multiplier) */
    00216     1,
    00217
    00218     /* flags */
    00219     RTFB_NONE,
    00220
    00221     /* cost multiplier */
    00222     16,
    00223
    00224     /* rail type label */
    00225     'MONO',
    00226   },
    00227
    00229   { // Main sprites
    00230     { SPR_MGLV_TRACK_Y, SPR_MGLV_TRACK_N_S, SPR_MGLV_TRACK_BASE, SPR_MGLV_SINGLE_X, SPR_MGLV_SINGLE_Y,
    00231       SPR_MGLV_SINGLE_NORTH, SPR_MGLV_SINGLE_SOUTH, SPR_MGLV_SINGLE_EAST, SPR_MGLV_SINGLE_WEST,
    00232       SPR_TRACKS_FOR_SLOPES_MAGLEV_BASE,
    00233       SPR_CROSSING_OFF_X_MAGLEV,
    00234       SPR_TUNNEL_ENTRY_REAR_MAGLEV
    00235     },
    00236
    00237     /* GUI sprites */
    00238     { 0x4EB, 0x4EC, 0x4EE, 0x4ED,
    00239       SPR_IMG_AUTOMAGLEV,
    00240       SPR_IMG_DEPOT_MAGLEV,
    00241       SPR_IMG_TUNNEL_MAGLEV,
    00242       SPR_IMG_CONVERT_MAGLEV
    00243     },
    00244
    00245     {
    00246       SPR_CURSOR_NS_MAGLEV,
    00247       SPR_CURSOR_SWNE_MAGLEV,
    00248       SPR_CURSOR_EW_MAGLEV,
    00249       SPR_CURSOR_NWSE_MAGLEV,
    00250       SPR_CURSOR_AUTOMAGLEV,
    00251       SPR_CURSOR_MAGLEV_DEPOT,
    00252       SPR_CURSOR_TUNNEL_MAGLEV,
    00253       SPR_CURSOR_CONVERT_MAGLEV
    00254     },
    00255
    00256     /* strings */
    00257     {
    00258       STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION,
    00259       STR_RAIL_MENU_MAGLEV_CONSTRUCTION,
    00260       STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION,
    00261       STR_REPLACE_MAGLEV_VEHICLES,
    00262       STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE,
    00263     },
    00264
    00265     /* Offset of snow tiles */
    00266     SPR_MGLV_SNOW_OFFSET,
    00267
    00268     /* Powered railtypes */
    00269     RAILTYPES_MAGLEV,
    00270
    00271     /* Compatible Railtypes */
    00272     RAILTYPES_MAGLEV,
    00273
    00274     /* main offset */
    00275     164,
    00276
    00277     /* bridge offset */
    00278     24,
    00279
    00280     /* custom ground offset */
    00281     2,
    00282
    00283     /* curve speed advantage (multiplier) */
    00284     2,
    00285
    00286     /* flags */
    00287     RTFB_NONE,
    00288
    00289     /* cost multiplier */
    00290     24,
    00291
    00292     /* rail type label */
    00293     'MGLV',
    00294   },
    00295 };
    00296
    00297 #endif /* RAILTYPES_H */