sprites.h

Go to the documentation of this file.
00001 /* $Id: sprites.h 14421 2008-09-30 20:39:50Z rubidium $ */
00002 
00032 #ifndef SPRITES_H
00033 #define SPRITES_H
00034 
00035 #include "../gfx_type.h"
00036 
00037 enum Sprites {
00038   SPR_SELECT_TILE  = 752,
00039   SPR_DOT          = 774, // corner marker for lower/raise land
00040   SPR_DOT_SMALL    = 4078,
00041   SPR_WHITE_POINT  = 4079,
00042 
00043   /* ASCII */
00044   SPR_ASCII_SPACE       = 2,
00045   SPR_ASCII_SPACE_SMALL = 226,
00046   SPR_ASCII_SPACE_BIG   = 450,
00047 
00048   SPR_LARGE_SMALL_WINDOW = 682,
00049 
00050   /* Extra graphic spritenumbers */
00051   SPR_OPENTTD_BASE     = 4896,
00052   OPENTTD_SPRITE_COUNT = 147,
00053 
00054   /* Halftile-selection sprites */
00055   SPR_HALFTILE_SELECTION_FLAT = SPR_OPENTTD_BASE,
00056   SPR_HALFTILE_SELECTION_DOWN = SPR_OPENTTD_BASE + 4,
00057   SPR_HALFTILE_SELECTION_UP   = SPR_OPENTTD_BASE + 8,
00058 
00059   SPR_SQUARE             = SPR_OPENTTD_BASE + 38, // colored square (used for newgrf compatibility)
00060   SPR_BLOT               = SPR_OPENTTD_BASE + 39, // colored circle (mainly used as vehicle profit marker and for server compatibility)
00061   SPR_LOCK               = SPR_OPENTTD_BASE + 40, // lock icon (for password protected servers)
00062   SPR_BOX_EMPTY          = SPR_OPENTTD_BASE + 41,
00063   SPR_BOX_CHECKED        = SPR_OPENTTD_BASE + 42,
00064   SPR_WARNING_SIGN       = SPR_OPENTTD_BASE + 43, // warning sign (shown if there are any newgrf errors)
00065   SPR_WINDOW_RESIZE      = SPR_OPENTTD_BASE + 44, // resize icon
00066   /* Arrow icons pointing in all 4 directions */
00067   SPR_ARROW_DOWN         = SPR_OPENTTD_BASE + 45,
00068   SPR_ARROW_UP           = SPR_OPENTTD_BASE + 46,
00069   SPR_ARROW_LEFT         = SPR_OPENTTD_BASE + 47,
00070   SPR_ARROW_RIGHT        = SPR_OPENTTD_BASE + 48,
00071   SPR_HOUSE_ICON         = SPR_OPENTTD_BASE + 49,
00072   SPR_SHARED_ORDERS_ICON = SPR_OPENTTD_BASE + 50,
00073   SPR_PIN_UP             = SPR_OPENTTD_BASE + 51,   // pin icon
00074   SPR_PIN_DOWN           = SPR_OPENTTD_BASE + 52,
00075 
00076   /* on screen keyboard icons */
00077   SPR_OSK_LEFT           = SPR_OPENTTD_BASE + 138,
00078   SPR_OSK_RIGHT          = SPR_OPENTTD_BASE + 139,
00079   SPR_OSK_CAPS           = SPR_OPENTTD_BASE + 140,
00080   SPR_OSK_SHIFT          = SPR_OPENTTD_BASE + 141,
00081   SPR_OSK_BACKSPACE      = SPR_OPENTTD_BASE + 142,
00082   SPR_OSK_SPECIAL        = SPR_OPENTTD_BASE + 143,
00083 
00084   /* Clone vehicles stuff */
00085   SPR_CLONE_TRAIN    = SPR_OPENTTD_BASE + 106,
00086   SPR_CLONE_ROADVEH  = SPR_OPENTTD_BASE + 107,
00087   SPR_CLONE_SHIP     = SPR_OPENTTD_BASE + 108,
00088   SPR_CLONE_AIRCRAFT = SPR_OPENTTD_BASE + 109,
00089 
00090   SPR_SELL_TRAIN        = SPR_OPENTTD_BASE +  93,
00091   SPR_SELL_ROADVEH      = SPR_OPENTTD_BASE +  94,
00092   SPR_SELL_SHIP         = SPR_OPENTTD_BASE +  95,
00093   SPR_SELL_AIRCRAFT     = SPR_OPENTTD_BASE +  96,
00094   SPR_SELL_ALL_TRAIN    = SPR_OPENTTD_BASE +  97,
00095   SPR_SELL_ALL_ROADVEH  = SPR_OPENTTD_BASE +  98,
00096   SPR_SELL_ALL_SHIP     = SPR_OPENTTD_BASE +  99,
00097   SPR_SELL_ALL_AIRCRAFT = SPR_OPENTTD_BASE + 100,
00098   SPR_REPLACE_TRAIN     = SPR_OPENTTD_BASE + 101,
00099   SPR_REPLACE_ROADVEH   = SPR_OPENTTD_BASE + 102,
00100   SPR_REPLACE_SHIP      = SPR_OPENTTD_BASE + 103,
00101   SPR_REPLACE_AIRCRAFT  = SPR_OPENTTD_BASE + 104,
00102   SPR_SELL_CHAIN_TRAIN  = SPR_OPENTTD_BASE + 105,
00103 
00104   SPR_GROUP_CREATE_TRAIN         = SPR_OPENTTD_BASE + 114,
00105   SPR_GROUP_CREATE_ROADVEH       = SPR_OPENTTD_BASE + 115,
00106   SPR_GROUP_CREATE_SHIP          = SPR_OPENTTD_BASE + 116,
00107   SPR_GROUP_CREATE_AIRCRAFT      = SPR_OPENTTD_BASE + 117,
00108   SPR_GROUP_DELETE_TRAIN         = SPR_OPENTTD_BASE + 118,
00109   SPR_GROUP_DELETE_ROADVEH       = SPR_OPENTTD_BASE + 119,
00110   SPR_GROUP_DELETE_SHIP          = SPR_OPENTTD_BASE + 120,
00111   SPR_GROUP_DELETE_AIRCRAFT      = SPR_OPENTTD_BASE + 121,
00112   SPR_GROUP_RENAME_TRAIN         = SPR_OPENTTD_BASE + 122,
00113   SPR_GROUP_RENAME_ROADVEH       = SPR_OPENTTD_BASE + 123,
00114   SPR_GROUP_RENAME_SHIP          = SPR_OPENTTD_BASE + 124,
00115   SPR_GROUP_RENAME_AIRCRAFT      = SPR_OPENTTD_BASE + 125,
00116   SPR_GROUP_REPLACE_ON_TRAIN     = SPR_OPENTTD_BASE + 126,
00117   SPR_GROUP_REPLACE_ON_ROADVEH   = SPR_OPENTTD_BASE + 127,
00118   SPR_GROUP_REPLACE_ON_SHIP      = SPR_OPENTTD_BASE + 128,
00119   SPR_GROUP_REPLACE_ON_AIRCRAFT  = SPR_OPENTTD_BASE + 129,
00120   SPR_GROUP_REPLACE_OFF_TRAIN    = SPR_OPENTTD_BASE + 130,
00121   SPR_GROUP_REPLACE_OFF_ROADVEH  = SPR_OPENTTD_BASE + 131,
00122   SPR_GROUP_REPLACE_OFF_SHIP     = SPR_OPENTTD_BASE + 132,
00123   SPR_GROUP_REPLACE_OFF_AIRCRAFT = SPR_OPENTTD_BASE + 133,
00124 
00125   SPR_SWITCH_TOOLBAR = SPR_OPENTTD_BASE + 144,
00126 
00127   SPR_SIGNALS_BASE  = SPR_OPENTTD_BASE + OPENTTD_SPRITE_COUNT,
00128   PRESIGNAL_SPRITE_COUNT                   =  48,
00129   PRESIGNAL_AND_SEMAPHORE_SPRITE_COUNT     = 112,
00130   PRESIGNAL_SEMAPHORE_AND_PBS_SPRITE_COUNT = 240,
00131 
00132   SPR_CANALS_BASE   = SPR_SIGNALS_BASE + PRESIGNAL_SEMAPHORE_AND_PBS_SPRITE_COUNT,
00133   CANALS_SPRITE_COUNT = 65,
00134 
00135   /* Sprites for the Aqueduct. */
00136   SPR_AQUEDUCT_BASE     = SPR_CANALS_BASE + CANALS_SPRITE_COUNT,
00137   SPR_AQUEDUCT_RAMP_SW  = SPR_AQUEDUCT_BASE + 0,
00138   SPR_AQUEDUCT_RAMP_SE  = SPR_AQUEDUCT_BASE + 1,
00139   SPR_AQUEDUCT_RAMP_NE  = SPR_AQUEDUCT_BASE + 2,
00140   SPR_AQUEDUCT_RAMP_NW  = SPR_AQUEDUCT_BASE + 3,
00141   SPR_AQUEDUCT_MIDDLE_X = SPR_AQUEDUCT_BASE + 4,
00142   SPR_AQUEDUCT_MIDDLE_Y = SPR_AQUEDUCT_BASE + 5,
00143   SPR_AQUEDUCT_PILLAR_X = SPR_AQUEDUCT_BASE + 6,
00144   SPR_AQUEDUCT_PILLAR_Y = SPR_AQUEDUCT_BASE + 7,
00145   AQUEDUCT_SPRITE_COUNT = 8,
00146 
00147   /* Sprites for 'highlighting' tracks on sloped land. */
00148   SPR_TRACKS_FOR_SLOPES_BASE        = SPR_AQUEDUCT_BASE + AQUEDUCT_SPRITE_COUNT,
00149   SPR_TRACKS_FOR_SLOPES_RAIL_BASE   = SPR_TRACKS_FOR_SLOPES_BASE + 0,
00150   SPR_TRACKS_FOR_SLOPES_MONO_BASE   = SPR_TRACKS_FOR_SLOPES_BASE + 4,
00151   SPR_TRACKS_FOR_SLOPES_MAGLEV_BASE = SPR_TRACKS_FOR_SLOPES_BASE + 8,
00152   TRACKS_FOR_SLOPES_SPRITE_COUNT = 12,
00153 
00154   SPR_SLOPES_BASE              = SPR_TRACKS_FOR_SLOPES_BASE + TRACKS_FOR_SLOPES_SPRITE_COUNT,
00155   SPR_SLOPES_INCLINED_OFFSET   = 15,
00156   SPR_SLOPES_VIRTUAL_BASE      = SPR_SLOPES_BASE - SPR_SLOPES_INCLINED_OFFSET, // The original foundations (see SPR_FOUNDATION_BASE below) are mapped before the additional foundations.
00157   SPR_TRKFOUND_BLOCK_SIZE      = 22, // The normal track foundation sprites are organized in blocks of 22.
00158   NORMAL_FOUNDATION_SPRITE_COUNT = 74,
00159   /* Halftile foundations */
00160   SPR_HALFTILE_FOUNDATION_BASE = SPR_SLOPES_BASE + NORMAL_FOUNDATION_SPRITE_COUNT,
00161   SPR_HALFTILE_BLOCK_SIZE      = 4,  // The half tile foundation sprites are organized in blocks of 4.
00162   NORMAL_AND_HALFTILE_FOUNDATION_SPRITE_COUNT = 90,
00163 
00164   SPR_AUTORAIL_BASE = SPR_HALFTILE_FOUNDATION_BASE + NORMAL_AND_HALFTILE_FOUNDATION_SPRITE_COUNT,
00165   AUTORAIL_SPRITE_COUNT = 55,
00166 
00167   SPR_ELRAIL_BASE   = SPR_AUTORAIL_BASE + AUTORAIL_SPRITE_COUNT,
00168   ELRAIL_SPRITE_COUNT = 48,
00169 
00170   SPR_2CCMAP_BASE   = SPR_ELRAIL_BASE + ELRAIL_SPRITE_COUNT,
00171   TWOCCMAP_SPRITE_COUNT = 256,
00172 
00173   /* shore tiles - action 05-0D */
00174   SPR_SHORE_BASE                  = SPR_2CCMAP_BASE + TWOCCMAP_SPRITE_COUNT,
00175   SPR_SHORE_SPRITE_COUNT          = 18,
00176   SPR_ORIGINALSHORE_START         = 4062,
00177   SPR_ORIGINALSHORE_END           = 4069,
00178 
00179   SPR_AIRPORTX_BASE     = SPR_SHORE_BASE + SPR_SHORE_SPRITE_COUNT, // The sprites used for other airport angles
00180   SPR_NEWAIRPORT_TARMAC = SPR_AIRPORTX_BASE,
00181   SPR_NSRUNWAY1         = SPR_AIRPORTX_BASE + 1,
00182   SPR_NSRUNWAY2         = SPR_AIRPORTX_BASE + 2,
00183   SPR_NSRUNWAY3         = SPR_AIRPORTX_BASE + 3,
00184   SPR_NSRUNWAY4         = SPR_AIRPORTX_BASE + 4,
00185   SPR_NSRUNWAY_END      = SPR_AIRPORTX_BASE + 5,
00186   SPR_NEWHANGAR_S       = SPR_AIRPORTX_BASE + 6,
00187   SPR_NEWHANGAR_S_WALL  = SPR_AIRPORTX_BASE + 7,
00188   SPR_NEWHANGAR_W       = SPR_AIRPORTX_BASE + 8,
00189   SPR_NEWHANGAR_W_WALL  = SPR_AIRPORTX_BASE + 9,
00190   SPR_NEWHANGAR_N       = SPR_AIRPORTX_BASE + 10,
00191   SPR_NEWHANGAR_E       = SPR_AIRPORTX_BASE + 11,
00192   SPR_NEWHELIPAD        = SPR_AIRPORTX_BASE + 12,
00193   SPR_GRASS_RIGHT       = SPR_AIRPORTX_BASE + 13,
00194   SPR_GRASS_LEFT        = SPR_AIRPORTX_BASE + 14,
00195   AIRPORTX_SPRITE_COUNT = 15,
00196 
00197   SPR_ROADSTOP_BASE     = SPR_AIRPORTX_BASE + AIRPORTX_SPRITE_COUNT, // The sprites used for drive-through road stops
00198   SPR_BUS_STOP_DT_Y_W   = SPR_ROADSTOP_BASE,
00199   SPR_BUS_STOP_DT_Y_E   = SPR_ROADSTOP_BASE + 1,
00200   SPR_BUS_STOP_DT_X_W   = SPR_ROADSTOP_BASE + 2,
00201   SPR_BUS_STOP_DT_X_E   = SPR_ROADSTOP_BASE + 3,
00202   SPR_TRUCK_STOP_DT_Y_W = SPR_ROADSTOP_BASE + 4,
00203   SPR_TRUCK_STOP_DT_Y_E = SPR_ROADSTOP_BASE + 5,
00204   SPR_TRUCK_STOP_DT_X_W = SPR_ROADSTOP_BASE + 6,
00205   SPR_TRUCK_STOP_DT_X_E = SPR_ROADSTOP_BASE + 7,
00206   ROADSTOP_SPRITE_COUNT = 8,
00207 
00208   /* Tramway sprites */
00209   SPR_TRAMWAY_BASE                 = SPR_ROADSTOP_BASE + ROADSTOP_SPRITE_COUNT,
00210   SPR_TRAMWAY_OVERLAY              = SPR_TRAMWAY_BASE + 4,
00211   SPR_TRAMWAY_TRAM                 = SPR_TRAMWAY_BASE + 27,
00212   SPR_TRAMWAY_SLOPED_OFFSET        = 11,
00213   SPR_TRAMWAY_BUS_STOP_DT_Y_W      = SPR_TRAMWAY_BASE + 25,
00214   SPR_TRAMWAY_BUS_STOP_DT_Y_E      = SPR_TRAMWAY_BASE + 23,
00215   SPR_TRAMWAY_BUS_STOP_DT_X_W      = SPR_TRAMWAY_BASE + 24,
00216   SPR_TRAMWAY_BUS_STOP_DT_X_E      = SPR_TRAMWAY_BASE + 26,
00217   SPR_TRAMWAY_PAVED_STRAIGHT_Y     = SPR_TRAMWAY_BASE + 46,
00218   SPR_TRAMWAY_PAVED_STRAIGHT_X     = SPR_TRAMWAY_BASE + 47,
00219   SPR_TRAMWAY_BACK_WIRES_STRAIGHT  = SPR_TRAMWAY_BASE + 55,
00220   SPR_TRAMWAY_FRONT_WIRES_STRAIGHT = SPR_TRAMWAY_BASE + 56,
00221   SPR_TRAMWAY_BACK_WIRES_SLOPED    = SPR_TRAMWAY_BASE + 72,
00222   SPR_TRAMWAY_FRONT_WIRES_SLOPED   = SPR_TRAMWAY_BASE + 68,
00223   SPR_TRAMWAY_TUNNEL_WIRES         = SPR_TRAMWAY_BASE + 80,
00224   SPR_TRAMWAY_BRIDGE               = SPR_TRAMWAY_BASE + 107,
00225   TRAMWAY_SPRITE_COUNT = 113,
00226 
00227   /* One way road sprites */
00228   SPR_ONEWAY_BASE = SPR_TRAMWAY_BASE + TRAMWAY_SPRITE_COUNT,
00229   ONEWAY_SPRITE_COUNT = 6,
00230 
00231   /* Flags sprites (in same order as enum NetworkLanguage) */
00232   SPR_FLAGS_BASE = SPR_ONEWAY_BASE + ONEWAY_SPRITE_COUNT,
00233   FLAGS_SPRITE_COUNT = 36,
00234 
00235   /* Not really a sprite, but an empty bounding box. Used to construct bounding boxes, that help sorting the sprites, but do not have a sprite associated. */
00236   SPR_EMPTY_BOUNDING_BOX = SPR_FLAGS_BASE + FLAGS_SPRITE_COUNT,
00237   EMPTY_BOUNDING_BOX_SPRITE_COUNT = 1,
00238 
00239   /* From where can we start putting NewGRFs? */
00240   SPR_NEWGRFS_BASE = SPR_EMPTY_BOUNDING_BOX + EMPTY_BOUNDING_BOX_SPRITE_COUNT,
00241 
00242   /* Manager face sprites */
00243   SPR_GRADIENT = 874, // background gradient behind manager face
00244 
00245   /* Icon showing company colour. */
00246   SPR_PLAYER_ICON = 747,
00247 
00248   /* is itself no foundation sprite, because tileh 0 has no foundation */
00249   SPR_FOUNDATION_BASE = 989,
00250 
00251   /* Shadow cell */
00252   SPR_SHADOW_CELL = 1004,
00253 
00254   /* Unmovables spritenumbers */
00255   SPR_UNMOVABLE_TRANSMITTER   = 2601,
00256   SPR_UNMOVABLE_LIGHTHOUSE    = 2602,
00257   SPR_TINYHQ_NORTH            = 2603,
00258   SPR_TINYHQ_EAST             = 2604,
00259   SPR_TINYHQ_WEST             = 2605,
00260   SPR_TINYHQ_SOUTH            = 2606,
00261   SPR_SMALLHQ_NORTH           = 2607,
00262   SPR_SMALLHQ_EAST            = 2608,
00263   SPR_SMALLHQ_WEST            = 2609,
00264   SPR_SMALLHQ_SOUTH           = 2610,
00265   SPR_MEDIUMHQ_NORTH          = 2611,
00266   SPR_MEDIUMHQ_NORTH_WALL     = 2612,
00267   SPR_MEDIUMHQ_EAST           = 2613,
00268   SPR_MEDIUMHQ_EAST_WALL      = 2614,
00269   SPR_MEDIUMHQ_WEST           = 2615,
00270   SPR_MEDIUMHQ_WEST_WALL      = 2616, //very tiny piece of wall
00271   SPR_MEDIUMHQ_SOUTH          = 2617,
00272   SPR_LARGEHQ_NORTH_GROUND    = 2618,
00273   SPR_LARGEHQ_NORTH_BUILD     = 2619,
00274   SPR_LARGEHQ_EAST_GROUND     = 2620,
00275   SPR_LARGEHQ_EAST_BUILD      = 2621,
00276   SPR_LARGEHQ_WEST_GROUND     = 2622,
00277   SPR_LARGEHQ_WEST_BUILD      = 2623,
00278   SPR_LARGEHQ_SOUTH           = 2624,
00279   SPR_HUGEHQ_NORTH_GROUND     = 2625,
00280   SPR_HUGEHQ_NORTH_BUILD      = 2626,
00281   SPR_HUGEHQ_EAST_GROUND      = 2627,
00282   SPR_HUGEHQ_EAST_BUILD       = 2628,
00283   SPR_HUGEHQ_WEST_GROUND      = 2629,
00284   SPR_HUGEHQ_WEST_BUILD       = 2630,
00285   SPR_HUGEHQ_SOUTH            = 2631,
00286   SPR_CONCRETE_GROUND         = 1420,
00287   SPR_STATUE_COMPANY          = 2632,
00288   SPR_BOUGHT_LAND             = 4790,
00289 
00290   /* sprites for rail and rail stations*/
00291   SPR_RAIL_SNOW_OFFSET        = 26,
00292   SPR_MONO_SNOW_OFFSET        = 26,
00293   SPR_MGLV_SNOW_OFFSET        = 26,
00294 
00295   SPR_ORIGINAL_SIGNALS_BASE   = 1275,
00296 
00297   SPR_RAIL_SINGLE_Y           = 1005,
00298   SPR_RAIL_SINGLE_X           = 1006,
00299   SPR_RAIL_SINGLE_NORTH       = 1007,
00300   SPR_RAIL_SINGLE_SOUTH       = 1008,
00301   SPR_RAIL_SINGLE_EAST        = 1009,
00302   SPR_RAIL_SINGLE_WEST        = 1010,
00303   SPR_RAIL_TRACK_Y            = 1011,
00304   SPR_RAIL_TRACK_X            = 1012,
00305   SPR_RAIL_TRACK_BASE         = 1018,
00306   SPR_RAIL_TRACK_N_S          = 1035,
00307   SPR_RAIL_TRACK_Y_SNOW       = 1037,
00308   SPR_RAIL_TRACK_X_SNOW       = 1038,
00309   SPR_RAIL_DEPOT_SE_1         = 1063,
00310   SPR_RAIL_DEPOT_SE_2         = 1064,
00311   SPR_RAIL_DEPOT_SW_1         = 1065,
00312   SPR_RAIL_DEPOT_SW_2         = 1066,
00313   SPR_RAIL_DEPOT_NE           = 1067,
00314   SPR_RAIL_DEPOT_NW           = 1068,
00315   SPR_RAIL_PLATFORM_Y_FRONT         = 1069,
00316   SPR_RAIL_PLATFORM_X_REAR          = 1070,
00317   SPR_RAIL_PLATFORM_Y_REAR          = 1071,
00318   SPR_RAIL_PLATFORM_X_FRONT         = 1072,
00319   SPR_RAIL_PLATFORM_BUILDING_X      = 1073,
00320   SPR_RAIL_PLATFORM_BUILDING_Y      = 1074,
00321   SPR_RAIL_PLATFORM_PILLARS_Y_FRONT = 1075,
00322   SPR_RAIL_PLATFORM_PILLARS_X_REAR  = 1076,
00323   SPR_RAIL_PLATFORM_PILLARS_Y_REAR  = 1077,
00324   SPR_RAIL_PLATFORM_PILLARS_X_FRONT = 1078,
00325   SPR_RAIL_ROOF_STRUCTURE_X_TILE_A  = 1079, //First half of the roof structure
00326   SPR_RAIL_ROOF_STRUCTURE_Y_TILE_A  = 1080,
00327   SPR_RAIL_ROOF_STRUCTURE_X_TILE_B  = 1081, //Second half of the roof structure
00328   SPR_RAIL_ROOF_STRUCTURE_Y_TILE_B  = 1082,
00329   SPR_RAIL_ROOF_GLASS_X_TILE_A      = 1083, //First half of the roof glass
00330   SPR_RAIL_ROOF_GLASS_Y_TILE_A      = 1084,
00331   SPR_RAIL_ROOF_GLASS_X_TILE_B      = 1085, //second half of the roof glass
00332   SPR_RAIL_ROOF_GLASS_Y_TILE_B      = 1086,
00333   SPR_MONO_SINGLE_Y                 = 1087,
00334   SPR_MONO_SINGLE_X                 = 1088,
00335   SPR_MONO_SINGLE_NORTH             = 1089,
00336   SPR_MONO_SINGLE_SOUTH             = 1090,
00337   SPR_MONO_SINGLE_EAST              = 1091,
00338   SPR_MONO_SINGLE_WEST              = 1092,
00339   SPR_MONO_TRACK_Y                  = 1093,
00340   SPR_MONO_TRACK_BASE               = 1100,
00341   SPR_MONO_TRACK_N_S                = 1117,
00342   SPR_MGLV_SINGLE_Y                 = 1169,
00343   SPR_MGLV_SINGLE_X                 = 1170,
00344   SPR_MGLV_SINGLE_NORTH             = 1171,
00345   SPR_MGLV_SINGLE_SOUTH             = 1172,
00346   SPR_MGLV_SINGLE_EAST              = 1173,
00347   SPR_MGLV_SINGLE_WEST              = 1174,
00348   SPR_MGLV_TRACK_Y                  = 1175,
00349   SPR_MGLV_TRACK_BASE               = 1182,
00350   SPR_MGLV_TRACK_N_S                = 1199,
00351   SPR_WAYPOINT_X_1            = SPR_OPENTTD_BASE + 78,
00352   SPR_WAYPOINT_X_2            = SPR_OPENTTD_BASE + 79,
00353   SPR_WAYPOINT_Y_1            = SPR_OPENTTD_BASE + 80,
00354   SPR_WAYPOINT_Y_2            = SPR_OPENTTD_BASE + 81,
00355   OFFSET_TILEH_IMPOSSIBLE     = 0,
00356   OFFSET_TILEH_1              = 14,
00357   OFFSET_TILEH_2              = 15,
00358   OFFSET_TILEH_3              = 22,
00359   OFFSET_TILEH_4              = 13,
00360   OFFSET_TILEH_6              = 21,
00361   OFFSET_TILEH_7              = 17,
00362   OFFSET_TILEH_8              = 12,
00363   OFFSET_TILEH_9              = 23,
00364   OFFSET_TILEH_11             = 18,
00365   OFFSET_TILEH_12             = 20,
00366   OFFSET_TILEH_13             = 19,
00367   OFFSET_TILEH_14             = 16,
00368 
00369   /* Track fences */
00370   SPR_TRACK_FENCE_FLAT_X    = 1301,
00371   SPR_TRACK_FENCE_FLAT_Y    = 1302,
00372   SPR_TRACK_FENCE_FLAT_VERT = 1303,
00373   SPR_TRACK_FENCE_FLAT_HORZ = 1304,
00374   SPR_TRACK_FENCE_SLOPE_SW  = 1305,
00375   SPR_TRACK_FENCE_SLOPE_SE  = 1306,
00376   SPR_TRACK_FENCE_SLOPE_NE  = 1307,
00377   SPR_TRACK_FENCE_SLOPE_NW  = 1308,
00378 
00379   /* Elrail stuff */
00380   /* Wires. First identifier is the direction of the track, second is the required placement of the pylon.
00381    * "short" denotes a wire that requires a pylon on each end. Third identifier is the direction of the slope
00382    * (in positive coordinate direction) */
00383   SPR_WIRE_X_SHORT      = SPR_ELRAIL_BASE + 0,
00384   SPR_WIRE_Y_SHORT      = SPR_ELRAIL_BASE + 1,
00385   SPR_WIRE_EW_SHORT     = SPR_ELRAIL_BASE + 2,
00386   SPR_WIRE_NS_SHORT     = SPR_ELRAIL_BASE + 3,
00387   SPR_WIRE_X_SHORT_DOWN = SPR_ELRAIL_BASE + 4,
00388   SPR_WIRE_Y_SHORT_UP   = SPR_ELRAIL_BASE + 5,
00389   SPR_WIRE_X_SHORT_UP   = SPR_ELRAIL_BASE + 6,
00390   SPR_WIRE_Y_SHORT_DOWN = SPR_ELRAIL_BASE + 7,
00391 
00392   SPR_WIRE_X_SW      = SPR_ELRAIL_BASE +  8,
00393   SPR_WIRE_Y_SE      = SPR_ELRAIL_BASE +  9,
00394   SPR_WIRE_EW_E      = SPR_ELRAIL_BASE + 10,
00395   SPR_WIRE_NS_S      = SPR_ELRAIL_BASE + 11,
00396   SPR_WIRE_X_SW_DOWN = SPR_ELRAIL_BASE + 12,
00397   SPR_WIRE_Y_SE_UP   = SPR_ELRAIL_BASE + 13,
00398   SPR_WIRE_X_SW_UP   = SPR_ELRAIL_BASE + 14,
00399   SPR_WIRE_Y_SE_DOWN = SPR_ELRAIL_BASE + 15,
00400 
00401   SPR_WIRE_X_NE      = SPR_ELRAIL_BASE + 16,
00402   SPR_WIRE_Y_NW      = SPR_ELRAIL_BASE + 17,
00403   SPR_WIRE_EW_W      = SPR_ELRAIL_BASE + 18,
00404   SPR_WIRE_NS_N      = SPR_ELRAIL_BASE + 19,
00405   SPR_WIRE_X_NE_DOWN = SPR_ELRAIL_BASE + 20,
00406   SPR_WIRE_Y_NW_UP   = SPR_ELRAIL_BASE + 21,
00407   SPR_WIRE_X_NE_UP   = SPR_ELRAIL_BASE + 22,
00408   SPR_WIRE_Y_NW_DOWN = SPR_ELRAIL_BASE + 23,
00409 
00410   /* Tunnel entries */
00411   SPR_WIRE_TUNNEL_NE = SPR_ELRAIL_BASE + 24,
00412   SPR_WIRE_TUNNEL_SE = SPR_ELRAIL_BASE + 25,
00413   SPR_WIRE_TUNNEL_SW = SPR_ELRAIL_BASE + 26,
00414   SPR_WIRE_TUNNEL_NW = SPR_ELRAIL_BASE + 27,
00415 
00416   /* Depot entries */
00417   SPR_WIRE_DEPOT_SW = SPR_ELRAIL_BASE + 24,
00418   SPR_WIRE_DEPOT_NW = SPR_ELRAIL_BASE + 25,
00419   SPR_WIRE_DEPOT_NE = SPR_ELRAIL_BASE + 26,
00420   SPR_WIRE_DEPOT_SE = SPR_ELRAIL_BASE + 27,
00421 
00422 
00423   /* Pylons, first identifier is the direction of the track, second the placement relative to the track */
00424   SPR_PYLON_Y_NE = SPR_ELRAIL_BASE + 28,
00425   SPR_PYLON_Y_SW = SPR_ELRAIL_BASE + 29,
00426   SPR_PYLON_X_NW = SPR_ELRAIL_BASE + 30,
00427   SPR_PYLON_X_SE = SPR_ELRAIL_BASE + 31,
00428   SPR_PYLON_EW_N = SPR_ELRAIL_BASE + 32,
00429   SPR_PYLON_EW_S = SPR_ELRAIL_BASE + 33,
00430   SPR_PYLON_NS_W = SPR_ELRAIL_BASE + 34,
00431   SPR_PYLON_NS_E = SPR_ELRAIL_BASE + 35,
00432 
00433   /* sprites for roads */
00434   SPR_ROAD_PAVED_STRAIGHT_Y       = 1313,
00435   SPR_ROAD_PAVED_STRAIGHT_X       = 1314,
00436 
00437   /* sprites for airports and airfields*/
00438   /* Small airports are AIRFIELD, everything else is AIRPORT */
00439   SPR_HELIPORT                    = 2633,
00440   SPR_AIRPORT_APRON               = 2634,
00441   SPR_AIRPORT_AIRCRAFT_STAND      = 2635,
00442   SPR_AIRPORT_TAXIWAY_NS_WEST     = 2636,
00443   SPR_AIRPORT_TAXIWAY_EW_SOUTH    = 2637,
00444   SPR_AIRPORT_TAXIWAY_XING_SOUTH  = 2638,
00445   SPR_AIRPORT_TAXIWAY_XING_WEST   = 2639,
00446   SPR_AIRPORT_TAXIWAY_NS_CTR      = 2640,
00447   SPR_AIRPORT_TAXIWAY_XING_EAST   = 2641,
00448   SPR_AIRPORT_TAXIWAY_NS_EAST     = 2642,
00449   SPR_AIRPORT_TAXIWAY_EW_NORTH    = 2643,
00450   SPR_AIRPORT_TAXIWAY_EW_CTR      = 2644,
00451   SPR_AIRPORT_RUNWAY_EXIT_A       = 2645,
00452   SPR_AIRPORT_RUNWAY_EXIT_B       = 2646,
00453   SPR_AIRPORT_RUNWAY_EXIT_C       = 2647,
00454   SPR_AIRPORT_RUNWAY_EXIT_D       = 2648,
00455   SPR_AIRPORT_RUNWAY_END          = 2649, //We should have different ends
00456   SPR_AIRPORT_TERMINAL_A          = 2650,
00457   SPR_AIRPORT_TOWER               = 2651,
00458   SPR_AIRPORT_CONCOURSE           = 2652,
00459   SPR_AIRPORT_TERMINAL_B          = 2653,
00460   SPR_AIRPORT_TERMINAL_C          = 2654,
00461   SPR_AIRPORT_HANGAR_FRONT        = 2655,
00462   SPR_AIRPORT_HANGAR_REAR         = 2656,
00463   SPR_AIRFIELD_HANGAR_FRONT       = 2657,
00464   SPR_AIRFIELD_HANGAR_REAR        = 2658,
00465   SPR_AIRPORT_JETWAY_1            = 2659,
00466   SPR_AIRPORT_JETWAY_2            = 2660,
00467   SPR_AIRPORT_JETWAY_3            = 2661,
00468   SPR_AIRPORT_PASSENGER_TUNNEL    = 2662,
00469   SPR_AIRPORT_FENCE_Y             = 2663,
00470   SPR_AIRPORT_FENCE_X             = 2664,
00471   SPR_AIRFIELD_TERM_A             = 2665,
00472   SPR_AIRFIELD_TERM_B             = 2666,
00473   SPR_AIRFIELD_TERM_C_GROUND      = 2667,
00474   SPR_AIRFIELD_TERM_C_BUILD       = 2668,
00475   SPR_AIRFIELD_APRON_A            = 2669,
00476   SPR_AIRFIELD_APRON_B            = 2670,
00477   SPR_AIRFIELD_APRON_C            = 2671,
00478   SPR_AIRFIELD_APRON_D            = 2672,
00479   SPR_AIRFIELD_RUNWAY_NEAR_END    = 2673,
00480   SPR_AIRFIELD_RUNWAY_MIDDLE      = 2674,
00481   SPR_AIRFIELD_RUNWAY_FAR_END     = 2675,
00482   SPR_AIRFIELD_WIND_1             = 2676,
00483   SPR_AIRFIELD_WIND_2             = 2677,
00484   SPR_AIRFIELD_WIND_3             = 2678,
00485   SPR_AIRFIELD_WIND_4             = 2679,
00486   SPR_AIRPORT_RADAR_1             = 2680,
00487   SPR_AIRPORT_RADAR_2             = 2681,
00488   SPR_AIRPORT_RADAR_3             = 2682,
00489   SPR_AIRPORT_RADAR_4             = 2683,
00490   SPR_AIRPORT_RADAR_5             = 2684,
00491   SPR_AIRPORT_RADAR_6             = 2685,
00492   SPR_AIRPORT_RADAR_7             = 2686,
00493   SPR_AIRPORT_RADAR_8             = 2687,
00494   SPR_AIRPORT_RADAR_9             = 2688,
00495   SPR_AIRPORT_RADAR_A             = 2689,
00496   SPR_AIRPORT_RADAR_B             = 2690,
00497   SPR_AIRPORT_RADAR_C             = 2691,
00498   SPR_AIRPORT_HELIPAD             = SPR_OPENTTD_BASE + 86,
00499   SPR_AIRPORT_HELIDEPOT_OFFICE    = 2095,
00500 
00501   /* Road Stops */
00502   /* Road stops have a ground tile and 3 buildings, one on each side
00503    * (except the side where the entry is). These are marked _A _B and _C */
00504   SPR_BUS_STOP_NE_GROUND          = 2692,
00505   SPR_BUS_STOP_SE_GROUND          = 2693,
00506   SPR_BUS_STOP_SW_GROUND          = 2694,
00507   SPR_BUS_STOP_NW_GROUND          = 2695,
00508   SPR_BUS_STOP_NE_BUILD_A         = 2696,
00509   SPR_BUS_STOP_SE_BUILD_A         = 2697,
00510   SPR_BUS_STOP_SW_BUILD_A         = 2698,
00511   SPR_BUS_STOP_NW_BUILD_A         = 2699,
00512   SPR_BUS_STOP_NE_BUILD_B         = 2700,
00513   SPR_BUS_STOP_SE_BUILD_B         = 2701,
00514   SPR_BUS_STOP_SW_BUILD_B         = 2702,
00515   SPR_BUS_STOP_NW_BUILD_B         = 2703,
00516   SPR_BUS_STOP_NE_BUILD_C         = 2704,
00517   SPR_BUS_STOP_SE_BUILD_C         = 2705,
00518   SPR_BUS_STOP_SW_BUILD_C         = 2706,
00519   SPR_BUS_STOP_NW_BUILD_C         = 2707,
00520   SPR_TRUCK_STOP_NE_GROUND        = 2708,
00521   SPR_TRUCK_STOP_SE_GROUND        = 2709,
00522   SPR_TRUCK_STOP_SW_GROUND        = 2710,
00523   SPR_TRUCK_STOP_NW_GROUND        = 2711,
00524   SPR_TRUCK_STOP_NE_BUILD_A       = 2712,
00525   SPR_TRUCK_STOP_SE_BUILD_A       = 2713,
00526   SPR_TRUCK_STOP_SW_BUILD_A       = 2714,
00527   SPR_TRUCK_STOP_NW_BUILD_A       = 2715,
00528   SPR_TRUCK_STOP_NE_BUILD_B       = 2716,
00529   SPR_TRUCK_STOP_SE_BUILD_B       = 2717,
00530   SPR_TRUCK_STOP_SW_BUILD_B       = 2718,
00531   SPR_TRUCK_STOP_NW_BUILD_B       = 2719,
00532   SPR_TRUCK_STOP_NE_BUILD_C       = 2720,
00533   SPR_TRUCK_STOP_SE_BUILD_C       = 2721,
00534   SPR_TRUCK_STOP_SW_BUILD_C       = 2722,
00535   SPR_TRUCK_STOP_NW_BUILD_C       = 2723,
00536 
00537   /* Sprites for docks */
00538   /* Docks consist of two tiles, the sloped one and the flat one */
00539   SPR_DOCK_SLOPE_NE               = 2727,
00540   SPR_DOCK_SLOPE_SE               = 2728,
00541   SPR_DOCK_SLOPE_SW               = 2729,
00542   SPR_DOCK_SLOPE_NW               = 2730,
00543   SPR_DOCK_FLAT_X                 = 2731, //for NE and SW
00544   SPR_DOCK_FLAT_Y                 = 2732, //for NW and SE
00545   SPR_BUOY                        = 4076, //XXX this sucks, because it displays wrong stuff on canals
00546 
00547   /* Sprites for road */
00548   SPR_ROAD_Y                  = 1332,
00549   SPR_ROAD_X                  = 1333,
00550   SPR_ROAD_Y_SNOW             = 1351,
00551   SPR_ROAD_X_SNOW             = 1352,
00552 
00553   SPR_EXCAVATION_X = 1414,
00554   SPR_EXCAVATION_Y = 1415,
00555 
00556   /* Landscape sprites */
00557   SPR_FLAT_BARE_LAND          = 3924,
00558   SPR_FLAT_1_THIRD_GRASS_TILE = 3943,
00559   SPR_FLAT_2_THIRD_GRASS_TILE = 3962,
00560   SPR_FLAT_GRASS_TILE         = 3981,
00561   SPR_FLAT_ROUGH_LAND         = 4000,
00562   SPR_FLAT_ROUGH_LAND_1       = 4019,
00563   SPR_FLAT_ROUGH_LAND_2       = 4020,
00564   SPR_FLAT_ROUGH_LAND_3       = 4021,
00565   SPR_FLAT_ROUGH_LAND_4       = 4022,
00566   SPR_FLAT_ROCKY_LAND_1       = 4023,
00567   SPR_FLAT_ROCKY_LAND_2       = 4042,
00568   SPR_FLAT_WATER_TILE         = 4061,
00569   SPR_FLAT_1_QUART_SNOWY_TILE = 4493,
00570   SPR_FLAT_2_QUART_SNOWY_TILE = 4512,
00571   SPR_FLAT_3_QUART_SNOWY_TILE = 4531,
00572   SPR_FLAT_SNOWY_TILE         = 4550,
00573 
00574   /* Hedge, Farmland-fence sprites */
00575   SPR_HEDGE_BUSHES            = 4090,
00576   SPR_HEDGE_BUSHES_WITH_GATE  = 4096,
00577   SPR_HEDGE_FENCE             = 4102,
00578   SPR_HEDGE_BLOOMBUSH_YELLOW  = 4108,
00579   SPR_HEDGE_BLOOMBUSH_RED     = 4114,
00580   SPR_HEDGE_STONE             = 4120,
00581 
00582   /* Farmland sprites, only flat tiles listed, various stages */
00583   SPR_FARMLAND_BARE           = 4126,
00584   SPR_FARMLAND_STATE_1        = 4145,
00585   SPR_FARMLAND_STATE_2        = 4164,
00586   SPR_FARMLAND_STATE_3        = 4183,
00587   SPR_FARMLAND_STATE_4        = 4202,
00588   SPR_FARMLAND_STATE_5        = 4221,
00589   SPR_FARMLAND_STATE_6        = 4240,
00590   SPR_FARMLAND_STATE_7        = 4259,
00591   SPR_FARMLAND_HAYPACKS       = 4278,
00592 
00593   /* Water-related sprites */
00594   SPR_SHIP_DEPOT_SE_FRONT     = 4070,
00595   SPR_SHIP_DEPOT_SW_FRONT     = 4071,
00596   SPR_SHIP_DEPOT_NW           = 4072,
00597   SPR_SHIP_DEPOT_NE           = 4073,
00598   SPR_SHIP_DEPOT_SE_REAR      = 4074,
00599   SPR_SHIP_DEPOT_SW_REAR      = 4075,
00600   //here come sloped water sprites
00601   SPR_WATER_SLOPE_Y_UP        = SPR_CANALS_BASE + 0, //Water flowing negative Y direction
00602   SPR_WATER_SLOPE_X_DOWN      = SPR_CANALS_BASE + 1, //positive X
00603   SPR_WATER_SLOPE_X_UP        = SPR_CANALS_BASE + 2, //negative X
00604   SPR_WATER_SLOPE_Y_DOWN      = SPR_CANALS_BASE + 3,  //positive Y
00605   //sprites for the shiplifts
00606   //there are 4 kinds of shiplifts, each of them is 3 tiles long.
00607   //the four kinds are running in the X and Y direction and
00608   //are "lowering" either in the "+" or the "-" direction.
00609   //the three tiles are the center tile (where the slope is)
00610   //and a bottom and a top tile
00611   SPR_SHIPLIFT_BASE                 = SPR_CANALS_BASE +  4,
00612   SPR_SHIPLIFT_Y_UP_CENTER_REAR     = SPR_CANALS_BASE +  4,
00613   SPR_SHIPLIFT_X_DOWN_CENTER_REAR   = SPR_CANALS_BASE +  5,
00614   SPR_SHIPLIFT_X_UP_CENTER_REAR     = SPR_CANALS_BASE +  6,
00615   SPR_SHIPLIFT_Y_DOWN_CENTER_REAR   = SPR_CANALS_BASE +  7,
00616   SPR_SHIPLIFT_Y_UP_CENTER_FRONT    = SPR_CANALS_BASE +  8,
00617   SPR_SHIPLIFT_X_DOWN_CENTER_FRONT  = SPR_CANALS_BASE +  9,
00618   SPR_SHIPLIFT_X_UP_CENTER_FRONT    = SPR_CANALS_BASE + 10,
00619   SPR_SHIPLIFT_Y_DOWN_CENTER_FRONT  = SPR_CANALS_BASE + 11,
00620   SPR_SHIPLIFT_Y_UP_BOTTOM_REAR     = SPR_CANALS_BASE + 12,
00621   SPR_SHIPLIFT_X_DOWN_BOTTOM_REAR   = SPR_CANALS_BASE + 13,
00622   SPR_SHIPLIFT_X_UP_BOTTOM_REAR     = SPR_CANALS_BASE + 14,
00623   SPR_SHIPLIFT_Y_DOWN_BOTTOM_REAR   = SPR_CANALS_BASE + 15,
00624   SPR_SHIPLIFT_Y_UP_BOTTOM_FRONT    = SPR_CANALS_BASE + 16,
00625   SPR_SHIPLIFT_X_DOWN_BOTTOM_FRONT  = SPR_CANALS_BASE + 17,
00626   SPR_SHIPLIFT_X_UP_BOTTOM_FRONT    = SPR_CANALS_BASE + 18,
00627   SPR_SHIPLIFT_Y_DOWN_BOTTOM_FRONT  = SPR_CANALS_BASE + 19,
00628   SPR_SHIPLIFT_Y_UP_TOP_REAR        = SPR_CANALS_BASE + 20,
00629   SPR_SHIPLIFT_X_DOWN_TOP_REAR      = SPR_CANALS_BASE + 21,
00630   SPR_SHIPLIFT_X_UP_TOP_REAR        = SPR_CANALS_BASE + 22,
00631   SPR_SHIPLIFT_Y_DOWN_TOP_REAR      = SPR_CANALS_BASE + 23,
00632   SPR_SHIPLIFT_Y_UP_TOP_FRONT       = SPR_CANALS_BASE + 24,
00633   SPR_SHIPLIFT_X_DOWN_TOP_FRONT     = SPR_CANALS_BASE + 25,
00634   SPR_SHIPLIFT_X_UP_TOP_FRONT       = SPR_CANALS_BASE + 26,
00635   SPR_SHIPLIFT_Y_DOWN_TOP_FRONT     = SPR_CANALS_BASE + 27,
00636   SPR_CANAL_DIKES_BASE              = SPR_CANALS_BASE + 52,
00637 
00638   /* Sprites for tunnels and bridges */
00639   SPR_TUNNEL_ENTRY_REAR_RAIL   = 2365,
00640   SPR_TUNNEL_ENTRY_REAR_MONO   = 2373,
00641   SPR_TUNNEL_ENTRY_REAR_MAGLEV = 2381,
00642   SPR_TUNNEL_ENTRY_REAR_ROAD   = 2389,
00643 
00644   /* Level crossings */
00645   SPR_CROSSING_OFF_X_RAIL   = 1370,
00646   SPR_CROSSING_OFF_X_MONO   = 1382,
00647   SPR_CROSSING_OFF_X_MAGLEV = 1394,
00648 
00649   /* bridge type sprites */
00650   SPR_PILLARS_BASE = SPR_OPENTTD_BASE + 14,
00651 
00652   /* Wooden bridge (type 0) */
00653   SPR_BTWDN_RAIL_Y_REAR       = 2545,
00654   SPR_BTWDN_RAIL_X_REAR       = 2546,
00655   SPR_BTWDN_ROAD_Y_REAR       = 2547,
00656   SPR_BTWDN_ROAD_X_REAR       = 2548,
00657   SPR_BTWDN_Y_FRONT           = 2549,
00658   SPR_BTWDN_X_FRONT           = 2550,
00659   SPR_BTWDN_Y_PILLAR          = 2551,
00660   SPR_BTWDN_X_PILLAR          = 2552,
00661   SPR_BTWDN_MONO_Y_REAR       = 4360,
00662   SPR_BTWDN_MONO_X_REAR       = 4361,
00663   SPR_BTWDN_MGLV_Y_REAR       = 4400,
00664   SPR_BTWDN_MGLV_X_REAR       = 4401,
00665   /* ramps */
00666   SPR_BTWDN_ROAD_RAMP_Y_DOWN  = 2529,
00667   SPR_BTWDN_ROAD_RAMP_X_DOWN  = 2530,
00668   SPR_BTWDN_ROAD_RAMP_X_UP    = 2531, //for some weird reason the order is swapped
00669   SPR_BTWDN_ROAD_RAMP_Y_UP    = 2532, //between X and Y.
00670   SPR_BTWDN_ROAD_Y_SLOPE_UP   = 2533,
00671   SPR_BTWDN_ROAD_X_SLOPE_UP   = 2534,
00672   SPR_BTWDN_ROAD_Y_SLOPE_DOWN = 2535,
00673   SPR_BTWDN_ROAD_X_SLOPE_DOWN = 2536,
00674   SPR_BTWDN_RAIL_RAMP_Y_DOWN  = 2537,
00675   SPR_BTWDN_RAIL_RAMP_X_DOWN  = 2538,
00676   SPR_BTWDN_RAIL_RAMP_X_UP    = 2539, //for some weird reason the order is swapped
00677   SPR_BTWDN_RAIL_RAMP_Y_UP    = 2540, //between X and Y.
00678   SPR_BTWDN_RAIL_Y_SLOPE_UP   = 2541,
00679   SPR_BTWDN_RAIL_X_SLOPE_UP   = 2542,
00680   SPR_BTWDN_RAIL_Y_SLOPE_DOWN = 2543,
00681   SPR_BTWDN_RAIL_X_SLOPE_DOWN = 2544,
00682   SPR_BTWDN_MONO_RAMP_Y_DOWN  = 4352,
00683   SPR_BTWDN_MONO_RAMP_X_DOWN  = 4353,
00684   SPR_BTWDN_MONO_RAMP_X_UP    = 4354, //for some weird reason the order is swapped
00685   SPR_BTWDN_MONO_RAMP_Y_UP    = 4355, //between X and Y.
00686   SPR_BTWDN_MONO_Y_SLOPE_UP   = 4356,
00687   SPR_BTWDN_MONO_X_SLOPE_UP   = 4357,
00688   SPR_BTWDN_MONO_Y_SLOPE_DOWN = 4358,
00689   SPR_BTWDN_MONO_X_SLOPE_DOWN = 4359,
00690   SPR_BTWDN_MGLV_RAMP_Y_DOWN  = 4392,
00691   SPR_BTWDN_MGLV_RAMP_X_DOWN  = 4393,
00692   SPR_BTWDN_MGLV_RAMP_X_UP    = 4394, //for some weird reason the order is swapped
00693   SPR_BTWDN_MGLV_RAMP_Y_UP    = 4395, //between X and Y.
00694   SPR_BTWDN_MGLV_Y_SLOPE_UP   = 4396,
00695   SPR_BTWDN_MGLV_X_SLOPE_UP   = 4397,
00696   SPR_BTWDN_MGLV_Y_SLOPE_DOWN = 4398,
00697   SPR_BTWDN_MGLV_X_SLOPE_DOWN = 4399,
00698 
00699   /* Steel Girder with arches */
00700   /* BTSGA == Bridge Type Steel Girder Arched */
00701   /* This is bridge type number 2 */
00702   SPR_BTSGA_RAIL_X_REAR       = 2499,
00703   SPR_BTSGA_RAIL_Y_REAR       = 2500,
00704   SPR_BTSGA_ROAD_X_REAR       = 2501,
00705   SPR_BTSGA_ROAD_Y_REAR       = 2502,
00706   SPR_BTSGA_X_FRONT           = 2503,
00707   SPR_BTSGA_Y_FRONT           = 2504,
00708   SPR_BTSGA_X_PILLAR          = 2505,
00709   SPR_BTSGA_Y_PILLAR          = 2506,
00710   SPR_BTSGA_MONO_X_REAR       = 4324,
00711   SPR_BTSGA_MONO_Y_REAR       = 4325,
00712   SPR_BTSGA_MGLV_X_REAR       = 4364,
00713   SPR_BTSGA_MGLV_Y_REAR       = 4365,
00714 
00715   /* BTSUS == Suspension bridge */
00716   /* TILE_* denotes the different tiles a suspension bridge
00717    * can have
00718    * TILE_A and TILE_B are the "beginnings" and "ends" of the
00719    *   suspension system. they have small rectangluar endcaps
00720    * TILE_C and TILE_D look almost identical to TILE_A and
00721    *   TILE_B, but they do not have the "endcaps". They form the
00722    *   middle part
00723    * TILE_E is a condensed configuration of two pillars. while they
00724    *   are usually 2 pillars apart, they only have 1 pillar separation
00725    *   here
00726    * TILE_F is an extended configuration of pillars. they are
00727    *   plugged in when pillars should be 3 tiles apart
00728    */
00729   SPR_BTSUS_ROAD_Y_REAR_TILE_A  = 2453,
00730   SPR_BTSUS_ROAD_Y_REAR_TILE_B  = 2454,
00731   SPR_BTSUS_Y_FRONT_TILE_A      = 2455,
00732   SPR_BTSUS_Y_FRONT_TILE_B      = 2456,
00733   SPR_BTSUS_ROAD_Y_REAR_TILE_D  = 2457,
00734   SPR_BTSUS_ROAD_Y_REAR_TILE_C  = 2458,
00735   SPR_BTSUS_Y_FRONT_TILE_D      = 2459,
00736   SPR_BTSUS_Y_FRONT_TILE_C      = 2460,
00737   SPR_BTSUS_ROAD_X_REAR_TILE_A  = 2461,
00738   SPR_BTSUS_ROAD_X_REAR_TILE_B  = 2462,
00739   SPR_BTSUS_X_FRONT_TILE_A      = 2463,
00740   SPR_BTSUS_X_FRONT_TILE_B      = 2464,
00741   SPR_BTSUS_ROAD_X_REAR_TILE_D  = 2465,
00742   SPR_BTSUS_ROAD_X_REAR_TILE_C  = 2466,
00743   SPR_BTSUS_X_FRONT_TILE_D      = 2467,
00744   SPR_BTSUS_X_FRONT_TILE_C      = 2468,
00745   SPR_BTSUS_RAIL_Y_REAR_TILE_A  = 2469,
00746   SPR_BTSUS_RAIL_Y_REAR_TILE_B  = 2470,
00747   SPR_BTSUS_RAIL_Y_REAR_TILE_D  = 2471,
00748   SPR_BTSUS_RAIL_Y_REAR_TILE_C  = 2472,
00749   SPR_BTSUS_RAIL_X_REAR_TILE_A  = 2473,
00750   SPR_BTSUS_RAIL_X_REAR_TILE_B  = 2474,
00751   SPR_BTSUS_RAIL_X_REAR_TILE_D  = 2475,
00752   SPR_BTSUS_RAIL_X_REAR_TILE_C  = 2476,
00753   SPR_BTSUS_Y_PILLAR_TILE_A     = 2477,
00754   SPR_BTSUS_Y_PILLAR_TILE_B     = 2478,
00755   SPR_BTSUS_Y_PILLAR_TILE_D     = 2479,
00756   SPR_BTSUS_Y_PILLAR_TILE_C     = 2480,
00757   SPR_BTSUS_X_PILLAR_TILE_A     = 2481,
00758   SPR_BTSUS_X_PILLAR_TILE_B     = 2482,
00759   SPR_BTSUS_X_PILLAR_TILE_D     = 2483,
00760   SPR_BTSUS_X_PILLAR_TILE_C     = 2484,
00761   SPR_BTSUS_RAIL_Y_REAR_TILE_E  = 2485,
00762   SPR_BTSUS_RAIL_X_REAR_TILE_E  = 2486,
00763   SPR_BTSUS_ROAD_Y_REAR_TILE_E  = 2487,
00764   SPR_BTSUS_ROAD_X_REAR_TILE_E  = 2488,
00765   SPR_BTSUS_Y_FRONT_TILE_E      = 2489,
00766   SPR_BTSUS_X_FRONT_TILE_E      = 2490,
00767   SPR_BTSUS_Y_PILLAR_TILE_E     = 2491,
00768   SPR_BTSUS_X_PILLAR_TILE_E     = 2492,
00769   SPR_BTSUS_RAIL_X_REAR_TILE_F  = 2493,
00770   SPR_BTSUS_RAIL_Y_REAR_TILE_F  = 2494,
00771   SPR_BTSUS_ROAD_X_REAR_TILE_F  = 2495,
00772   SPR_BTSUS_ROAD_Y_REAR_TILE_F  = 2496,
00773   SPR_BTSUS_X_FRONT             = 2497,
00774   SPR_BTSUS_Y_FRONT             = 2498,
00775   SPR_BTSUS_MONO_Y_REAR_TILE_A  = 4334,
00776   SPR_BTSUS_MONO_Y_REAR_TILE_B  = 4335,
00777   SPR_BTSUS_MONO_Y_REAR_TILE_D  = 4336,
00778   SPR_BTSUS_MONO_Y_REAR_TILE_C  = 4337,
00779   SPR_BTSUS_MONO_X_REAR_TILE_A  = 4338,
00780   SPR_BTSUS_MONO_X_REAR_TILE_B  = 4339,
00781   SPR_BTSUS_MONO_X_REAR_TILE_D  = 4340,
00782   SPR_BTSUS_MONO_X_REAR_TILE_C  = 4341,
00783   SPR_BTSUS_MONO_Y_REAR_TILE_E  = 4342,
00784   SPR_BTSUS_MONO_X_REAR_TILE_E  = 4343,
00785   SPR_BTSUS_MONO_X_REAR_TILE_F  = 4344,
00786   SPR_BTSUS_MONO_Y_REAR_TILE_F  = 4345,
00787   SPR_BTSUS_MGLV_Y_REAR_TILE_A  = 4374,
00788   SPR_BTSUS_MGLV_Y_REAR_TILE_B  = 4375,
00789   SPR_BTSUS_MGLV_Y_REAR_TILE_D  = 4376,
00790   SPR_BTSUS_MGLV_Y_REAR_TILE_C  = 4377,
00791   SPR_BTSUS_MGLV_X_REAR_TILE_A  = 4378,
00792   SPR_BTSUS_MGLV_X_REAR_TILE_B  = 4379,
00793   SPR_BTSUS_MGLV_X_REAR_TILE_D  = 4380,
00794   SPR_BTSUS_MGLV_X_REAR_TILE_C  = 4381,
00795   SPR_BTSUS_MGLV_Y_REAR_TILE_E  = 4382,
00796   SPR_BTSUS_MGLV_X_REAR_TILE_E  = 4383,
00797   SPR_BTSUS_MGLV_X_REAR_TILE_F  = 4384,
00798   SPR_BTSUS_MGLV_Y_REAR_TILE_F  = 4385,
00799 
00800   /* cantilever bridges */
00801   /* They have three different kinds of tiles:
00802    * END(ing), MID(dle), BEG(ginning) */
00803   SPR_BTCAN_RAIL_X_BEG          = 2507,
00804   SPR_BTCAN_RAIL_X_MID          = 2508,
00805   SPR_BTCAN_RAIL_X_END          = 2509,
00806   SPR_BTCAN_RAIL_Y_END          = 2510,
00807   SPR_BTCAN_RAIL_Y_MID          = 2511,
00808   SPR_BTCAN_RAIL_Y_BEG          = 2512,
00809   SPR_BTCAN_ROAD_X_BEG          = 2513,
00810   SPR_BTCAN_ROAD_X_MID          = 2514,
00811   SPR_BTCAN_ROAD_X_END          = 2515,
00812   SPR_BTCAN_ROAD_Y_END          = 2516,
00813   SPR_BTCAN_ROAD_Y_MID          = 2517,
00814   SPR_BTCAN_ROAD_Y_BEG          = 2518,
00815   SPR_BTCAN_X_FRONT_BEG         = 2519,
00816   SPR_BTCAN_X_FRONT_MID         = 2520,
00817   SPR_BTCAN_X_FRONT_END         = 2521,
00818   SPR_BTCAN_Y_FRONT_END         = 2522,
00819   SPR_BTCAN_Y_FRONT_MID         = 2523,
00820   SPR_BTCAN_Y_FRONT_BEG         = 2524,
00821   SPR_BTCAN_X_PILLAR_BEG        = 2525,
00822   SPR_BTCAN_X_PILLAR_MID        = 2526,
00823   SPR_BTCAN_Y_PILLAR_MID        = 2527,
00824   SPR_BTCAN_Y_PILLAR_BEG        = 2528,
00825   SPR_BTCAN_MONO_X_BEG          = 4346,
00826   SPR_BTCAN_MONO_X_MID          = 4347,
00827   SPR_BTCAN_MONO_X_END          = 4348,
00828   SPR_BTCAN_MONO_Y_END          = 4349,
00829   SPR_BTCAN_MONO_Y_MID          = 4350,
00830   SPR_BTCAN_MONO_Y_BEG          = 4351,
00831   SPR_BTCAN_MGLV_X_BEG          = 4386,
00832   SPR_BTCAN_MGLV_X_MID          = 4387,
00833   SPR_BTCAN_MGLV_X_END          = 4388,
00834   SPR_BTCAN_MGLV_Y_END          = 4389,
00835   SPR_BTCAN_MGLV_Y_MID          = 4390,
00836   SPR_BTCAN_MGLV_Y_BEG          = 4391,
00837 
00838   /* little concrete bridge */
00839   SPR_BTCON_RAIL_X        = 2493,
00840   SPR_BTCON_RAIL_Y        = 2494,
00841   SPR_BTCON_ROAD_X        = 2495,
00842   SPR_BTCON_ROAD_Y        = 2496,
00843   SPR_BTCON_X_FRONT       = 2497,
00844   SPR_BTCON_Y_FRONT       = 2498,
00845   SPR_BTCON_X_PILLAR      = 2505,
00846   SPR_BTCON_Y_PILLAR      = 2506,
00847   SPR_BTCON_MONO_X        = 4344,
00848   SPR_BTCON_MONO_Y        = 4345,
00849   SPR_BTCON_MGLV_X        = 4384,
00850   SPR_BTCON_MGLV_Y        = 4385,
00851 
00852   /* little steel girder bridge */
00853   SPR_BTGIR_RAIL_X        = 2553,
00854   SPR_BTGIR_RAIL_Y        = 2554,
00855   SPR_BTGIR_ROAD_X        = 2555,
00856   SPR_BTGIR_ROAD_Y        = 2556,
00857   SPR_BTGIR_X_FRONT       = 2557,
00858   SPR_BTGIR_Y_FRONT       = 2558,
00859   SPR_BTGIR_X_PILLAR      = 2505,
00860   SPR_BTGIR_Y_PILLAR      = 2506,
00861   SPR_BTGIR_MONO_X        = 4362,
00862   SPR_BTGIR_MONO_Y        = 4363,
00863   SPR_BTGIR_MGLV_X        = 4402,
00864   SPR_BTGIR_MGLV_Y        = 4403,
00865 
00866   /* tubular bridges */
00867   /* tubular bridges have 3 kinds of tiles:
00868    *  a start tile (with only half a tube on the far side, marked _BEG
00869    *  a middle tile (full tunnel), marked _MID
00870    *  and an end tile (half a tube on the near side, maked _END
00871    */
00872   SPR_BTTUB_X_FRONT_BEG       = 2559,
00873   SPR_BTTUB_X_FRONT_MID       = 2560,
00874   SPR_BTTUB_X_FRONT_END       = 2561,
00875   SPR_BTTUB_Y_FRONT_END       = 2562,
00876   SPR_BTTUB_Y_FRONT_MID       = 2563,
00877   SPR_BTTUB_Y_FRONT_BEG       = 2564,
00878   SPR_BTTUB_X_PILLAR_BEG      = 2565,
00879   SPR_BTTUB_X_PILLAR_MID      = 2566,
00880   SPR_BTTUB_Y_PILLAR_MID      = 2567,
00881   SPR_BTTUB_Y_PILLAR_BEG      = 2568,
00882   SPR_BTTUB_X_RAIL_REAR_BEG   = 2569,
00883   SPR_BTTUB_X_RAIL_REAR_MID   = 2570,
00884   SPR_BTTUB_X_RAIL_REAR_END   = 2571,
00885   SPR_BTTUB_Y_RAIL_REAR_BEG   = 2572,
00886   SPR_BTTUB_Y_RAIL_REAR_MID   = 2573,
00887   SPR_BTTUB_Y_RAIL_REAR_END   = 2574,
00888   SPR_BTTUB_X_ROAD_REAR_BEG   = 2575,
00889   SPR_BTTUB_X_ROAD_REAR_MID   = 2576,
00890   SPR_BTTUB_X_ROAD_REAR_END   = 2577,
00891   SPR_BTTUB_Y_ROAD_REAR_BEG   = 2578,
00892   SPR_BTTUB_Y_ROAD_REAR_MID   = 2579,
00893   SPR_BTTUB_Y_ROAD_REAR_END   = 2580,
00894   SPR_BTTUB_X_MONO_REAR_BEG   = 2581,
00895   SPR_BTTUB_X_MONO_REAR_MID   = 2582,
00896   SPR_BTTUB_X_MONO_REAR_END   = 2583,
00897   SPR_BTTUB_Y_MONO_REAR_BEG   = 2584,
00898   SPR_BTTUB_Y_MONO_REAR_MID   = 2585,
00899   SPR_BTTUB_Y_MONO_REAR_END   = 2586,
00900   SPR_BTTUB_X_MGLV_REAR_BEG   = 2587,
00901   SPR_BTTUB_X_MGLV_REAR_MID   = 2588,
00902   SPR_BTTUB_X_MGLV_REAR_END   = 2589,
00903   SPR_BTTUB_Y_MGLV_REAR_BEG   = 2590,
00904   SPR_BTTUB_Y_MGLV_REAR_MID   = 2591,
00905   SPR_BTTUB_Y_MGLV_REAR_END   = 2592,
00906 
00907 
00908   /* ramps (for all bridges except wood and tubular?)*/
00909   SPR_BTGEN_RAIL_X_SLOPE_DOWN = 2437,
00910   SPR_BTGEN_RAIL_X_SLOPE_UP   = 2438,
00911   SPR_BTGEN_RAIL_Y_SLOPE_DOWN = 2439,
00912   SPR_BTGEN_RAIL_Y_SLOPE_UP   = 2440,
00913   SPR_BTGEN_RAIL_RAMP_X_UP    = 2441,
00914   SPR_BTGEN_RAIL_RAMP_X_DOWN  = 2442,
00915   SPR_BTGEN_RAIL_RAMP_Y_UP    = 2443,
00916   SPR_BTGEN_RAIL_RAMP_Y_DOWN  = 2444,
00917   SPR_BTGEN_ROAD_X_SLOPE_DOWN = 2445,
00918   SPR_BTGEN_ROAD_X_SLOPE_UP   = 2446,
00919   SPR_BTGEN_ROAD_Y_SLOPE_DOWN = 2447,
00920   SPR_BTGEN_ROAD_Y_SLOPE_UP   = 2448,
00921   SPR_BTGEN_ROAD_RAMP_X_UP    = 2449,
00922   SPR_BTGEN_ROAD_RAMP_X_DOWN  = 2450,
00923   SPR_BTGEN_ROAD_RAMP_Y_UP    = 2451,
00924   SPR_BTGEN_ROAD_RAMP_Y_DOWN  = 2452,
00925   SPR_BTGEN_MONO_X_SLOPE_DOWN = 4326,
00926   SPR_BTGEN_MONO_X_SLOPE_UP   = 4327,
00927   SPR_BTGEN_MONO_Y_SLOPE_DOWN = 4328,
00928   SPR_BTGEN_MONO_Y_SLOPE_UP   = 4329,
00929   SPR_BTGEN_MONO_RAMP_X_UP    = 4330,
00930   SPR_BTGEN_MONO_RAMP_X_DOWN  = 4331,
00931   SPR_BTGEN_MONO_RAMP_Y_UP    = 4332,
00932   SPR_BTGEN_MONO_RAMP_Y_DOWN  = 4333,
00933   SPR_BTGEN_MGLV_X_SLOPE_DOWN = 4366,
00934   SPR_BTGEN_MGLV_X_SLOPE_UP   = 4367,
00935   SPR_BTGEN_MGLV_Y_SLOPE_DOWN = 4368,
00936   SPR_BTGEN_MGLV_Y_SLOPE_UP   = 4369,
00937   SPR_BTGEN_MGLV_RAMP_X_UP    = 4370,
00938   SPR_BTGEN_MGLV_RAMP_X_DOWN  = 4371,
00939   SPR_BTGEN_MGLV_RAMP_Y_UP    = 4372,
00940   SPR_BTGEN_MGLV_RAMP_Y_DOWN  = 4373,
00941 
00942   /* Vehicle view sprites */
00943   SPR_CENTRE_VIEW_VEHICLE   = 683,
00944   SPR_SEND_TRAIN_TODEPOT    = 685,
00945   SPR_SEND_ROADVEH_TODEPOT  = 686,
00946   SPR_SEND_AIRCRAFT_TODEPOT = 687,
00947   SPR_SEND_SHIP_TODEPOT     = 688,
00948 
00949   SPR_IGNORE_SIGNALS        = 689,
00950   SPR_SHOW_ORDERS           = 690,
00951   SPR_SHOW_VEHICLE_DETAILS  = 691,
00952   SPR_REFIT_VEHICLE         = 692,
00953   SPR_FORCE_VEHICLE_TURN    = 715,
00954 
00955   /* Vehicle sprite-flags (red/green) */
00956   SPR_FLAG_VEH_STOPPED  = 3090,
00957   SPR_FLAG_VEH_RUNNING  = 3091,
00958 
00959   SPR_VEH_BUS_SW_VIEW   = 3097,
00960   SPR_VEH_BUS_SIDE_VIEW = 3098,
00961 
00962   /* Rotor sprite numbers */
00963   SPR_ROTOR_STOPPED   = 3901,
00964   SPR_ROTOR_MOVING_1  = 3902,
00965   SPR_ROTOR_MOVING_3  = 3904,
00966 
00967   /* Town/house sprites */
00968   SPR_LIFT = 1443,
00969 
00970   //used in town_land.h
00971   //CNST1..3 = Those are the different stages of construction
00972   //The last 2 hexas correspond to the type of building it represent, if any
00973   SPR_CNST1_TALLOFFICE_00                 = 1421,
00974   SPR_CNST2_TALLOFFICE_00                 = 1422,
00975   SPR_CNST3_TALLOFFICE_00                 = 1423,
00976   SPR_GROUND_TALLOFFICE_00                = 1424,
00977   SPR_BUILD_TALLOFFICE_00                 = 1425, //temperate
00978   SPR_CNST1_OFFICE_01                     = 1426,
00979   SPR_CNST2_OFFICE_01                     = 1427,
00980   SPR_BUILD_OFFICE_01                     = 1428, //temperate
00981   SPR_GROUND_OFFICE_01                    = 1429,
00982   SPR_CNST1_SMLBLCKFLATS_02               = 1430, //Small Block of Flats
00983   SPR_CNST2_SMLBLCKFLATS_02               = 1431,
00984   SPR_BUILD_SMLBLCKFLATS_02               = 1432, //temperate
00985   SPR_GROUND_SMLBLCKFLATS_02              = 1433,
00986   SPR_CNST1_TEMPCHURCH                    = 1434,
00987   SPR_CNST2_TEMPCHURCH                    = 1435,
00988   SPR_BUILD_TEMPCHURCH                    = 1436,
00989   SPR_GROUND_TEMPCHURCH                   = 1437,
00990   SPR_CNST1_LARGEOFFICE_04                = 1440,
00991   SPR_CNST2_LARGEOFFICE_04                = 1441,
00992   SPR_BUILD_LARGEOFFICE_04                = 1442, // temperate, sub-arctic, subtropical
00993   SPR_BUILD_LARGEOFFICE_04_SNOW           = 4569, // same, with snow
00994   // These are in fact two houses for the same houseID.  so V1 and V2
00995   SPR_CNST1_TOWNHOUSE_06_V1               = 1444,
00996   SPR_CNST2_TOWNHOUSE_06_V1               = 1445,
00997   SPR_BUILD_TOWNHOUSE_06_V1               = 1446, // 1st variation
00998   SPR_GRND_TOWNHOUSE_06_V1                = 1447,
00999   SPR_CNST1_TOWNHOUSE_06_V2               = 1501, // used as ground, but is stage1
01000   SPR_CNST1_TOWNHOUSE_06_V2_P             = 1502, // pipes extensions for previous
01001   SPR_CNST2_TOWNHOUSE_06_V2_G             = 1503, // Ground of cnst stage 2
01002   SPR_CNST2_TOWNHOUSE_06_V2               = 1504, // real cnst stage 2
01003   SPR_GRND_TOWNHOUSE_06_V2                = 1505,
01004   SPR_BUILD_TOWNHOUSE_06_V2               = 1506, // 2nd variation
01005   SPR_CNST1_HOTEL_07_NW                   = 1448,
01006   SPR_CNST2_HOTEL_07_NW                   = 1449,
01007   SPR_BUILD_HOTEL_07_NW                   = 1450,
01008   SPR_CNST1_HOTEL_07_SE                   = 1451,
01009   SPR_CNST2_HOTEL_07_SE                   = 1452,
01010   SPR_BUILD_HOTEL_07_SE                   = 1453,
01011   SPR_STATUE_HORSERIDER_09                = 1454,
01012   SPR_FOUNTAIN_0A                         = 1455,
01013   SPR_PARKSTATUE_0B                       = 1456,
01014   SPR_PARKALLEY_0C                        = 1457,
01015   SPR_CNST1_OFFICE_0D                     = 1458,
01016   SPR_CNST2_OFFICE_0D                     = 1459,
01017   SPR_BUILD_OFFICE_0D                     = 1460,
01018   SPR_CNST1_SHOPOFFICE_0E                 = 1461,
01019   SPR_CNST2_SHOPOFFICE_0E                 = 1462,
01020   SPR_BUILD_SHOPOFFICE_0E                 = 1463,
01021   SPR_CNST1_SHOPOFFICE_0F                 = 1464,
01022   SPR_CNST2_SHOPOFFICE_0F                 = 1465,
01023   SPR_BUILD_SHOPOFFICE_0F                 = 1466,
01024 
01025   /* Easter egg/disaster sprites */
01026   SPR_BLIMP                  = 3905, // Zeppelin
01027   SPR_BLIMP_CRASHING         = 3906,
01028   SPR_BLIMP_CRASHED          = 3907,
01029   SPR_UFO_SMALL_SCOUT        = 3908, // XCOM - UFO Defense
01030   SPR_UFO_SMALL_SCOUT_DARKER = 3909,
01031   SPR_SUB_SMALL_NE           = 3910, // Silent Service
01032   SPR_SUB_SMALL_SE           = 3911,
01033   SPR_SUB_SMALL_SW           = 3912,
01034   SPR_SUB_SMALL_NW           = 3913,
01035   SPR_SUB_LARGE_NE           = 3914,
01036   SPR_SUB_LARGE_SE           = 3915,
01037   SPR_SUB_LARGE_SW           = 3916,
01038   SPR_SUB_LARGE_NW           = 3917,
01039   SPR_F_15                   = 3918, // F-15 Strike Eagle
01040   SPR_F_15_FIRING            = 3919,
01041   SPR_UFO_HARVESTER          = 3920, // XCOM - UFO Defense
01042   SPR_XCOM_SKYRANGER         = 3921,
01043   SPR_AH_64A                 = 3922, // Gunship
01044   SPR_AH_64A_FIRING          = 3923,
01045 
01046   /* main_gui.c */
01047   SPR_IMG_TERRAFORM_UP    = 694,
01048   SPR_IMG_TERRAFORM_DOWN  = 695,
01049   SPR_IMG_DYNAMITE        = 703,
01050   SPR_IMG_ROCKS           = 4084,
01051   SPR_IMG_LIGHTHOUSE_DESERT = 4085, // XXX - is Desert image on the desert-climate
01052   SPR_IMG_TRANSMITTER     = 4086,
01053   SPR_IMG_LEVEL_LAND      = SPR_OPENTTD_BASE + 91,
01054   SPR_IMG_BUILD_CANAL     = SPR_OPENTTD_BASE + 88,
01055   SPR_IMG_BUILD_RIVER     = SPR_OPENTTD_BASE + 136,
01056   SPR_IMG_BUILD_LOCK      = SPR_CANALS_BASE + 64,
01057   SPR_IMG_PAUSE           = 726,
01058   SPR_IMG_FASTFORWARD     = SPR_OPENTTD_BASE + 90,
01059   SPR_IMG_SETTINGS        = 751,
01060   SPR_IMG_SAVE            = 724,
01061   SPR_IMG_SMALLMAP        = 708,
01062   SPR_IMG_TOWN            = 4077,
01063   SPR_IMG_SUBSIDIES       = 679,
01064   SPR_IMG_COMPANY_LIST    = 1299,
01065   SPR_IMG_COMPANY_FINANCE = 737,
01066   SPR_IMG_COMPANY_GENERAL = 743,
01067   SPR_IMG_GRAPHS          = 745,
01068   SPR_IMG_COMPANY_LEAGUE  = 684,
01069   SPR_IMG_SHOW_COUNTOURS  = 738,
01070   SPR_IMG_SHOW_VEHICLES   = 739,
01071   SPR_IMG_SHOW_ROUTES     = 740,
01072   SPR_IMG_INDUSTRY        = 741,
01073   SPR_IMG_PLANTTREES      = 742,
01074   SPR_IMG_TRAINLIST       = 731,
01075   SPR_IMG_TRUCKLIST       = 732,
01076   SPR_IMG_SHIPLIST        = 733,
01077   SPR_IMG_AIRPLANESLIST   = 734,
01078   SPR_IMG_ZOOMIN          = 735,
01079   SPR_IMG_ZOOMOUT         = 736,
01080   SPR_IMG_BUILDRAIL       = 727,
01081   SPR_IMG_BUILDROAD       = 728,
01082   SPR_IMG_BUILDWATER      = 729,
01083   SPR_IMG_BUILDAIR        = 730,
01084   SPR_IMG_LANDSCAPING     = 4083,
01085   SPR_IMG_MUSIC           = 713,
01086   SPR_IMG_MESSAGES        = 680,
01087   SPR_IMG_QUERY           = 723,
01088   SPR_IMG_SIGN            = 4082,
01089   SPR_IMG_BUY_LAND        = 4791,
01090 
01091   /* OPEN TRANSPORT TYCOON in gamescreen */
01092   SPR_OTTD_O                = 4842,
01093   SPR_OTTD_P                = 4841,
01094   SPR_OTTD_E                = SPR_OPENTTD_BASE + 12,
01095   SPR_OTTD_D                = SPR_OPENTTD_BASE + 13,
01096   SPR_OTTD_N                = 4839,
01097   SPR_OTTD_T                = 4836,
01098   SPR_OTTD_R                = 4837,
01099   SPR_OTTD_A                = 4838,
01100   SPR_OTTD_S                = 4840,
01101   SPR_OTTD_Y                = 4843,
01102   SPR_OTTD_C                = 4844,
01103 
01104   SPR_HIGHSCORE_CHART_BEGIN = 4804,
01105   SPR_TYCOON_IMG1_BEGIN     = 4814,
01106   SPR_TYCOON_IMG2_BEGIN     = 4824,
01107 
01108   /* Industry sprites */
01109   SPR_IT_SUGAR_MINE_SIEVE         = 4775,
01110   SPR_IT_SUGAR_MINE_CLOUDS        = 4784,
01111   SPR_IT_SUGAR_MINE_PILE          = 4780,
01112   SPR_IT_TOFFEE_QUARRY_TOFFEE     = 4766,
01113   SPR_IT_TOFFEE_QUARRY_SHOVEL     = 4767,
01114   SPR_IT_BUBBLE_GENERATOR_SPRING  = 4746,
01115   SPR_IT_BUBBLE_GENERATOR_BUBBLE  = 4747,
01116   SPR_IT_TOY_FACTORY_STAMP_HOLDER = 4717,
01117   SPR_IT_TOY_FACTORY_STAMP        = 4718,
01118   SPR_IT_TOY_FACTORY_CLAY         = 4719,
01119   SPR_IT_TOY_FACTORY_ROBOT        = 4720,
01120   SPR_IT_POWER_PLANT_TRANSFORMERS = 2054,
01121 
01122   /*small icons of cargo available in station waiting*/
01123   SPR_CARGO_PASSENGER             = 4297,
01124   SPR_CARGO_COAL                  = 4298,
01125   SPR_CARGO_MAIL                  = 4299,
01126   SPR_CARGO_OIL                   = 4300,
01127   SPR_CARGO_LIVESTOCK             = 4301,
01128   SPR_CARGO_GOODS                 = 4302,
01129   SPR_CARGO_GRAIN                 = 4303,
01130   SPR_CARGO_WOOD                  = 4304,
01131   SPR_CARGO_IRON_ORE              = 4305,
01132   SPR_CARGO_STEEL                 = 4306,
01133   SPR_CARGO_VALUES_GOLD           = 4307,  /*shared between temperate and arctic*/
01134   SPR_CARGO_FRUIT                 = 4308,
01135   SPR_CARGO_COPPER_ORE            = 4309,
01136   SPR_CARGO_WATERCOLA             = 4310,  /*shared between desert and toyland*/
01137   SPR_CARGO_DIAMONDS              = 4311,
01138   SPR_CARGO_FOOD                  = 4312,
01139   SPR_CARGO_PAPER                 = 4313,
01140   SPR_CARGO_RUBBER                = 4314,
01141   SPR_CARGO_CANDY                 = 4315,
01142   SPR_CARGO_SUGAR                 = 4316,
01143   SPR_CARGO_TOYS                  = 4317,
01144   SPR_CARGO_COTTONCANDY           = 4318,
01145   SPR_CARGO_FIZZYDRINK            = 4319,
01146   SPR_CARGO_TOFFEE                = 4320,
01147   SPR_CARGO_BUBBLES               = 4321,
01148   SPR_CARGO_PLASTIC               = 4322,
01149   SPR_CARGO_BATTERIES             = 4323,
01150 
01151   /* Effect vehicles */
01152   SPR_BULLDOZER_NE = 1416,
01153   SPR_BULLDOZER_SE = 1417,
01154   SPR_BULLDOZER_SW = 1418,
01155   SPR_BULLDOZER_NW = 1419,
01156 
01157   SPR_SMOKE_0 = 2040,
01158   SPR_SMOKE_1 = 2041,
01159   SPR_SMOKE_2 = 2042,
01160   SPR_SMOKE_3 = 2043,
01161   SPR_SMOKE_4 = 2044,
01162 
01163   SPR_DIESEL_SMOKE_0 = 3073,
01164   SPR_DIESEL_SMOKE_1 = 3074,
01165   SPR_DIESEL_SMOKE_2 = 3075,
01166   SPR_DIESEL_SMOKE_3 = 3076,
01167   SPR_DIESEL_SMOKE_4 = 3077,
01168   SPR_DIESEL_SMOKE_5 = 3078,
01169 
01170   SPR_STEAM_SMOKE_0 = 3079,
01171   SPR_STEAM_SMOKE_1 = 3080,
01172   SPR_STEAM_SMOKE_2 = 3081,
01173   SPR_STEAM_SMOKE_3 = 3082,
01174   SPR_STEAM_SMOKE_4 = 3083,
01175 
01176   SPR_ELECTRIC_SPARK_0 = 3084,
01177   SPR_ELECTRIC_SPARK_1 = 3085,
01178   SPR_ELECTRIC_SPARK_2 = 3086,
01179   SPR_ELECTRIC_SPARK_3 = 3087,
01180   SPR_ELECTRIC_SPARK_4 = 3088,
01181   SPR_ELECTRIC_SPARK_5 = 3089,
01182 
01183   SPR_CHIMNEY_SMOKE_0 = 3701,
01184   SPR_CHIMNEY_SMOKE_1 = 3702,
01185   SPR_CHIMNEY_SMOKE_2 = 3703,
01186   SPR_CHIMNEY_SMOKE_3 = 3704,
01187   SPR_CHIMNEY_SMOKE_4 = 3705,
01188   SPR_CHIMNEY_SMOKE_5 = 3706,
01189   SPR_CHIMNEY_SMOKE_6 = 3707,
01190   SPR_CHIMNEY_SMOKE_7 = 3708,
01191 
01192   SPR_EXPLOSION_LARGE_0 = 3709,
01193   SPR_EXPLOSION_LARGE_1 = 3710,
01194   SPR_EXPLOSION_LARGE_2 = 3711,
01195   SPR_EXPLOSION_LARGE_3 = 3712,
01196   SPR_EXPLOSION_LARGE_4 = 3713,
01197   SPR_EXPLOSION_LARGE_5 = 3714,
01198   SPR_EXPLOSION_LARGE_6 = 3715,
01199   SPR_EXPLOSION_LARGE_7 = 3716,
01200   SPR_EXPLOSION_LARGE_8 = 3717,
01201   SPR_EXPLOSION_LARGE_9 = 3718,
01202   SPR_EXPLOSION_LARGE_A = 3719,
01203   SPR_EXPLOSION_LARGE_B = 3720,
01204   SPR_EXPLOSION_LARGE_C = 3721,
01205   SPR_EXPLOSION_LARGE_D = 3722,
01206   SPR_EXPLOSION_LARGE_E = 3723,
01207   SPR_EXPLOSION_LARGE_F = 3724,
01208 
01209   SPR_EXPLOSION_SMALL_0 = 3725,
01210   SPR_EXPLOSION_SMALL_1 = 3726,
01211   SPR_EXPLOSION_SMALL_2 = 3727,
01212   SPR_EXPLOSION_SMALL_3 = 3728,
01213   SPR_EXPLOSION_SMALL_4 = 3729,
01214   SPR_EXPLOSION_SMALL_5 = 3730,
01215   SPR_EXPLOSION_SMALL_6 = 3731,
01216   SPR_EXPLOSION_SMALL_7 = 3732,
01217   SPR_EXPLOSION_SMALL_8 = 3733,
01218   SPR_EXPLOSION_SMALL_9 = 3734,
01219   SPR_EXPLOSION_SMALL_A = 3735,
01220   SPR_EXPLOSION_SMALL_B = 3736,
01221 
01222   SPR_BREAKDOWN_SMOKE_0 = 3737,
01223   SPR_BREAKDOWN_SMOKE_1 = 3738,
01224   SPR_BREAKDOWN_SMOKE_2 = 3739,
01225   SPR_BREAKDOWN_SMOKE_3 = 3740,
01226 
01227   SPR_BUBBLE_0 = 4748,
01228   SPR_BUBBLE_1 = 4749,
01229   SPR_BUBBLE_2 = 4750,
01230   SPR_BUBBLE_GENERATE_0 = 4751,
01231   SPR_BUBBLE_GENERATE_1 = 4752,
01232   SPR_BUBBLE_GENERATE_2 = 4753,
01233   SPR_BUBBLE_GENERATE_3 = 4754,
01234   SPR_BUBBLE_BURST_0 = 4755,
01235   SPR_BUBBLE_BURST_1 = 4756,
01236   SPR_BUBBLE_BURST_2 = 4757,
01237   SPR_BUBBLE_ABSORB_0 = 4758,
01238   SPR_BUBBLE_ABSORB_1 = 4759,
01239   SPR_BUBBLE_ABSORB_2 = 4760,
01240   SPR_BUBBLE_ABSORB_3 = 4761,
01241   SPR_BUBBLE_ABSORB_4 = 4762,
01242 
01243   /* Electrified rail build menu */
01244   SPR_BUILD_NS_ELRAIL = SPR_ELRAIL_BASE + 36,
01245   SPR_BUILD_X_ELRAIL  = SPR_ELRAIL_BASE + 37,
01246   SPR_BUILD_EW_ELRAIL = SPR_ELRAIL_BASE + 38,
01247   SPR_BUILD_Y_ELRAIL  = SPR_ELRAIL_BASE + 39,
01248   SPR_BUILD_TUNNEL_ELRAIL = SPR_ELRAIL_BASE + 44,
01249 
01250   /* airport_gui.c */
01251   SPR_IMG_AIRPORT       = 744,
01252 
01253   /* dock_gui.c */
01254   SPR_IMG_SHIP_DEPOT    = 748,
01255   SPR_IMG_SHIP_DOCK     = 746,
01256   SPR_IMG_BOUY          = 693,
01257   SPR_IMG_AQUEDUCT      = SPR_OPENTTD_BASE + 145,
01258 
01259   /* music_gui.c */
01260   SPR_IMG_SKIP_TO_PREV  = 709,
01261   SPR_IMG_SKIP_TO_NEXT  = 710,
01262   SPR_IMG_STOP_MUSIC    = 711,
01263   SPR_IMG_PLAY_MUSIC    = 712,
01264 
01265   /* road_gui.c */
01266   SPR_IMG_ROAD_Y_DIR    = 1309,
01267   SPR_IMG_ROAD_X_DIR    = 1310,
01268   SPR_IMG_AUTOROAD      = SPR_OPENTTD_BASE + 82,
01269   SPR_IMG_ROAD_DEPOT    = 1295,
01270   SPR_IMG_BUS_STATION   = 749,
01271   SPR_IMG_TRUCK_BAY     = 750,
01272   SPR_IMG_BRIDGE        = 2594,
01273   SPR_IMG_ROAD_TUNNEL   = 2429,
01274   SPR_IMG_REMOVE        = 714,
01275   SPR_IMG_ROAD_ONE_WAY  = SPR_OPENTTD_BASE + 134,
01276   SPR_IMG_TRAMWAY_Y_DIR = SPR_TRAMWAY_BASE + 0,
01277   SPR_IMG_TRAMWAY_X_DIR = SPR_TRAMWAY_BASE + 1,
01278   SPR_IMG_AUTOTRAM      = SPR_OPENTTD_BASE + 84,
01279 
01280   /* rail_gui.c */
01281   SPR_IMG_RAIL_NS    = 1251,
01282   SPR_IMG_RAIL_NE    = 1252,
01283   SPR_IMG_RAIL_EW    = 1253,
01284   SPR_IMG_RAIL_NW    = 1254,
01285   SPR_IMG_AUTORAIL   = SPR_OPENTTD_BASE + 53,
01286   SPR_IMG_AUTOELRAIL = SPR_OPENTTD_BASE + 57,
01287   SPR_IMG_AUTOMONO   = SPR_OPENTTD_BASE + 63,
01288   SPR_IMG_AUTOMAGLEV = SPR_OPENTTD_BASE + 69,
01289 
01290   SPR_IMG_WAYPOINT = SPR_OPENTTD_BASE + 76,
01291 
01292   SPR_IMG_DEPOT_RAIL   = 1294,
01293   SPR_IMG_DEPOT_ELRAIL = SPR_OPENTTD_BASE + 61,
01294   SPR_IMG_DEPOT_MONO   = SPR_OPENTTD_BASE + 67,
01295   SPR_IMG_DEPOT_MAGLEV = SPR_OPENTTD_BASE + 73,
01296 
01297   SPR_IMG_RAIL_STATION = 1298,
01298   SPR_IMG_RAIL_SIGNALS = 1291,
01299 
01300   SPR_IMG_SIGNAL_ELECTRIC_NORM     = 1287,
01301   SPR_IMG_SIGNAL_ELECTRIC_ENTRY    = SPR_SIGNALS_BASE +  12,
01302   SPR_IMG_SIGNAL_ELECTRIC_EXIT     = SPR_SIGNALS_BASE +  28,
01303   SPR_IMG_SIGNAL_ELECTRIC_COMBO    = SPR_SIGNALS_BASE +  44,
01304   SPR_IMG_SIGNAL_ELECTRIC_PBS      = SPR_SIGNALS_BASE + 124,
01305   SPR_IMG_SIGNAL_ELECTRIC_PBS_OWAY = SPR_SIGNALS_BASE + 140,
01306   SPR_IMG_SIGNAL_SEMAPHORE_NORM    = SPR_SIGNALS_BASE +  60,
01307   SPR_IMG_SIGNAL_SEMAPHORE_ENTRY   = SPR_SIGNALS_BASE +  76,
01308   SPR_IMG_SIGNAL_SEMAPHORE_EXIT    = SPR_SIGNALS_BASE +  92,
01309   SPR_IMG_SIGNAL_SEMAPHORE_COMBO   = SPR_SIGNALS_BASE + 108,
01310   SPR_IMG_SIGNAL_SEMAPHORE_PBS     = SPR_SIGNALS_BASE + 188,
01311   SPR_IMG_SIGNAL_SEMAPHORE_PBS_OWAY= SPR_SIGNALS_BASE + 204,
01312   SPR_IMG_SIGNAL_CONVERT           = SPR_OPENTTD_BASE + 135,
01313 
01314   SPR_IMG_TUNNEL_RAIL   = 2430,
01315   SPR_IMG_TUNNEL_MONO   = 2431,
01316   SPR_IMG_TUNNEL_MAGLEV = 2432,
01317 
01318   SPR_IMG_CONVERT_RAIL   = SPR_OPENTTD_BASE + 55,
01319   SPR_IMG_CONVERT_ELRAIL = SPR_OPENTTD_BASE + 59,
01320   SPR_IMG_CONVERT_MONO   = SPR_OPENTTD_BASE + 65,
01321   SPR_IMG_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 71,
01322 
01323   /* intro_gui.c, genworld_gui.c */
01324   SPR_SELECT_TEMPERATE           = 4882,
01325   SPR_SELECT_TEMPERATE_PUSHED    = 4883,
01326   SPR_SELECT_SUB_ARCTIC          = 4884,
01327   SPR_SELECT_SUB_ARCTIC_PUSHED   = 4885,
01328   SPR_SELECT_SUB_TROPICAL        = 4886,
01329   SPR_SELECT_SUB_TROPICAL_PUSHED = 4887,
01330   SPR_SELECT_TOYLAND             = 4888,
01331   SPR_SELECT_TOYLAND_PUSHED      = 4889,
01332 };
01333 
01335 enum CursorSprite {
01336   /* Terraform */
01337   /* Cursors */
01338   SPR_CURSOR_MOUSE          = 0,
01339   SPR_CURSOR_ZZZ            = 1,
01340   SPR_CURSOR_BOUY           = 702,
01341   SPR_CURSOR_QUERY          = 719,
01342   SPR_CURSOR_HQ             = 720,
01343   SPR_CURSOR_SHIP_DEPOT     = 721,
01344   SPR_CURSOR_SIGN           = 722,
01345 
01346   SPR_CURSOR_TREE           = 2010,
01347   SPR_CURSOR_BUY_LAND       = 4792,
01348   SPR_CURSOR_LEVEL_LAND     = SPR_OPENTTD_BASE + 92,
01349 
01350   SPR_CURSOR_TOWN           = 4080,
01351   SPR_CURSOR_INDUSTRY       = 4081,
01352   SPR_CURSOR_ROCKY_AREA     = 4087,
01353   SPR_CURSOR_LIGHTHOUSE     = 4088,
01354   SPR_CURSOR_TRANSMITTER    = 4089,
01355 
01356   /* airport cursors */
01357   SPR_CURSOR_AIRPORT        = 2724,
01358 
01359   /* dock cursors */
01360   SPR_CURSOR_DOCK           = 3668,
01361   SPR_CURSOR_CANAL          = SPR_OPENTTD_BASE + 89,
01362   SPR_CURSOR_LOCK           = SPR_OPENTTD_BASE + 87,
01363   SPR_CURSOR_RIVER          = SPR_OPENTTD_BASE + 137,
01364   SPR_CURSOR_AQUEDUCT       = SPR_OPENTTD_BASE + 146,
01365 
01366   /* shared road & rail cursors */
01367   SPR_CURSOR_BRIDGE         = 2593,
01368 
01369   /* rail cursors */
01370   SPR_CURSOR_NS_TRACK       = 1263,
01371   SPR_CURSOR_SWNE_TRACK     = 1264,
01372   SPR_CURSOR_EW_TRACK       = 1265,
01373   SPR_CURSOR_NWSE_TRACK     = 1266,
01374 
01375   SPR_CURSOR_NS_MONO        = 1267,
01376   SPR_CURSOR_SWNE_MONO      = 1268,
01377   SPR_CURSOR_EW_MONO        = 1269,
01378   SPR_CURSOR_NWSE_MONO      = 1270,
01379 
01380   SPR_CURSOR_NS_MAGLEV      = 1271,
01381   SPR_CURSOR_SWNE_MAGLEV    = 1272,
01382   SPR_CURSOR_EW_MAGLEV      = 1273,
01383   SPR_CURSOR_NWSE_MAGLEV    = 1274,
01384 
01385   SPR_CURSOR_NS_ELRAIL      = SPR_ELRAIL_BASE + 40,
01386   SPR_CURSOR_SWNE_ELRAIL    = SPR_ELRAIL_BASE + 41,
01387   SPR_CURSOR_EW_ELRAIL      = SPR_ELRAIL_BASE + 42,
01388   SPR_CURSOR_NWSE_ELRAIL    = SPR_ELRAIL_BASE + 43,
01389 
01390   SPR_CURSOR_RAIL_STATION   = 1300,
01391 
01392   SPR_CURSOR_TUNNEL_RAIL    = 2434,
01393   SPR_CURSOR_TUNNEL_ELRAIL  = SPR_ELRAIL_BASE + 45,
01394   SPR_CURSOR_TUNNEL_MONO    = 2435,
01395   SPR_CURSOR_TUNNEL_MAGLEV  = 2436,
01396 
01397   SPR_CURSOR_AUTORAIL       = SPR_OPENTTD_BASE + 54,
01398   SPR_CURSOR_AUTOELRAIL     = SPR_OPENTTD_BASE + 58,
01399   SPR_CURSOR_AUTOMONO       = SPR_OPENTTD_BASE + 64,
01400   SPR_CURSOR_AUTOMAGLEV     = SPR_OPENTTD_BASE + 70,
01401 
01402   SPR_CURSOR_WAYPOINT       = SPR_OPENTTD_BASE + 77,
01403 
01404   SPR_CURSOR_RAIL_DEPOT     = 1296,
01405   SPR_CURSOR_ELRAIL_DEPOT   = SPR_OPENTTD_BASE + 62,
01406   SPR_CURSOR_MONO_DEPOT     = SPR_OPENTTD_BASE + 68,
01407   SPR_CURSOR_MAGLEV_DEPOT   = SPR_OPENTTD_BASE + 74,
01408 
01409   SPR_CURSOR_CONVERT_RAIL   = SPR_OPENTTD_BASE + 56,
01410   SPR_CURSOR_CONVERT_ELRAIL = SPR_OPENTTD_BASE + 60,
01411   SPR_CURSOR_CONVERT_MONO   = SPR_OPENTTD_BASE + 66,
01412   SPR_CURSOR_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 72,
01413 
01414   /* road cursors */
01415   SPR_CURSOR_ROAD_NESW      = 1311,
01416   SPR_CURSOR_ROAD_NWSE      = 1312,
01417   SPR_CURSOR_AUTOROAD       = SPR_OPENTTD_BASE + 83,
01418   SPR_CURSOR_TRAMWAY_NESW   = SPR_TRAMWAY_BASE + 2,
01419   SPR_CURSOR_TRAMWAY_NWSE   = SPR_TRAMWAY_BASE + 3,
01420   SPR_CURSOR_AUTOTRAM       = SPR_OPENTTD_BASE + 85,
01421 
01422   SPR_CURSOR_ROAD_DEPOT     = 1297,
01423   SPR_CURSOR_BUS_STATION    = 2725,
01424   SPR_CURSOR_TRUCK_STATION  = 2726,
01425   SPR_CURSOR_ROAD_TUNNEL    = 2433,
01426 
01427   SPR_CURSOR_CLONE_TRAIN    = SPR_OPENTTD_BASE + 110,
01428   SPR_CURSOR_CLONE_ROADVEH  = SPR_OPENTTD_BASE + 111,
01429   SPR_CURSOR_CLONE_SHIP     = SPR_OPENTTD_BASE + 112,
01430   SPR_CURSOR_CLONE_AIRPLANE = SPR_OPENTTD_BASE + 113,
01431 };
01432 
01434 enum AnimCursors {
01435   ANIMCURSOR_DEMOLISH     = -1, 
01436   ANIMCURSOR_LOWERLAND    = -2, 
01437   ANIMCURSOR_RAISELAND    = -3, 
01438   ANIMCURSOR_PICKSTATION  = -4, 
01439   ANIMCURSOR_BUILDSIGNALS = -5, 
01440 };
01441 
01452 enum SpriteSetup {
01453   TRANSPARENT_BIT = 31,       
01454   RECOLOR_BIT = 30,           
01455   OFFSET_BIT = 29,
01456   OPAQUE_BIT = 28,
01457 
01458   PALETTE_WIDTH = 24,         
01459   SPRITE_WIDTH = 24,          
01460 };
01461 
01470 enum Modifiers {
01471   SPRITE_MODIFIER_USE_OFFSET    = OFFSET_BIT,
01473   SPRITE_MODIFIER_OPAQUE        = OPAQUE_BIT,
01475   PALETTE_MODIFIER_TRANSPARENT  = TRANSPARENT_BIT,
01477   PALETTE_MODIFIER_COLOR        = RECOLOR_BIT,
01478 };
01479 
01483 enum SpriteMasks {
01485   MAX_SPRITES = 1 << SPRITE_WIDTH,
01487   SPRITE_MASK = MAX_SPRITES - 1,
01488 
01489   MAX_PALETTES = 1 << PALETTE_WIDTH,
01491   PALETTE_MASK = MAX_PALETTES - 1,
01492 };
01493 
01494 assert_compile( (1 << TRANSPARENT_BIT & SPRITE_MASK) == 0 );
01495 assert_compile( (1 << RECOLOR_BIT & SPRITE_MASK) == 0 );
01496 assert_compile( !(TRANSPARENT_BIT == RECOLOR_BIT) );
01497 assert_compile( (1 << TRANSPARENT_BIT & PALETTE_MASK) == 0);
01498 assert_compile( (1 << RECOLOR_BIT & PALETTE_MASK) == 0 );
01499 
01500 enum Recoloring {
01501   PALETTE_RECOLOR_START       = 0x307,
01502 };
01503 
01504 
01505 static const SpriteID PALETTE_CRASH = 0x324;
01506 static const SpriteID PAL_NONE = 0;
01507 
01508   //note: these numbers are already the modified once the renderer needs.
01509   //the actual sprite number is the upper 16 bits of the number
01510 
01512 static const SpriteID PALETTE_TILE_RED_PULSATING  = 0x303;
01514 static const SpriteID PALETTE_SEL_TILE_RED        = 0x304;
01516 static const SpriteID PALETTE_SEL_TILE_BLUE       = 0x305;
01517   //0x306 is a real sprite (the little dot you get when you try to raise/lower a corner of the map
01518   //here the color switches begin
01519   //use this if you add stuff to the value, so that the resulting color
01520   //is not a fixed value.
01521   //NOTE THAT THE SWITCH 0x8000 is NOT present in _TO_COLORS yet!
01522 enum PaletteSprites {
01523   PALETTE_TO_DARK_BLUE        = 0x307,
01524   PALETTE_TO_PALE_GREEN       = 0x308,
01525   PALETTE_TO_PINK             = 0x309,
01526   PALETTE_TO_YELLOW           = 0x30A,
01527   PALETTE_TO_RED              = 0x30B,
01528   PALETTE_TO_LIGHT_BLUE       = 0x30C,
01529   PALETTE_TO_GREEN            = 0x30D,
01530   PALETTE_TO_DARK_GREEN       = 0x30E,
01531   PALETTE_TO_BLUE             = 0x30F,
01532   PALETTE_TO_CREAM            = 0x310,
01533   //maybe don't use as company color because it doesn't display in the graphs?
01534   PALETTE_TO_MAUVE            = 0x311,
01535   PALETTE_TO_PURPLE           = 0x312,
01536   PALETTE_TO_ORANGE           = 0x313,
01537   PALETTE_TO_BROWN            = 0x314,
01538   PALETTE_TO_GREY             = 0x315,
01539   PALETTE_TO_WHITE            = 0x316,
01540   //sets color to bare land stuff, for rail and road (and crossings)
01541   PALETTE_TO_BARE_LAND        = 0x317,
01542   //XXX is 318-31A really not used?
01543   PALETTE_TO_STRUCT_BLUE      = 0x31B,
01544   //structure color to something brownish (for the cantilever bridges for example)
01545   PALETTE_TO_STRUCT_BROWN     = 0x31C,
01546   PALETTE_TO_STRUCT_WHITE     = 0x31D,
01547   //sets bridge or structure to red, little concrete one and cantilever use this one for example
01548   PALETTE_TO_STRUCT_RED       = 0x31E,
01549   PALETTE_TO_STRUCT_GREEN     = 0x31F,
01550   PALETTE_TO_STRUCT_CONCRETE  = 0x320, //Sets the suspension bridge to concrete, also other strucutures use it
01551   PALETTE_TO_STRUCT_YELLOW    = 0x321, //Sets the bridge color to yellow (suspension and tubular)
01552   PALETTE_TO_TRANSPARENT      = 0x322, //This sets the sprite to transparent
01553   //This is used for changing the tubular bridges to the silicon display, or some grayish color
01554   PALETTE_TO_STRUCT_GREY      = 0x323,
01555 
01556   //XXX - const - PALETTE_CRASH               = 0x324,  //this changes stuff to the "crash color"
01557   //XXX another place where structures are colored.
01558   //I'm not sure which colors these are
01559   PALETTE_59E                 = 0x59E,
01560   PALETTE_59F                 = 0x59F,
01561 };
01562 
01563 #endif /* SPRITES_H */

Generated on Fri Jan 9 19:01:52 2009 for openttd by  doxygen 1.5.6