UFO: Alien Invasion
Loading...
Searching...
No Matches
cp_mission_rescue.cpp File Reference

Campaign mission code. More...

#include "../../../DateTime.h"
#include "../../../cl_shared.h"
#include "../cp_campaign.h"
#include "../cp_missions.h"
#include "../cp_time.h"
#include "../cp_ufo.h"
#include "cp_mission_rescue.h"
Include dependency graph for cp_mission_rescue.cpp:

Go to the source code of this file.

Functions

static void CP_BeginRescueMission (mission_t *mission)
 Actions to be done when UFO arrived at rescue mission location.
void CP_EndRescueMission (mission_t *mission, aircraft_t *aircraft, bool won)
 Actions to be done when rescue mission finished/expired.
static void CP_LeaveRescueMission (mission_t *mission)
 Rescue mission expired, UFO leave earth.
void CP_RescueNextStage (mission_t *mission)
 Determine what action should be performed when a Rescue mission stage ends.

Detailed Description

Campaign mission code.

Definition in file cp_mission_rescue.cpp.

Function Documentation

◆ CP_BeginRescueMission()

void CP_BeginRescueMission ( mission_t * mission)
static

Actions to be done when UFO arrived at rescue mission location.

Parameters
[in,out]missionPointer to the finished mission

Definition at line 37 of file cp_mission_rescue.cpp.

References ccs, cgi, CP_MissionAddToGeoscape(), CP_MissionRemove(), Date_Random(), ERR_DROP, mission_t::finalDate, aircraft_t::landed, mission_t::mapDef, mission_t::posAssigned, mission_t::stage, STAGE_RECON_GROUND, and mission_t::ufo.

Referenced by CP_RescueNextStage().

◆ CP_EndRescueMission()

void CP_EndRescueMission ( mission_t * mission,
aircraft_t * aircraft,
bool won )

Actions to be done when rescue mission finished/expired.

Parameters
[in,out]missionPointer to the finished mission
[in,out]aircraftPointer to the dropship done the mission
[in]wonBoolean flag if thew mission was successful (from PHALANX's PoV)
Todo
it should be dumped to the cargo loot of the dropship done the rescue mission not the base directly

Definition at line 66 of file cp_mission_rescue.cpp.

References aircraft_t::acTeam, AIR_DestroyAircraft(), AIR_RemoveEmployee(), mission_t::missionData_t::aircraft, B_DumpAircraftToHomeBase(), ccs, CP_CheckMissionLimitedInTime(), mission_t::data, mission_t::finalDate, LIST_Foreach, and aircraft_t::pilot.

Referenced by CP_LeaveRescueMission(), and CP_MissionEndActions().

◆ CP_LeaveRescueMission()

void CP_LeaveRescueMission ( mission_t * mission)
static

Rescue mission expired, UFO leave earth.

Parameters
[in,out]missionPointer to the mission

Definition at line 95 of file cp_mission_rescue.cpp.

References ccs, CP_EndRescueMission(), CP_MissionDisableTimeLimit(), CP_MissionRemoveFromGeoscape(), mission_t::finalDate, aircraft_t::landed, mission_t::stage, STAGE_RETURN_TO_ORBIT, mission_t::ufo, and UFO_SetRandomDest().

Referenced by CP_RescueNextStage().

◆ CP_RescueNextStage()

void CP_RescueNextStage ( mission_t * mission)

Determine what action should be performed when a Rescue mission stage ends.

Parameters
[in,out]missionPointer to the mission which stage ended.

Definition at line 116 of file cp_mission_rescue.cpp.

References cgi, CP_BeginRescueMission(), CP_LeaveRescueMission(), CP_MissionRemove(), mission_t::stage, STAGE_MISSION_GOTO, STAGE_RECON_GROUND, and STAGE_RETURN_TO_ORBIT.

Referenced by CP_MissionStageEnd().