OpenTTD
Public Member Functions | Data Fields
HouseResolverObject Struct Reference

Resolver object to be used for houses (feature 07 spritegroups). More...

#include <newgrf_house.h>

Inheritance diagram for HouseResolverObject:
ResolverObject

Public Member Functions

 HouseResolverObject (HouseID house_id, TileIndex tile, Town *town, CallbackID callback=CBID_NO_CALLBACK, uint32 param1=0, uint32 param2=0, bool not_yet_constructed=false, uint8 initial_random_bits=0, uint32 watched_cargo_triggers=0)
 Construct a resolver for a house.
ScopeResolverGetScope (VarSpriteGroupScope scope=VSG_SCOPE_SELF, byte relative=0)
 Get a resolver for the scope.
- Public Member Functions inherited from ResolverObject
 ResolverObject (const GRFFile *grffile, CallbackID callback=CBID_NO_CALLBACK, uint32 callback_param1=0, uint32 callback_param2=0)
 Resolver constructor.
const SpriteGroupResolve ()
 Resolve SpriteGroup.
uint16 ResolveCallback ()
 Resolve callback.
virtual const SpriteGroupResolveReal (const RealSpriteGroup *group) const
 Get the real sprites of the grf.
uint32 GetReseedSum () const
 Returns the OR-sum of all bits that need reseeding independent of the scope they were accessed with.
void ResetState ()
 Resets the dynamic state of the resolver object.

Data Fields

HouseScopeResolver house_scope
TownScopeResolver town_scope
- Data Fields inherited from ResolverObject
ScopeResolver default_scope
 Default implementation of the grf scope.
CallbackID callback
 Callback being resolved.
uint32 callback_param1
 First parameter (var 10) of the callback.
uint32 callback_param2
 Second parameter (var 18) of the callback.
byte trigger
uint32 last_value
 Result of most recent DeterministicSpriteGroup (including procedure calls)
uint32 reseed [VSG_END]
 Collects bits to rerandomise while triggering triggers.
const GRFFilegrffile
 GRFFile the resolved SpriteGroup belongs to.
const SpriteGrouproot_spritegroup
 Root SpriteGroup to use for resolving.

Detailed Description

Resolver object to be used for houses (feature 07 spritegroups).

Definition at line 40 of file newgrf_house.h.

Constructor & Destructor Documentation

HouseResolverObject::HouseResolverObject ( HouseID  house_id,
TileIndex  tile,
Town town,
CallbackID  callback = CBID_NO_CALLBACK,
uint32  param1 = 0,
uint32  param2 = 0,
bool  not_yet_constructed = false,
uint8  initial_random_bits = 0,
uint32  watched_cargo_triggers = 0 
)

Construct a resolver for a house.

Parameters
house_idHouse to query.
tileTile containing the house.
townTown containing the house.
callbackCallback ID.
param1First parameter (var 10) of the callback.
param2Second parameter (var 18) of the callback.
not_yet_constructedHouse is still under construction.
initial_random_bitsRandom bits during construction checks.
watched_cargo_triggersCargo types that triggered the watched cargo callback.

Definition at line 79 of file newgrf_house.cpp.

References HouseSpec::grf_prop, ResolverObject::root_spritegroup, and GRFFilePropsBase< Tcnt >::spritegroup.

Member Function Documentation

ScopeResolver* HouseResolverObject::GetScope ( VarSpriteGroupScope  scope = VSG_SCOPE_SELF,
byte  relative = 0 
)
inlinevirtual

Get a resolver for the scope.

Parameters
scopeScope to return.
relativeAdditional parameter for VSG_SCOPE_RELATIVE.
Returns
The resolver for the requested scope.

Reimplemented from ResolverObject.

Definition at line 48 of file newgrf_house.h.

References VSG_SCOPE_PARENT, and VSG_SCOPE_SELF.


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