118typedef uint32_t TrackStatus;
Type (helpers) for enums.
#define DECLARE_ENUM_AS_BIT_SET(enum_type)
Operators to allow to work with enum as with type safe bit set in C++.
#define DECLARE_POSTFIX_INCREMENT(enum_type)
Some enums need to have allowed incrementing (i.e.
TrackBits
Allow incrementing of Track variables.
@ TRACK_BIT_WORMHOLE
Bitflag for a wormhole (used for tunnels)
@ TRACK_BIT_UPPER
Upper track.
@ TRACK_BIT_DEPOT
Bitflag for a depot.
@ TRACK_BIT_LEFT
Left track.
@ TRACK_BIT_Y
Y-axis track.
@ TRACK_BIT_CROSS
X-Y-axis cross.
@ INVALID_TRACK_BIT
Flag for an invalid trackbits value.
@ TRACK_BIT_HORZ
Upper and lower track.
@ TRACK_BIT_NONE
No track.
@ TRACK_BIT_3WAY_NW
"Arrow" to the north-west
@ TRACK_BIT_X
X-axis track.
@ TRACK_BIT_MASK
Bitmask for the first 6 bits.
@ TRACK_BIT_LOWER
Lower track.
@ TRACK_BIT_ALL
All possible tracks.
@ TRACK_BIT_3WAY_NE
"Arrow" to the north-east
@ TRACK_BIT_RIGHT
Right track.
@ TRACK_BIT_3WAY_SW
"Arrow" to the south-west
@ TRACK_BIT_VERT
Left and right track.
@ TRACK_BIT_3WAY_SE
"Arrow" to the south-east
Trackdir
Enumeration for tracks and directions.
@ TRACKDIR_RVREV_NE
(Road vehicle) reverse direction north-east
@ TRACKDIR_X_NE
X-axis and direction to north-east.
@ TRACKDIR_LOWER_E
Lower track and direction to east.
@ TRACKDIR_RIGHT_N
Right track and direction to north.
@ INVALID_TRACKDIR
Flag for an invalid trackdir.
@ TRACKDIR_UPPER_E
Upper track and direction to east.
@ TRACKDIR_Y_SE
Y-axis and direction to south-east.
@ TRACKDIR_LEFT_S
Left track and direction to south.
@ TRACKDIR_UPPER_W
Upper track and direction to west.
@ TRACKDIR_RVREV_SE
(Road vehicle) reverse direction south-east
@ TRACKDIR_X_SW
X-axis and direction to south-west.
@ TRACKDIR_LOWER_W
Lower track and direction to west.
@ TRACKDIR_Y_NW
Y-axis and direction to north-west.
@ TRACKDIR_END
Used for iterations.
@ TRACKDIR_RIGHT_S
Right track and direction to south.
@ TRACKDIR_BEGIN
Used for iterations.
@ TRACKDIR_RVREV_NW
(Road vehicle) reverse direction north-west
@ TRACKDIR_RVREV_SW
(Road vehicle) reverse direction south-west
@ TRACKDIR_LEFT_N
Left track and direction to north.
TrackdirBits
Allow incrementing of Trackdir variables.
@ TRACKDIR_BIT_LEFT_S
Track left, direction south.
@ TRACKDIR_BIT_Y_NW
Track y-axis, direction north-west.
@ TRACKDIR_BIT_UPPER_E
Track upper, direction east.
@ TRACKDIR_BIT_X_NE
Track x-axis, direction north-east.
@ TRACKDIR_BIT_LOWER_E
Track lower, direction east.
@ TRACKDIR_BIT_LEFT_N
Track left, direction north.
@ TRACKDIR_BIT_RIGHT_S
Track right, direction south.
@ TRACKDIR_BIT_Y_SE
Track y-axis, direction south-east.
@ TRACKDIR_BIT_NONE
No track build.
@ TRACKDIR_BIT_RIGHT_N
Track right, direction north.
@ TRACKDIR_BIT_MASK
Bitmask for bit-operations.
@ TRACKDIR_BIT_UPPER_W
Track upper, direction west.
@ TRACKDIR_BIT_LOWER_W
Track lower, direction west.
@ INVALID_TRACKDIR_BIT
Flag for an invalid trackdirbit value.
@ TRACKDIR_BIT_X_SW
Track x-axis, direction south-west.
Track
These are used to specify a single track.
@ INVALID_TRACK
Flag for an invalid track.
@ TRACK_Y
Track along the y-axis (north-west to south-east)
@ TRACK_LOWER
Track in the lower corner of the tile (south)
@ TRACK_END
Used for iterations.
@ TRACK_LEFT
Track in the left corner of the tile (west)
@ TRACK_RIGHT
Track in the right corner of the tile (east)
@ TRACK_BEGIN
Used for iterations.
@ TRACK_X
Track along the x-axis (north-east to south-west)
@ TRACK_UPPER
Track in the upper corner of the tile (north)