33#define UFO_GetGeoscapeIDX(ufo) ((ufo) - ccs.ufos)
int UFO_GetOneAvailableUFOForMission(const interestCategory_t missionType, bool checkInterest=true)
Get a suitable UFO for the mission type.
void UFO_NotifyPhalanxAircraftRemoved(const aircraft_t *const aircraft)
Notify to UFOs that a Phalanx aircraft has been destroyed.
void UFO_SetRandomDest(aircraft_t *ufo)
Give a random destination to the given UFO, and make him to move there.
aircraft_t * UFO_GetByIDX(const int idx)
returns the UFO on the geoscape with a certain index
void UFO_SendToDestination(aircraft_t *ufo, const vec2_t dest)
Make the specified UFO go to destination.
void UFO_SetRandomDestAround(aircraft_t *ufocraft, const vec2_t pos)
Give a random destination to the given UFO close to a position, and make him to move there.
void UFO_CheckShootBack(const campaign_t *campaign, aircraft_t *ufo, aircraft_t *phalanxAircraft)
Check if the ufo can shoot back at phalanx aircraft.
const char * UFO_TypeToName(const ufoType_t type)
Translate UFO type to name.
bool UFO_CampaignCheckEvents(void)
Check events for UFOs: Appears or disappears on radars.
const char * UFO_GetName(const aircraft_t *ufocraft)
Returns name of the UFO if UFO has been researched.
void UFO_InitStartup(void)
Init actions for ufo-subsystem.
void UFO_DetectNewUFO(aircraft_t *ufocraft)
Perform actions when a new UFO is detected.
@ UFO_IS_TARGET_OF_MISSILE
const aircraft_t * UFO_GetByType(const ufoType_t type)
Get the aircraft template for a given UFO type.
void UFO_UpdateAlienInterestForAllBasesAndInstallations(void)
Update alien interest for all PHALANX bases.
void UFO_CampaignRunUFOs(const campaign_t *campaign, int dt)
Make the UFOs run.
bool UFO_IsUFOSeenOnGeoscape(const aircraft_t *ufo)
Check if an aircraft should be seen on geoscape.
bool UFO_CanDoMission(const ufoType_t uType, const char *mType)
Check if the UFO type is available for the given mission type.
aircraft_t * UFO_CreateFromTemplate(const aircraft_t *ufoTemplate)
Creates a new ufo on the geoscape from the given aircraft template.
void UFO_Shutdown(void)
Closing actions for ufo-subsystem.
const technology_t * UFO_GetTechnologyFromType(const ufoType_t type)
Get the technology for a given UFO type.
bool UFO_ShouldAppearOnGeoscape(const ufoType_t type)
Some UFOs may only appear if after some interest level in the current running campaign is reached.
aircraft_t * UFO_GetNext(aircraft_t *lastUFO)
Iterates through the UFOs.
const aircraft_t * UFO_GetTemplate(ufoType_t ufoType)
Get the template data for the given ufo type.
void UFO_FleePhalanxAircraft(aircraft_t *ufo, const vec2_t v)
aircraft_t * UFO_GetNextOnGeoscape(aircraft_t *lastUFO)
bool UFO_SendPursuingAircraft(aircraft_t *ufo, aircraft_t *aircraft)
Make the specified UFO pursue a phalanx aircraft.
void UFO_RemoveFromGeoscape(aircraft_t *ufo)
Remove the specified ufo from geoscape.
int UFO_GetAvailableUFOsForMission(const interestCategory_t missionType, ufoType_t *ufoTypes, bool checkInterest=true)
Fill an array with available UFOs for the mission type.
aircraft_t * UFO_AddToGeoscape(ufoType_t ufotype, const vec2_t destination, struct mission_s *mission)
QGL_EXTERN GLenum GLuint * dest
QGL_EXTERN int GLboolean GLfloat * v
QGL_EXTERN GLint GLenum type
An aircraft with all it's data.
This is the technology parsed from research.ufo.