OpenTTD
Static Public Member Functions
AnimationBase< Tbase, Tspec, Tobj, Textra, GetCallback > Struct Template Reference

Helper class for a unified approach to NewGRF animation. More...

#include <newgrf_animation_base.h>

Static Public Member Functions

static void AnimateTile (const Tspec *spec, Tobj *obj, TileIndex tile, bool random_animation, Textra extra_data=0)
 Animate a single tile.
static void ChangeAnimationFrame (CallbackID cb, const Tspec *spec, Tobj *obj, TileIndex tile, uint32 random_bits, uint32 trigger, Textra extra_data=0)
 Check a callback to determine what the next animation step is and execute that step.

Detailed Description

template<typename Tbase, typename Tspec, typename Tobj, typename Textra, uint16(*)(CallbackID callback, uint32 param1, uint32 param2, const Tspec *statspec, Tobj *st, TileIndex tile, Textra extra_data) GetCallback>
struct AnimationBase< Tbase, Tspec, Tobj, Textra, GetCallback >

Helper class for a unified approach to NewGRF animation.

Template Parameters
TbaseInstantiation of this class.
TspecNewGRF specification related to the animated tile.
TobjObject related to the animated tile.
TextraCustom extra callback data.
GetCallbackThe callback function pointer.

Definition at line 31 of file newgrf_animation_base.h.

Member Function Documentation

template<typename Tbase, typename Tspec, typename Tobj, typename Textra, uint16(*)(CallbackID callback, uint32 param1, uint32 param2, const Tspec *statspec, Tobj *st, TileIndex tile, Textra extra_data) GetCallback>
static void AnimationBase< Tbase, Tspec, Tobj, Textra, GetCallback >::AnimateTile ( const Tspec *  spec,
Tobj *  obj,
TileIndex  tile,
bool  random_animation,
Textra  extra_data = 0 
)
inlinestatic

Animate a single tile.

Parameters
cbThe callback to actually call.
specSpecification related to the tile.
objObject related to the tile.
tileTile to animate changes for.
random_animationWhether to pass random bits to the "next frame" callback.
extra_dataCustom extra callback data.

Definition at line 41 of file newgrf_animation_base.h.

template<typename Tbase, typename Tspec, typename Tobj, typename Textra, uint16(*)(CallbackID callback, uint32 param1, uint32 param2, const Tspec *statspec, Tobj *st, TileIndex tile, Textra extra_data) GetCallback>
static void AnimationBase< Tbase, Tspec, Tobj, Textra, GetCallback >::ChangeAnimationFrame ( CallbackID  cb,
const Tspec *  spec,
Tobj *  obj,
TileIndex  tile,
uint32  random_bits,
uint32  trigger,
Textra  extra_data = 0 
)
inlinestatic

Check a callback to determine what the next animation step is and execute that step.

This includes stopping and starting animations as well as updating animation frames and playing sounds.

Parameters
cbThe callback to actually call.
specSpecification related to the tile.
objObject related to the tile.
tileTile to consider animation changes for.
random_bitsRandom bits for this update. To be passed as parameter to the NewGRF.
triggerWhat triggered this update? To be passed as parameter to the NewGRF.
extra_dataCustom extra data for callback processing.

Definition at line 120 of file newgrf_animation_base.h.


The documentation for this struct was generated from the following file: