Difference between revisions of "Callback: Animation control"
From GRFSpecs
Jump to navigationJump to search (reshuffle paragraphs into table) |
(house construction stage trigger) |
||
Line 14: | Line 14: | ||
|1C||Houses |
|1C||Houses |
||
|[[Action0/Houses#House_callback_flags_.2814.2C1D.29|Property 14 bit 3]] |
|[[Action0/Houses#House_callback_flags_.2814.2C1D.29|Property 14 bit 3]] |
||
− | |[[VariationalAction2/Houses#Construction_stage_and_pseudo-random_values_.2840.29|Construction stage]] changes <ref> |
+ | |[[VariationalAction2/Houses#Construction_stage_and_pseudo-random_values_.2840.29|Construction stage]] changes <ref>During normal gameplay called 4 times per tile. During map generation called 1 time. For the first call to happen, you also have to set [[Action0/Houses#Building_flags_.2809.29|property 9 bit 5]].</ref> |
|Reserved for future use |
|Reserved for future use |
||
|Reserved for future use |
|Reserved for future use |
Revision as of 16:04, 23 April 2025
Animation control (1B/1C/25/140/148/152/159)
These callbacks are called, when an animation trigger happens.
Callback | Feature | Mask property | Trigger | Variable 10 | Variable 18 |
---|---|---|---|---|---|
1B | Houses | Property 14 bit 2 | Periodic, see property 16 [1] | ![]() ![]() |
Reserved for future use |
1C | Houses | Property 14 bit 3 | Construction stage changes [3] | Reserved for future use | Reserved for future use |
25 | Industry tiles | Property 11 | All triggers, see variable 18 | ![]() ![]() |
See property 11 |
140 | Stations, road stops | Station property 18, road stop property 10 | All triggers, see variable 18 | ![]() ![]() |
See station property 18 |
148 | Houses | Property 1E | Watched cargo accepted [5] | Reserved for future use | See property 1E |
154 | Airport tiles | Property 11 | All triggers, see variable 18 | Random bits | See property 11 |
159 | Objects | Property 13 | All triggers, see variable 18 | Random bits | See property 13 |
- ↑ For multi-tile houses property 19 bit 2 controls, whether the trigger is synchronised across all house tiles. See details there.
- ↑ Lower 16 bits are random per tile. Upper 16 bits are the same for all tiles, if property 19 bit 2 is set.
- ↑ During normal gameplay called 4 times per tile. During map generation called 1 time. For the first call to happen, you also have to set property 9 bit 5.
- ↑ 4.0 4.1 Lower 16 bits are random per tile. Upper 16 bits are the same for all tiles, if the trigger applies to multiple tiles.
- ↑ Due to implementation details, up to 250 game ticks can pass between the actual acceptance and triggering this callback.
The return value has the format SSFF:
- FF: One of the following values:
Value Meaning 00 - FC Jump to this animation frame. FD leave the animation in its current state (do nothing) FE start animation with its current frame FF stop animation in its current frame
- SS: Sound effect: If non-zero, the sound effect number to play at the tile.
Note: Every time the animation frame is changed the map tile will be refreshed, even if the selected graphics stay the same. Therefore using the animation frame as a timer should be avoided, and animation triggers should be preferred instead.