OpenTTD Source 20250508-master-g6680169251
|
Resolver of town properties. More...
#include <newgrf_town.h>
Public Member Functions | |
TownResolverObject (const struct GRFFile *grffile, Town *t, bool readonly) | |
Resolver for a town. | |
ScopeResolver * | GetScope (VarSpriteGroupScope scope=VSG_SCOPE_SELF, uint8_t relative=0) override |
Get a resolver for the scope. | |
![]() | |
ResolverObject (const GRFFile *grffile, CallbackID callback=CBID_NO_CALLBACK, uint32_t callback_param1=0, uint32_t callback_param2=0) | |
Resolver constructor. | |
ResolverResult | DoResolve () |
int32_t | GetRegister (uint i) const |
Gets the value of a so-called newgrf "register". | |
void | SetRegister (uint i, int32_t value) |
Sets the value of a so-called newgrf "register". | |
template<class TSpriteGroup > | |
const TSpriteGroup * | Resolve () |
Resolve SpriteGroup. | |
void | ResolveRerandomisation () |
Resolve bits to be rerandomised. | |
CallbackResult | ResolveCallback (std::span< int32_t > regs100) |
Resolve callback. | |
virtual const SpriteGroup * | ResolveReal (const RealSpriteGroup &group) const |
Get the real sprites of the grf. | |
uint32_t | GetWaitingRandomTriggers () const |
Used by RandomizedSpriteGroup: Triggers for rerandomisation. | |
void | AddUsedRandomTriggers (uint32_t triggers) |
Used by RandomizedSpriteGroup: Consume triggers. | |
uint32_t | GetReseedSum () const |
Returns the OR-sum of all bits that need reseeding independent of the scope they were accessed with. | |
virtual GrfSpecFeature | GetFeature () const |
Get the feature number being resolved for. | |
virtual uint32_t | GetDebugID () const |
Get an identifier for the item being resolved. | |
Data Fields | |
TownScopeResolver | town_scope |
Scope resolver specific for towns. | |
![]() | |
ScopeResolver | default_scope |
Default implementation of the grf scope. | |
CallbackID | callback {} |
Callback being resolved. | |
uint32_t | callback_param1 = 0 |
First parameter (var 10) of the callback. | |
uint32_t | callback_param2 = 0 |
Second parameter (var 18) of the callback. | |
uint32_t | last_value = 0 |
Result of most recent DeterministicSpriteGroup (including procedure calls) | |
std::array< uint32_t, VSG_END > | reseed |
Collects bits to rerandomise while triggering triggers. | |
const GRFFile * | grffile = nullptr |
GRFFile the resolved SpriteGroup belongs to. | |
const SpriteGroup * | root_spritegroup = nullptr |
Root SpriteGroup to use for resolving. | |
Additional Inherited Members | |
![]() | |
uint32_t | waiting_random_triggers = 0 |
Waiting triggers to be used by any rerandomisation. (scope independent) | |
uint32_t | used_random_triggers = 0 |
Subset of cur_triggers, which actually triggered some rerandomisation. (scope independent) | |
Resolver of town properties.
Definition at line 42 of file newgrf_town.h.
Resolver for a town.
grffile | NewGRF file associated with the town. |
t | Town of the scope. |
readonly | Scope may change persistent storage of the town. |
Definition at line 162 of file newgrf_town.cpp.
|
inlineoverridevirtual |
Get a resolver for the scope.
Reimplemented from ResolverObject.
Definition at line 47 of file newgrf_town.h.
References ResolverObject::GetScope(), town_scope, and VSG_SCOPE_SELF.
Referenced by NIHTown::Resolve().
TownScopeResolver TownResolverObject::town_scope |
Scope resolver specific for towns.
Definition at line 43 of file newgrf_town.h.
Referenced by GetScope().