tron@2186: /* $Id$ */ tron@2186: celestar@2187: /** @file sprites.h rubidium@4549: * This file contails all sprite-related enums and defines. These consist mainly of rubidium@4549: * the sprite numbers and a bunch of masks and macros to handle sprites and to get rubidium@4549: * rid of all the magic numbers in the code. rubidium@4549: * rubidium@4549: * @NOTE: rubidium@4549: * ALL SPRITE NUMBERS BELOW 5126 are in the main files rubidium@4549: * rubidium@4549: * All elements which consist of two elements should rubidium@4549: * have the same name and then suffixes rubidium@4549: * _GROUND and _BUILD for building-type sprites rubidium@4549: * _REAR and _FRONT for transport-type sprites (tiles where vehicles are on) rubidium@4549: * These sprites are split because of the Z order of the elements rubidium@4549: * (like some parts of a bridge are behind the vehicle, while others are before) rubidium@4549: * rubidium@4549: * rubidium@4549: * All sprites which are described here are referenced only one to a handful of times rubidium@4549: * throughout the code. When introducing new sprite enums, use meaningful names. rubidium@4549: * Don't be lazy and typing, and only use abbrevations when their meaning is clear or rubidium@6729: * the length of the enum would get out of hand. In that case EXPLAIN THE ABBREVATION rubidium@4549: * IN THIS FILE, and perhaps add some comments in the code where it is used. rubidium@4549: * Now, don't whine about this being too much typing work if the enums are like rubidium@4549: * 30 characters in length. If your editor doen't help you simplifying your work, rubidium@4549: * get a proper editor. If your Operating Systems don't have any decent editors, rubidium@4549: * get a proper Operating System. rubidium@4549: * rubidium@4549: * @todo Split the "Sprites" enum into smaller chunks and document them rubidium@4549: */ pasky@513: rubidium@9111: #ifndef SPRITES_H rubidium@9111: #define SPRITES_H rubidium@9111: rubidium@8123: #include "../gfx_type.h" rubidium@8123: pasky@513: enum Sprites { tron@2548: SPR_SELECT_TILE = 752, pasky@513: SPR_DOT = 774, // corner marker for lower/raise land pasky@513: SPR_DOT_SMALL = 4078, pasky@513: SPR_WHITE_POINT = 4079, pasky@513: pasky@513: /* ASCII */ pasky@513: SPR_ASCII_SPACE = 2, pasky@513: SPR_ASCII_SPACE_SMALL = 226, pasky@513: SPR_ASCII_SPACE_BIG = 450, pasky@513: rubidium@7882: SPR_LARGE_SMALL_WINDOW = 682, rubidium@7335: rubidium@7882: /* Extra graphic spritenumbers */ rubidium@7882: SPR_OPENTTD_BASE = 4896, rubidium@8737: OPENTTD_SPRITE_COUNT = 144, dominik@579: rubidium@7882: /* Halftile-selection sprites */ rubidium@7882: SPR_HALFTILE_SELECTION_FLAT = SPR_OPENTTD_BASE, rubidium@7882: SPR_HALFTILE_SELECTION_DOWN = SPR_OPENTTD_BASE + 4, rubidium@7882: SPR_HALFTILE_SELECTION_UP = SPR_OPENTTD_BASE + 8, truelight@862: rubidium@7882: SPR_SQUARE = SPR_OPENTTD_BASE + 38, // colored square (used for newgrf compatibility) rubidium@7882: SPR_BLOT = SPR_OPENTTD_BASE + 39, // colored circle (mainly used as vehicle profit marker and for server compatibility) rubidium@7882: SPR_LOCK = SPR_OPENTTD_BASE + 40, // lock icon (for password protected servers) rubidium@7882: SPR_BOX_EMPTY = SPR_OPENTTD_BASE + 41, rubidium@7882: SPR_BOX_CHECKED = SPR_OPENTTD_BASE + 42, rubidium@7882: SPR_WARNING_SIGN = SPR_OPENTTD_BASE + 43, // warning sign (shown if there are any newgrf errors) rubidium@7882: SPR_WINDOW_RESIZE = SPR_OPENTTD_BASE + 44, // resize icon rubidium@7882: /* Arrow icons pointing in all 4 directions */ rubidium@7882: SPR_ARROW_DOWN = SPR_OPENTTD_BASE + 45, rubidium@7882: SPR_ARROW_UP = SPR_OPENTTD_BASE + 46, rubidium@7882: SPR_ARROW_LEFT = SPR_OPENTTD_BASE + 47, rubidium@7882: SPR_ARROW_RIGHT = SPR_OPENTTD_BASE + 48, rubidium@7882: SPR_HOUSE_ICON = SPR_OPENTTD_BASE + 49, rubidium@7882: SPR_SHARED_ORDERS_ICON = SPR_OPENTTD_BASE + 50, rubidium@7882: SPR_PIN_UP = SPR_OPENTTD_BASE + 51, // pin icon rubidium@7882: SPR_PIN_DOWN = SPR_OPENTTD_BASE + 52, Darkvater@4937: rubidium@8737: /* on screen keyboard icons */ rubidium@8737: SPR_OSK_LEFT = SPR_OPENTTD_BASE + 138, rubidium@8737: SPR_OSK_RIGHT = SPR_OPENTTD_BASE + 139, rubidium@8737: SPR_OSK_CAPS = SPR_OPENTTD_BASE + 140, rubidium@8737: SPR_OSK_SHIFT = SPR_OPENTTD_BASE + 141, rubidium@8737: SPR_OSK_BACKSPACE = SPR_OPENTTD_BASE + 142, rubidium@8737: SPR_OSK_SPECIAL = SPR_OPENTTD_BASE + 143, rubidium@8737: bjarni@2244: /* Clone vehicles stuff */ rubidium@7882: SPR_CLONE_TRAIN = SPR_OPENTTD_BASE + 106, rubidium@7882: SPR_CLONE_ROADVEH = SPR_OPENTTD_BASE + 107, rubidium@7882: SPR_CLONE_SHIP = SPR_OPENTTD_BASE + 108, rubidium@7882: SPR_CLONE_AIRCRAFT = SPR_OPENTTD_BASE + 109, maedhros@6103: rubidium@7882: SPR_SELL_TRAIN = SPR_OPENTTD_BASE + 93, rubidium@7882: SPR_SELL_ROADVEH = SPR_OPENTTD_BASE + 94, rubidium@7882: SPR_SELL_SHIP = SPR_OPENTTD_BASE + 95, rubidium@7882: SPR_SELL_AIRCRAFT = SPR_OPENTTD_BASE + 96, rubidium@7882: SPR_SELL_ALL_TRAIN = SPR_OPENTTD_BASE + 97, rubidium@7882: SPR_SELL_ALL_ROADVEH = SPR_OPENTTD_BASE + 98, rubidium@7882: SPR_SELL_ALL_SHIP = SPR_OPENTTD_BASE + 99, rubidium@7882: SPR_SELL_ALL_AIRCRAFT = SPR_OPENTTD_BASE + 100, rubidium@7882: SPR_REPLACE_TRAIN = SPR_OPENTTD_BASE + 101, rubidium@7882: SPR_REPLACE_ROADVEH = SPR_OPENTTD_BASE + 102, rubidium@7882: SPR_REPLACE_SHIP = SPR_OPENTTD_BASE + 103, rubidium@7882: SPR_REPLACE_AIRCRAFT = SPR_OPENTTD_BASE + 104, rubidium@7882: SPR_SELL_CHAIN_TRAIN = SPR_OPENTTD_BASE + 105, pasky@513: rubidium@7882: SPR_GROUP_CREATE_TRAIN = SPR_OPENTTD_BASE + 114, rubidium@7882: SPR_GROUP_CREATE_ROADVEH = SPR_OPENTTD_BASE + 115, rubidium@7882: SPR_GROUP_CREATE_SHIP = SPR_OPENTTD_BASE + 116, rubidium@7882: SPR_GROUP_CREATE_AIRCRAFT = SPR_OPENTTD_BASE + 117, rubidium@7882: SPR_GROUP_DELETE_TRAIN = SPR_OPENTTD_BASE + 118, rubidium@7882: SPR_GROUP_DELETE_ROADVEH = SPR_OPENTTD_BASE + 119, rubidium@7882: SPR_GROUP_DELETE_SHIP = SPR_OPENTTD_BASE + 120, rubidium@7882: SPR_GROUP_DELETE_AIRCRAFT = SPR_OPENTTD_BASE + 121, rubidium@7882: SPR_GROUP_RENAME_TRAIN = SPR_OPENTTD_BASE + 122, rubidium@7882: SPR_GROUP_RENAME_ROADVEH = SPR_OPENTTD_BASE + 123, rubidium@7882: SPR_GROUP_RENAME_SHIP = SPR_OPENTTD_BASE + 124, rubidium@7882: SPR_GROUP_RENAME_AIRCRAFT = SPR_OPENTTD_BASE + 125, rubidium@7882: SPR_GROUP_REPLACE_ON_TRAIN = SPR_OPENTTD_BASE + 126, rubidium@7882: SPR_GROUP_REPLACE_ON_ROADVEH = SPR_OPENTTD_BASE + 127, rubidium@7882: SPR_GROUP_REPLACE_ON_SHIP = SPR_OPENTTD_BASE + 128, rubidium@7882: SPR_GROUP_REPLACE_ON_AIRCRAFT = SPR_OPENTTD_BASE + 129, rubidium@7882: SPR_GROUP_REPLACE_OFF_TRAIN = SPR_OPENTTD_BASE + 130, rubidium@7882: SPR_GROUP_REPLACE_OFF_ROADVEH = SPR_OPENTTD_BASE + 131, rubidium@7882: SPR_GROUP_REPLACE_OFF_SHIP = SPR_OPENTTD_BASE + 132, rubidium@7882: SPR_GROUP_REPLACE_OFF_AIRCRAFT = SPR_OPENTTD_BASE + 133, rubidium@7882: rubidium@7882: SPR_SIGNALS_BASE = SPR_OPENTTD_BASE + OPENTTD_SPRITE_COUNT, rubidium@7882: PRESIGNAL_SPRITE_COUNT = 48, rubidium@7882: PRESIGNAL_AND_SEMAPHORE_SPRITE_COUNT = 112, rubidium@7882: PRESIGNAL_SEMAPHORE_AND_PBS_SPRITE_COUNT = 240, rubidium@7882: rubidium@7882: SPR_CANALS_BASE = SPR_SIGNALS_BASE + PRESIGNAL_SEMAPHORE_AND_PBS_SPRITE_COUNT, rubidium@7882: CANALS_SPRITE_COUNT = 65, rubidium@7882: rubidium@7882: SPR_SLOPES_BASE = SPR_CANALS_BASE + CANALS_SPRITE_COUNT, rubidium@7882: SPR_SLOPES_INCLINED_OFFSET = 15, rubidium@7882: 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. rubidium@7882: SPR_TRKFOUND_BLOCK_SIZE = 22, // The normal track foundation sprites are organized in blocks of 22. rubidium@7882: NORMAL_FOUNDATION_SPRITE_COUNT = 74, rubidium@7882: /* Halftile foundations */ rubidium@7882: SPR_HALFTILE_FOUNDATION_BASE = SPR_SLOPES_BASE + NORMAL_FOUNDATION_SPRITE_COUNT, rubidium@7882: SPR_HALFTILE_BLOCK_SIZE = 4, // The half tile foundation sprites are organized in blocks of 4. rubidium@7882: NORMAL_AND_HALFTILE_FOUNDATION_SPRITE_COUNT = 90, rubidium@7882: rubidium@7882: SPR_AUTORAIL_BASE = SPR_HALFTILE_FOUNDATION_BASE + NORMAL_AND_HALFTILE_FOUNDATION_SPRITE_COUNT, rubidium@7882: AUTORAIL_SPRITE_COUNT = 55, rubidium@7882: rubidium@7882: SPR_ELRAIL_BASE = SPR_AUTORAIL_BASE + AUTORAIL_SPRITE_COUNT, rubidium@7882: ELRAIL_SPRITE_COUNT = 48, rubidium@7882: rubidium@7882: SPR_2CCMAP_BASE = SPR_ELRAIL_BASE + ELRAIL_SPRITE_COUNT, rubidium@7882: TWOCCMAP_SPRITE_COUNT = 256, rubidium@7882: belugas@8164: /* shore tiles - action 05-0D */ belugas@8164: SPR_SHORE_BASE = SPR_2CCMAP_BASE + TWOCCMAP_SPRITE_COUNT, belugas@8164: SPR_SHORE_SPRITE_COUNT = 18, belugas@8185: SPR_ORIGINALSHORE_START = 4062, belugas@8185: SPR_ORIGINALSHORE_END = 4069, belugas@8164: belugas@8164: SPR_AIRPORTX_BASE = SPR_SHORE_BASE + SPR_SHORE_SPRITE_COUNT, // The sprites used for other airport angles richk@4059: SPR_NEWAIRPORT_TARMAC = SPR_AIRPORTX_BASE, rubidium@7882: SPR_NSRUNWAY1 = SPR_AIRPORTX_BASE + 1, rubidium@7882: SPR_NSRUNWAY2 = SPR_AIRPORTX_BASE + 2, rubidium@7882: SPR_NSRUNWAY3 = SPR_AIRPORTX_BASE + 3, rubidium@7882: SPR_NSRUNWAY4 = SPR_AIRPORTX_BASE + 4, rubidium@7882: SPR_NSRUNWAY_END = SPR_AIRPORTX_BASE + 5, rubidium@7882: SPR_NEWHANGAR_S = SPR_AIRPORTX_BASE + 6, rubidium@7882: SPR_NEWHANGAR_S_WALL = SPR_AIRPORTX_BASE + 7, rubidium@7882: SPR_NEWHANGAR_W = SPR_AIRPORTX_BASE + 8, rubidium@7882: SPR_NEWHANGAR_W_WALL = SPR_AIRPORTX_BASE + 9, rubidium@7882: SPR_NEWHANGAR_N = SPR_AIRPORTX_BASE + 10, rubidium@7882: SPR_NEWHANGAR_E = SPR_AIRPORTX_BASE + 11, rubidium@7882: SPR_NEWHELIPAD = SPR_AIRPORTX_BASE + 12, rubidium@7882: SPR_GRASS_RIGHT = SPR_AIRPORTX_BASE + 13, rubidium@7882: SPR_GRASS_LEFT = SPR_AIRPORTX_BASE + 14, rubidium@7882: AIRPORTX_SPRITE_COUNT = 15, richk@4059: rubidium@7882: SPR_ROADSTOP_BASE = SPR_AIRPORTX_BASE + AIRPORTX_SPRITE_COUNT, // The sprites used for drive-through road stops rubidium@7882: SPR_BUS_STOP_DT_Y_W = SPR_ROADSTOP_BASE, rubidium@7882: SPR_BUS_STOP_DT_Y_E = SPR_ROADSTOP_BASE + 1, rubidium@7882: SPR_BUS_STOP_DT_X_W = SPR_ROADSTOP_BASE + 2, rubidium@7882: SPR_BUS_STOP_DT_X_E = SPR_ROADSTOP_BASE + 3, rubidium@6012: SPR_TRUCK_STOP_DT_Y_W = SPR_ROADSTOP_BASE + 4, rubidium@6012: SPR_TRUCK_STOP_DT_Y_E = SPR_ROADSTOP_BASE + 5, rubidium@6012: SPR_TRUCK_STOP_DT_X_W = SPR_ROADSTOP_BASE + 6, rubidium@6012: SPR_TRUCK_STOP_DT_X_E = SPR_ROADSTOP_BASE + 7, rubidium@7882: ROADSTOP_SPRITE_COUNT = 8, rubidium@6643: rubidium@6691: /* Tramway sprites */ rubidium@7882: SPR_TRAMWAY_BASE = SPR_ROADSTOP_BASE + ROADSTOP_SPRITE_COUNT, rubidium@6691: SPR_TRAMWAY_OVERLAY = SPR_TRAMWAY_BASE + 4, rubidium@6691: SPR_TRAMWAY_TRAM = SPR_TRAMWAY_BASE + 27, rubidium@6691: SPR_TRAMWAY_SLOPED_OFFSET = 11, rubidium@6691: SPR_TRAMWAY_BUS_STOP_DT_Y_W = SPR_TRAMWAY_BASE + 25, rubidium@6691: SPR_TRAMWAY_BUS_STOP_DT_Y_E = SPR_TRAMWAY_BASE + 23, rubidium@6691: SPR_TRAMWAY_BUS_STOP_DT_X_W = SPR_TRAMWAY_BASE + 24, rubidium@6691: SPR_TRAMWAY_BUS_STOP_DT_X_E = SPR_TRAMWAY_BASE + 26, rubidium@6691: SPR_TRAMWAY_PAVED_STRAIGHT_Y = SPR_TRAMWAY_BASE + 46, rubidium@6691: SPR_TRAMWAY_PAVED_STRAIGHT_X = SPR_TRAMWAY_BASE + 47, rubidium@6691: SPR_TRAMWAY_BACK_WIRES_STRAIGHT = SPR_TRAMWAY_BASE + 55, rubidium@6691: SPR_TRAMWAY_FRONT_WIRES_STRAIGHT = SPR_TRAMWAY_BASE + 56, rubidium@6691: SPR_TRAMWAY_BACK_WIRES_SLOPED = SPR_TRAMWAY_BASE + 72, rubidium@6691: SPR_TRAMWAY_FRONT_WIRES_SLOPED = SPR_TRAMWAY_BASE + 68, rubidium@6691: SPR_TRAMWAY_TUNNEL_WIRES = SPR_TRAMWAY_BASE + 80, rubidium@6691: SPR_TRAMWAY_BRIDGE = SPR_TRAMWAY_BASE + 107, rubidium@7882: TRAMWAY_SPRITE_COUNT = 113, rubidium@6691: rubidium@6764: /* One way road sprites */ rubidium@7882: SPR_ONEWAY_BASE = SPR_TRAMWAY_BASE + TRAMWAY_SPRITE_COUNT, rubidium@7882: ONEWAY_SPRITE_COUNT = 6, rubidium@7882: rubidium@7882: /* Flags sprites (in same order as enum NetworkLanguage) */ rubidium@7882: SPR_FLAGS_BASE = SPR_ONEWAY_BASE + ONEWAY_SPRITE_COUNT, glx@8730: FLAGS_SPRITE_COUNT = 36, rubidium@6764: rubidium@7601: /* 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. */ rubidium@7882: SPR_EMPTY_BOUNDING_BOX = SPR_FLAGS_BASE + FLAGS_SPRITE_COUNT, rubidium@7882: EMPTY_BOUNDING_BOX_SPRITE_COUNT = 1, rubidium@7767: rubidium@7882: /* From where can we start putting NewGRFs? */ rubidium@7882: SPR_NEWGRFS_BASE = SPR_EMPTY_BOUNDING_BOX + EMPTY_BOUNDING_BOX_SPRITE_COUNT, glx@6780: pasky@513: /* Manager face sprites */ pasky@513: SPR_GRADIENT = 874, // background gradient behind manager face pasky@513: maedhros@5750: /* Icon showing player colour. */ maedhros@5750: SPR_PLAYER_ICON = 747, maedhros@5750: tron@2535: /* is itself no foundation sprite, because tileh 0 has no foundation */ tron@2535: SPR_FOUNDATION_BASE = 989, tron@2535: pasky@513: /* Shadow cell */ pasky@513: SPR_SHADOW_CELL = 1004, truelight@862: pasky@513: /* Unmovables spritenumbers */ Darkvater@2893: SPR_UNMOVABLE_TRANSMITTER = 2601, Darkvater@2893: SPR_UNMOVABLE_LIGHTHOUSE = 2602, Darkvater@2893: SPR_TINYHQ_NORTH = 2603, Darkvater@2893: SPR_TINYHQ_EAST = 2604, Darkvater@2893: SPR_TINYHQ_WEST = 2605, Darkvater@2893: SPR_TINYHQ_SOUTH = 2606, Darkvater@2893: SPR_SMALLHQ_NORTH = 2607, Darkvater@2893: SPR_SMALLHQ_EAST = 2608, Darkvater@2893: SPR_SMALLHQ_WEST = 2609, Darkvater@2893: SPR_SMALLHQ_SOUTH = 2610, Darkvater@2893: SPR_MEDIUMHQ_NORTH = 2611, Darkvater@2893: SPR_MEDIUMHQ_NORTH_WALL = 2612, Darkvater@2893: SPR_MEDIUMHQ_EAST = 2613, Darkvater@2893: SPR_MEDIUMHQ_EAST_WALL = 2614, Darkvater@2893: SPR_MEDIUMHQ_WEST = 2615, Darkvater@2893: SPR_MEDIUMHQ_WEST_WALL = 2616, //very tiny piece of wall Darkvater@2893: SPR_MEDIUMHQ_SOUTH = 2617, Darkvater@2893: SPR_LARGEHQ_NORTH_GROUND = 2618, Darkvater@2893: SPR_LARGEHQ_NORTH_BUILD = 2619, Darkvater@2893: SPR_LARGEHQ_EAST_GROUND = 2620, Darkvater@2893: SPR_LARGEHQ_EAST_BUILD = 2621, Darkvater@2893: SPR_LARGEHQ_WEST_GROUND = 2622, Darkvater@2893: SPR_LARGEHQ_WEST_BUILD = 2623, Darkvater@2893: SPR_LARGEHQ_SOUTH = 2624, Darkvater@2893: SPR_HUGEHQ_NORTH_GROUND = 2625, Darkvater@2893: SPR_HUGEHQ_NORTH_BUILD = 2626, Darkvater@2893: SPR_HUGEHQ_EAST_GROUND = 2627, Darkvater@2893: SPR_HUGEHQ_EAST_BUILD = 2628, Darkvater@2893: SPR_HUGEHQ_WEST_GROUND = 2629, Darkvater@2893: SPR_HUGEHQ_WEST_BUILD = 2630, Darkvater@2893: SPR_HUGEHQ_SOUTH = 2631, Darkvater@2893: SPR_CONCRETE_GROUND = 1420, tron@2517: SPR_STATUE_COMPANY = 2632, Darkvater@2893: SPR_BOUGHT_LAND = 4790, pasky@513: pasky@513: /* sprites for rail and rail stations*/ Darkvater@2893: SPR_RAIL_SNOW_OFFSET = 26, Darkvater@2893: SPR_MONO_SNOW_OFFSET = 26, Darkvater@2893: SPR_MGLV_SNOW_OFFSET = 26, celestar@2007: peter1138@8547: SPR_ORIGINAL_SIGNALS_BASE = 1275, peter1138@8547: celestar@2007: SPR_RAIL_SINGLE_Y = 1005, tron@2548: SPR_RAIL_SINGLE_X = 1006, tron@2548: SPR_RAIL_SINGLE_NORTH = 1007, tron@2548: SPR_RAIL_SINGLE_SOUTH = 1008, tron@2548: SPR_RAIL_SINGLE_EAST = 1009, tron@2548: SPR_RAIL_SINGLE_WEST = 1010, Darkvater@2893: SPR_RAIL_TRACK_Y = 1011, Darkvater@2893: SPR_RAIL_TRACK_X = 1012, celestar@2007: SPR_RAIL_TRACK_BASE = 1018, celestar@2007: SPR_RAIL_TRACK_N_S = 1035, Darkvater@2893: SPR_RAIL_TRACK_Y_SNOW = 1037, Darkvater@2893: SPR_RAIL_TRACK_X_SNOW = 1038, Darkvater@2893: SPR_RAIL_DEPOT_SE_1 = 1063, Darkvater@2893: SPR_RAIL_DEPOT_SE_2 = 1064, Darkvater@2893: SPR_RAIL_DEPOT_SW_1 = 1065, Darkvater@2893: SPR_RAIL_DEPOT_SW_2 = 1066, Darkvater@2893: SPR_RAIL_DEPOT_NE = 1067, Darkvater@2893: SPR_RAIL_DEPOT_NW = 1068, Darkvater@2893: SPR_RAIL_PLATFORM_Y_FRONT = 1069, Darkvater@2893: SPR_RAIL_PLATFORM_X_REAR = 1070, Darkvater@2893: SPR_RAIL_PLATFORM_Y_REAR = 1071, Darkvater@2893: SPR_RAIL_PLATFORM_X_FRONT = 1072, Darkvater@2893: SPR_RAIL_PLATFORM_BUILDING_X = 1073, Darkvater@2893: SPR_RAIL_PLATFORM_BUILDING_Y = 1074, Darkvater@2893: SPR_RAIL_PLATFORM_PILLARS_Y_FRONT = 1075, Darkvater@2893: SPR_RAIL_PLATFORM_PILLARS_X_REAR = 1076, Darkvater@2893: SPR_RAIL_PLATFORM_PILLARS_Y_REAR = 1077, Darkvater@2893: SPR_RAIL_PLATFORM_PILLARS_X_FRONT = 1078, Darkvater@2893: SPR_RAIL_ROOF_STRUCTURE_X_TILE_A = 1079, //First half of the roof structure Darkvater@2893: SPR_RAIL_ROOF_STRUCTURE_Y_TILE_A = 1080, Darkvater@2893: SPR_RAIL_ROOF_STRUCTURE_X_TILE_B = 1081, //Second half of the roof structure Darkvater@2893: SPR_RAIL_ROOF_STRUCTURE_Y_TILE_B = 1082, Darkvater@2893: SPR_RAIL_ROOF_GLASS_X_TILE_A = 1083, //First half of the roof glass Darkvater@2893: SPR_RAIL_ROOF_GLASS_Y_TILE_A = 1084, Darkvater@2893: SPR_RAIL_ROOF_GLASS_X_TILE_B = 1085, //second half of the roof glass Darkvater@2893: SPR_RAIL_ROOF_GLASS_Y_TILE_B = 1086, celestar@2007: SPR_MONO_SINGLE_Y = 1087, tron@2548: SPR_MONO_SINGLE_X = 1088, tron@2548: SPR_MONO_SINGLE_NORTH = 1089, tron@2548: SPR_MONO_SINGLE_SOUTH = 1090, tron@2548: SPR_MONO_SINGLE_EAST = 1091, tron@2548: SPR_MONO_SINGLE_WEST = 1092, celestar@2007: SPR_MONO_TRACK_Y = 1093, celestar@2007: SPR_MONO_TRACK_BASE = 1100, tron@2548: SPR_MONO_TRACK_N_S = 1117, celestar@2007: SPR_MGLV_SINGLE_Y = 1169, tron@2548: SPR_MGLV_SINGLE_X = 1170, tron@2548: SPR_MGLV_SINGLE_NORTH = 1171, tron@2548: SPR_MGLV_SINGLE_SOUTH = 1172, tron@2548: SPR_MGLV_SINGLE_EAST = 1173, tron@2548: SPR_MGLV_SINGLE_WEST = 1174, celestar@2007: SPR_MGLV_TRACK_Y = 1175, celestar@2007: SPR_MGLV_TRACK_BASE = 1182, tron@2548: SPR_MGLV_TRACK_N_S = 1199, rubidium@7882: SPR_WAYPOINT_X_1 = SPR_OPENTTD_BASE + 78, rubidium@7882: SPR_WAYPOINT_X_2 = SPR_OPENTTD_BASE + 79, rubidium@7882: SPR_WAYPOINT_Y_1 = SPR_OPENTTD_BASE + 80, rubidium@7882: SPR_WAYPOINT_Y_2 = SPR_OPENTTD_BASE + 81, Darkvater@2893: OFFSET_TILEH_IMPOSSIBLE = 0, Darkvater@2893: OFFSET_TILEH_1 = 14, Darkvater@2893: OFFSET_TILEH_2 = 15, Darkvater@2893: OFFSET_TILEH_3 = 22, Darkvater@2893: OFFSET_TILEH_4 = 13, Darkvater@2893: OFFSET_TILEH_6 = 21, Darkvater@2893: OFFSET_TILEH_7 = 17, Darkvater@2893: OFFSET_TILEH_8 = 12, Darkvater@2893: OFFSET_TILEH_9 = 23, Darkvater@2893: OFFSET_TILEH_11 = 18, Darkvater@2893: OFFSET_TILEH_12 = 20, Darkvater@2893: OFFSET_TILEH_13 = 19, Darkvater@2893: OFFSET_TILEH_14 = 16, pasky@513: truelight@7307: /* Track fences */ truelight@7307: SPR_TRACK_FENCE_FLAT_X = 1301, truelight@7307: SPR_TRACK_FENCE_FLAT_Y = 1302, truelight@7307: SPR_TRACK_FENCE_FLAT_VERT = 1303, truelight@7307: SPR_TRACK_FENCE_FLAT_HORZ = 1304, truelight@7307: SPR_TRACK_FENCE_SLOPE_SW = 1305, truelight@7307: SPR_TRACK_FENCE_SLOPE_SE = 1306, truelight@7307: SPR_TRACK_FENCE_SLOPE_NE = 1307, truelight@7307: SPR_TRACK_FENCE_SLOPE_NW = 1308, truelight@7307: celestar@3355: /* Elrail stuff */ celestar@3355: /* Wires. First identifier is the direction of the track, second is the required placement of the pylon. rubidium@4549: * "short" denotes a wire that requires a pylon on each end. Third identifier is the direction of the slope rubidium@4549: * (in positive coordinate direction) */ rubidium@7882: SPR_WIRE_X_SHORT = SPR_ELRAIL_BASE + 0, rubidium@7882: SPR_WIRE_Y_SHORT = SPR_ELRAIL_BASE + 1, rubidium@7882: SPR_WIRE_EW_SHORT = SPR_ELRAIL_BASE + 2, rubidium@7882: SPR_WIRE_NS_SHORT = SPR_ELRAIL_BASE + 3, rubidium@7882: SPR_WIRE_X_SHORT_DOWN = SPR_ELRAIL_BASE + 4, rubidium@7882: SPR_WIRE_Y_SHORT_UP = SPR_ELRAIL_BASE + 5, rubidium@7882: SPR_WIRE_X_SHORT_UP = SPR_ELRAIL_BASE + 6, rubidium@7882: SPR_WIRE_Y_SHORT_DOWN = SPR_ELRAIL_BASE + 7, celestar@3355: rubidium@7882: SPR_WIRE_X_SW = SPR_ELRAIL_BASE + 8, rubidium@7882: SPR_WIRE_Y_SE = SPR_ELRAIL_BASE + 9, rubidium@7882: SPR_WIRE_EW_E = SPR_ELRAIL_BASE + 10, rubidium@7882: SPR_WIRE_NS_S = SPR_ELRAIL_BASE + 11, rubidium@7882: SPR_WIRE_X_SW_DOWN = SPR_ELRAIL_BASE + 12, rubidium@7882: SPR_WIRE_Y_SE_UP = SPR_ELRAIL_BASE + 13, rubidium@7882: SPR_WIRE_X_SW_UP = SPR_ELRAIL_BASE + 14, rubidium@7882: SPR_WIRE_Y_SE_DOWN = SPR_ELRAIL_BASE + 15, celestar@3355: rubidium@7882: SPR_WIRE_X_NE = SPR_ELRAIL_BASE + 16, rubidium@7882: SPR_WIRE_Y_NW = SPR_ELRAIL_BASE + 17, rubidium@7882: SPR_WIRE_EW_W = SPR_ELRAIL_BASE + 18, rubidium@7882: SPR_WIRE_NS_N = SPR_ELRAIL_BASE + 19, rubidium@7882: SPR_WIRE_X_NE_DOWN = SPR_ELRAIL_BASE + 20, rubidium@7882: SPR_WIRE_Y_NW_UP = SPR_ELRAIL_BASE + 21, rubidium@7882: SPR_WIRE_X_NE_UP = SPR_ELRAIL_BASE + 22, rubidium@7882: SPR_WIRE_Y_NW_DOWN = SPR_ELRAIL_BASE + 23, celestar@3355: celestar@3355: /* Tunnel entries */ rubidium@7882: SPR_WIRE_TUNNEL_NE = SPR_ELRAIL_BASE + 24, rubidium@7882: SPR_WIRE_TUNNEL_SE = SPR_ELRAIL_BASE + 25, rubidium@7882: SPR_WIRE_TUNNEL_SW = SPR_ELRAIL_BASE + 26, rubidium@7882: SPR_WIRE_TUNNEL_NW = SPR_ELRAIL_BASE + 27, rubidium@6268: rubidium@6268: /* Depot entries */ rubidium@7882: SPR_WIRE_DEPOT_SW = SPR_ELRAIL_BASE + 24, rubidium@7882: SPR_WIRE_DEPOT_NW = SPR_ELRAIL_BASE + 25, rubidium@7882: SPR_WIRE_DEPOT_NE = SPR_ELRAIL_BASE + 26, rubidium@7882: SPR_WIRE_DEPOT_SE = SPR_ELRAIL_BASE + 27, celestar@3355: celestar@3355: celestar@3355: /* Pylons, first identifier is the direction of the track, second the placement relative to the track */ rubidium@7882: SPR_PYLON_Y_NE = SPR_ELRAIL_BASE + 28, rubidium@7882: SPR_PYLON_Y_SW = SPR_ELRAIL_BASE + 29, rubidium@7882: SPR_PYLON_X_NW = SPR_ELRAIL_BASE + 30, rubidium@7882: SPR_PYLON_X_SE = SPR_ELRAIL_BASE + 31, rubidium@7882: SPR_PYLON_EW_N = SPR_ELRAIL_BASE + 32, rubidium@7882: SPR_PYLON_EW_S = SPR_ELRAIL_BASE + 33, rubidium@7882: SPR_PYLON_NS_W = SPR_ELRAIL_BASE + 34, rubidium@7882: SPR_PYLON_NS_E = SPR_ELRAIL_BASE + 35, celestar@3355: rubidium@6012: /* sprites for roads */ rubidium@6012: SPR_ROAD_PAVED_STRAIGHT_Y = 1313, rubidium@6012: SPR_ROAD_PAVED_STRAIGHT_X = 1314, rubidium@6012: pasky@513: /* sprites for airports and airfields*/ pasky@513: /* Small airports are AIRFIELD, everything else is AIRPORT */ Darkvater@2893: SPR_HELIPORT = 2633, Darkvater@2893: SPR_AIRPORT_APRON = 2634, Darkvater@2893: SPR_AIRPORT_AIRCRAFT_STAND = 2635, Darkvater@2893: SPR_AIRPORT_TAXIWAY_NS_WEST = 2636, Darkvater@2893: SPR_AIRPORT_TAXIWAY_EW_SOUTH = 2637, Darkvater@2893: SPR_AIRPORT_TAXIWAY_XING_SOUTH = 2638, Darkvater@2893: SPR_AIRPORT_TAXIWAY_XING_WEST = 2639, Darkvater@2893: SPR_AIRPORT_TAXIWAY_NS_CTR = 2640, Darkvater@2893: SPR_AIRPORT_TAXIWAY_XING_EAST = 2641, Darkvater@2893: SPR_AIRPORT_TAXIWAY_NS_EAST = 2642, Darkvater@2893: SPR_AIRPORT_TAXIWAY_EW_NORTH = 2643, Darkvater@2893: SPR_AIRPORT_TAXIWAY_EW_CTR = 2644, Darkvater@2893: SPR_AIRPORT_RUNWAY_EXIT_A = 2645, Darkvater@2893: SPR_AIRPORT_RUNWAY_EXIT_B = 2646, Darkvater@2893: SPR_AIRPORT_RUNWAY_EXIT_C = 2647, Darkvater@2893: SPR_AIRPORT_RUNWAY_EXIT_D = 2648, Darkvater@2893: SPR_AIRPORT_RUNWAY_END = 2649, //We should have different ends Darkvater@2893: SPR_AIRPORT_TERMINAL_A = 2650, Darkvater@2893: SPR_AIRPORT_TOWER = 2651, Darkvater@2893: SPR_AIRPORT_CONCOURSE = 2652, Darkvater@2893: SPR_AIRPORT_TERMINAL_B = 2653, Darkvater@2893: SPR_AIRPORT_TERMINAL_C = 2654, Darkvater@2893: SPR_AIRPORT_HANGAR_FRONT = 2655, Darkvater@2893: SPR_AIRPORT_HANGAR_REAR = 2656, Darkvater@2893: SPR_AIRFIELD_HANGAR_FRONT = 2657, Darkvater@2893: SPR_AIRFIELD_HANGAR_REAR = 2658, Darkvater@2893: SPR_AIRPORT_JETWAY_1 = 2659, Darkvater@2893: SPR_AIRPORT_JETWAY_2 = 2660, Darkvater@2893: SPR_AIRPORT_JETWAY_3 = 2661, Darkvater@2893: SPR_AIRPORT_PASSENGER_TUNNEL = 2662, Darkvater@2893: SPR_AIRPORT_FENCE_Y = 2663, Darkvater@2893: SPR_AIRPORT_FENCE_X = 2664, Darkvater@2893: SPR_AIRFIELD_TERM_A = 2665, Darkvater@2893: SPR_AIRFIELD_TERM_B = 2666, Darkvater@2893: SPR_AIRFIELD_TERM_C_GROUND = 2667, Darkvater@2893: SPR_AIRFIELD_TERM_C_BUILD = 2668, Darkvater@2893: SPR_AIRFIELD_APRON_A = 2669, Darkvater@2893: SPR_AIRFIELD_APRON_B = 2670, Darkvater@2893: SPR_AIRFIELD_APRON_C = 2671, Darkvater@2893: SPR_AIRFIELD_APRON_D = 2672, Darkvater@2893: SPR_AIRFIELD_RUNWAY_NEAR_END = 2673, Darkvater@2893: SPR_AIRFIELD_RUNWAY_MIDDLE = 2674, Darkvater@2893: SPR_AIRFIELD_RUNWAY_FAR_END = 2675, Darkvater@2893: SPR_AIRFIELD_WIND_1 = 2676, Darkvater@2893: SPR_AIRFIELD_WIND_2 = 2677, Darkvater@2893: SPR_AIRFIELD_WIND_3 = 2678, Darkvater@2893: SPR_AIRFIELD_WIND_4 = 2679, Darkvater@2893: SPR_AIRPORT_RADAR_1 = 2680, Darkvater@2893: SPR_AIRPORT_RADAR_2 = 2681, Darkvater@2893: SPR_AIRPORT_RADAR_3 = 2682, Darkvater@2893: SPR_AIRPORT_RADAR_4 = 2683, Darkvater@2893: SPR_AIRPORT_RADAR_5 = 2684, Darkvater@2893: SPR_AIRPORT_RADAR_6 = 2685, Darkvater@2893: SPR_AIRPORT_RADAR_7 = 2686, Darkvater@2893: SPR_AIRPORT_RADAR_8 = 2687, Darkvater@2893: SPR_AIRPORT_RADAR_9 = 2688, Darkvater@2893: SPR_AIRPORT_RADAR_A = 2689, Darkvater@2893: SPR_AIRPORT_RADAR_B = 2690, Darkvater@2893: SPR_AIRPORT_RADAR_C = 2691, belugas@7896: SPR_AIRPORT_HELIPAD = SPR_OPENTTD_BASE + 86, rubidium@4434: SPR_AIRPORT_HELIDEPOT_OFFICE = 2095, pasky@513: pasky@513: /* Road Stops */ pasky@513: /* Road stops have a ground tile and 3 buildings, one on each side Darkvater@2893: * (except the side where the entry is). These are marked _A _B and _C */ Darkvater@2893: SPR_BUS_STOP_NE_GROUND = 2692, Darkvater@2893: SPR_BUS_STOP_SE_GROUND = 2693, Darkvater@2893: SPR_BUS_STOP_SW_GROUND = 2694, Darkvater@2893: SPR_BUS_STOP_NW_GROUND = 2695, Darkvater@2893: SPR_BUS_STOP_NE_BUILD_A = 2696, Darkvater@2893: SPR_BUS_STOP_SE_BUILD_A = 2697, Darkvater@2893: SPR_BUS_STOP_SW_BUILD_A = 2698, Darkvater@2893: SPR_BUS_STOP_NW_BUILD_A = 2699, Darkvater@2893: SPR_BUS_STOP_NE_BUILD_B = 2700, Darkvater@2893: SPR_BUS_STOP_SE_BUILD_B = 2701, Darkvater@2893: SPR_BUS_STOP_SW_BUILD_B = 2702, Darkvater@2893: SPR_BUS_STOP_NW_BUILD_B = 2703, Darkvater@2893: SPR_BUS_STOP_NE_BUILD_C = 2704, Darkvater@2893: SPR_BUS_STOP_SE_BUILD_C = 2705, Darkvater@2893: SPR_BUS_STOP_SW_BUILD_C = 2706, Darkvater@2893: SPR_BUS_STOP_NW_BUILD_C = 2707, Darkvater@2893: SPR_TRUCK_STOP_NE_GROUND = 2708, Darkvater@2893: SPR_TRUCK_STOP_SE_GROUND = 2709, Darkvater@2893: SPR_TRUCK_STOP_SW_GROUND = 2710, Darkvater@2893: SPR_TRUCK_STOP_NW_GROUND = 2711, Darkvater@2893: SPR_TRUCK_STOP_NE_BUILD_A = 2712, Darkvater@2893: SPR_TRUCK_STOP_SE_BUILD_A = 2713, Darkvater@2893: SPR_TRUCK_STOP_SW_BUILD_A = 2714, Darkvater@2893: SPR_TRUCK_STOP_NW_BUILD_A = 2715, Darkvater@2893: SPR_TRUCK_STOP_NE_BUILD_B = 2716, Darkvater@2893: SPR_TRUCK_STOP_SE_BUILD_B = 2717, Darkvater@2893: SPR_TRUCK_STOP_SW_BUILD_B = 2718, Darkvater@2893: SPR_TRUCK_STOP_NW_BUILD_B = 2719, Darkvater@2893: SPR_TRUCK_STOP_NE_BUILD_C = 2720, Darkvater@2893: SPR_TRUCK_STOP_SE_BUILD_C = 2721, Darkvater@2893: SPR_TRUCK_STOP_SW_BUILD_C = 2722, Darkvater@2893: SPR_TRUCK_STOP_NW_BUILD_C = 2723, pasky@513: pasky@513: /* Sprites for docks */ pasky@513: /* Docks consist of two tiles, the sloped one and the flat one */ Darkvater@2893: SPR_DOCK_SLOPE_NE = 2727, Darkvater@2893: SPR_DOCK_SLOPE_SE = 2728, Darkvater@2893: SPR_DOCK_SLOPE_SW = 2729, Darkvater@2893: SPR_DOCK_SLOPE_NW = 2730, Darkvater@2893: SPR_DOCK_FLAT_X = 2731, //for NE and SW Darkvater@2893: SPR_DOCK_FLAT_Y = 2732, //for NW and SE Darkvater@2893: SPR_BUOY = 4076, //XXX this sucks, because it displays wrong stuff on canals pasky@513: pasky@513: /* Sprites for road */ Darkvater@2893: SPR_ROAD_Y = 1332, Darkvater@2893: SPR_ROAD_X = 1333, Darkvater@2893: SPR_ROAD_Y_SNOW = 1351, Darkvater@2893: SPR_ROAD_X_SNOW = 1352, pasky@513: tron@2535: SPR_EXCAVATION_X = 1414, tron@2535: SPR_EXCAVATION_Y = 1415, tron@2535: pasky@513: /* Landscape sprites */ Darkvater@2893: SPR_FLAT_BARE_LAND = 3924, Darkvater@2893: SPR_FLAT_1_THIRD_GRASS_TILE = 3943, Darkvater@2893: SPR_FLAT_2_THIRD_GRASS_TILE = 3962, Darkvater@2893: SPR_FLAT_GRASS_TILE = 3981, Darkvater@2893: SPR_FLAT_ROUGH_LAND = 4000, Darkvater@2893: SPR_FLAT_ROUGH_LAND_1 = 4019, Darkvater@2893: SPR_FLAT_ROUGH_LAND_2 = 4020, Darkvater@2893: SPR_FLAT_ROUGH_LAND_3 = 4021, Darkvater@2893: SPR_FLAT_ROUGH_LAND_4 = 4022, Darkvater@2893: SPR_FLAT_ROCKY_LAND_1 = 4023, Darkvater@2893: SPR_FLAT_ROCKY_LAND_2 = 4042, Darkvater@2893: SPR_FLAT_WATER_TILE = 4061, Darkvater@2893: SPR_FLAT_1_QUART_SNOWY_TILE = 4493, Darkvater@2893: SPR_FLAT_2_QUART_SNOWY_TILE = 4512, Darkvater@2893: SPR_FLAT_3_QUART_SNOWY_TILE = 4531, Darkvater@2893: SPR_FLAT_SNOWY_TILE = 4550, pasky@513: pasky@513: /* Hedge, Farmland-fence sprites */ Darkvater@2893: SPR_HEDGE_BUSHES = 4090, Darkvater@2893: SPR_HEDGE_BUSHES_WITH_GATE = 4096, Darkvater@2893: SPR_HEDGE_FENCE = 4102, Darkvater@2893: SPR_HEDGE_BLOOMBUSH_YELLOW = 4108, Darkvater@2893: SPR_HEDGE_BLOOMBUSH_RED = 4114, Darkvater@2893: SPR_HEDGE_STONE = 4120, pasky@513: pasky@513: /* Farmland sprites, only flat tiles listed, various stages */ Darkvater@2893: SPR_FARMLAND_BARE = 4126, Darkvater@2893: SPR_FARMLAND_STATE_1 = 4145, Darkvater@2893: SPR_FARMLAND_STATE_2 = 4164, Darkvater@2893: SPR_FARMLAND_STATE_3 = 4183, Darkvater@2893: SPR_FARMLAND_STATE_4 = 4202, Darkvater@2893: SPR_FARMLAND_STATE_5 = 4221, Darkvater@2893: SPR_FARMLAND_STATE_6 = 4240, Darkvater@2893: SPR_FARMLAND_STATE_7 = 4259, Darkvater@2893: SPR_FARMLAND_HAYPACKS = 4278, pasky@513: pasky@513: /* Water-related sprites */ Darkvater@2893: SPR_SHIP_DEPOT_SE_FRONT = 4070, Darkvater@2893: SPR_SHIP_DEPOT_SW_FRONT = 4071, Darkvater@2893: SPR_SHIP_DEPOT_NW = 4072, Darkvater@2893: SPR_SHIP_DEPOT_NE = 4073, Darkvater@2893: SPR_SHIP_DEPOT_SE_REAR = 4074, Darkvater@2893: SPR_SHIP_DEPOT_SW_REAR = 4075, pasky@513: //here come sloped water sprites rubidium@7882: SPR_WATER_SLOPE_Y_UP = SPR_CANALS_BASE + 0, //Water flowing negative Y direction rubidium@7882: SPR_WATER_SLOPE_X_DOWN = SPR_CANALS_BASE + 1, //positive X rubidium@7882: SPR_WATER_SLOPE_X_UP = SPR_CANALS_BASE + 2, //negative X rubidium@7882: SPR_WATER_SLOPE_Y_DOWN = SPR_CANALS_BASE + 3, //positive Y pasky@513: //sprites for the shiplifts pasky@513: //there are 4 kinds of shiplifts, each of them is 3 tiles long. pasky@513: //the four kinds are running in the X and Y direction and pasky@513: //are "lowering" either in the "+" or the "-" direction. pasky@513: //the three tiles are the center tile (where the slope is) pasky@513: //and a bottom and a top tile rubidium@7882: SPR_SHIPLIFT_BASE = SPR_CANALS_BASE + 4, rubidium@7882: SPR_SHIPLIFT_Y_UP_CENTER_REAR = SPR_CANALS_BASE + 4, rubidium@7882: SPR_SHIPLIFT_X_DOWN_CENTER_REAR = SPR_CANALS_BASE + 5, rubidium@7882: SPR_SHIPLIFT_X_UP_CENTER_REAR = SPR_CANALS_BASE + 6, rubidium@7882: SPR_SHIPLIFT_Y_DOWN_CENTER_REAR = SPR_CANALS_BASE + 7, rubidium@7882: SPR_SHIPLIFT_Y_UP_CENTER_FRONT = SPR_CANALS_BASE + 8, rubidium@7882: SPR_SHIPLIFT_X_DOWN_CENTER_FRONT = SPR_CANALS_BASE + 9, rubidium@7882: SPR_SHIPLIFT_X_UP_CENTER_FRONT = SPR_CANALS_BASE + 10, rubidium@7882: SPR_SHIPLIFT_Y_DOWN_CENTER_FRONT = SPR_CANALS_BASE + 11, rubidium@7882: SPR_SHIPLIFT_Y_UP_BOTTOM_REAR = SPR_CANALS_BASE + 12, rubidium@7882: SPR_SHIPLIFT_X_DOWN_BOTTOM_REAR = SPR_CANALS_BASE + 13, rubidium@7882: SPR_SHIPLIFT_X_UP_BOTTOM_REAR = SPR_CANALS_BASE + 14, rubidium@7882: SPR_SHIPLIFT_Y_DOWN_BOTTOM_REAR = SPR_CANALS_BASE + 15, rubidium@7882: SPR_SHIPLIFT_Y_UP_BOTTOM_FRONT = SPR_CANALS_BASE + 16, rubidium@7882: SPR_SHIPLIFT_X_DOWN_BOTTOM_FRONT = SPR_CANALS_BASE + 17, rubidium@7882: SPR_SHIPLIFT_X_UP_BOTTOM_FRONT = SPR_CANALS_BASE + 18, rubidium@7882: SPR_SHIPLIFT_Y_DOWN_BOTTOM_FRONT = SPR_CANALS_BASE + 19, rubidium@7882: SPR_SHIPLIFT_Y_UP_TOP_REAR = SPR_CANALS_BASE + 20, rubidium@7882: SPR_SHIPLIFT_X_DOWN_TOP_REAR = SPR_CANALS_BASE + 21, rubidium@7882: SPR_SHIPLIFT_X_UP_TOP_REAR = SPR_CANALS_BASE + 22, rubidium@7882: SPR_SHIPLIFT_Y_DOWN_TOP_REAR = SPR_CANALS_BASE + 23, rubidium@7882: SPR_SHIPLIFT_Y_UP_TOP_FRONT = SPR_CANALS_BASE + 24, rubidium@7882: SPR_SHIPLIFT_X_DOWN_TOP_FRONT = SPR_CANALS_BASE + 25, rubidium@7882: SPR_SHIPLIFT_X_UP_TOP_FRONT = SPR_CANALS_BASE + 26, rubidium@7882: SPR_SHIPLIFT_Y_DOWN_TOP_FRONT = SPR_CANALS_BASE + 27, rubidium@7882: SPR_CANAL_DIKES_BASE = SPR_CANALS_BASE + 52, pasky@513: pasky@513: /* Sprites for tunnels and bridges */ tron@2511: SPR_TUNNEL_ENTRY_REAR_RAIL = 2365, tron@2511: SPR_TUNNEL_ENTRY_REAR_MONO = 2373, tron@2511: SPR_TUNNEL_ENTRY_REAR_MAGLEV = 2381, tron@2511: SPR_TUNNEL_ENTRY_REAR_ROAD = 2389, tron@2511: tron@2511: /* Level crossings */ tron@2511: SPR_CROSSING_OFF_X_RAIL = 1370, tron@2511: SPR_CROSSING_OFF_X_MONO = 1382, tron@2511: SPR_CROSSING_OFF_X_MAGLEV = 1394, pasky@513: tron@2548: /* bridge type sprites */ rubidium@7882: SPR_PILLARS_BASE = SPR_OPENTTD_BASE + 14, pasky@513: pasky@513: /* Wooden bridge (type 0) */ Darkvater@2893: SPR_BTWDN_RAIL_Y_REAR = 2545, Darkvater@2893: SPR_BTWDN_RAIL_X_REAR = 2546, Darkvater@2893: SPR_BTWDN_ROAD_Y_REAR = 2547, Darkvater@2893: SPR_BTWDN_ROAD_X_REAR = 2548, Darkvater@2893: SPR_BTWDN_Y_FRONT = 2549, Darkvater@2893: SPR_BTWDN_X_FRONT = 2550, Darkvater@2893: SPR_BTWDN_Y_PILLAR = 2551, Darkvater@2893: SPR_BTWDN_X_PILLAR = 2552, celestar@3922: SPR_BTWDN_MONO_Y_REAR = 4360, celestar@3922: SPR_BTWDN_MONO_X_REAR = 4361, Darkvater@2893: SPR_BTWDN_MGLV_Y_REAR = 4400, Darkvater@2893: SPR_BTWDN_MGLV_X_REAR = 4401, pasky@513: /* ramps */ Darkvater@2893: SPR_BTWDN_ROAD_RAMP_Y_DOWN = 2529, Darkvater@2893: SPR_BTWDN_ROAD_RAMP_X_DOWN = 2530, Darkvater@2893: SPR_BTWDN_ROAD_RAMP_X_UP = 2531, //for some weird reason the order is swapped Darkvater@2893: SPR_BTWDN_ROAD_RAMP_Y_UP = 2532, //between X and Y. Darkvater@2893: SPR_BTWDN_ROAD_Y_SLOPE_UP = 2533, Darkvater@2893: SPR_BTWDN_ROAD_X_SLOPE_UP = 2534, Darkvater@2893: SPR_BTWDN_ROAD_Y_SLOPE_DOWN = 2535, pasky@513: SPR_BTWDN_ROAD_X_SLOPE_DOWN = 2536, Darkvater@2893: SPR_BTWDN_RAIL_RAMP_Y_DOWN = 2537, Darkvater@2893: SPR_BTWDN_RAIL_RAMP_X_DOWN = 2538, Darkvater@2893: SPR_BTWDN_RAIL_RAMP_X_UP = 2539, //for some weird reason the order is swapped Darkvater@2893: SPR_BTWDN_RAIL_RAMP_Y_UP = 2540, //between X and Y. Darkvater@2893: SPR_BTWDN_RAIL_Y_SLOPE_UP = 2541, Darkvater@2893: SPR_BTWDN_RAIL_X_SLOPE_UP = 2542, Darkvater@2893: SPR_BTWDN_RAIL_Y_SLOPE_DOWN = 2543, pasky@513: SPR_BTWDN_RAIL_X_SLOPE_DOWN = 2544, Darkvater@2893: SPR_BTWDN_MONO_RAMP_Y_DOWN = 4352, Darkvater@2893: SPR_BTWDN_MONO_RAMP_X_DOWN = 4353, Darkvater@2893: SPR_BTWDN_MONO_RAMP_X_UP = 4354, //for some weird reason the order is swapped Darkvater@2893: SPR_BTWDN_MONO_RAMP_Y_UP = 4355, //between X and Y. Darkvater@2893: SPR_BTWDN_MONO_Y_SLOPE_UP = 4356, Darkvater@2893: SPR_BTWDN_MONO_X_SLOPE_UP = 4357, Darkvater@2893: SPR_BTWDN_MONO_Y_SLOPE_DOWN = 4358, pasky@513: SPR_BTWDN_MONO_X_SLOPE_DOWN = 4359, Darkvater@2893: SPR_BTWDN_MGLV_RAMP_Y_DOWN = 4392, Darkvater@2893: SPR_BTWDN_MGLV_RAMP_X_DOWN = 4393, Darkvater@2893: SPR_BTWDN_MGLV_RAMP_X_UP = 4394, //for some weird reason the order is swapped Darkvater@2893: SPR_BTWDN_MGLV_RAMP_Y_UP = 4395, //between X and Y. Darkvater@2893: SPR_BTWDN_MGLV_Y_SLOPE_UP = 4396, Darkvater@2893: SPR_BTWDN_MGLV_X_SLOPE_UP = 4397, Darkvater@2893: SPR_BTWDN_MGLV_Y_SLOPE_DOWN = 4398, pasky@513: SPR_BTWDN_MGLV_X_SLOPE_DOWN = 4399, pasky@513: pasky@513: /* Steel Girder with arches */ pasky@513: /* BTSGA == Bridge Type Steel Girder Arched */ pasky@513: /* This is bridge type number 2 */ Darkvater@2893: SPR_BTSGA_RAIL_X_REAR = 2499, Darkvater@2893: SPR_BTSGA_RAIL_Y_REAR = 2500, Darkvater@2893: SPR_BTSGA_ROAD_X_REAR = 2501, Darkvater@2893: SPR_BTSGA_ROAD_Y_REAR = 2502, Darkvater@2893: SPR_BTSGA_X_FRONT = 2503, Darkvater@2893: SPR_BTSGA_Y_FRONT = 2504, Darkvater@2893: SPR_BTSGA_X_PILLAR = 2505, belugas@8663: SPR_BTSGA_Y_PILLAR = 2506, Darkvater@2893: SPR_BTSGA_MONO_X_REAR = 4324, Darkvater@2893: SPR_BTSGA_MONO_Y_REAR = 4325, Darkvater@2893: SPR_BTSGA_MGLV_X_REAR = 4364, Darkvater@2893: SPR_BTSGA_MGLV_Y_REAR = 4365, pasky@513: pasky@513: /* BTSUS == Suspension bridge */ pasky@513: /* TILE_* denotes the different tiles a suspension bridge rubidium@4549: * can have rubidium@4549: * TILE_A and TILE_B are the "beginnings" and "ends" of the rubidium@4549: * suspension system. they have small rectangluar endcaps rubidium@4549: * TILE_C and TILE_D look almost identical to TILE_A and rubidium@4549: * TILE_B, but they do not have the "endcaps". They form the rubidium@4549: * middle part rubidium@4549: * TILE_E is a condensed configuration of two pillars. while they rubidium@4549: * are usually 2 pillars apart, they only have 1 pillar separation rubidium@4549: * here rubidium@4549: * TILE_F is an extended configuration of pillars. they are rubidium@4549: * plugged in when pillars should be 3 tiles apart rubidium@4549: */ Darkvater@2893: SPR_BTSUS_ROAD_Y_REAR_TILE_A = 2453, Darkvater@2893: SPR_BTSUS_ROAD_Y_REAR_TILE_B = 2454, Darkvater@2893: SPR_BTSUS_Y_FRONT_TILE_A = 2455, Darkvater@2893: SPR_BTSUS_Y_FRONT_TILE_B = 2456, Darkvater@2893: SPR_BTSUS_ROAD_Y_REAR_TILE_D = 2457, Darkvater@2893: SPR_BTSUS_ROAD_Y_REAR_TILE_C = 2458, Darkvater@2893: SPR_BTSUS_Y_FRONT_TILE_D = 2459, Darkvater@2893: SPR_BTSUS_Y_FRONT_TILE_C = 2460, Darkvater@2893: SPR_BTSUS_ROAD_X_REAR_TILE_A = 2461, Darkvater@2893: SPR_BTSUS_ROAD_X_REAR_TILE_B = 2462, Darkvater@2893: SPR_BTSUS_X_FRONT_TILE_A = 2463, Darkvater@2893: SPR_BTSUS_X_FRONT_TILE_B = 2464, belugas@8645: SPR_BTSUS_ROAD_X_REAR_TILE_D = 2465, belugas@8645: SPR_BTSUS_ROAD_X_REAR_TILE_C = 2466, Darkvater@2893: SPR_BTSUS_X_FRONT_TILE_D = 2467, Darkvater@2893: SPR_BTSUS_X_FRONT_TILE_C = 2468, Darkvater@2893: SPR_BTSUS_RAIL_Y_REAR_TILE_A = 2469, Darkvater@2893: SPR_BTSUS_RAIL_Y_REAR_TILE_B = 2470, Darkvater@2893: SPR_BTSUS_RAIL_Y_REAR_TILE_D = 2471, Darkvater@2893: SPR_BTSUS_RAIL_Y_REAR_TILE_C = 2472, Darkvater@2893: SPR_BTSUS_RAIL_X_REAR_TILE_A = 2473, Darkvater@2893: SPR_BTSUS_RAIL_X_REAR_TILE_B = 2474, Darkvater@2893: SPR_BTSUS_RAIL_X_REAR_TILE_D = 2475, Darkvater@2893: SPR_BTSUS_RAIL_X_REAR_TILE_C = 2476, Darkvater@2893: SPR_BTSUS_Y_PILLAR_TILE_A = 2477, Darkvater@2893: SPR_BTSUS_Y_PILLAR_TILE_B = 2478, Darkvater@2893: SPR_BTSUS_Y_PILLAR_TILE_D = 2479, Darkvater@2893: SPR_BTSUS_Y_PILLAR_TILE_C = 2480, Darkvater@2893: SPR_BTSUS_X_PILLAR_TILE_A = 2481, Darkvater@2893: SPR_BTSUS_X_PILLAR_TILE_B = 2482, Darkvater@2893: SPR_BTSUS_X_PILLAR_TILE_D = 2483, Darkvater@2893: SPR_BTSUS_X_PILLAR_TILE_C = 2484, Darkvater@2893: SPR_BTSUS_RAIL_Y_REAR_TILE_E = 2485, Darkvater@2893: SPR_BTSUS_RAIL_X_REAR_TILE_E = 2486, Darkvater@2893: SPR_BTSUS_ROAD_Y_REAR_TILE_E = 2487, Darkvater@2893: SPR_BTSUS_ROAD_X_REAR_TILE_E = 2488, Darkvater@2893: SPR_BTSUS_Y_FRONT_TILE_E = 2489, Darkvater@2893: SPR_BTSUS_X_FRONT_TILE_E = 2490, Darkvater@2893: SPR_BTSUS_Y_PILLAR_TILE_E = 2491, Darkvater@2893: SPR_BTSUS_X_PILLAR_TILE_E = 2492, Darkvater@2893: SPR_BTSUS_RAIL_X_REAR_TILE_F = 2493, Darkvater@2893: SPR_BTSUS_RAIL_Y_REAR_TILE_F = 2494, Darkvater@2893: SPR_BTSUS_ROAD_X_REAR_TILE_F = 2495, Darkvater@2893: SPR_BTSUS_ROAD_Y_REAR_TILE_F = 2496, celestar@3922: SPR_BTSUS_X_FRONT = 2497, celestar@3922: SPR_BTSUS_Y_FRONT = 2498, Darkvater@2893: SPR_BTSUS_MONO_Y_REAR_TILE_A = 4334, Darkvater@2893: SPR_BTSUS_MONO_Y_REAR_TILE_B = 4335, Darkvater@2893: SPR_BTSUS_MONO_Y_REAR_TILE_D = 4336, Darkvater@2893: SPR_BTSUS_MONO_Y_REAR_TILE_C = 4337, Darkvater@2893: SPR_BTSUS_MONO_X_REAR_TILE_A = 4338, Darkvater@2893: SPR_BTSUS_MONO_X_REAR_TILE_B = 4339, Darkvater@2893: SPR_BTSUS_MONO_X_REAR_TILE_D = 4340, Darkvater@2893: SPR_BTSUS_MONO_X_REAR_TILE_C = 4341, Darkvater@2893: SPR_BTSUS_MONO_Y_REAR_TILE_E = 4342, Darkvater@2893: SPR_BTSUS_MONO_X_REAR_TILE_E = 4343, Darkvater@2893: SPR_BTSUS_MONO_X_REAR_TILE_F = 4344, Darkvater@2893: SPR_BTSUS_MONO_Y_REAR_TILE_F = 4345, Darkvater@2893: SPR_BTSUS_MGLV_Y_REAR_TILE_A = 4374, Darkvater@2893: SPR_BTSUS_MGLV_Y_REAR_TILE_B = 4375, Darkvater@2893: SPR_BTSUS_MGLV_Y_REAR_TILE_D = 4376, Darkvater@2893: SPR_BTSUS_MGLV_Y_REAR_TILE_C = 4377, Darkvater@2893: SPR_BTSUS_MGLV_X_REAR_TILE_A = 4378, Darkvater@2893: SPR_BTSUS_MGLV_X_REAR_TILE_B = 4379, Darkvater@2893: SPR_BTSUS_MGLV_X_REAR_TILE_D = 4380, Darkvater@2893: SPR_BTSUS_MGLV_X_REAR_TILE_C = 4381, Darkvater@2893: SPR_BTSUS_MGLV_Y_REAR_TILE_E = 4382, Darkvater@2893: SPR_BTSUS_MGLV_X_REAR_TILE_E = 4383, Darkvater@2893: SPR_BTSUS_MGLV_X_REAR_TILE_F = 4384, Darkvater@2893: SPR_BTSUS_MGLV_Y_REAR_TILE_F = 4385, pasky@513: pasky@513: /* cantilever bridges */ pasky@513: /* They have three different kinds of tiles: Darkvater@2909: * END(ing), MID(dle), BEG(ginning) */ Darkvater@2893: SPR_BTCAN_RAIL_X_BEG = 2507, Darkvater@2893: SPR_BTCAN_RAIL_X_MID = 2508, Darkvater@2893: SPR_BTCAN_RAIL_X_END = 2509, Darkvater@2893: SPR_BTCAN_RAIL_Y_END = 2510, Darkvater@2893: SPR_BTCAN_RAIL_Y_MID = 2511, Darkvater@2893: SPR_BTCAN_RAIL_Y_BEG = 2512, Darkvater@2893: SPR_BTCAN_ROAD_X_BEG = 2513, Darkvater@2893: SPR_BTCAN_ROAD_X_MID = 2514, Darkvater@2893: SPR_BTCAN_ROAD_X_END = 2515, Darkvater@2893: SPR_BTCAN_ROAD_Y_END = 2516, Darkvater@2893: SPR_BTCAN_ROAD_Y_MID = 2517, Darkvater@2893: SPR_BTCAN_ROAD_Y_BEG = 2518, Darkvater@2893: SPR_BTCAN_X_FRONT_BEG = 2519, Darkvater@2893: SPR_BTCAN_X_FRONT_MID = 2520, Darkvater@2893: SPR_BTCAN_X_FRONT_END = 2521, Darkvater@2893: SPR_BTCAN_Y_FRONT_END = 2522, Darkvater@2893: SPR_BTCAN_Y_FRONT_MID = 2523, Darkvater@2893: SPR_BTCAN_Y_FRONT_BEG = 2524, Darkvater@2893: SPR_BTCAN_X_PILLAR_BEG = 2525, Darkvater@2893: SPR_BTCAN_X_PILLAR_MID = 2526, Darkvater@2893: SPR_BTCAN_Y_PILLAR_MID = 2527, Darkvater@2893: SPR_BTCAN_Y_PILLAR_BEG = 2528, Darkvater@2893: SPR_BTCAN_MONO_X_BEG = 4346, Darkvater@2893: SPR_BTCAN_MONO_X_MID = 4347, Darkvater@2893: SPR_BTCAN_MONO_X_END = 4348, Darkvater@2893: SPR_BTCAN_MONO_Y_END = 4349, Darkvater@2893: SPR_BTCAN_MONO_Y_MID = 4350, Darkvater@2893: SPR_BTCAN_MONO_Y_BEG = 4351, Darkvater@2893: SPR_BTCAN_MGLV_X_BEG = 4386, Darkvater@2893: SPR_BTCAN_MGLV_X_MID = 4387, Darkvater@2893: SPR_BTCAN_MGLV_X_END = 4388, Darkvater@2893: SPR_BTCAN_MGLV_Y_END = 4389, Darkvater@2893: SPR_BTCAN_MGLV_Y_MID = 4390, Darkvater@2893: SPR_BTCAN_MGLV_Y_BEG = 4391, pasky@513: pasky@513: /* little concrete bridge */ Darkvater@2893: SPR_BTCON_RAIL_X = 2493, Darkvater@2893: SPR_BTCON_RAIL_Y = 2494, Darkvater@2893: SPR_BTCON_ROAD_X = 2495, Darkvater@2893: SPR_BTCON_ROAD_Y = 2496, Darkvater@2893: SPR_BTCON_X_FRONT = 2497, Darkvater@2893: SPR_BTCON_Y_FRONT = 2498, Darkvater@2893: SPR_BTCON_X_PILLAR = 2505, Darkvater@2893: SPR_BTCON_Y_PILLAR = 2506, Darkvater@2893: SPR_BTCON_MONO_X = 4344, Darkvater@2893: SPR_BTCON_MONO_Y = 4345, Darkvater@2893: SPR_BTCON_MGLV_X = 4384, Darkvater@2893: SPR_BTCON_MGLV_Y = 4385, pasky@513: pasky@513: /* little steel girder bridge */ Darkvater@2893: SPR_BTGIR_RAIL_X = 2553, Darkvater@2893: SPR_BTGIR_RAIL_Y = 2554, Darkvater@2893: SPR_BTGIR_ROAD_X = 2555, Darkvater@2893: SPR_BTGIR_ROAD_Y = 2556, Darkvater@2893: SPR_BTGIR_X_FRONT = 2557, Darkvater@2893: SPR_BTGIR_Y_FRONT = 2558, Darkvater@2893: SPR_BTGIR_X_PILLAR = 2505, Darkvater@2893: SPR_BTGIR_Y_PILLAR = 2506, Darkvater@2893: SPR_BTGIR_MONO_X = 4362, Darkvater@2893: SPR_BTGIR_MONO_Y = 4363, Darkvater@2893: SPR_BTGIR_MGLV_X = 4402, Darkvater@2893: SPR_BTGIR_MGLV_Y = 4403, pasky@513: pasky@513: /* tubular bridges */ pasky@513: /* tubular bridges have 3 kinds of tiles: rubidium@4549: * a start tile (with only half a tube on the far side, marked _BEG rubidium@4549: * a middle tile (full tunnel), marked _MID rubidium@4549: * and an end tile (half a tube on the near side, maked _END rubidium@4549: */ Darkvater@2893: SPR_BTTUB_X_FRONT_BEG = 2559, belugas@8797: SPR_BTTUB_X_FRONT_MID = 2560, Darkvater@2893: SPR_BTTUB_X_FRONT_END = 2561, Darkvater@2893: SPR_BTTUB_Y_FRONT_END = 2562, Darkvater@2893: SPR_BTTUB_Y_FRONT_MID = 2563, Darkvater@2893: SPR_BTTUB_Y_FRONT_BEG = 2564, belugas@8797: SPR_BTTUB_X_PILLAR_BEG = 2565, belugas@8797: SPR_BTTUB_X_PILLAR_MID = 2566, belugas@8797: SPR_BTTUB_Y_PILLAR_MID = 2567, belugas@8797: SPR_BTTUB_Y_PILLAR_BEG = 2568, Darkvater@2893: SPR_BTTUB_X_RAIL_REAR_BEG = 2569, Darkvater@2893: SPR_BTTUB_X_RAIL_REAR_MID = 2570, Darkvater@2893: SPR_BTTUB_X_RAIL_REAR_END = 2571, celestar@5385: SPR_BTTUB_Y_RAIL_REAR_BEG = 2572, celestar@5385: SPR_BTTUB_Y_RAIL_REAR_MID = 2573, celestar@5385: SPR_BTTUB_Y_RAIL_REAR_END = 2574, celestar@5385: SPR_BTTUB_X_ROAD_REAR_BEG = 2575, celestar@5385: SPR_BTTUB_X_ROAD_REAR_MID = 2576, celestar@5385: SPR_BTTUB_X_ROAD_REAR_END = 2577, celestar@5385: SPR_BTTUB_Y_ROAD_REAR_BEG = 2578, celestar@5385: SPR_BTTUB_Y_ROAD_REAR_MID = 2579, celestar@5385: SPR_BTTUB_Y_ROAD_REAR_END = 2580, celestar@5385: SPR_BTTUB_X_MONO_REAR_BEG = 2581, celestar@5385: SPR_BTTUB_X_MONO_REAR_MID = 2582, celestar@5385: SPR_BTTUB_X_MONO_REAR_END = 2583, celestar@5385: SPR_BTTUB_Y_MONO_REAR_BEG = 2584, celestar@5385: SPR_BTTUB_Y_MONO_REAR_MID = 2585, celestar@5385: SPR_BTTUB_Y_MONO_REAR_END = 2586, celestar@5385: SPR_BTTUB_X_MGLV_REAR_BEG = 2587, celestar@5385: SPR_BTTUB_X_MGLV_REAR_MID = 2588, celestar@5385: SPR_BTTUB_X_MGLV_REAR_END = 2589, celestar@5385: SPR_BTTUB_Y_MGLV_REAR_BEG = 2590, celestar@5385: SPR_BTTUB_Y_MGLV_REAR_MID = 2591, celestar@5385: SPR_BTTUB_Y_MGLV_REAR_END = 2592, pasky@513: pasky@513: pasky@513: /* ramps (for all bridges except wood and tubular?)*/ pasky@513: SPR_BTGEN_RAIL_X_SLOPE_DOWN = 2437, Darkvater@2893: SPR_BTGEN_RAIL_X_SLOPE_UP = 2438, Darkvater@2893: SPR_BTGEN_RAIL_Y_SLOPE_DOWN = 2439, Darkvater@2893: SPR_BTGEN_RAIL_Y_SLOPE_UP = 2440, Darkvater@2893: SPR_BTGEN_RAIL_RAMP_X_UP = 2441, Darkvater@2893: SPR_BTGEN_RAIL_RAMP_X_DOWN = 2442, Darkvater@2893: SPR_BTGEN_RAIL_RAMP_Y_UP = 2443, Darkvater@2893: SPR_BTGEN_RAIL_RAMP_Y_DOWN = 2444, pasky@513: SPR_BTGEN_ROAD_X_SLOPE_DOWN = 2445, Darkvater@2893: SPR_BTGEN_ROAD_X_SLOPE_UP = 2446, Darkvater@2893: SPR_BTGEN_ROAD_Y_SLOPE_DOWN = 2447, Darkvater@2893: SPR_BTGEN_ROAD_Y_SLOPE_UP = 2448, Darkvater@2893: SPR_BTGEN_ROAD_RAMP_X_UP = 2449, Darkvater@2893: SPR_BTGEN_ROAD_RAMP_X_DOWN = 2450, Darkvater@2893: SPR_BTGEN_ROAD_RAMP_Y_UP = 2451, Darkvater@2893: SPR_BTGEN_ROAD_RAMP_Y_DOWN = 2452, pasky@513: SPR_BTGEN_MONO_X_SLOPE_DOWN = 4326, Darkvater@2893: SPR_BTGEN_MONO_X_SLOPE_UP = 4327, Darkvater@2893: SPR_BTGEN_MONO_Y_SLOPE_DOWN = 4328, Darkvater@2893: SPR_BTGEN_MONO_Y_SLOPE_UP = 4329, Darkvater@2893: SPR_BTGEN_MONO_RAMP_X_UP = 4330, Darkvater@2893: SPR_BTGEN_MONO_RAMP_X_DOWN = 4331, Darkvater@2893: SPR_BTGEN_MONO_RAMP_Y_UP = 4332, Darkvater@2893: SPR_BTGEN_MONO_RAMP_Y_DOWN = 4333, pasky@513: SPR_BTGEN_MGLV_X_SLOPE_DOWN = 4366, Darkvater@2893: SPR_BTGEN_MGLV_X_SLOPE_UP = 4367, Darkvater@2893: SPR_BTGEN_MGLV_Y_SLOPE_DOWN = 4368, Darkvater@2893: SPR_BTGEN_MGLV_Y_SLOPE_UP = 4369, Darkvater@2893: SPR_BTGEN_MGLV_RAMP_X_UP = 4370, Darkvater@2893: SPR_BTGEN_MGLV_RAMP_X_DOWN = 4371, Darkvater@2893: SPR_BTGEN_MGLV_RAMP_Y_UP = 4372, Darkvater@2893: SPR_BTGEN_MGLV_RAMP_Y_DOWN = 4373, pasky@513: Darkvater@4937: /* Vehicle view sprites */ Darkvater@4937: SPR_CENTRE_VIEW_VEHICLE = 683, Darkvater@4937: SPR_SEND_TRAIN_TODEPOT = 685, Darkvater@4937: SPR_SEND_ROADVEH_TODEPOT = 686, Darkvater@4937: SPR_SEND_AIRCRAFT_TODEPOT = 687, Darkvater@4937: SPR_SEND_SHIP_TODEPOT = 688, Darkvater@4937: Darkvater@4937: SPR_IGNORE_SIGNALS = 689, Darkvater@4937: SPR_SHOW_ORDERS = 690, Darkvater@4937: SPR_SHOW_VEHICLE_DETAILS = 691, Darkvater@4937: SPR_REFIT_VEHICLE = 692, Darkvater@4937: SPR_FORCE_VEHICLE_TURN = 715, pasky@513: pasky@513: /* Vehicle sprite-flags (red/green) */ Darkvater@2893: SPR_FLAG_VEH_STOPPED = 3090, Darkvater@2893: SPR_FLAG_VEH_RUNNING = 3091, pasky@513: belugas@3326: SPR_VEH_BUS_SW_VIEW = 3097, belugas@3326: SPR_VEH_BUS_SIDE_VIEW = 3098, belugas@3326: pasky@513: /* Rotor sprite numbers */ Darkvater@2893: SPR_ROTOR_STOPPED = 3901, Darkvater@2893: SPR_ROTOR_MOVING_1 = 3902, Darkvater@2893: SPR_ROTOR_MOVING_3 = 3904, pasky@513: pasky@513: /* Town/house sprites */ pasky@513: SPR_LIFT = 1443, pasky@513: Darkvater@2893: //used in town_land.h Darkvater@2893: //CNST1..3 = Those are the different stages of construction Darkvater@2893: //The last 2 hexas correspond to the type of building it represent, if any Darkvater@2893: SPR_CNST1_TALLOFFICE_00 = 1421, Darkvater@2893: SPR_CNST2_TALLOFFICE_00 = 1422, Darkvater@2893: SPR_CNST3_TALLOFFICE_00 = 1423, Darkvater@2893: SPR_GROUND_TALLOFFICE_00 = 1424, Darkvater@2893: SPR_BUILD_TALLOFFICE_00 = 1425, //temperate Darkvater@2893: SPR_CNST1_OFFICE_01 = 1426, Darkvater@2893: SPR_CNST2_OFFICE_01 = 1427, Darkvater@2893: SPR_BUILD_OFFICE_01 = 1428, //temperate Darkvater@2893: SPR_GROUND_OFFICE_01 = 1429, Darkvater@2893: SPR_CNST1_SMLBLCKFLATS_02 = 1430, //Small Block of Flats Darkvater@2893: SPR_CNST2_SMLBLCKFLATS_02 = 1431, Darkvater@2893: SPR_BUILD_SMLBLCKFLATS_02 = 1432, //temperate Darkvater@2893: SPR_GROUND_SMLBLCKFLATS_02 = 1433, Darkvater@2893: SPR_CNST1_TEMPCHURCH = 1434, Darkvater@2893: SPR_CNST2_TEMPCHURCH = 1435, Darkvater@2893: SPR_BUILD_TEMPCHURCH = 1436, Darkvater@2893: SPR_GROUND_TEMPCHURCH = 1437, Darkvater@2893: SPR_CNST1_LARGEOFFICE_04 = 1440, Darkvater@2893: SPR_CNST2_LARGEOFFICE_04 = 1441, Darkvater@2893: SPR_BUILD_LARGEOFFICE_04 = 1442, // temperate, sub-arctic, subtropical Darkvater@2893: SPR_BUILD_LARGEOFFICE_04_SNOW = 4569, // same, with snow Darkvater@2893: // These are in fact two houses for the same houseID. so V1 and V2 Darkvater@2893: SPR_CNST1_TOWNHOUSE_06_V1 = 1444, Darkvater@2893: SPR_CNST2_TOWNHOUSE_06_V1 = 1445, Darkvater@2893: SPR_BUILD_TOWNHOUSE_06_V1 = 1446, // 1st variation Darkvater@2893: SPR_GRND_TOWNHOUSE_06_V1 = 1447, Darkvater@2893: SPR_CNST1_TOWNHOUSE_06_V2 = 1501, // used as ground, but is stage1 Darkvater@2893: SPR_CNST1_TOWNHOUSE_06_V2_P = 1502, // pipes extensions for previous Darkvater@2893: SPR_CNST2_TOWNHOUSE_06_V2_G = 1503, // Ground of cnst stage 2 Darkvater@2893: SPR_CNST2_TOWNHOUSE_06_V2 = 1504, // real cnst stage 2 Darkvater@2893: SPR_GRND_TOWNHOUSE_06_V2 = 1505, Darkvater@2893: SPR_BUILD_TOWNHOUSE_06_V2 = 1506, // 2nd variation Darkvater@2893: SPR_CNST1_HOTEL_07_NW = 1448, Darkvater@2893: SPR_CNST2_HOTEL_07_NW = 1449, Darkvater@2893: SPR_BUILD_HOTEL_07_NW = 1450, Darkvater@2893: SPR_CNST1_HOTEL_07_SE = 1451, Darkvater@2893: SPR_CNST2_HOTEL_07_SE = 1452, Darkvater@2893: SPR_BUILD_HOTEL_07_SE = 1453, Darkvater@2893: SPR_STATUE_HORSERIDER_09 = 1454, Darkvater@2893: SPR_FOUNTAIN_0A = 1455, Darkvater@2893: SPR_PARKSTATUE_0B = 1456, Darkvater@2893: SPR_PARKALLEY_0C = 1457, Darkvater@2893: SPR_CNST1_OFFICE_0D = 1458, Darkvater@2893: SPR_CNST2_OFFICE_0D = 1459, Darkvater@2893: SPR_BUILD_OFFICE_0D = 1460, Darkvater@2893: SPR_CNST1_SHOPOFFICE_0E = 1461, Darkvater@2893: SPR_CNST2_SHOPOFFICE_0E = 1462, Darkvater@2893: SPR_BUILD_SHOPOFFICE_0E = 1463, Darkvater@2893: SPR_CNST1_SHOPOFFICE_0F = 1464, Darkvater@2893: SPR_CNST2_SHOPOFFICE_0F = 1465, Darkvater@2893: SPR_BUILD_SHOPOFFICE_0F = 1466, Darkvater@2893: pasky@513: /* Easter egg/disaster sprites */ pasky@513: SPR_BLIMP = 3905, // Zeppelin pasky@513: SPR_BLIMP_CRASHING = 3906, pasky@513: SPR_BLIMP_CRASHED = 3907, pasky@513: SPR_UFO_SMALL_SCOUT = 3908, // XCOM - UFO Defense pasky@513: SPR_UFO_SMALL_SCOUT_DARKER = 3909, pasky@513: SPR_SUB_SMALL_NE = 3910, // Silent Service pasky@513: SPR_SUB_SMALL_SE = 3911, pasky@513: SPR_SUB_SMALL_SW = 3912, pasky@513: SPR_SUB_SMALL_NW = 3913, pasky@513: SPR_SUB_LARGE_NE = 3914, pasky@513: SPR_SUB_LARGE_SE = 3915, pasky@513: SPR_SUB_LARGE_SW = 3916, pasky@513: SPR_SUB_LARGE_NW = 3917, pasky@513: SPR_F_15 = 3918, // F-15 Strike Eagle pasky@513: SPR_F_15_FIRING = 3919, pasky@513: SPR_UFO_HARVESTER = 3920, // XCOM - UFO Defense pasky@513: SPR_XCOM_SKYRANGER = 3921, pasky@513: SPR_AH_64A = 3922, // Gunship pasky@513: SPR_AH_64A_FIRING = 3923, pasky@513: pasky@513: /* main_gui.c */ pasky@513: SPR_IMG_TERRAFORM_UP = 694, pasky@513: SPR_IMG_TERRAFORM_DOWN = 695, pasky@513: SPR_IMG_DYNAMITE = 703, pasky@513: SPR_IMG_ROCKS = 4084, Darkvater@1632: SPR_IMG_LIGHTHOUSE_DESERT = 4085, // XXX - is Desert image on the desert-climate pasky@513: SPR_IMG_TRANSMITTER = 4086, rubidium@7882: SPR_IMG_LEVEL_LAND = SPR_OPENTTD_BASE + 91, rubidium@7882: SPR_IMG_BUILD_CANAL = SPR_OPENTTD_BASE + 88, peter1138@8381: SPR_IMG_BUILD_RIVER = SPR_OPENTTD_BASE + 136, rubidium@7882: SPR_IMG_BUILD_LOCK = SPR_CANALS_BASE + 64, pasky@513: SPR_IMG_PAUSE = 726, rubidium@7882: SPR_IMG_FASTFORWARD = SPR_OPENTTD_BASE + 90, pasky@513: SPR_IMG_SETTINGS = 751, pasky@513: SPR_IMG_SAVE = 724, pasky@513: SPR_IMG_SMALLMAP = 708, pasky@513: SPR_IMG_TOWN = 4077, pasky@513: SPR_IMG_SUBSIDIES = 679, pasky@513: SPR_IMG_COMPANY_LIST = 1299, pasky@513: SPR_IMG_COMPANY_FINANCE = 737, pasky@513: SPR_IMG_COMPANY_GENERAL = 743, pasky@513: SPR_IMG_GRAPHS = 745, pasky@513: SPR_IMG_COMPANY_LEAGUE = 684, Darkvater@1918: SPR_IMG_SHOW_COUNTOURS = 738, Darkvater@1918: SPR_IMG_SHOW_VEHICLES = 739, Darkvater@1918: SPR_IMG_SHOW_ROUTES = 740, pasky@513: SPR_IMG_INDUSTRY = 741, Darkvater@1918: SPR_IMG_PLANTTREES = 742, pasky@513: SPR_IMG_TRAINLIST = 731, pasky@513: SPR_IMG_TRUCKLIST = 732, pasky@513: SPR_IMG_SHIPLIST = 733, pasky@513: SPR_IMG_AIRPLANESLIST = 734, pasky@513: SPR_IMG_ZOOMIN = 735, pasky@513: SPR_IMG_ZOOMOUT = 736, pasky@513: SPR_IMG_BUILDRAIL = 727, pasky@513: SPR_IMG_BUILDROAD = 728, pasky@513: SPR_IMG_BUILDWATER = 729, pasky@513: SPR_IMG_BUILDAIR = 730, pasky@513: SPR_IMG_LANDSCAPING = 4083, pasky@513: SPR_IMG_MUSIC = 713, pasky@513: SPR_IMG_MESSAGES = 680, pasky@513: SPR_IMG_QUERY = 723, pasky@513: SPR_IMG_SIGN = 4082, Darkvater@1632: SPR_IMG_BUY_LAND = 4791, pasky@513: pasky@513: /* OPEN TRANSPORT TYCOON in gamescreen */ pasky@513: SPR_OTTD_O = 4842, pasky@513: SPR_OTTD_P = 4841, rubidium@7882: SPR_OTTD_E = SPR_OPENTTD_BASE + 12, rubidium@7882: SPR_OTTD_D = SPR_OPENTTD_BASE + 13, pasky@513: SPR_OTTD_N = 4839, pasky@513: SPR_OTTD_T = 4836, pasky@513: SPR_OTTD_R = 4837, pasky@513: SPR_OTTD_A = 4838, pasky@513: SPR_OTTD_S = 4840, pasky@513: SPR_OTTD_Y = 4843, dominik@606: SPR_OTTD_C = 4844, dominik@606: darkvater@983: SPR_HIGHSCORE_CHART_BEGIN = 4804, darkvater@983: SPR_TYCOON_IMG1_BEGIN = 4814, darkvater@983: SPR_TYCOON_IMG2_BEGIN = 4824, darkvater@983: belugas@3290: /* Industry sprites */ belugas@3290: SPR_IT_SUGAR_MINE_SIEVE = 4775, belugas@3290: SPR_IT_SUGAR_MINE_CLOUDS = 4784, belugas@3290: SPR_IT_SUGAR_MINE_PILE = 4780, belugas@3290: SPR_IT_TOFFEE_QUARRY_TOFFEE = 4766, belugas@3290: SPR_IT_TOFFEE_QUARRY_SHOVEL = 4767, belugas@3290: SPR_IT_BUBBLE_GENERATOR_SPRING = 4746, belugas@3290: SPR_IT_BUBBLE_GENERATOR_BUBBLE = 4747, belugas@3290: SPR_IT_TOY_FACTORY_STAMP_HOLDER = 4717, belugas@3290: SPR_IT_TOY_FACTORY_STAMP = 4718, belugas@3290: SPR_IT_TOY_FACTORY_CLAY = 4719, belugas@3290: SPR_IT_TOY_FACTORY_ROBOT = 4720, belugas@3290: SPR_IT_POWER_PLANT_TRANSFORMERS = 2054, belugas@3290: belugas@3652: /*small icons of cargo available in station waiting*/ belugas@3652: SPR_CARGO_PASSENGER = 4297, belugas@3652: SPR_CARGO_COAL = 4298, belugas@3652: SPR_CARGO_MAIL = 4299, belugas@3652: SPR_CARGO_OIL = 4300, belugas@3652: SPR_CARGO_LIVESTOCK = 4301, belugas@3652: SPR_CARGO_GOODS = 4302, belugas@3652: SPR_CARGO_GRAIN = 4303, belugas@3652: SPR_CARGO_WOOD = 4304, belugas@3652: SPR_CARGO_IRON_ORE = 4305, belugas@3652: SPR_CARGO_STEEL = 4306, belugas@3652: SPR_CARGO_VALUES_GOLD = 4307, /*shared between temperate and arctic*/ belugas@3652: SPR_CARGO_FRUIT = 4308, belugas@3652: SPR_CARGO_COPPER_ORE = 4309, belugas@3652: SPR_CARGO_WATERCOLA = 4310, /*shared between desert and toyland*/ belugas@3652: SPR_CARGO_DIAMONDS = 4311, belugas@3652: SPR_CARGO_FOOD = 4312, belugas@3652: SPR_CARGO_PAPER = 4313, belugas@3652: SPR_CARGO_RUBBER = 4314, belugas@3652: SPR_CARGO_CANDY = 4315, belugas@3652: SPR_CARGO_SUGAR = 4316, belugas@3652: SPR_CARGO_TOYS = 4317, belugas@3652: SPR_CARGO_COTTONCANDY = 4318, belugas@3652: SPR_CARGO_FIZZYDRINK = 4319, belugas@3652: SPR_CARGO_TOFFEE = 4320, belugas@3652: SPR_CARGO_BUBBLES = 4321, belugas@3652: SPR_CARGO_PLASTIC = 4322, belugas@3652: SPR_CARGO_BATTERIES = 4323, belugas@3652: belugas@3290: /* Effect vehicles */ tron@1364: SPR_BULLDOZER_NE = 1416, tron@1364: SPR_BULLDOZER_SE = 1417, tron@1364: SPR_BULLDOZER_SW = 1418, tron@1364: SPR_BULLDOZER_NW = 1419, tron@1364: tron@1371: SPR_SMOKE_0 = 2040, tron@1371: SPR_SMOKE_1 = 2041, tron@1371: SPR_SMOKE_2 = 2042, tron@1371: SPR_SMOKE_3 = 2043, tron@1371: SPR_SMOKE_4 = 2044, tron@1371: tron@1371: SPR_DIESEL_SMOKE_0 = 3073, tron@1371: SPR_DIESEL_SMOKE_1 = 3074, tron@1371: SPR_DIESEL_SMOKE_2 = 3075, tron@1371: SPR_DIESEL_SMOKE_3 = 3076, tron@1371: SPR_DIESEL_SMOKE_4 = 3077, tron@1371: SPR_DIESEL_SMOKE_5 = 3078, tron@1371: tron@1371: SPR_STEAM_SMOKE_0 = 3079, tron@1371: SPR_STEAM_SMOKE_1 = 3080, tron@1371: SPR_STEAM_SMOKE_2 = 3081, tron@1371: SPR_STEAM_SMOKE_3 = 3082, tron@1371: SPR_STEAM_SMOKE_4 = 3083, tron@1371: tron@1371: SPR_ELECTRIC_SPARK_0 = 3084, tron@1371: SPR_ELECTRIC_SPARK_1 = 3085, tron@1371: SPR_ELECTRIC_SPARK_2 = 3086, tron@1371: SPR_ELECTRIC_SPARK_3 = 3087, tron@1371: SPR_ELECTRIC_SPARK_4 = 3088, tron@1371: SPR_ELECTRIC_SPARK_5 = 3089, tron@1371: tron@1371: SPR_CHIMNEY_SMOKE_0 = 3701, tron@1371: SPR_CHIMNEY_SMOKE_1 = 3702, tron@1371: SPR_CHIMNEY_SMOKE_2 = 3703, tron@1371: SPR_CHIMNEY_SMOKE_3 = 3704, tron@1371: SPR_CHIMNEY_SMOKE_4 = 3705, tron@1371: SPR_CHIMNEY_SMOKE_5 = 3706, tron@1371: SPR_CHIMNEY_SMOKE_6 = 3707, tron@1371: SPR_CHIMNEY_SMOKE_7 = 3708, tron@1371: tron@1371: SPR_EXPLOSION_LARGE_0 = 3709, tron@1371: SPR_EXPLOSION_LARGE_1 = 3710, tron@1371: SPR_EXPLOSION_LARGE_2 = 3711, tron@1371: SPR_EXPLOSION_LARGE_3 = 3712, tron@1371: SPR_EXPLOSION_LARGE_4 = 3713, tron@1371: SPR_EXPLOSION_LARGE_5 = 3714, tron@1371: SPR_EXPLOSION_LARGE_6 = 3715, tron@1371: SPR_EXPLOSION_LARGE_7 = 3716, tron@1371: SPR_EXPLOSION_LARGE_8 = 3717, tron@1371: SPR_EXPLOSION_LARGE_9 = 3718, tron@1371: SPR_EXPLOSION_LARGE_A = 3719, tron@1371: SPR_EXPLOSION_LARGE_B = 3720, tron@1371: SPR_EXPLOSION_LARGE_C = 3721, tron@1371: SPR_EXPLOSION_LARGE_D = 3722, tron@1371: SPR_EXPLOSION_LARGE_E = 3723, tron@1371: SPR_EXPLOSION_LARGE_F = 3724, tron@1371: tron@1371: SPR_EXPLOSION_SMALL_0 = 3725, tron@1371: SPR_EXPLOSION_SMALL_1 = 3726, tron@1371: SPR_EXPLOSION_SMALL_2 = 3727, tron@1371: SPR_EXPLOSION_SMALL_3 = 3728, tron@1371: SPR_EXPLOSION_SMALL_4 = 3729, tron@1371: SPR_EXPLOSION_SMALL_5 = 3730, tron@1371: SPR_EXPLOSION_SMALL_6 = 3731, tron@1371: SPR_EXPLOSION_SMALL_7 = 3732, tron@1371: SPR_EXPLOSION_SMALL_8 = 3733, tron@1371: SPR_EXPLOSION_SMALL_9 = 3734, tron@1371: SPR_EXPLOSION_SMALL_A = 3735, tron@1371: SPR_EXPLOSION_SMALL_B = 3736, tron@1371: tron@1371: SPR_BREAKDOWN_SMOKE_0 = 3737, tron@1371: SPR_BREAKDOWN_SMOKE_1 = 3738, tron@1371: SPR_BREAKDOWN_SMOKE_2 = 3739, tron@1371: SPR_BREAKDOWN_SMOKE_3 = 3740, tron@1371: tron@1371: SPR_BUBBLE_0 = 4748, tron@1371: SPR_BUBBLE_1 = 4749, tron@1371: SPR_BUBBLE_2 = 4750, tron@1371: SPR_BUBBLE_GENERATE_0 = 4751, tron@1371: SPR_BUBBLE_GENERATE_1 = 4752, tron@1371: SPR_BUBBLE_GENERATE_2 = 4753, tron@1371: SPR_BUBBLE_GENERATE_3 = 4754, tron@1371: SPR_BUBBLE_BURST_0 = 4755, tron@1371: SPR_BUBBLE_BURST_1 = 4756, tron@1371: SPR_BUBBLE_BURST_2 = 4757, tron@1371: SPR_BUBBLE_ABSORB_0 = 4758, tron@1371: SPR_BUBBLE_ABSORB_1 = 4759, tron@1371: SPR_BUBBLE_ABSORB_2 = 4760, tron@1371: SPR_BUBBLE_ABSORB_3 = 4761, tron@1371: SPR_BUBBLE_ABSORB_4 = 4762, tron@1371: celestar@3355: /* Electrified rail build menu */ rubidium@7882: SPR_BUILD_NS_ELRAIL = SPR_ELRAIL_BASE + 36, rubidium@7882: SPR_BUILD_X_ELRAIL = SPR_ELRAIL_BASE + 37, rubidium@7882: SPR_BUILD_EW_ELRAIL = SPR_ELRAIL_BASE + 38, rubidium@7882: SPR_BUILD_Y_ELRAIL = SPR_ELRAIL_BASE + 39, rubidium@7882: SPR_BUILD_TUNNEL_ELRAIL = SPR_ELRAIL_BASE + 44, celestar@3355: Darkvater@4937: /* airport_gui.c */ Darkvater@4937: SPR_IMG_AIRPORT = 744, Darkvater@4937: Darkvater@4937: /* dock_gui.c */ Darkvater@4937: SPR_IMG_SHIP_DEPOT = 748, Darkvater@4937: SPR_IMG_SHIP_DOCK = 746, Darkvater@4937: SPR_IMG_BOUY = 693, Darkvater@4937: Darkvater@4937: /* music_gui.c */ Darkvater@4937: SPR_IMG_SKIP_TO_PREV = 709, Darkvater@4937: SPR_IMG_SKIP_TO_NEXT = 710, Darkvater@4937: SPR_IMG_STOP_MUSIC = 711, Darkvater@4937: SPR_IMG_PLAY_MUSIC = 712, Darkvater@4937: dominik@606: /* road_gui.c */ skidd13@7895: SPR_IMG_ROAD_Y_DIR = 1309, skidd13@7895: SPR_IMG_ROAD_X_DIR = 1310, rubidium@7882: SPR_IMG_AUTOROAD = SPR_OPENTTD_BASE + 82, Darkvater@2893: SPR_IMG_ROAD_DEPOT = 1295, Darkvater@2893: SPR_IMG_BUS_STATION = 749, Darkvater@2893: SPR_IMG_TRUCK_BAY = 750, Darkvater@2893: SPR_IMG_BRIDGE = 2594, Darkvater@2893: SPR_IMG_ROAD_TUNNEL = 2429, Darkvater@2893: SPR_IMG_REMOVE = 714, skidd13@7906: SPR_IMG_ROAD_ONE_WAY = SPR_OPENTTD_BASE + 134, skidd13@7895: SPR_IMG_TRAMWAY_Y_DIR = SPR_TRAMWAY_BASE + 0, skidd13@7895: SPR_IMG_TRAMWAY_X_DIR = SPR_TRAMWAY_BASE + 1, rubidium@7882: SPR_IMG_AUTOTRAM = SPR_OPENTTD_BASE + 84, tron@2571: tron@2571: /* rail_gui.c */ Darkvater@4937: SPR_IMG_RAIL_NS = 1251, Darkvater@4937: SPR_IMG_RAIL_NE = 1252, Darkvater@4937: SPR_IMG_RAIL_EW = 1253, Darkvater@4937: SPR_IMG_RAIL_NW = 1254, rubidium@7882: SPR_IMG_AUTORAIL = SPR_OPENTTD_BASE + 53, rubidium@7882: SPR_IMG_AUTOELRAIL = SPR_OPENTTD_BASE + 57, rubidium@7882: SPR_IMG_AUTOMONO = SPR_OPENTTD_BASE + 63, rubidium@7882: SPR_IMG_AUTOMAGLEV = SPR_OPENTTD_BASE + 69, tron@2571: rubidium@7882: SPR_IMG_WAYPOINT = SPR_OPENTTD_BASE + 76, tron@2571: tron@2571: SPR_IMG_DEPOT_RAIL = 1294, rubidium@7882: SPR_IMG_DEPOT_ELRAIL = SPR_OPENTTD_BASE + 61, rubidium@7882: SPR_IMG_DEPOT_MONO = SPR_OPENTTD_BASE + 67, rubidium@7882: SPR_IMG_DEPOT_MAGLEV = SPR_OPENTTD_BASE + 73, tron@2571: Darkvater@4937: SPR_IMG_RAIL_STATION = 1298, Darkvater@4937: SPR_IMG_RAIL_SIGNALS = 1291, Darkvater@4937: rubidium@7991: SPR_IMG_SIGNAL_ELECTRIC_NORM = 1287, rubidium@7991: SPR_IMG_SIGNAL_ELECTRIC_ENTRY = SPR_SIGNALS_BASE + 12, rubidium@7991: SPR_IMG_SIGNAL_ELECTRIC_EXIT = SPR_SIGNALS_BASE + 28, rubidium@7991: SPR_IMG_SIGNAL_ELECTRIC_COMBO = SPR_SIGNALS_BASE + 44, rubidium@7991: SPR_IMG_SIGNAL_SEMAPHORE_NORM = SPR_SIGNALS_BASE + 60, rubidium@7991: SPR_IMG_SIGNAL_SEMAPHORE_ENTRY = SPR_SIGNALS_BASE + 76, rubidium@7991: SPR_IMG_SIGNAL_SEMAPHORE_EXIT = SPR_SIGNALS_BASE + 92, rubidium@7991: SPR_IMG_SIGNAL_SEMAPHORE_COMBO = SPR_SIGNALS_BASE + 108, rubidium@7991: SPR_IMG_SIGNAL_CONVERT = SPR_OPENTTD_BASE + 135, rubidium@7991: tron@2571: SPR_IMG_TUNNEL_RAIL = 2430, tron@2571: SPR_IMG_TUNNEL_MONO = 2431, tron@2571: SPR_IMG_TUNNEL_MAGLEV = 2432, tron@2571: rubidium@7882: SPR_IMG_CONVERT_RAIL = SPR_OPENTTD_BASE + 55, rubidium@7882: SPR_IMG_CONVERT_ELRAIL = SPR_OPENTTD_BASE + 59, rubidium@7882: SPR_IMG_CONVERT_MONO = SPR_OPENTTD_BASE + 65, rubidium@7882: SPR_IMG_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 71, Darkvater@4937: Darkvater@4937: /* intro_gui.c, genworld_gui.c */ Darkvater@4937: SPR_SELECT_TEMPERATE = 4882, Darkvater@4937: SPR_SELECT_TEMPERATE_PUSHED = 4883, Darkvater@4937: SPR_SELECT_SUB_ARCTIC = 4884, Darkvater@4937: SPR_SELECT_SUB_ARCTIC_PUSHED = 4885, Darkvater@4937: SPR_SELECT_SUB_TROPICAL = 4886, Darkvater@4937: SPR_SELECT_SUB_TROPICAL_PUSHED = 4887, Darkvater@4937: SPR_SELECT_TOYLAND = 4888, Darkvater@4937: SPR_SELECT_TOYLAND_PUSHED = 4889, pasky@513: }; pasky@513: celestar@2187: /** Cursor sprite numbers */ rubidium@6248: enum CursorSprite { pasky@513: /* Terraform */ pasky@513: /* Cursors */ pasky@513: SPR_CURSOR_MOUSE = 0, pasky@513: SPR_CURSOR_ZZZ = 1, pasky@513: SPR_CURSOR_BOUY = 702, pasky@513: SPR_CURSOR_QUERY = 719, pasky@513: SPR_CURSOR_HQ = 720, pasky@513: SPR_CURSOR_SHIP_DEPOT = 721, pasky@513: SPR_CURSOR_SIGN = 722, pasky@513: pasky@513: SPR_CURSOR_TREE = 2010, pasky@513: SPR_CURSOR_BUY_LAND = 4792, rubidium@7882: SPR_CURSOR_LEVEL_LAND = SPR_OPENTTD_BASE + 92, pasky@513: pasky@513: SPR_CURSOR_TOWN = 4080, pasky@513: SPR_CURSOR_INDUSTRY = 4081, pasky@513: SPR_CURSOR_ROCKY_AREA = 4087, pasky@513: SPR_CURSOR_LIGHTHOUSE = 4088, pasky@513: SPR_CURSOR_TRANSMITTER = 4089, pasky@513: pasky@513: /* airport cursors */ pasky@513: SPR_CURSOR_AIRPORT = 2724, pasky@513: pasky@513: /* dock cursors */ pasky@513: SPR_CURSOR_DOCK = 3668, rubidium@7882: SPR_CURSOR_CANAL = SPR_OPENTTD_BASE + 89, rubidium@7882: SPR_CURSOR_LOCK = SPR_OPENTTD_BASE + 87, peter1138@8381: SPR_CURSOR_RIVER = SPR_OPENTTD_BASE + 137, pasky@513: pasky@513: /* shared road & rail cursors */ pasky@513: SPR_CURSOR_BRIDGE = 2593, pasky@513: pasky@513: /* rail cursors */ pasky@513: SPR_CURSOR_NS_TRACK = 1263, pasky@513: SPR_CURSOR_SWNE_TRACK = 1264, pasky@513: SPR_CURSOR_EW_TRACK = 1265, pasky@513: SPR_CURSOR_NWSE_TRACK = 1266, pasky@513: pasky@513: SPR_CURSOR_NS_MONO = 1267, pasky@513: SPR_CURSOR_SWNE_MONO = 1268, pasky@513: SPR_CURSOR_EW_MONO = 1269, pasky@513: SPR_CURSOR_NWSE_MONO = 1270, pasky@513: pasky@513: SPR_CURSOR_NS_MAGLEV = 1271, pasky@513: SPR_CURSOR_SWNE_MAGLEV = 1272, pasky@513: SPR_CURSOR_EW_MAGLEV = 1273, pasky@513: SPR_CURSOR_NWSE_MAGLEV = 1274, pasky@513: rubidium@7882: SPR_CURSOR_NS_ELRAIL = SPR_ELRAIL_BASE + 40, rubidium@7882: SPR_CURSOR_SWNE_ELRAIL = SPR_ELRAIL_BASE + 41, rubidium@7882: SPR_CURSOR_EW_ELRAIL = SPR_ELRAIL_BASE + 42, rubidium@7882: SPR_CURSOR_NWSE_ELRAIL = SPR_ELRAIL_BASE + 43, celestar@3355: pasky@513: SPR_CURSOR_RAIL_STATION = 1300, tron@2514: pasky@513: SPR_CURSOR_TUNNEL_RAIL = 2434, rubidium@7882: SPR_CURSOR_TUNNEL_ELRAIL = SPR_ELRAIL_BASE + 45, pasky@513: SPR_CURSOR_TUNNEL_MONO = 2435, pasky@513: SPR_CURSOR_TUNNEL_MAGLEV = 2436, pasky@513: rubidium@7882: SPR_CURSOR_AUTORAIL = SPR_OPENTTD_BASE + 54, rubidium@7882: SPR_CURSOR_AUTOELRAIL = SPR_OPENTTD_BASE + 58, rubidium@7882: SPR_CURSOR_AUTOMONO = SPR_OPENTTD_BASE + 64, rubidium@7882: SPR_CURSOR_AUTOMAGLEV = SPR_OPENTTD_BASE + 70, tron@2514: rubidium@7882: SPR_CURSOR_WAYPOINT = SPR_OPENTTD_BASE + 77, tron@2951: Darkvater@2909: SPR_CURSOR_RAIL_DEPOT = 1296, rubidium@7882: SPR_CURSOR_ELRAIL_DEPOT = SPR_OPENTTD_BASE + 62, rubidium@7882: SPR_CURSOR_MONO_DEPOT = SPR_OPENTTD_BASE + 68, rubidium@7882: SPR_CURSOR_MAGLEV_DEPOT = SPR_OPENTTD_BASE + 74, tron@2514: rubidium@7882: SPR_CURSOR_CONVERT_RAIL = SPR_OPENTTD_BASE + 56, rubidium@7882: SPR_CURSOR_CONVERT_ELRAIL = SPR_OPENTTD_BASE + 60, rubidium@7882: SPR_CURSOR_CONVERT_MONO = SPR_OPENTTD_BASE + 66, rubidium@7882: SPR_CURSOR_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 72, pasky@513: pasky@513: /* road cursors */ pasky@513: SPR_CURSOR_ROAD_NESW = 1311, pasky@513: SPR_CURSOR_ROAD_NWSE = 1312, rubidium@7882: SPR_CURSOR_AUTOROAD = SPR_OPENTTD_BASE + 83, rubidium@6691: SPR_CURSOR_TRAMWAY_NESW = SPR_TRAMWAY_BASE + 2, rubidium@6691: SPR_CURSOR_TRAMWAY_NWSE = SPR_TRAMWAY_BASE + 3, rubidium@7882: SPR_CURSOR_AUTOTRAM = SPR_OPENTTD_BASE + 85, pasky@513: pasky@513: SPR_CURSOR_ROAD_DEPOT = 1297, pasky@513: SPR_CURSOR_BUS_STATION = 2725, pasky@513: SPR_CURSOR_TRUCK_STATION = 2726, pasky@513: SPR_CURSOR_ROAD_TUNNEL = 2433, bjarni@2244: rubidium@7882: SPR_CURSOR_CLONE_TRAIN = SPR_OPENTTD_BASE + 110, rubidium@7882: SPR_CURSOR_CLONE_ROADVEH = SPR_OPENTTD_BASE + 111, rubidium@7882: SPR_CURSOR_CLONE_SHIP = SPR_OPENTTD_BASE + 112, rubidium@7882: SPR_CURSOR_CLONE_AIRPLANE = SPR_OPENTTD_BASE + 113, rubidium@6248: }; pasky@513: celestar@2187: /// Animation macro in table/animcursors.h (_animcursors[]) pasky@513: enum AnimCursors { Darkvater@2893: ANIMCURSOR_DEMOLISH = -1, ///< 704 - 707 - demolish dynamite Darkvater@2893: ANIMCURSOR_LOWERLAND = -2, ///< 699 - 701 - lower land tool Darkvater@2893: ANIMCURSOR_RAISELAND = -3, ///< 696 - 698 - raise land tool Darkvater@2893: ANIMCURSOR_PICKSTATION = -4, ///< 716 - 718 - goto-order icon Darkvater@2893: ANIMCURSOR_BUILDSIGNALS = -5, ///< 1292 - 1293 - build signal pasky@513: }; pasky@513: celestar@2187: /** tron@2639: * Bitmask setup. For the graphics system, 32 bits are used to define tron@2639: * the sprite to be displayed. This variable contains various information:
tron@2639: *