39#define HAPPINESS_SUBVERSION_LOSS -0.15
120 assert(mission->
ufo);
140 const DateTime minBuildingTime(5, 0);
141 const DateTime maxBuildingTime(10, 0);
143 assert(mission->
ufo);
151 cgi->Com_DPrintf(
DEBUG_CLIENT,
"CP_BuildBaseSetUpBase: could not create alien base\n");
168 assert(mission->
ufo);
186 assert(mission->
ufo);
211 const DateTime minMissionDelay(3, 0);
212 const DateTime maxMissionDelay(5, 0);
214 assert(mission->
ufo);
245 switch (mission->
stage) {
275 cgi->Com_Printf(
"CP_BuildBaseMissionNextStage: Unknown stage: %i, removing mission.\n", mission->
stage);
DateTime class definition.
Share stuff between the different cgame implementations.
Class describing a point of time.
void INT_ChangeIndividualInterest(float interestFactor, interestCategory_t category)
Change individual interest value.
@ INTERESTCATEGORY_BASE_ATTACK
@ INTERESTCATEGORY_BUILDING
@ INTERESTCATEGORY_SUPPLY
@ INTERESTCATEGORY_TERROR_ATTACK
@ INTERESTCATEGORY_INTERCEPT
@ INTERESTCATEGORY_HARVEST
void AB_SetAlienBasePosition(vec2_t pos)
Set new base position.
void AB_DestroyBase(alienBase_t *base)
Destroy an alien base.
alienBase_t * AB_BuildBase(const vec2_t pos)
Build a new alien base.
Header file for single player campaign control.
const cgame_import_t * cgi
nation_t * GEO_GetNation(const vec2_t pos)
Translate nation map color to nation.
Header for Geoscape management.
static void CP_BuildBaseMissionLeave(mission_t *mission)
Build Base mission ends: UFO leave earth.
void CP_BuildBaseMissionBaseDestroyed(mission_t *mission)
Alien base has been destroyed: change interest values.
static void CP_BuildBaseSubvertGovernment(mission_t *mission)
Start Subverting Mission.
void CP_BuildBaseMissionNextStage(const campaign_t *campaign, mission_t *mission)
Determine what action should be performed when a Build Base mission stage ends.
static void CP_BuildBaseGovernmentLeave(const campaign_t *campaign, mission_t *mission)
Subverting Mission ends: UFO leave earth.
void CP_BuildBaseMissionOnSpawn(void)
Run when the mission is spawned.
#define HAPPINESS_SUBVERSION_LOSS
void CP_BuildBaseMissionIsSuccess(mission_t *mission)
Build Base mission is over and is a success (from an alien point of view): change interest values.
void CP_BuildBaseMissionIsFailure(mission_t *mission)
Build Base mission is over and is a failure (from an alien point of view): change interest values.
static void CP_BuildBaseChooseMission(mission_t *mission)
Choose if the mission should be an alien infiltration or a build base mission.
bool CP_BasemissionIsSubvertingGovernmentMission(const mission_t *mission)
static void CP_BuildBaseGoToBase(mission_t *mission)
Go to new base position.
static void CP_BuildBaseSetUpBase(mission_t *mission)
UFO arrived on new base destination: build base.
void CP_ReconMissionGroundGo(mission_t *mission)
Set ground mission, and go to ground mission pos.
Campaign mission headers.
bool CP_MissionBegin(mission_t *mission)
mission begins: UFO arrive on earth.
void CP_UFORemoveFromGeoscape(mission_t *mission, bool destroyed)
Removes (temporarily or permanently) a UFO from geoscape: make it land and call notify functions.
void CP_MissionRemove(mission_t *mission)
Removes a mission from mission global array.
void CP_MissionAddToGeoscape(mission_t *mission, bool force)
Add a mission to geoscape: make it visible and stop time.
void CP_MissionDisableTimeLimit(mission_t *mission)
Disable time limit for given mission.
Campaign missions headers.
void NAT_SetHappiness(const float minhappiness, nation_t *nation, const float happiness)
Updates the nation happiness.
const nationInfo_t * NAT_GetCurrentMonthInfo(const nation_t *const nation)
Get the current month nation stats.
DateTime Date_Random(const DateTime &minFrame, const DateTime &maxFrame)
Return a random relative date which lies between a lower and upper limit.
Campaign geoscape time header.
void UFO_SendToDestination(aircraft_t *ufo, const vec2_t dest)
Make the specified UFO go to destination.
void UFO_SetRandomDest(aircraft_t *ufocraft)
Give a random destination to the given UFO, and make him to move there.
void CP_SpreadXVIAtPos(const vec2_t pos)
Spread XVI at a given position.
#define CP_IsXVIStarted()
int initialOverallInterest
union mission_t::missionData_t data
Detailed information about the nation relationship (currently per month, but could be used elsewhere)...