Base for aircraft. More...
#include "station_map.h"#include "vehicle_base.h"Go to the source code of this file.
Data Structures | |
| struct | Aircraft |
| Aircraft, helicopters, rotors and their shadows belong to this class. More... | |
Defines | |
| #define | FOR_ALL_AIRCRAFT(var) FOR_ALL_VEHICLES_OF_TYPE(Aircraft, var) |
| Macro for iterating over all aircrafts. | |
Enumerations | |
| enum | AircraftSubType { AIR_HELICOPTER = 0, AIR_AIRCRAFT = 2, AIR_SHADOW = 4, AIR_ROTOR = 6 } |
An aircraft can be one of those types. More... | |
Functions | |
| void | HandleAircraftEnterHangar (Aircraft *v) |
| Handle Aircraft specific tasks when an Aircraft enters a hangar. | |
| void | GetAircraftSpriteSize (EngineID engine, uint &width, uint &height) |
| Get the size of the sprite of an aircraft sprite heading west (used for lists). | |
| void | UpdateAirplanesOnNewStation (const Station *st) |
| Updates the status of the Aircraft heading or in the station. | |
| void | UpdateAircraftCache (Aircraft *v) |
| Update cached values of an aircraft. | |
| void | AircraftLeaveHangar (Aircraft *v, Direction exit_dir) |
| Aircraft is about to leave the hangar. | |
| void | AircraftNextAirportPos_and_Order (Aircraft *v) |
| set the right pos when heading to other airports after takeoff | |
| void | SetAircraftPosition (Aircraft *v, int x, int y, int z) |
| Set aircraft position. | |
| byte | GetAircraftFlyingAltitude (const Aircraft *v) |
| Gets the cruise altitude of an aircraft. | |
| SpriteID | GetRotorImage (const Aircraft *v) |
| Station * | GetTargetAirportIfValid (const Aircraft *v) |
| Returns aircraft's target station if v->target_airport is a valid station with airport. | |
Base for aircraft.
Definition in file aircraft.h.
| enum AircraftSubType |
An aircraft can be one of those types.
| AIR_HELICOPTER |
an helicopter |
| AIR_AIRCRAFT |
an airplane |
| AIR_SHADOW |
shadow of the aircraft |
| AIR_ROTOR |
rotor of an helicopter |
Definition at line 21 of file aircraft.h.
Aircraft is about to leave the hangar.
| v | Aircraft leaving. | |
| exit_dir | The direction the vehicle leaves the hangar. |
Definition at line 1254 of file aircraft_cmd.cpp.
References Vehicle::cur_speed, Vehicle::direction, InvalidateWindowData(), Vehicle::Next(), SpecializedVehicle< T, Type >::Next(), Vehicle::progress, SetAircraftPosition(), SetWindowClassesDirty(), Vehicle::subspeed, Vehicle::tile, Vehicle::vehstatus, Vehicle::x_pos, Vehicle::y_pos, and Vehicle::z_pos.
Referenced by AircraftEventHandler_InHangar(), and UpdateOldAircraft().
| byte GetAircraftFlyingAltitude | ( | const Aircraft * | v | ) |
Gets the cruise altitude of an aircraft.
The cruise altitude is determined by the velocity of the vehicle and the direction it is moving
| v | The vehicle. Should be an aircraft |
Definition at line 628 of file aircraft_cmd.cpp.
References AIR_HELICOPTER, VehicleCache::cached_max_speed, DIR_E, DIR_N, DIR_NE, DIR_SE, Vehicle::direction, HELI_FLIGHT_ALTITUDE, min(), PLANE_HOLDING_ALTITUDE, Vehicle::subtype, and Vehicle::vcache.
Referenced by AfterLoadGame(), AircraftController(), and UpdateOldAircraft().
| void GetAircraftSpriteSize | ( | EngineID | engine, | |
| uint & | width, | |||
| uint & | height | |||
| ) |
Get the size of the sprite of an aircraft sprite heading west (used for lists).
| engine | The engine to get the sprite from | |
| width | The width of the sprite | |
| height | The height of the sprite |
Definition at line 209 of file aircraft_cmd.cpp.
References Sprite::height, ST_NORMAL, and Sprite::width.
Returns aircraft's target station if v->target_airport is a valid station with airport.
| v | vehicle to get target airport for |
Definition at line 1881 of file aircraft_cmd.cpp.
References Station::airport, SpecializedStation< Station, false >::GetIfValid(), INVALID_TILE, Aircraft::targetairport, TileArea::tile, and VEH_AIRCRAFT.
Referenced by AfterLoadGame(), AircraftNextAirportPos_and_Order(), CrashAirplane(), Aircraft::FindClosestDepot(), HandleCrashedAircraft(), MapAircraftMovementState(), and Vehicle::PreDestructor().
| void HandleAircraftEnterHangar | ( | Aircraft * | v | ) |
Handle Aircraft specific tasks when an Aircraft enters a hangar.
| *v | Vehicle that enters the hangar |
Definition at line 511 of file aircraft_cmd.cpp.
References Vehicle::cur_speed, SpecializedVehicle< T, Type >::Next(), Vehicle::progress, SetAircraftPosition(), Vehicle::subspeed, Vehicle::vehstatus, Vehicle::x_pos, Vehicle::y_pos, and Vehicle::z_pos.
Referenced by VehicleEnterDepot().
| void SetAircraftPosition | ( | Aircraft * | v, | |
| int | x, | |||
| int | y, | |||
| int | z | |||
| ) |
Set aircraft position.
| v | Aircraft to position. | |
| x | New X position. | |
| y | New y position. | |
| z | New z position. |
Definition at line 475 of file aircraft_cmd.cpp.
References AIR_HELICOPTER, Clamp(), Vehicle::cur_image, MapMaxX(), MapMaxY(), SpecializedVehicle< T, Type >::Next(), ROTOR_Z_OFFSET, Vehicle::subtype, TILE_SIZE, SpecializedVehicle< T, Type >::UpdateViewport(), VehicleMove(), Vehicle::x_pos, Vehicle::y_pos, and Vehicle::z_pos.
Referenced by AfterLoadGame(), AircraftController(), AircraftLeaveHangar(), HandleAircraftEnterHangar(), HandleCrashedAircraft(), and UpdateOldAircraft().
| void UpdateAircraftCache | ( | Aircraft * | v | ) |
Update cached values of an aircraft.
Currently caches callback 36 max speed.
| v | Vehicle |
Definition at line 540 of file aircraft_cmd.cpp.
References VehicleCache::cached_max_speed, Vehicle::engine_type, PROP_AIRCRAFT_SPEED, and Vehicle::vcache.
Referenced by AfterLoadGame(), AfterLoadVehicles(), AircraftController(), CheckCaches(), CmdBuildAircraft(), UpdateAirplanesOnNewStation(), and UpdateOldAircraft().
| void UpdateAirplanesOnNewStation | ( | const Station * | st | ) |
Updates the status of the Aircraft heading or in the station.
| st | Station been updated |
Definition at line 1895 of file aircraft_cmd.cpp.
References AircraftGetEntryPoint(), Station::airport, DIR_N, FLYING, FOR_ALL_AIRCRAFT, Airport::GetFTA(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_TILE, Aircraft::IsNormalAircraft(), Aircraft::pos, Aircraft::previous_pos, Airport::rotation, Aircraft::state, Aircraft::targetairport, TileArea::tile, and UpdateAircraftCache().
Referenced by CmdBuildAirport().
1.7.1