| OpenTTD
    | 
#include <town.h>
 
  
 | Public Member Functions | |
| byte | GetPercentTransported (CargoID cid) const | 
| Town (TileIndex tile=INVALID_TILE) | |
| Creates a new town. | |
| ~Town () | |
| Destroy the town. | |
| void | InitializeLayout (TownLayout layout) | 
| Assigns town layout. | |
| uint16 | MaxTownNoise () const | 
| Calculate the max town noise. | |
| void | UpdateVirtCoord () | 
| Resize the sign(label) of the town after changes in population (creation or growth or else) | |
|  Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool > | |
| void * | operator new (size_t size) | 
| Allocates space for new Titem. | |
| void * | operator new (size_t size, size_t index) | 
| Allocates space for new Titem with given index. | |
| void * | operator new (size_t size, void *ptr) | 
| Allocates space for new Titem at given memory address. | |
| void | operator delete (void *p) | 
| Marks Titem as free. | |
| Static Public Member Functions | |
| static Town * | GetByTile (TileIndex tile) | 
| static Town * | GetRandom () | 
| Return a random valid town. | |
| static void | PostDestructor (size_t index) | 
| Invalidating of the "nearest town cache" has to be done after removing item from the pool. | |
|  Static Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool > | |
| static bool | CanAllocateItem (size_t n=1) | 
| Helper functions so we can use PoolItem::Function() instead of _poolitem_pool.Function() | |
| static bool | CleaningPool () | 
| Returns current state of pool cleaning - yes or no. | |
| static bool | IsValidID (size_t index) | 
| Tests whether given index can be used to get valid (non-NULL) Titem. | |
| static Titem * | Get (size_t index) | 
| Returns Titem with given index. | |
| static Titem * | GetIfValid (size_t index) | 
| Returns Titem with given index. | |
| static size_t | GetPoolSize () | 
| Returns first unused index. | |
| static size_t | GetNumItems () | 
| Returns number of valid items in the pool. | |
| Data Fields | |
| TileIndex | xy | 
| town center tile | |
| TownCache | cache | 
| Container for all cacheable data. | |
| uint32 | townnamegrfid | 
| uint16 | townnametype | 
| uint32 | townnameparts | 
| char * | name | 
| Custom town name. If NULL, the town was not renamed and uses the generated name. | |
| byte | flags | 
| See TownFlags. | |
| uint16 | noise_reached | 
| level of noise that all the airports are generating | |
| CompanyMask | statues | 
| which companies have a statue? | |
| CompanyMask | have_ratings | 
| which companies have a rating | |
| uint8 | unwanted [MAX_COMPANIES] | 
| how many months companies aren't wanted by towns (bribe) | |
| CompanyByte | exclusivity | 
| which company has exclusivity | |
| uint8 | exclusive_counter | 
| months till the exclusivity expires | |
| int16 | ratings [MAX_COMPANIES] | 
| ratings of each company for this town | |
| TransportedCargoStat< uint32 > | supplied [NUM_CARGO] | 
| Cargo statistics about supplied cargo. | |
| TransportedCargoStat< uint16 > | received [NUM_TE] | 
| Cargo statistics about received cargotypes. | |
| uint32 | goal [NUM_TE] | 
| Amount of cargo required for the town to grow. | |
| char * | text | 
| General text with additional information. | |
| uint32 | cargo_produced | 
| Bitmap of all cargoes produced by houses in this town. | |
| AcceptanceMatrix | cargo_accepted | 
| Bitmap of cargoes accepted by houses for each 4*4 map square of the town. | |
| uint32 | cargo_accepted_total | 
| NOSAVE: Bitmap of all cargoes accepted by houses in this town. | |
| uint16 | time_until_rebuild | 
| time until we rebuild a house | |
| uint16 | grow_counter | 
| counter to count when to grow, value is smaller than or equal to growth_rate | |
| uint16 | growth_rate | 
| town growth rate | |
| byte | fund_buildings_months | 
| fund buildings program in action? | |
| byte | road_build_months | 
| fund road reconstruction in action? | |
| bool | larger_town | 
| if this is a larger town and should grow more quickly | |
| TownLayoutByte | layout | 
| town specific road layout | |
| std::list< PersistentStorage * > | psa_list | 
|  Data Fields inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool > | |
| Tindex | index | 
| Index of this pool item. | |
| 
 | inline | 
| Town::~Town | ( | ) | 
Destroy the town.
Definition at line 62 of file town_cmd.cpp.
References ClosestTownFromTile(), DeleteNewGRFInspectWindow(), DeleteSubsidyWith(), DeleteWindowById(), free(), GetTileType(), GetTownIndex(), GSF_FAKE_TOWNS, HasTownOwnedRoad(), CargoPacket::InvalidateAllFrom(), IsTileOwner(), MapSize(), MarkWholeScreenDirty(), MP_HOUSE, MP_ROAD, MP_TUNNELBRIDGE, OWNER_TOWN, ST_TOWN, Object::town, Industry::town, and WC_TOWN_VIEW.
| 
 | static | 
Return a random valid town.
Definition at line 145 of file town_cmd.cpp.
References Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool >::Get(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool >::GetNumItems(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool >::GetPoolSize(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool >::index, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool >::IsValidID(), MAX_UVALUE, and RandomRange().
Referenced by FindSubsidyCargoDestination(), FindSubsidyPassengerRoute(), and FindSubsidyTownCargoRoute().
| void Town::InitializeLayout | ( | TownLayout | layout | ) | 
Assigns town layout.
If Random, generates one based on TileHash.
Definition at line 131 of file town_cmd.cpp.
References layout, NUM_TLS, TileHash(), TileX(), TileY(), TL_RANDOM, and xy.
Referenced by DoCreateTown().
| 
 | inline | 
Calculate the max town noise.
The value is counted using the population divided by the content of the entry in town_noise_population corresponding to the town's tolerance.
Definition at line 122 of file town.h.
References _settings_game, cache, GameSettings::difficulty, GameSettings::economy, TownCache::population, DifficultySettings::town_council_tolerance, and EconomySettings::town_noise_population.
Referenced by CmdBuildAirport(), and TownViewWindow::DrawWidget().
| 
 | static | 
Invalidating of the "nearest town cache" has to be done after removing item from the pool.
| index | index of deleted item | 
Reimplemented from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool >.
Definition at line 116 of file town_cmd.cpp.
References CalcClosestTownFromTile(), InvalidateWindowData(), Object::location, OrthogonalTileArea::tile, Object::town, UpdateNearestTownForRoadTiles(), and WC_TOWN_DIRECTORY.
 1.8.1.2
 1.8.1.2