28#define BULLETS_PER_SHOT 1
29#define MAX_MULTIPLE_PROJECTILES 10
36#define AIRFIGHT_WEAPON_CAN_SHOOT 0
37#define AIRFIGHT_WEAPON_CAN_NOT_SHOOT_AT_THE_MOMENT -1
38#define AIRFIGHT_WEAPON_CAN_NEVER_SHOOT -2
40#define AIRFIGHT_BASE_CAN_T_FIRE -1
43typedef struct aircraftProjectile_s {
void AIRFIGHT_CampaignRunBaseDefence(int dt)
Run base defences.
void AIRFIGHT_CampaignRunProjectiles(const struct campaign_s *campaign, int dt)
int AIRFIGHT_ChooseWeapon(const aircraftSlot_t *slot, int maxSlot, const vec2_t pos, const vec2_t targetPos)
Choose the weapon an attacking aircraft will use to fire on a target.
bool AIRFIGHT_SaveXML(xmlNode_t *parent)
Save callback for savegames in XML Format.
#define MAX_MULTIPLE_PROJECTILES
bool AIRFIGHT_BaseCanTargetUFO(const struct base_s *base, const aircraft_t *ufo)
void AIRFIGHT_RemoveProjectileAimingAircraft(const aircraft_t *aircraft)
Set all projectile aiming a given aircraft to an idle destination.
void AIRFIGHT_ActionsAfterAirfight(const struct campaign_s *campaign, aircraft_t *shooter, aircraft_t *aircraft, bool phalanxWon)
void AIRFIGHT_ExecuteActions(const struct campaign_s *campaign, aircraft_t *air, aircraft_t *ufo)
bool AIRFIGHT_LoadXML(xmlNode_t *parent)
Load callback for savegames in XML Format.
void AIRFIGHT_InitStartup(void)
int AIRFIGHT_CheckWeapon(const aircraftSlot_t *slot, float distance)
Check if the selected weapon can shoot.
An aircraft with all it's data.
projectile used during fight between two or more aircraft
const objDef_t * aircraftItem
int numInterpolationPoints
vec3_t oldDrawPos[MAX_MULTIPLE_PROJECTILES]
aircraft_t * aimedAircraft
vec3_t projectedPos[MAX_MULTIPLE_PROJECTILES]
vec3_t pos[MAX_MULTIPLE_PROJECTILES]
aircraft_t * attackingAircraft
Defines all attributes of objects used in the inventory.