Changeset - r2577:3c8ee179f80c
[Not reviewed]
master
0 2 0
tron - 18 years ago 2005-11-01 06:38:23
tron@openttd.org
(svn r3114) Close two gaps in the sprite array when loading openttd.grf. That's seven more free sprite slots, yay!
2 files changed with 48 insertions and 48 deletions:
0 comments (0 inline, 0 general)
gfxinit.c
Show inline comments
 
@@ -268,13 +268,13 @@ static const SpriteID trg1idx[] = {
 

	
 
/* NOTE: When adding a normal sprite, increase OPENTTD_SPRITES_COUNT with the
 
 * amount of sprites and add them to the end of the list, with the index of
 
 * the old sprite-count offset from SPR_OPENTTD_BASE. With this there is no
 
 * correspondence of any kind with the ID's in the grf file, but results in
 
 * a maximum use of sprite slots. */
 
#define OPENTTD_SPRITES_COUNT 101
 
#define OPENTTD_SPRITES_COUNT 95
 
static const SpriteID _openttd_grf_indexes[] = {
 
	SPR_IMG_AUTORAIL, SPR_CURSOR_WAYPOINT, // icons etc
 
	134, 134,  // euro symbol medium size
 
	582, 582,  // euro symbol large size
 
	358, 358,  // euro symbol tiny
 
	SPR_CURSOR_CANAL, SPR_IMG_FASTFORWARD, // more icons
 
@@ -348,13 +348,13 @@ static void LoadSpriteTables(void)
 

	
 
	load_index = SPR_AUTORAIL_BASE;
 
	load_index += LoadGrfFile("autorail.grf", load_index, i++);
 

	
 
	assert(load_index == SPR_OPENTTD_BASE);
 
	LoadGrfIndexed("openttd.grf", _openttd_grf_indexes, i++);
 
	load_index = SPR_OPENTTD_BASE + OPENTTD_SPRITES_COUNT + 1;
 
	load_index = SPR_OPENTTD_BASE + OPENTTD_SPRITES_COUNT;
 

	
 
	LoadNewGRF(load_index, i);
 
}
 

	
 

	
 
void GfxLoadSprites(void)
table/sprites.h
Show inline comments
 
@@ -50,50 +50,50 @@ enum Sprites {
 
	/* Extra graphic spritenumbers */
 
	SPR_CANALS_BASE   = 5382,
 
	SPR_SLOPES_BASE   = SPR_CANALS_BASE + 70,
 
	SPR_AUTORAIL_BASE = SPR_SLOPES_BASE + 78,
 
	SPR_OPENTTD_BASE  = SPR_AUTORAIL_BASE + 55, // can be lowered once autorail.grf is finalized
 

	
 
	SPR_BLOT = SPR_OPENTTD_BASE + 32, // colored circle (mainly used as vehicle profit marker and for sever compatibility)
 
	SPR_BLOT = SPR_OPENTTD_BASE + 29, // colored circle (mainly used as vehicle profit marker and for sever compatibility)
 

	
 
	SPR_PIN_UP        = SPR_OPENTTD_BASE + 62,   // pin icon
 
	SPR_PIN_DOWN      = SPR_OPENTTD_BASE + 63,
 
	SPR_BOX_EMPTY     = SPR_OPENTTD_BASE + 66,
 
	SPR_BOX_CHECKED   = SPR_OPENTTD_BASE + 67,
 
	SPR_WINDOW_RESIZE = SPR_OPENTTD_BASE + 94,   // resize icon
 
	SPR_HOUSE_ICON    = SPR_OPENTTD_BASE + 101,
 
	SPR_PIN_UP        = SPR_OPENTTD_BASE + 55,   // pin icon
 
	SPR_PIN_DOWN      = SPR_OPENTTD_BASE + 56,
 
	SPR_BOX_EMPTY     = SPR_OPENTTD_BASE + 59,
 
	SPR_BOX_CHECKED   = SPR_OPENTTD_BASE + 60,
 
	SPR_WINDOW_RESIZE = SPR_OPENTTD_BASE + 87,   // resize icon
 
	SPR_HOUSE_ICON    = SPR_OPENTTD_BASE + 94,
 
	// arrow icons pointing in all 4 directions
 
	SPR_ARROW_DOWN    = SPR_OPENTTD_BASE + 95,
 
	SPR_ARROW_UP      = SPR_OPENTTD_BASE + 96,
 
	SPR_ARROW_LEFT    = SPR_OPENTTD_BASE + 97,
 
	SPR_ARROW_RIGHT   = SPR_OPENTTD_BASE + 98,
 
	SPR_ARROW_DOWN    = SPR_OPENTTD_BASE + 88,
 
	SPR_ARROW_UP      = SPR_OPENTTD_BASE + 89,
 
	SPR_ARROW_LEFT    = SPR_OPENTTD_BASE + 90,
 
	SPR_ARROW_RIGHT   = SPR_OPENTTD_BASE + 91,
 

	
 
	/* Clone vehicles stuff */
 
	SPR_CLONE_AIRCRAFT = SPR_OPENTTD_BASE + 99,
 
	SPR_CLONE_ROADVEH = SPR_OPENTTD_BASE + 99,
 
	SPR_CLONE_TRAIN = SPR_OPENTTD_BASE + 99,
 
	SPR_CLONE_SHIP = SPR_OPENTTD_BASE + 99,
 
	SPR_CLONE_AIRCRAFT = SPR_OPENTTD_BASE + 92,
 
	SPR_CLONE_ROADVEH  = SPR_OPENTTD_BASE + 92,
 
	SPR_CLONE_SHIP     = SPR_OPENTTD_BASE + 92,
 
	SPR_CLONE_TRAIN    = SPR_OPENTTD_BASE + 92,
 

	
 
	/* Network GUI sprites */
 
	SPR_SQUARE = SPR_OPENTTD_BASE + 23,     // colored square (used for newgrf compatibility)
 
	SPR_LOCK = SPR_OPENTTD_BASE + 22,       // lock icon (for password protected servers)
 
	SPR_FLAGS_BASE = SPR_OPENTTD_BASE + 90, // start of the flags block (in same order as enum NetworkLanguage)
 
	SPR_SQUARE = SPR_OPENTTD_BASE + 20,     // colored square (used for newgrf compatibility)
 
	SPR_LOCK = SPR_OPENTTD_BASE + 19,       // lock icon (for password protected servers)
 
	SPR_FLAGS_BASE = SPR_OPENTTD_BASE + 83, // start of the flags block (in same order as enum NetworkLanguage)
 

	
 
	/* Manager face sprites */
 
	SPR_GRADIENT = 874, // background gradient behind manager face
 

	
 
	/* is itself no foundation sprite, because tileh 0 has no foundation */
 
	SPR_FOUNDATION_BASE = 989,
 

	
 
	/* Shadow cell */
 
	SPR_SHADOW_CELL = 1004,
 

	
 
	/* Sliced view shadow cells */
 
	/* Maybe we have different ones in the future */
 
	SPR_MAX_SLICE = SPR_OPENTTD_BASE + 71,
 
	SPR_MIN_SLICE = SPR_OPENTTD_BASE + 71,
 
	SPR_MAX_SLICE = SPR_OPENTTD_BASE + 64,
 
	SPR_MIN_SLICE = SPR_OPENTTD_BASE + 64,
 

	
 
	/* Unmovables spritenumbers */
 
	SPR_UNMOVABLE_TRANSMITTER 	= 2601,
 
	SPR_UNMOVABLE_LIGHTHOUSE		= 2602,
 
	SPR_TINYHQ_NORTH						= 2603,
 
	SPR_TINYHQ_EAST							= 2604,
 
@@ -184,16 +184,16 @@ enum Sprites {
 
	SPR_MGLV_SINGLE_SOUTH             = 1172,
 
	SPR_MGLV_SINGLE_EAST              = 1173,
 
	SPR_MGLV_SINGLE_WEST              = 1174,
 
	SPR_MGLV_TRACK_Y                  = 1175,
 
	SPR_MGLV_TRACK_BASE               = 1182,
 
	SPR_MGLV_TRACK_N_S                = 1199,
 
	SPR_WAYPOINT_X_1						= SPR_OPENTTD_BASE + 18,
 
	SPR_WAYPOINT_X_2						= SPR_OPENTTD_BASE + 19,
 
	SPR_WAYPOINT_Y_1						= SPR_OPENTTD_BASE + 20,
 
	SPR_WAYPOINT_Y_2						= SPR_OPENTTD_BASE + 21,
 
	SPR_WAYPOINT_X_1						= SPR_OPENTTD_BASE + 15,
 
	SPR_WAYPOINT_X_2						= SPR_OPENTTD_BASE + 16,
 
	SPR_WAYPOINT_Y_1						= SPR_OPENTTD_BASE + 17,
 
	SPR_WAYPOINT_Y_2						= SPR_OPENTTD_BASE + 18,
 
	OFFSET_TILEH_IMPOSSIBLE			= 0,
 
	OFFSET_TILEH_1							= 14,
 
	OFFSET_TILEH_2							= 15,
 
	OFFSET_TILEH_3							= 22,
 
	OFFSET_TILEH_4							= 13,
 
	OFFSET_TILEH_6							= 21,
 
@@ -263,13 +263,13 @@ enum Sprites {
 
	SPR_AIRPORT_RADAR_7							= 2686,
 
	SPR_AIRPORT_RADAR_8							= 2687,
 
	SPR_AIRPORT_RADAR_9							= 2688,
 
	SPR_AIRPORT_RADAR_A							= 2689,
 
	SPR_AIRPORT_RADAR_B							= 2690,
 
	SPR_AIRPORT_RADAR_C							= 2691,
 
	SPR_AIRPORT_HELIPAD							= SPR_OPENTTD_BASE + 31,
 
	SPR_AIRPORT_HELIPAD							= SPR_OPENTTD_BASE + 28,
 

	
 
	/* Road Stops */
 
	/* Road stops have a ground tile and 3 buildings, one on each side
 
			(except the side where the entry is). These are marked _A _B and _C
 
	*/
 
	SPR_BUS_STOP_NE_GROUND					= 2692,
 
@@ -424,13 +424,13 @@ enum Sprites {
 
	/* Level crossings */
 
	SPR_CROSSING_OFF_X_RAIL   = 1370,
 
	SPR_CROSSING_OFF_X_MONO   = 1382,
 
	SPR_CROSSING_OFF_X_MAGLEV = 1394,
 

	
 
	/* bridge type sprites */
 
	SPR_PILLARS_BASE = SPR_OPENTTD_BASE + 33,
 
	SPR_PILLARS_BASE = SPR_OPENTTD_BASE + 30,
 

	
 
	/* Wooden bridge (type 0) */
 
	SPR_BTWDN_RAIL_Y_REAR				= 2545,
 
	SPR_BTWDN_RAIL_X_REAR				= 2546,
 
	SPR_BTWDN_ROAD_Y_REAR				= 2547,
 
	SPR_BTWDN_ROAD_X_REAR				= 2548,
 
@@ -734,18 +734,18 @@ enum Sprites {
 
	SPR_IMG_TERRAFORM_UP    = 694,
 
	SPR_IMG_TERRAFORM_DOWN  = 695,
 
	SPR_IMG_DYNAMITE        = 703,
 
	SPR_IMG_ROCKS           = 4084,
 
	SPR_IMG_LIGHTHOUSE_DESERT = 4085, // XXX - is Desert image on the desert-climate
 
	SPR_IMG_TRANSMITTER     = 4086,
 
	SPR_IMG_LEVEL_LAND      = SPR_OPENTTD_BASE + 68,
 
	SPR_IMG_BUILD_CANAL     = SPR_OPENTTD_BASE + 65,
 
	SPR_IMG_LEVEL_LAND      = SPR_OPENTTD_BASE + 61,
 
	SPR_IMG_BUILD_CANAL     = SPR_OPENTTD_BASE + 58,
 
	SPR_IMG_BUILD_LOCK      = SPR_CANALS_BASE + 69,
 
	SPR_IMG_PLACE_SIGN      = SPR_OPENTTD_BASE + 70,
 
	SPR_IMG_PLACE_SIGN      = SPR_OPENTTD_BASE + 63,
 
	SPR_IMG_PAUSE           = 726,
 
	SPR_IMG_FASTFORWARD     = SPR_OPENTTD_BASE + 57,
 
	SPR_IMG_FASTFORWARD     = SPR_OPENTTD_BASE + 54,
 
	SPR_IMG_SETTINGS        = 751,
 
	SPR_IMG_SAVE            = 724,
 
	SPR_IMG_SMALLMAP        = 708,
 
	SPR_IMG_TOWN            = 4077,
 
	SPR_IMG_SUBSIDIES       = 679,
 
	SPR_IMG_COMPANY_LIST    = 1299,
 
@@ -775,14 +775,14 @@ enum Sprites {
 
	SPR_IMG_SIGN            = 4082,
 
	SPR_IMG_BUY_LAND        = 4791,
 

	
 
	/* OPEN TRANSPORT TYCOON in gamescreen */
 
	SPR_OTTD_O                = 4842,
 
	SPR_OTTD_P                = 4841,
 
	SPR_OTTD_E                = SPR_OPENTTD_BASE + 16,
 
	SPR_OTTD_D                = SPR_OPENTTD_BASE + 17,
 
	SPR_OTTD_E                = SPR_OPENTTD_BASE + 13,
 
	SPR_OTTD_D                = SPR_OPENTTD_BASE + 14,
 
	SPR_OTTD_N                = 4839,
 
	SPR_OTTD_T                = 4836,
 
	SPR_OTTD_R                = 4837,
 
	SPR_OTTD_A                = 4838,
 
	SPR_OTTD_S                = 4840,
 
	SPR_OTTD_Y                = 4843,
 
@@ -899,22 +899,22 @@ enum Sprites {
 
	SPR_IMG_AUTOMONO   = SPR_OPENTTD_BASE + 1,
 
	SPR_IMG_AUTOMAGLEV = SPR_OPENTTD_BASE + 2,
 

	
 
	SPR_IMG_WAYPOINT = SPR_OPENTTD_BASE + 3,
 

	
 
	SPR_IMG_DEPOT_RAIL   = 1294,
 
	SPR_IMG_DEPOT_MONO   = SPR_OPENTTD_BASE + 12,
 
	SPR_IMG_DEPOT_MAGLEV = SPR_OPENTTD_BASE + 13,
 
	SPR_IMG_DEPOT_MONO   = SPR_OPENTTD_BASE + 9,
 
	SPR_IMG_DEPOT_MAGLEV = SPR_OPENTTD_BASE + 10,
 

	
 
	SPR_IMG_TUNNEL_RAIL   = 2430,
 
	SPR_IMG_TUNNEL_MONO   = 2431,
 
	SPR_IMG_TUNNEL_MAGLEV = 2432,
 

	
 
	SPR_IMG_CONVERT_RAIL   = SPR_OPENTTD_BASE + 25,
 
	SPR_IMG_CONVERT_MONO   = SPR_OPENTTD_BASE + 27,
 
	SPR_IMG_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 29
 
	SPR_IMG_CONVERT_RAIL   = SPR_OPENTTD_BASE + 22,
 
	SPR_IMG_CONVERT_MONO   = SPR_OPENTTD_BASE + 24,
 
	SPR_IMG_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 26
 
};
 

	
 
/** Cursor sprite numbers */
 
typedef enum CursorSprites {
 
	/* Terraform */
 
	/* Cursors */
 
@@ -925,27 +925,27 @@ typedef enum CursorSprites {
 
	SPR_CURSOR_HQ             = 720,
 
	SPR_CURSOR_SHIP_DEPOT     = 721,
 
	SPR_CURSOR_SIGN           = 722,
 

	
 
	SPR_CURSOR_TREE           = 2010,
 
	SPR_CURSOR_BUY_LAND       = 4792,
 
	SPR_CURSOR_LEVEL_LAND     = SPR_OPENTTD_BASE + 69,
 
	SPR_CURSOR_LEVEL_LAND     = SPR_OPENTTD_BASE + 62,
 

	
 
	SPR_CURSOR_TOWN           = 4080,
 
	SPR_CURSOR_INDUSTRY       = 4081,
 
	SPR_CURSOR_ROCKY_AREA     = 4087,
 
	SPR_CURSOR_LIGHTHOUSE     = 4088,
 
	SPR_CURSOR_TRANSMITTER    = 4089,
 

	
 
	/* airport cursors */
 
	SPR_CURSOR_AIRPORT        = 2724,
 

	
 
	/* dock cursors */
 
	SPR_CURSOR_DOCK           = 3668,
 
	SPR_CURSOR_CANAL          = SPR_OPENTTD_BASE + 11,
 
	SPR_CURSOR_LOCK           = SPR_OPENTTD_BASE + 64,
 
	SPR_CURSOR_CANAL          = SPR_OPENTTD_BASE + 8,
 
	SPR_CURSOR_LOCK           = SPR_OPENTTD_BASE + 57,
 

	
 
	/* shared road & rail cursors */
 
	SPR_CURSOR_BRIDGE         = 2593,
 

	
 
	/* rail cursors */
 
	SPR_CURSOR_NS_TRACK       = 1263,
 
@@ -972,29 +972,29 @@ typedef enum CursorSprites {
 

	
 
	SPR_CURSOR_AUTORAIL       = SPR_OPENTTD_BASE + 4,
 
	SPR_CURSOR_AUTOMONO       = SPR_OPENTTD_BASE + 5,
 
	SPR_CURSOR_AUTOMAGLEV     = SPR_OPENTTD_BASE + 6,
 

	
 
	SPR_CURSOR_WAYPOINT       = SPR_OPENTTD_BASE + 7,
 
	SPR_CURSOR_MONO_DEPOT     = SPR_OPENTTD_BASE + 14,
 
	SPR_CURSOR_MAGLEV_DEPOT   = SPR_OPENTTD_BASE + 15,
 
	SPR_CURSOR_MONO_DEPOT     = SPR_OPENTTD_BASE + 11,
 
	SPR_CURSOR_MAGLEV_DEPOT   = SPR_OPENTTD_BASE + 12,
 

	
 
	SPR_CURSOR_CONVERT_RAIL   = SPR_OPENTTD_BASE + 26,
 
	SPR_CURSOR_CONVERT_MONO   = SPR_OPENTTD_BASE + 28,
 
	SPR_CURSOR_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 30,
 
	SPR_CURSOR_CONVERT_RAIL   = SPR_OPENTTD_BASE + 23,
 
	SPR_CURSOR_CONVERT_MONO   = SPR_OPENTTD_BASE + 25,
 
	SPR_CURSOR_CONVERT_MAGLEV = SPR_OPENTTD_BASE + 27,
 

	
 
	/* road cursors */
 
	SPR_CURSOR_ROAD_NESW      = 1311,
 
	SPR_CURSOR_ROAD_NWSE      = 1312,
 

	
 
	SPR_CURSOR_ROAD_DEPOT     = 1297,
 
	SPR_CURSOR_BUS_STATION    = 2725,
 
	SPR_CURSOR_TRUCK_STATION  = 2726,
 
	SPR_CURSOR_ROAD_TUNNEL    = 2433,
 

	
 
	SPR_CURSOR_CLONE = SPR_OPENTTD_BASE + 100,
 
	SPR_CURSOR_CLONE = SPR_OPENTTD_BASE + 93,
 
} CursorSprite;
 

	
 
/// Animation macro in table/animcursors.h (_animcursors[])
 
enum AnimCursors {
 
	ANIMCURSOR_DEMOLISH     = -1,	///<  704 -  707 - demolish dynamite
 
	ANIMCURSOR_LOWERLAND    = -2,	///<  699 -  701 - lower land tool
0 comments (0 inline, 0 general)