# town_type.h File Reference

Types related to towns. More...

`#include "core/enum_type.hpp"`

Go to the source code of this file.

## Data Structures
struct | EnumPropsT< TownLayout >
| It needs to be 8bits, because we save and load it as such Define basic enum properties. More...
## Typedefs
typedef uint16 | TownID
typedef uint16 | HouseID
typedef uint16 | HouseClassID
typedef TinyEnumT< TownLayout > | TownLayoutByte
## Enumerations
enum | TownSize { TS_SMALL, TS_MEDIUM, TS_LARGE, TS_RANDOM }
| Supported initial town sizes. More...
enum | { RATING_MINIMUM = -1000, RATING_APPALLING = -400, RATING_VERYPOOR = -200, RATING_POOR = 0, RATING_MEDIOCRE = 200, RATING_GOOD = 400, RATING_VERYGOOD = 600, RATING_EXCELLENT = 800, RATING_OUTSTANDING = 1000, RATING_MAXIMUM = RATING_OUTSTANDING, RATING_INITIAL = 500, RATING_TREE_DOWN_STEP = -35, RATING_TREE_MINIMUM = RATING_MINIMUM, RATING_TREE_UP_STEP = 7, RATING_TREE_MAXIMUM = 220, RATING_GROWTH_UP_STEP = 5, RATING_GROWTH_MAXIMUM = RATING_MEDIOCRE, RATING_STATION_UP_STEP = 12, RATING_STATION_DOWN_STEP = -15, RATING_TUNNEL_BRIDGE_DOWN_STEP = -250, RATING_TUNNEL_BRIDGE_MINIMUM = 0, RATING_ROAD_DOWN_STEP_INNER = -50, RATING_ROAD_DOWN_STEP_EDGE = -18, RATING_ROAD_MINIMUM = -100, RATING_HOUSE_MINIMUM = RATING_MINIMUM, RATING_BRIBE_UP_STEP = 200, RATING_BRIBE_MAXIMUM = 800, RATING_BRIBE_DOWN_TO = -50 }
enum | TownLayout { TL_BEGIN = 0, TL_ORIGINAL = 0, TL_BETTER_ROADS, TL_2X2_GRID, TL_3X3_GRID, TL_RANDOM, NUM_TLS }
| Town Layouts. More...
enum | { MAX_LENGTH_TOWN_NAME_BYTES = 31, MAX_LENGTH_TOWN_NAME_PIXELS = 130 }

## Detailed Description

Types related to towns.

Definition in file town_type.h.

## Enumeration Type Documentation

anonymous enum

Enumerator:

  RATING_OUTSTANDING | OUTSTANDING.
  RATING_INITIAL | initial rating
  RATING_GROWTH_UP_STEP | when a town grows, all companies have rating increased a bit ...
  RATING_GROWTH_MAXIMUM | ... up to RATING_MEDIOCRE
  RATING_STATION_UP_STEP | when a town grows, company gains reputation for all well serviced stations ...
  RATING_STATION_DOWN_STEP | ... but loses for bad serviced stations
  RATING_ROAD_DOWN_STEP_INNER | removing a roadpiece in the middle
  RATING_ROAD_DOWN_STEP_EDGE | removing a roadpiece at the edge

Definition at line 25 of file town_type.h.

anonymous enum

Enumerator:

  MAX_LENGTH_TOWN_NAME_BYTES | The maximum length of a town name in bytes including ''.
  MAX_LENGTH_TOWN_NAME_PIXELS | The maximum length of a town name in pixels.

Definition at line 86 of file town_type.h.

enum TownLayout

Town Layouts.

Enumerator:

  TL_ORIGINAL | Original algorithm (min. 1 distance between roads).
  TL_BETTER_ROADS | Extended original algorithm (min. 2 distance between roads).
  TL_2X2_GRID | Geometric 2x2 grid algorithm.
  TL_3X3_GRID | Geometric 3x3 grid algorithm.
  TL_RANDOM | Random town layout.
  NUM_TLS | Number of town layouts.

Definition at line 69 of file town_type.h.

enum TownSize

Supported initial town sizes.

Enumerator:

  TS_SMALL | small town
  TS_MEDIUM | medium town
  TS_LARGE | large town
  TS_RANDOM | random size, bigger than small, smaller than large

Definition at line 18 of file town_type.h.