OpenTTD Source 20260206-master-g4d4e37dbf1
TownScopeResolver Struct Reference

Scope resolver for a town. More...

#include <newgrf_town.h>

Inheritance diagram for TownScopeResolver:
ScopeResolver

Public Member Functions

 TownScopeResolver (ResolverObject &ro, Town *t, bool readonly)
 Resolver of a town scope.
uint32_t GetVariable (uint8_t variable, uint32_t parameter, bool &available) const override
 Get a variable value.
void StorePSA (uint reg, int32_t value) override
 Store a value into the persistent storage area (PSA).
Public Member Functions inherited from ScopeResolver
 ScopeResolver (ResolverObject &ro)
virtual uint32_t GetRandomBits () const
 Get a few random bits.
virtual uint32_t GetRandomTriggers () const
 Get the triggers.

Data Fields

Townt
 Town of the scope.
bool readonly
 When set, persistent storage of the town is read-only,.
Data Fields inherited from ScopeResolver
ResolverObjectro
 Surrounding resolver object.

Detailed Description

Scope resolver for a town.

Note
Currently there is no direct town resolver; we only need to get town variable results from inside stations, house tiles and industries, and to check the town's persistent storage.

Definition at line 22 of file newgrf_town.h.

Constructor & Destructor Documentation

◆ TownScopeResolver()

TownScopeResolver::TownScopeResolver ( ResolverObject & ro,
Town * t,
bool readonly )
inline

Resolver of a town scope.

Parameters
roSurrounding resolver.
tTown of the scope.
readonlyScope may change persistent storage of the town.

Definition at line 32 of file newgrf_town.h.

References readonly, ScopeResolver::ro, and t.

Member Function Documentation

◆ GetVariable()

uint32_t TownScopeResolver::GetVariable ( uint8_t variable,
uint32_t parameter,
bool & available ) const
overridevirtual

◆ StorePSA()

void TownScopeResolver::StorePSA ( uint pos,
int32_t value )
overridevirtual

Store a value into the persistent storage area (PSA).

Default implementation does nothing (for newgrf classes without storage).

Parameters
posThe position into the storage area.
valueThe new value to store.

Reimplemented from ScopeResolver.

Definition at line 134 of file newgrf_town.cpp.

References GSF_FAKE_TOWNS, readonly, ScopeResolver::ro, PersistentStorageArray< TYPE, SIZE >::StoreValue(), t, and Town::xy.

Field Documentation

◆ readonly

bool TownScopeResolver::readonly

When set, persistent storage of the town is read-only,.

Definition at line 24 of file newgrf_town.h.

Referenced by StorePSA(), and TownScopeResolver().

◆ t

Town* TownScopeResolver::t

Town of the scope.

Definition at line 23 of file newgrf_town.h.

Referenced by StorePSA(), and TownScopeResolver().


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