98 RUNWAY_IN_OUT_block = 1ULL << 8,
99 RUNWAY_IN_block = 1ULL << 8,
100 AIRPORT_BUSY_block = 1ULL << 8,
101 RUNWAY_OUT_block = 1ULL << 9,
102 TAXIWAY_BUSY_block = 1ULL << 10,
103 OUT_WAY_block = 1ULL << 11,
104 IN_WAY_block = 1ULL << 12,
105 AIRPORT_ENTRANCE_block = 1ULL << 13,
106 TERM_GROUP1_block = 1ULL << 14,
107 TERM_GROUP2_block = 1ULL << 15,
108 HANGAR2_AREA_block = 1ULL << 16,
109 TERM_GROUP2_ENTER1_block = 1ULL << 17,
110 TERM_GROUP2_ENTER2_block = 1ULL << 18,
111 TERM_GROUP2_EXIT1_block = 1ULL << 19,
112 TERM_GROUP2_EXIT2_block = 1ULL << 20,
113 PRE_HELIPAD_block = 1ULL << 21,
119 HANGAR1_AREA_block = 1ULL << 26,
120 OUT_WAY2_block = 1ULL << 27,
121 IN_WAY2_block = 1ULL << 28,
122 RUNWAY_IN2_block = 1ULL << 29,
125 OUT_WAY_block2 = 1ULL << 31,
128 NOTHING_block = 1ULL << 30,
150 ALL = AIRPLANES | HELICOPTERS,
156 const byte *terminals,
157 const byte num_helipads,
158 const byte *entry_points,
173 assert(position < nofelements);
174 return &moving_data[position];
DECLARE_ENUM_AS_BIT_SET(GenderEthnicity) enum CompanyManagerFaceVariable
Bitgroups of the CompanyManagerFace variable.
Airplane wants to leave the airport.
Different types to 'show' directions.
Airplane has reached end-point of the take-off runway.
Finite sTate mAchine (FTA) of an airport.
byte nofelements
number of positions the airport consists of
byte next_position
next position from this position
Last valid target to head for.
static const uint64 HELIPAD1_block
Block belonging to helipad 1.
A single location on an airport where aircraft can move to.
static const uint64 TERM6_block
Block belonging to terminal 6.
const byte * entry_points
when an airplane arrives at this airport, enter it at position entry_point, index depends on directio...
static const uint INVALID_AIRPORTTILE
id for an invalid airport tile
State machine input struct (from external file, etc.) Finite sTate mAchine –> FTA.
Flags flags
Flags for this airport type.
int16 y
y-coordinate of the destination.
Vehicle is flying in the air.
AirportMovingDataFlags
Flags for airport movement data.
static const uint64 HELIPAD3_block
Block belonging to helipad 3.
Helicopter wants to land.
Go exactly to the destination coordinates.
Direction
Defines the 8 directions on the map.
byte GetVehiclePosOnBuild(TileIndex hangar_tile)
Get the vehicle position when an aircraft is build at the given tile.
Holding pattern movement (above the airport).
static const uint64 HELIPAD2_block
Block belonging to helipad 2.
Maximal number of airports in total.
Flags
Bitmask of airport flags.
Turn slowly (mostly used in the air).
Number of the first newgrf airport.
Internal structure used in openttd - Finite sTate mAchine –> FTA.
const byte num_helipads
Number of helipads on this airport. When 0 helicopters will go to normal terminals.
static const uint64 AIRPORT_CLOSED_block
Dummy block for indicating a closed airport.
struct AirportFTA * layout
state machine for airport
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...
static const uint NUM_AIRPORTTILES
Total number of airport tiles.
const AirportFTAClass * GetAirport(const byte airport_type)
Get the finite state machine of an airport type.
Airplane has arrived at a runway for take-off.
const AirportMovingData * MovingData(byte position) const
Get movement data at a position.
AirportMovingData RotateAirportMovingData(const AirportMovingData *orig, Direction rotation, uint num_tiles_x, uint num_tiles_y)
Rotate the airport moving data to another rotation.
const AirportMovingData * moving_data
Movement data.
AirportMovementStates
Movement States on Airports (headings target)
static const uint MAX_HELIPADS
maximum number of helipads per airport
static const uint MAX_TERMINALS
Some airport-related constants.
Go in this direction for every target.
static const uint MAX_ELEMENTS
maximum number of aircraft positions at airport
Maximal number of airports per NewGRF.
static const uint64 TERM7_block
Block belonging to terminal 7.
uint32 TileIndex
The index/ID of a Tile.
static const uint64 TERM1_block
Movement Blocks on Airports blocks (eg_airport_flags).
uint64 block
64 bit blocks (st->airport.flags), should be enough for the most complex airports ...
static const uint64 TERM8_block
Block belonging to terminal 8.
int16 x
x-coordinate of the destination.
AirportFTA * next
possible extra movement choices from this position
static const uint64 TERM4_block
Block belonging to terminal 4.
static const uint64 RUNWAY_OUT2_block
Intercontinental airport.
Landing onto landing strip.
Helicopter wants to finish landing.
static const uint64 HELIPAD_GROUP_block
uint16 flag
special flags when moving towards the destination.
static const uint NEW_AIRPORTTILE_OFFSET
offset of first newgrf airport tile
static const uint64 TERM3_block
Block belonging to terminal 3.
static const uint64 TERM2_block
Block belonging to terminal 2.
byte heading
heading (current orders), guiding an airplane to its target on an airport
DirectionByte direction
Direction to turn the aircraft after reaching the destination.
byte position
the position that an airplane is at
const byte * terminals
Array with the number of terminal groups, followed by the number of terminals in each group...
AirportTypes
Airport types.
Airplane wants to finish landing.
byte delta_z
Z adjustment for helicopter pads.
Helicopter wants to leave the airport.
static const uint64 TERM5_block
Block belonging to terminal 5.