OpenTTD
|
Resolver object for rail types. More...
#include <newgrf_railtype.h>
Public Member Functions | |
RailTypeResolverObject (const RailtypeInfo *rti, TileIndex tile, TileContext context, RailTypeSpriteGroup rtsg, uint32 param1=0, uint32 param2=0) | |
Resolver object for rail types. | |
ScopeResolver * | GetScope (VarSpriteGroupScope scope=VSG_SCOPE_SELF, byte relative=0) |
Get a resolver for the scope. | |
const SpriteGroup * | ResolveReal (const RealSpriteGroup *group) const |
Get the real sprites of the grf. | |
![]() | |
ResolverObject (const GRFFile *grffile, CallbackID callback=CBID_NO_CALLBACK, uint32 callback_param1=0, uint32 callback_param2=0) | |
Resolver constructor. | |
const SpriteGroup * | Resolve () |
Resolve SpriteGroup. | |
uint16 | ResolveCallback () |
Resolve callback. | |
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 | |
RailTypeScopeResolver | railtype_scope |
Resolver for the railtype scope. | |
![]() | |
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 GRFFile * | grffile |
GRFFile the resolved SpriteGroup belongs to. | |
const SpriteGroup * | root_spritegroup |
Root SpriteGroup to use for resolving. |
Resolver object for rail types.
Definition at line 31 of file newgrf_railtype.h.
RailTypeResolverObject::RailTypeResolverObject | ( | const RailtypeInfo * | rti, |
TileIndex | tile, | ||
TileContext | context, | ||
RailTypeSpriteGroup | rtsg, | ||
uint32 | param1 = 0 , |
||
uint32 | param2 = 0 |
||
) |
Resolver object for rail types.
rti | Railtype. NULL in NewGRF Inspect window. |
tile | Tile containing the track. For track on a bridge this is the southern bridgehead. |
context | Are we resolving sprites for the upper halftile, or on a bridge? |
rtsg | Railpart of interest |
param1 | Extra parameter (first parameter of the callback, except railtypes do not have callbacks). |
param2 | Extra parameter (second parameter of the callback, except railtypes do not have callbacks). |
Definition at line 91 of file newgrf_railtype.cpp.
References RailtypeInfo::group, and ResolverObject::root_spritegroup.
|
inlinevirtual |
Get a resolver for the scope.
scope | Scope to return. |
relative | Additional parameter for VSG_SCOPE_RELATIVE. |
Reimplemented from ResolverObject.
Definition at line 36 of file newgrf_railtype.h.
References railtype_scope, and VSG_SCOPE_SELF.
|
virtual |
Get the real sprites of the grf.
group | Group to get. |
Reimplemented from ResolverObject.
Definition at line 63 of file newgrf_railtype.cpp.
References RealSpriteGroup::loaded, RealSpriteGroup::loading, RealSpriteGroup::num_loaded, and RealSpriteGroup::num_loading.