NML:Replace TTD sprites

From GRFSpecs
Revision as of 08:24, 2 March 2012 by Planetmaker (talk | contribs) (Document the use of a block name for the replace and base_graphics block)
Jump to navigationJump to search
Block Syntax

Using a replace block, it is possible to replace TTD's built-in sprites or for base grfs to define sprites via the base_graphics block. The syntax is as follows:

replace [<block_name>](<sprite-id>, <image-file>) {
	list of realsprites
}

and

base_graphics [<block_name>](<sprite-id>, <image-file>) {
	list of realsprites
}

respectively

A <block_name> is optional but required, if you want to define alternative sprites for the sprite block so that it can be referenced there.

The first parameter <sprite-id> indicates the sprite number of the first sprite to replace. Sprite numbers are equal to the sprite numbers in the base graphics file. The OpenGFX author overview can be used as a reference to look up these sprite numbers. The second parameter <image-file> specifies the image file that contains the new sprites. A series of real sprites has to be specified between the curly braces ({ and }). The first sprite in this list replaces the sprite with id sprite-id, the second replaces sprite-id + 1 and so on. Sprite templates can be used as well. For example:

 // Rail overlays for crossings
 replace rail_overlays(1005, "src/gfx/rails_overlays.png") {
 		[ 20,198, 40,21, -20,  5]
 		[ 71,198, 40,21, -20,  5]
 		[117,198, 40, 7, -20,  5]
 		[165,198, 40, 7, -20, 21]
 		[216,198, 12,19,  10,  5]
 		[248,198, 12,19, -24, 11]
 }