sprites.h

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

Generated on Mon Sep 22 20:34:19 2008 for openttd by  doxygen 1.5.6