Object scope resolver. More...
#include <newgrf_object.h>
Public Member Functions | |
ObjectScopeResolver (ResolverObject *ro, Object *obj, TileIndex tile, uint8 view=0) | |
Constructor of an object scope resolver. | |
uint32 | GetRandomBits () const |
Get a few random bits. | |
uint32 | GetVariable (byte variable, uint32 parameter, bool *available) const |
Used by the resolver to get values for feature 0F deterministic spritegroups. | |
Data Fields | |
struct Object * | obj |
The object the callback is ran for. | |
TileIndex | tile |
The tile related to the object. | |
uint8 | view |
The view of the object. |
Object scope resolver.
Definition at line 99 of file newgrf_object.h.
ObjectScopeResolver::ObjectScopeResolver | ( | ResolverObject * | ro, | |
Object * | obj, | |||
TileIndex | tile, | |||
uint8 | view = 0 | |||
) |
Constructor of an object scope resolver.
ro | Surrounding resolver. | |
obj | Object being resolved. | |
tile | Tile of the object. | |
view | View of the object. |
Definition at line 126 of file newgrf_object.cpp.
uint32 ObjectScopeResolver::GetRandomBits | ( | ) | const [virtual] |
Get a few random bits.
Default implementation has no random bits.
Reimplemented from ScopeResolver.
Definition at line 134 of file newgrf_object.cpp.
References GetObjectRandomBits(), IsTileType(), IsValidTile(), MP_OBJECT, and tile.
uint32 ObjectScopeResolver::GetVariable | ( | byte | variable, | |
uint32 | parameter, | |||
bool * | available | |||
) | const [virtual] |
Used by the resolver to get values for feature 0F deterministic spritegroups.
Reimplemented from ScopeResolver.
Definition at line 236 of file newgrf_object.cpp.
References _current_company, _date, Object::build_date, ClosestTownFromTile(), Object::colour, DEBUG, DistanceManhattan(), DistanceSquare(), GetAnimationFrame(), Object::GetByTile(), GetCountAndDistanceOfClosestInstance(), GetNearbyObjectTileInformation(), GetNearbyTile(), GetObjectIDAtOffset(), GetObjectRandomBits(), GetTerrainType(), GetTileOwner(), GetTileSlope(), GetTownRadiusGroup(), ResolverObject::grffile, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_OBJECT, IsTileType(), IsValidTile(), Object::location, min(), MP_OBJECT, obj, ScopeResolver::ro, TileArea::tile, tile, TileX(), TileY(), Object::town, Object::view, view, and Town::xy.