106 AirportEntrance = 13,
110 TermGroup2Enter1 = 17,
111 TermGroup2Enter2 = 18,
112 TermGroup2Exit1 = 19,
113 TermGroup2Exit2 = 20,
150 std::unique_ptr<AirportFTA>
next;
static const uint MAX_HELIPADS
maximum number of helipads per airport
static const uint MAX_ELEMENTS
maximum number of aircraft positions at airport
static const uint INVALID_AIRPORTTILE
id for an invalid airport tile
static const uint MAX_TERMINALS
Some airport-related constants.
static const uint NEW_AIRPORTTILE_OFFSET
offset of first newgrf airport tile
AirportBlock
Movement Blocks on Airports blocks (eg_airport_flags).
@ Term2
Block belonging to terminal 2.
@ AirportClosed
Dummy block for indicating a closed airport.
@ Term5
Block belonging to terminal 5.
@ Term6
Block belonging to terminal 6.
@ Term4
Block belonging to terminal 4.
@ Helipad3
Block belonging to helipad 3.
@ Term7
Block belonging to terminal 7.
@ Helipad1
Block belonging to helipad 1.
@ Term3
Block belonging to terminal 3.
@ Term1
Block belonging to terminal 1.
@ Helipad2
Block belonging to helipad 2.
@ Term8
Block belonging to terminal 8.
uint8_t GetVehiclePosOnBuild(TileIndex hangar_tile)
Get the vehicle position when an aircraft is build at the given tile.
static const uint NUM_AIRPORTTILES_PER_GRF
Number of airport tiles per NewGRF; limited to 255 to allow extending Action3 with an extended byte l...
const AirportFTAClass * GetAirport(const uint8_t airport_type)
Get the finite state machine of an airport type.
AirportMovingDataFlag
Flags for airport movement data.
@ SlowTurn
Turn slowly (mostly used in the air).
@ Takeoff
Takeoff movement.
@ Land
Landing onto landing strip.
@ HeliLower
Helicopter landing.
@ Hold
Holding pattern movement (above the airport).
@ NoSpeedClamp
No speed restrictions.
@ Brake
Taxiing at the airport.
@ HeliRaise
Helicopter take-off.
@ ExactPosition
Go exactly to the destination coordinates.
AirportMovingData RotateAirportMovingData(const AirportMovingData *orig, Direction rotation, uint num_tiles_x, uint num_tiles_y)
Rotate the airport moving data to another rotation.
static const uint NUM_AIRPORTTILES
Total number of airport tiles.
AirportMovementStates
Movement States on Airports (headings target)
@ HELITAKEOFF
Helicopter wants to leave the airport.
@ TERM4
Heading for terminal 4.
@ STARTTAKEOFF
Airplane has arrived at a runway for take-off.
@ HELIPAD2
Heading for helipad 2.
@ ENDTAKEOFF
Airplane has reached end-point of the take-off runway.
@ TERM5
Heading for terminal 5.
@ TERM6
Heading for terminal 6.
@ TERM3
Heading for terminal 3.
@ TERM8
Heading for terminal 8.
@ HELIPAD3
Heading for helipad 3.
@ HELIPAD1
Heading for helipad 1.
@ TERM2
Heading for terminal 2.
@ HANGAR
Heading for hangar.
@ FLYING
Vehicle is flying in the air.
@ TAKEOFF
Airplane wants to leave the airport.
@ HELILANDING
Helicopter wants to land.
@ TO_ALL
Go in this direction for every target.
@ ENDLANDING
Airplane wants to finish landing.
@ HELIENDLANDING
Helicopter wants to finish landing.
@ MAX_HEADINGS
Last valid target to head for.
@ TERM1
Heading for terminal 1.
@ LANDING
Airplane wants to land.
@ TERM7
Heading for terminal 7.
@ TERMGROUP
Aircraft is looking for a free terminal in a terminalgroup.
AirportTypes
Airport types.
@ AT_HELIDEPOT
Heli depot.
@ AT_INVALID
Invalid airport.
@ AT_METROPOLITAN
Metropolitan airport.
@ NUM_AIRPORTS
Maximal number of airports in total.
@ AT_HELISTATION
Heli station airport.
@ NEW_AIRPORT_OFFSET
Number of the first newgrf airport.
@ NUM_AIRPORTS_PER_GRF
Maximal number of airports per NewGRF.
@ AT_INTERCON
Intercontinental airport.
@ AT_INTERNATIONAL
International airport.
@ AT_COMMUTER
Commuter airport.
@ AT_OILRIG
Oilrig airport.
Different types to 'show' directions.
Direction
Defines the 8 directions on the map.
Finite sTate mAchine (FTA) of an airport.
const uint8_t num_helipads
Number of helipads on this airport. When 0 helicopters will go to normal terminals.
const AirportMovingData * MovingData(uint8_t position) const
Get movement data at a position.
Flag
Bitmask of airport flags.
@ Airplanes
Can planes land on this airport type?
@ ShortStrip
This airport has a short landing strip, dangerous for fast aircraft.
@ Helicopters
Can helicopters land on this airport type?
uint8_t delta_z
Z adjustment for helicopter pads.
std::vector< AirportFTA > layout
state machine for airport
const uint8_t * terminals
Array with the number of terminal groups, followed by the number of terminals in each group.
const uint8_t * entry_points
when an airplane arrives at this airport, enter it at position entry_point, index depends on directio...
uint8_t nofelements
number of positions the airport consists of
Flags flags
Flags for this airport type.
const AirportMovingData * moving_data
Movement data.
Internal structure used in openttd - Finite sTate mAchine --> FTA.
std::unique_ptr< AirportFTA > next
possible extra movement choices from this position
uint8_t heading
heading (current orders), guiding an airplane to its target on an airport
AirportBlocks blocks
bitmap of blocks that could be reserved
uint8_t position
the position that an airplane is at
uint8_t next_position
next position from this position
State machine input struct (from external file, etc.) Finite sTate mAchine --> FTA.
A single location on an airport where aircraft can move to.
int16_t x
x-coordinate of the destination.
AirportMovingDataFlags flags
special flags when moving towards the destination.
int16_t y
y-coordinate of the destination.
Direction direction
Direction to turn the aircraft after reaching the destination.