Difference between revisions of "ReadingOtherGRFParameters"
From GRFSpecs
Jump to navigationJump to search| m (2 revisions) |  (if only assignment is valid, then put it directly into the syntax) | ||
| (7 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
| ⚫ | |||
| ⚫ | |||
| − | '''''Reading another GRF file's parameters''''' | ||
| ⚫ | |||
| − | ==Reading another GRF file's parameters== | ||
| ⚫ | |||
| ⚫ | |||
| + | {| class="wikitable" | ||
| ⚫ | |||
| + | |- | ||
| + | !'''Element''' | ||
| ⚫ | |||
| + | !'''Description''' | ||
| + | |- | ||
| + | |0D | ||
| + | |B | ||
| ⚫ | |||
| + | |- | ||
| ⚫ | |||
| + | |B | ||
| + | |Target parameter | ||
| + | |- | ||
| + | |<param> | ||
| + | |B | ||
| ⚫ | |||
| + | |- | ||
| + | |FE | ||
| + | |B | ||
| ⚫ | |||
| + | |- | ||
| + | |<GRFID> | ||
| + | |D | ||
| ⚫ | |||
| + | |} | ||
| ⚫ | |||
| ⚫ | |||
| − | |||
| ⚫ | |||
| − | |||
| ⚫ | |||
| − | |||
| ⚫ | |||
| − | |||
| ⚫ | |||
| − | |||
| − | <operation>|B|As for [[ActionD#operation|action D]], but only assignment is valid. | ||
| − | |||
| ⚫ | |||
| − | |||
| ⚫ | |||
| − | |||
| ⚫ | |||
| − | |||
| ⚫ | |||
| With parameter FE you can read the action 14 NewGRF version of another NewGRF in OpenTTD. It returns 0 if no NewGRF version has been set by an action 14. | With parameter FE you can read the action 14 NewGRF version of another NewGRF in OpenTTD. It returns 0 if no NewGRF version has been set by an action 14. | ||
| − | If the  | + | If the GRFID cannot be found, or if the parameter is not defined, a value of 0 is used instead (no matter whether bit 7 of the operation is set or not). | 
Latest revision as of 16:55, 18 March 2015
Introduction
Since TTDPatch 2.0.1 alpha 16, it has been possible to use action D to read the parameters of other GRF files. With this, you can try to use the settings for another related GRF before falling back to a hard coded default.
Format
<Sprite-number> * <Length> 0D <target> 00 <param> FE <GRFID>
| Element | Size | Description | 
|---|---|---|
| 0D | B | Defines action 0D | 
| <target> | B | Target parameter | 
| <param> | B | Parameter number of the other GRF file that you want to read | 
| FE | B | Defines a special variable access | 
| <GRFID> | D | The GRFID whose parameter you want to read | 
This will store parameter <param> of the GRF file with GRFID <GRFID> into the <target>
With parameter FE you can read the action 14 NewGRF version of another NewGRF in OpenTTD. It returns 0 if no NewGRF version has been set by an action 14.
If the GRFID cannot be found, or if the parameter is not defined, a value of 0 is used instead (no matter whether bit 7 of the operation is set or not).
