# railtypes.h

Go to the documentation of this file.

    00001 /* $Id: railtypes.h 19056 2010-02-07 22:22:54Z 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     /* acceleration type */
    00085     0,
    00086
    00087     /* max speed */
    00088     0,
    00089
    00090     /* rail type label */
    00091     'RAIL',
    00092
    00093     { NULL },
    00094   },
    00095
    00097   { // Main Sprites
    00098     { SPR_RAIL_TRACK_Y, SPR_RAIL_TRACK_N_S, SPR_RAIL_TRACK_BASE, SPR_RAIL_SINGLE_X, SPR_RAIL_SINGLE_Y,
    00099       SPR_RAIL_SINGLE_NORTH, SPR_RAIL_SINGLE_SOUTH, SPR_RAIL_SINGLE_EAST, SPR_RAIL_SINGLE_WEST,
    00100       SPR_TRACKS_FOR_SLOPES_RAIL_BASE,
    00101       SPR_CROSSING_OFF_X_RAIL,
    00102       SPR_TUNNEL_ENTRY_REAR_RAIL
    00103     },
    00104
    00105     /* GUI sprites */
    00106     {
    00107       SPR_BUILD_NS_ELRAIL,
    00108       SPR_BUILD_X_ELRAIL,
    00109       SPR_BUILD_EW_ELRAIL,
    00110       SPR_BUILD_Y_ELRAIL,
    00111       SPR_IMG_AUTOELRAIL,
    00112       SPR_IMG_DEPOT_ELRAIL,
    00113       SPR_BUILD_TUNNEL_ELRAIL,
    00114       SPR_IMG_CONVERT_ELRAIL
    00115     },
    00116
    00117     {
    00118       SPR_CURSOR_NS_ELRAIL,
    00119       SPR_CURSOR_SWNE_ELRAIL,
    00120       SPR_CURSOR_EW_ELRAIL,
    00121       SPR_CURSOR_NWSE_ELRAIL,
    00122       SPR_CURSOR_AUTOELRAIL,
    00123       SPR_CURSOR_ELRAIL_DEPOT,
    00124       SPR_CURSOR_TUNNEL_ELRAIL,
    00125       SPR_CURSOR_CONVERT_ELRAIL
    00126     },
    00127
    00128     /* strings */
    00129     {
    00130       STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION,
    00131       STR_RAIL_MENU_ELRAIL_CONSTRUCTION,
    00132       STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION,
    00133       STR_REPLACE_ELRAIL_VEHICLES,
    00134       STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE,
    00135     },
    00136
    00137     /* Offset of snow tiles */
    00138     SPR_RAIL_SNOW_OFFSET,
    00139
    00140     /* Powered railtypes */
    00141     RAILTYPES_ELECTRIC,
    00142
    00143     /* Compatible railtypes */
    00144     RAILTYPES_ELECTRIC | RAILTYPES_RAIL,
    00145
    00146     /* main offset */
    00147     0,
    00148
    00149     /* bridge offset */
    00150     0,
    00151
    00152     /* custom ground offset */
    00153     0,
    00154
    00155     /* curve speed advantage (multiplier) */
    00156     0,
    00157
    00158     /* flags */
    00159     RTFB_CATENARY,
    00160
    00161     /* cost multiplier */
    00162     12,
    00163
    00164     /* acceleration type */
    00165     0,
    00166
    00167     /* max speed */
    00168     0,
    00169
    00170     /* rail type label */
    00171     'ELRL',
    00172
    00173     { NULL },
    00174   },
    00175
    00177   { // Main Sprites
    00178     { SPR_MONO_TRACK_Y, SPR_MONO_TRACK_N_S, SPR_MONO_TRACK_BASE, SPR_MONO_SINGLE_X, SPR_MONO_SINGLE_Y,
    00179       SPR_MONO_SINGLE_NORTH, SPR_MONO_SINGLE_SOUTH, SPR_MONO_SINGLE_EAST, SPR_MONO_SINGLE_WEST,
    00180       SPR_TRACKS_FOR_SLOPES_MONO_BASE,
    00181       SPR_CROSSING_OFF_X_MONO,
    00182       SPR_TUNNEL_ENTRY_REAR_MONO
    00183     },
    00184
    00185     /* GUI sprites */
    00186     { 0x4E7, 0x4E8, 0x4E9, 0x4EA,
    00187       SPR_IMG_AUTOMONO,
    00188       SPR_IMG_DEPOT_MONO,
    00189       SPR_IMG_TUNNEL_MONO,
    00190       SPR_IMG_CONVERT_MONO
    00191     },
    00192
    00193     {
    00194       SPR_CURSOR_NS_MONO,
    00195       SPR_CURSOR_SWNE_MONO,
    00196       SPR_CURSOR_EW_MONO,
    00197       SPR_CURSOR_NWSE_MONO,
    00198       SPR_CURSOR_AUTOMONO,
    00199       SPR_CURSOR_MONO_DEPOT,
    00200       SPR_CURSOR_TUNNEL_MONO,
    00201       SPR_CURSOR_CONVERT_MONO
    00202     },
    00203
    00204     /* strings */
    00205     {
    00206       STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION,
    00207       STR_RAIL_MENU_MONORAIL_CONSTRUCTION,
    00208       STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION,
    00209       STR_REPLACE_MONORAIL_VEHICLES,
    00210       STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE,
    00211     },
    00212
    00213     /* Offset of snow tiles */
    00214     SPR_MONO_SNOW_OFFSET,
    00215
    00216     /* Powered railtypes */
    00217     RAILTYPES_MONO,
    00218
    00219     /* Compatible Railtypes */
    00220     RAILTYPES_MONO,
    00221
    00222     /* main offset */
    00223     82,
    00224
    00225     /* bridge offset */
    00226     16,
    00227
    00228     /* custom ground offset */
    00229     1,
    00230
    00231     /* curve speed advantage (multiplier) */
    00232     1,
    00233
    00234     /* flags */
    00235     RTFB_NONE,
    00236
    00237     /* cost multiplier */
    00238     16,
    00239
    00240     /* acceleration type */
    00241     1,
    00242
    00243     /* max speed */
    00244     0,
    00245
    00246     /* rail type label */
    00247     'MONO',
    00248
    00249     { NULL },
    00250   },
    00251
    00253   { // Main sprites
    00254     { SPR_MGLV_TRACK_Y, SPR_MGLV_TRACK_N_S, SPR_MGLV_TRACK_BASE, SPR_MGLV_SINGLE_X, SPR_MGLV_SINGLE_Y,
    00255       SPR_MGLV_SINGLE_NORTH, SPR_MGLV_SINGLE_SOUTH, SPR_MGLV_SINGLE_EAST, SPR_MGLV_SINGLE_WEST,
    00256       SPR_TRACKS_FOR_SLOPES_MAGLEV_BASE,
    00257       SPR_CROSSING_OFF_X_MAGLEV,
    00258       SPR_TUNNEL_ENTRY_REAR_MAGLEV
    00259     },
    00260
    00261     /* GUI sprites */
    00262     { 0x4EB, 0x4EC, 0x4EE, 0x4ED,
    00263       SPR_IMG_AUTOMAGLEV,
    00264       SPR_IMG_DEPOT_MAGLEV,
    00265       SPR_IMG_TUNNEL_MAGLEV,
    00266       SPR_IMG_CONVERT_MAGLEV
    00267     },
    00268
    00269     {
    00270       SPR_CURSOR_NS_MAGLEV,
    00271       SPR_CURSOR_SWNE_MAGLEV,
    00272       SPR_CURSOR_EW_MAGLEV,
    00273       SPR_CURSOR_NWSE_MAGLEV,
    00274       SPR_CURSOR_AUTOMAGLEV,
    00275       SPR_CURSOR_MAGLEV_DEPOT,
    00276       SPR_CURSOR_TUNNEL_MAGLEV,
    00277       SPR_CURSOR_CONVERT_MAGLEV
    00278     },
    00279
    00280     /* strings */
    00281     {
    00282       STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION,
    00283       STR_RAIL_MENU_MAGLEV_CONSTRUCTION,
    00284       STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION,
    00285       STR_REPLACE_MAGLEV_VEHICLES,
    00286       STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE,
    00287     },
    00288
    00289     /* Offset of snow tiles */
    00290     SPR_MGLV_SNOW_OFFSET,
    00291
    00292     /* Powered railtypes */
    00293     RAILTYPES_MAGLEV,
    00294
    00295     /* Compatible Railtypes */
    00296     RAILTYPES_MAGLEV,
    00297
    00298     /* main offset */
    00299     164,
    00300
    00301     /* bridge offset */
    00302     24,
    00303
    00304     /* custom ground offset */
    00305     2,
    00306
    00307     /* curve speed advantage (multiplier) */
    00308     2,
    00309
    00310     /* flags */
    00311     RTFB_NONE,
    00312
    00313     /* cost multiplier */
    00314     24,
    00315
    00316     /* acceleration type */
    00317     2,
    00318
    00319     /* max speed */
    00320     0,
    00321
    00322     /* rail type label */
    00323     'MGLV',
    00324
    00325     { NULL },
    00326   },
    00327 };
    00328
    00329 #endif /* RAILTYPES_H */