# sprites.h

Go to the documentation of this file.

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