UFO: Alien Invasion
Loading...
Searching...
No Matches
cp_save.h File Reference

Defines some savefile structures. More...

#include <zlib.h>
#include "../../../common/msg.h"
#include "../../../common/xml.h"
Include dependency graph for cp_save.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  saveFileHeader_t
struct  saveSubsystems_t

Macros

#define MAX_SAVESUBSYSTEMS   32
#define SAVE_FILE_VERSION   4
#define SAVEGAME_EXTENSION   "savx"
#define FOREACH_XMLNODE(var, node, name)

Functions

void SAV_Init (void)
 Register all save-subsystems and init some cvars and commands.
bool SAV_AddSubsystem (saveSubsystems_t *subsystem)
 Adds a subsystem to the saveSubsystems array.
bool B_SaveXML (xmlNode_t *parent)
 Save callback for saving in xml format.
bool B_LoadXML (xmlNode_t *parent)
 Loads base data.
bool CP_SaveXML (xmlNode_t *parent)
 Save callback for savegames in XML Format.
bool CP_LoadXML (xmlNode_t *parent)
 Load callback for savegames in XML Format.
bool HOS_LoadXML (xmlNode_t *parent)
 Saving function for hospital related data.
bool HOS_SaveXML (xmlNode_t *parent)
 Saving function for hospital related data.
bool BS_SaveXML (xmlNode_t *parent)
 Save callback for savegames.
bool BS_LoadXML (xmlNode_t *parent)
 Load callback for savegames.
bool AIR_SaveXML (xmlNode_t *parent)
 Save callback for savegames in xml format.
bool AIR_LoadXML (xmlNode_t *parent)
bool AC_LoadXML (xmlNode_t *parent)
 Load callback for savin in XML Format.
bool E_SaveXML (xmlNode_t *parent)
 Save callback for savegames in XML Format.
bool E_LoadXML (xmlNode_t *parent)
 Load callback for savegames in XML Format.
bool RS_SaveXML (xmlNode_t *parent)
 Save callback for research and technologies.
bool RS_LoadXML (xmlNode_t *parent)
 Load callback for research and technologies.
bool PR_SaveXML (xmlNode_t *parent)
 Save callback for savegames in XML Format.
bool PR_LoadXML (xmlNode_t *parent)
 Load callback for xml savegames.
bool MS_SaveXML (xmlNode_t *parent)
 Save callback for messages.
bool MS_LoadXML (xmlNode_t *parent)
 Load callback for messages.
bool STATS_SaveXML (xmlNode_t *parent)
 Save callback for savegames in XML Format.
bool STATS_LoadXML (xmlNode_t *parent)
 Load callback for savegames in XML Format.
bool NAT_SaveXML (xmlNode_t *parent)
 Nation saving callback.
bool NAT_LoadXML (xmlNode_t *parent)
 Nation loading xml callback.
bool TR_SaveXML (xmlNode_t *parent)
 Save callback for xml savegames.
bool TR_LoadXML (xmlNode_t *parent)
 Load callback for xml savegames.
bool AB_SaveXML (xmlNode_t *parent)
 Save callback for alien base data.
bool AB_LoadXML (xmlNode_t *parent)
 Load callback for alien base data.
bool XVI_SaveXML (xmlNode_t *parent)
 XVI map saving callback.
bool XVI_LoadXML (xmlNode_t *parent)
 Load the XVI map from the savegame.
bool INS_SaveXML (xmlNode_t *parent)
 Save callback for savegames in xml.
bool INS_LoadXML (xmlNode_t *parent)
 Load callback for savegames.
bool MSO_SaveXML (xmlNode_t *parent)
 saves current notification and pause settings
bool MSO_LoadXML (xmlNode_t *parent)
 Restores the notification and pause settings from savegame.
bool US_SaveXML (xmlNode_t *parent)
 Save callback for savegames in XML Format.
bool US_LoadXML (xmlNode_t *parent)
 Load callback for xml savegames.
bool MIS_LoadXML (xmlNode_t *parent)
 Load callback for savegames in XML Format.
bool MIS_SaveXML (xmlNode_t *parent)
 Save callback for savegames in XML Format.
bool INT_SaveXML (xmlNode_t *parent)
 Save callback for savegames in XML Format.
bool INT_LoadXML (xmlNode_t *parent)
 Load callback for savegames in XML Format.
bool B_PostLoadInit (void)
 Set the capacity stuff for all the bases after loading a savegame.
bool AIR_PostLoadInit (void)
 Actions needs to be done after loading the savegame.
bool PR_PostLoadInit (void)
 actions to do with productions after loading a savegame
bool SAV_LoadHeader (const char *filename, saveFileHeader_t *header)
 Loads and verifies a savegame header.
bool SAV_GameLoad (const char *file, const char **error)
 Loads the given savegame from an xml File.
bool SAV_GameSaveAllowed (char **error)
 Determines if saving is allowed.
bool SAV_GameSave (const char *filename, const char *comment, char **error)
 This is a savegame function which stores the game in xml-Format.

Detailed Description

Defines some savefile structures.

Definition in file cp_save.h.

Macro Definition Documentation

◆ FOREACH_XMLNODE

#define FOREACH_XMLNODE ( var,
node,
name )
Value:
for (xmlNode_t* var = cgi->XML_GetNode((node), name); var; var = cgi->XML_GetNextNode(var, node, name))
const cgame_import_t * cgi
QGL_EXTERN GLuint GLsizei GLsizei GLint GLenum GLchar * name
Definition r_gl.h:110
#define xmlNode_t
Definition xml.h:24

Definition at line 54 of file cp_save.h.

Referenced by AC_LoadXML(), and B_LoadXML().

◆ MAX_SAVESUBSYSTEMS

#define MAX_SAVESUBSYSTEMS   32

Definition at line 32 of file cp_save.h.

Referenced by SAV_AddSubsystem().

◆ SAVE_FILE_VERSION

#define SAVE_FILE_VERSION   4

Definition at line 33 of file cp_save.h.

Referenced by SAV_GameSave(), and SAV_VerifyHeader().

◆ SAVEGAME_EXTENSION

#define SAVEGAME_EXTENSION   "savx"

Function Documentation

◆ AB_LoadXML()

bool AB_LoadXML ( xmlNode_t * p)

Load callback for alien base data.

Parameters
[in]pXML Node structure, where we get the information from
See also
AB_SaveXML

<

Todo
this is for old saves now only

Definition at line 363 of file cp_alienbase.cpp.

References ccs, cgi, i, alienBase_t::idx, LIST_Add(), alienBase_t::pos, SAVE_ALIENBASE_ALIENBASES, SAVE_ALIENBASE_BASE, SAVE_ALIENBASE_IDX, SAVE_ALIENBASE_POS, SAVE_ALIENBASE_STEALTH, SAVE_ALIENBASE_SUPPLY, alienBase_t::stealth, alienBase_t::supply, and xmlNode_t.

Referenced by SAV_Init().

◆ AB_SaveXML()

bool AB_SaveXML ( xmlNode_t * p)

Save callback for alien base data.

Parameters
[out]pXML Node structure, where we write the information to
See also
AB_LoadXML

Definition at line 397 of file cp_alienbase.cpp.

References AB_Foreach, cgi, SAVE_ALIENBASE_ALIENBASES, SAVE_ALIENBASE_BASE, SAVE_ALIENBASE_IDX, SAVE_ALIENBASE_POS, SAVE_ALIENBASE_STEALTH, SAVE_ALIENBASE_SUPPLY, and xmlNode_t.

Referenced by SAV_Init().

◆ AC_LoadXML()

bool AC_LoadXML ( xmlNode_t * parent)

Load callback for savin in XML Format.

Parameters
[in]parentParent XML node in the savegame
Todo
Remove: Fallback for compatibility

Definition at line 192 of file cp_aliencont.cpp.

References AlienContainment::add(), base_t::alienContainment, B_GetFoundedBaseByIDX(), CAP_ALIENS, CAP_Get, cgi, FOREACH_XMLNODE, MAX_BASES, SAVE_ALIENCONT_ALIEN, SAVE_ALIENCONT_ALIENCONT, SAVE_ALIENCONT_AMOUNTALIVE, SAVE_ALIENCONT_AMOUNTDEAD, SAVE_ALIENCONT_BASEIDX, SAVE_ALIENCONT_CONT, SAVE_ALIENCONT_TEAMID, and xmlNode_t.

Referenced by SAV_Init().

◆ AIR_LoadXML()

◆ AIR_PostLoadInit()

bool AIR_PostLoadInit ( void )

Actions needs to be done after loading the savegame.

See also
SAV_GameActionsAfterLoad

Definition at line 2631 of file cp_aircraft.cpp.

References AIR_PostLoadInitMissions().

Referenced by SAV_GameActionsAfterLoad().

◆ AIR_SaveXML()

bool AIR_SaveXML ( xmlNode_t * parent)

Save callback for savegames in xml format.

See also
AIR_LoadXML
B_SaveXML
SAV_GameSaveXML

Definition at line 2275 of file cp_aircraft.cpp.

References AIR_Foreach, AIR_SaveAircraftXML(), AIRFIGHT_SaveXML(), cgi, i, aircraft_t::id, MAX_UFOONGEOSCAPE, SAVE_AIRCRAFT_PHALANX, SAVE_AIRCRAFT_PROJECTILES, SAVE_AIRCRAFT_UFOS, UFO_GetByIDX(), and xmlNode_t.

Referenced by SAV_Init().

◆ B_LoadXML()

bool B_LoadXML ( xmlNode_t * parent)

Loads base data.

Parameters
[in]parentXML Node structure, where we get the information from
Todo
save it as vec2t if needed, also it's opposite

Definition at line 2406 of file cp_base.cpp.

References base_t::aircraftCurrent, base_t::alienContainment, base_t::alienInterest, B_GetBaseByIDX(), B_GetBuildingByIDX, B_GetBuildingIDX, B_GetBuildingTemplate(), B_GetCount(), B_GetMaxBuildingLevel(), B_LoadBaseSlotsXML(), B_LoadStorageXML(), B_RADAR, building_t::base, base_t::baseStatus, base_t::batteries, BDEF_InitialiseBaseSlots(), base_t::bEquipment, baseBuildingTile_t::blocked, baseBuildingTile_t::building, building_t::buildingStatus, building_t::buildTime, CAP_ALIENS, CAP_Get, ccs, cgi, FOREACH_XMLNODE, base_t::founded, i, base_t::idx, building_t::idx, Inventory::init(), base_t::lasers, building_t::level, AlienCargo::load(), base_t::map, MAX_BASE_SLOT, MAX_BUILDINGS, MAX_VAR, base_t::name, base_t::numBatteries, base_t::numLasers, base_t::pos, building_t::pos, baseBuildingTile_t::posX, baseBuildingTile_t::posY, Q_strncpyz(), base_t::radar, RADAR_Initialise(), RADAR_InitialiseUFOs(), SAVE_BASES_ALIENCONTAINMENT, SAVE_BASES_ALIENINTEREST, SAVE_BASES_BASE, SAVE_BASES_BASESTATUS, SAVE_BASES_BATTERIES, SAVE_BASES_BLOCKED, SAVE_BASES_BUILDING, SAVE_BASES_BUILDING_PLACE, SAVE_BASES_BUILDINGBUILDTIME, SAVE_BASES_BUILDINGINDEX, SAVE_BASES_BUILDINGLEVEL, SAVE_BASES_BUILDINGS, SAVE_BASES_BUILDINGSPACE, SAVE_BASES_BUILDINGSTATUS, SAVE_BASES_BUILDINGTIMESTART, SAVE_BASES_BUILDINGTYPE, SAVE_BASES_IDX, SAVE_BASES_LASERS, SAVE_BASES_NAME, SAVE_BASES_POS, SAVE_BASES_RADARRANGE, SAVE_BASES_STORAGE, SAVE_BASES_TRACKINGRANGE, SAVE_BASES_X, SAVE_BASES_Y, SAVE_BASESTATUS_NAMESPACE, SAVE_BUILDINGSTATUS_NAMESPACE, saveBaseConstants, base_t::storage, building_t::timeStart, and xmlNode_t.

Referenced by SAV_Init().

◆ B_PostLoadInit()

bool B_PostLoadInit ( void )

Set the capacity stuff for all the bases after loading a savegame.

See also
SAV_GameActionsAfterLoad

Definition at line 2377 of file cp_base.cpp.

References B_PostLoadInitCapacity().

Referenced by SAV_GameActionsAfterLoad().

◆ B_SaveXML()

bool B_SaveXML ( xmlNode_t * parent)

Save callback for saving in xml format.

Parameters
[out]parentXML Node structure, where we write the information to
Todo
save it as vec2t if needed, also it's opposite

Definition at line 2263 of file cp_base.cpp.

References base_t::alienContainment, base_t::alienInterest, B_GetBuildingAt, B_GetNext(), B_GetNextBuilding(), B_IsTileBlocked, B_SaveBaseSlotsXML(), B_SaveStorageXML(), BASE_SIZE, base_t::baseStatus, base_t::batteries, building_t::buildingStatus, building_t::buildTime, cgi, base_t::founded, DateTime::getDateAsDays(), DateTime::getTimeAsSeconds(), base_t::idx, building_t::idx, base_t::lasers, building_t::level, base_t::name, base_t::numBatteries, base_t::numLasers, base_t::pos, building_t::pos, base_t::radar, AlienCargo::save(), SAVE_BASES_ALIENCONTAINMENT, SAVE_BASES_ALIENINTEREST, SAVE_BASES_BASE, SAVE_BASES_BASES, SAVE_BASES_BASESTATUS, SAVE_BASES_BATTERIES, SAVE_BASES_BLOCKED, SAVE_BASES_BUILDING, SAVE_BASES_BUILDING_PLACE, SAVE_BASES_BUILDINGBUILDTIME, SAVE_BASES_BUILDINGINDEX, SAVE_BASES_BUILDINGLEVEL, SAVE_BASES_BUILDINGS, SAVE_BASES_BUILDINGSPACE, SAVE_BASES_BUILDINGSTATUS, SAVE_BASES_BUILDINGTIMESTART, SAVE_BASES_BUILDINGTYPE, SAVE_BASES_IDX, SAVE_BASES_LASERS, SAVE_BASES_NAME, SAVE_BASES_POS, SAVE_BASES_RADARRANGE, SAVE_BASES_STORAGE, SAVE_BASES_TRACKINGRANGE, SAVE_BASES_X, SAVE_BASES_Y, SAVE_BASESTATUS_NAMESPACE, SAVE_BUILDINGSTATUS_NAMESPACE, saveBaseConstants, base_t::storage, building_t::timeStart, building_t::tpl, and xmlNode_t.

Referenced by SAV_Init().

◆ BS_LoadXML()

◆ BS_SaveXML()

◆ CP_LoadXML()

◆ CP_SaveXML()

◆ E_LoadXML()

bool E_LoadXML ( xmlNode_t * p)

Load callback for savegames in XML Format.

Parameters
[in]pXML Node structure, where we get the information from
Note
e->transfer is restored in cl_transfer.c:TR_Load

Definition at line 909 of file cp_employee.cpp.

References B_AtLeastOneExists, B_GetBaseByIDX(), Employee::baseHired, ccs, cgi, Employee::chr, LIST_Add(), MAX_EMPL, NAT_GetNationByID(), OBJZERO, SAVE_EMPLOYEE_ASSIGNED, SAVE_EMPLOYEE_BASEHIRED, SAVE_EMPLOYEE_CHR, SAVE_EMPLOYEE_EMPLOYEE, SAVE_EMPLOYEE_EMPLOYEES, SAVE_EMPLOYEE_NATION, SAVE_EMPLOYEE_TYPE, SAVE_EMPLOYEE_UGV, SAVE_EMPLOYEETYPE_NAMESPACE, saveEmployeeConstants, Employee::setAssigned(), type, and xmlNode_t.

Referenced by SAV_Init().

◆ E_SaveXML()

bool E_SaveXML ( xmlNode_t * p)

Save callback for savegames in XML Format.

Parameters
[out]pXML Node structure, where we write the information to
See also
E_LoadXML
SAV_GameSaveXML
G_SendCharacterData
CP_ParseCharacterData
GAME_SendCurrentTeamSpawningInfo
Note
e->transfer is not saved here because it'll be restored via TR_Load.

Definition at line 870 of file cp_employee.cpp.

References cgi, E_Foreach, i, MAX_EMPL, SAVE_EMPLOYEE_ASSIGNED, SAVE_EMPLOYEE_BASEHIRED, SAVE_EMPLOYEE_CHR, SAVE_EMPLOYEE_EMPLOYEE, SAVE_EMPLOYEE_EMPLOYEES, SAVE_EMPLOYEE_NATION, SAVE_EMPLOYEE_TYPE, SAVE_EMPLOYEE_UGV, SAVE_EMPLOYEETYPE_NAMESPACE, saveEmployeeConstants, and xmlNode_t.

Referenced by SAV_Init().

◆ HOS_LoadXML()

bool HOS_LoadXML ( xmlNode_t * p)

Saving function for hospital related data.

See also
HOS_SaveXML
SAV_GameLoadXML

Definition at line 201 of file cp_hospital.cpp.

References xmlNode_t.

Referenced by SAV_Init().

◆ HOS_SaveXML()

bool HOS_SaveXML ( xmlNode_t * p)

Saving function for hospital related data.

See also
HOS_LoadXML
SAV_GameSaveXML

Definition at line 190 of file cp_hospital.cpp.

References xmlNode_t.

Referenced by SAV_Init().

◆ INS_LoadXML()

bool INS_LoadXML ( xmlNode_t * p)

◆ INS_SaveXML()

◆ INT_LoadXML()

bool INT_LoadXML ( xmlNode_t * parent)

Load callback for savegames in XML Format.

Parameters
[in]parentXML Node structure, where we get the information from

Definition at line 130 of file cp_alien_interest.cpp.

References ccs, cgi, SAVE_INTERESTS, SAVE_INTERESTS_ID, SAVE_INTERESTS_INTEREST, SAVE_INTERESTS_LASTINCREASEDELAY, SAVE_INTERESTS_LASTMISSIONSPAWNEDDELAY, SAVE_INTERESTS_OVERALL, SAVE_INTERESTS_VAL, saveInterestConstants, and xmlNode_t.

Referenced by SAV_Init().

◆ INT_SaveXML()

bool INT_SaveXML ( xmlNode_t * parent)

Save callback for savegames in XML Format.

Parameters
[out]parentXML Node structure, where we write the information to

Definition at line 109 of file cp_alien_interest.cpp.

References ccs, cgi, i, INTERESTCATEGORY_MAX, SAVE_INTERESTCAT_NAMESPACE, SAVE_INTERESTS, SAVE_INTERESTS_ID, SAVE_INTERESTS_INTEREST, SAVE_INTERESTS_LASTINCREASEDELAY, SAVE_INTERESTS_LASTMISSIONSPAWNEDDELAY, SAVE_INTERESTS_OVERALL, SAVE_INTERESTS_VAL, saveInterestConstants, and xmlNode_t.

Referenced by SAV_Init().

◆ MIS_LoadXML()

bool MIS_LoadXML ( xmlNode_t * parent)

Load callback for savegames in XML Format.

Parameters
[in]parentXML Node structure, where we get the information from

Definition at line 2064 of file cp_missions.cpp.

References AB_GetByIDX(), mission_t::active, AIR_AircraftGetFromIDX(), mission_t::missionData_t::aircraft, mission_t::missionData_t::alienBase, B_GetBaseByIDX(), B_IsUnderAttack, mission_t::missionData_t::base, mission_t::category, ccs, cgi, mission_t::missionData_t::city, CITY_GetByPos(), CP_BasemissionIsSubvertingGovernmentMission(), mission_t::crashed, mission_t::data, mission_t::finalDate, mission_t::id, alienBase_t::idx, base_t::idx, mission_t::idx, mission_t::initialIndividualInterest, mission_t::initialOverallInterest, INS_GetByIDX(), mission_t::missionData_t::installation, INTERESTCATEGORY_ALIENBASE, INTERESTCATEGORY_BASE_ATTACK, INTERESTCATEGORY_BUILDING, INTERESTCATEGORY_INTERCEPT, INTERESTCATEGORY_RESCUE, INTERESTCATEGORY_SUPPLY, INTERESTCATEGORY_TERROR_ATTACK, LIST_Add(), mission_t::mapDef, MIS_Foreach, base_t::name, name, OBJZERO, mission_t::onGeoscape, mission_t::onlose, mission_t::onwin, mission_t::pos, mission_t::posAssigned, Q_strncpyz(), SAVE_INTERESTCAT_NAMESPACE, SAVE_MISSIONS, SAVE_MISSIONS_ACTIVE, SAVE_MISSIONS_ALIENBASEINDEX, SAVE_MISSIONS_BASEINDEX, SAVE_MISSIONS_CATEGORY, SAVE_MISSIONS_CRASHED, SAVE_MISSIONS_CRASHED_AIRCRAFT, SAVE_MISSIONS_FINALDATE, SAVE_MISSIONS_ID, SAVE_MISSIONS_INITIALINDIVIDUALINTEREST, SAVE_MISSIONS_INITIALOVERALLINTEREST, SAVE_MISSIONS_INSTALLATIONINDEX, SAVE_MISSIONS_MAPDEF_ID, SAVE_MISSIONS_MISSION, SAVE_MISSIONS_MISSION_IDX, SAVE_MISSIONS_ONGEOSCAPE, SAVE_MISSIONS_ONLOSE, SAVE_MISSIONS_ONWIN, SAVE_MISSIONS_POS, SAVE_MISSIONS_POSASSIGNED, SAVE_MISSIONS_STAGE, SAVE_MISSIONS_STARTDATE, SAVE_MISSIONSTAGE_NAMESPACE, saveInterestConstants, saveMissionConstants, mission_t::stage, STAGE_BASE_ATTACK, STAGE_BUILD_BASE, STAGE_INTERCEPT, STAGE_MISSION_GOTO, STAGE_TERROR_MISSION, mission_t::startDate, and xmlNode_t.

Referenced by SAV_Init().

◆ MIS_SaveXML()

bool MIS_SaveXML ( xmlNode_t * parent)

Save callback for savegames in XML Format.

Parameters
[out]parentXML Node structure, where we write the information to

Definition at line 1992 of file cp_missions.cpp.

References mission_t::active, mission_t::missionData_t::aircraft, mission_t::missionData_t::alienBase, mission_t::missionData_t::base, mission_t::category, cgi, mission_t::crashed, mission_t::data, mission_t::finalDate, DateTime::getDateAsDays(), DateTime::getTimeAsSeconds(), mapDef_t::id, mission_t::id, aircraft_t::idx, alienBase_t::idx, base_t::idx, installation_t::idx, mission_t::idx, mission_t::initialIndividualInterest, mission_t::initialOverallInterest, mission_t::missionData_t::installation, INTERESTCATEGORY_ALIENBASE, INTERESTCATEGORY_BASE_ATTACK, INTERESTCATEGORY_BUILDING, INTERESTCATEGORY_INTERCEPT, INTERESTCATEGORY_RESCUE, INTERESTCATEGORY_SUPPLY, mission_t::mapDef, MIS_Foreach, mission_t::onGeoscape, mission_t::onlose, mission_t::onwin, mission_t::pos, mission_t::posAssigned, SAVE_INTERESTCAT_NAMESPACE, SAVE_MISSIONS, SAVE_MISSIONS_ACTIVE, SAVE_MISSIONS_ALIENBASEINDEX, SAVE_MISSIONS_BASEINDEX, SAVE_MISSIONS_CATEGORY, SAVE_MISSIONS_CRASHED, SAVE_MISSIONS_CRASHED_AIRCRAFT, SAVE_MISSIONS_FINALDATE, SAVE_MISSIONS_ID, SAVE_MISSIONS_INITIALINDIVIDUALINTEREST, SAVE_MISSIONS_INITIALOVERALLINTEREST, SAVE_MISSIONS_INSTALLATIONINDEX, SAVE_MISSIONS_MAPDEF_ID, SAVE_MISSIONS_MISSION, SAVE_MISSIONS_MISSION_IDX, SAVE_MISSIONS_ONGEOSCAPE, SAVE_MISSIONS_ONLOSE, SAVE_MISSIONS_ONWIN, SAVE_MISSIONS_POS, SAVE_MISSIONS_POSASSIGNED, SAVE_MISSIONS_STAGE, SAVE_MISSIONS_STARTDATE, SAVE_MISSIONSTAGE_NAMESPACE, saveInterestConstants, saveMissionConstants, mission_t::stage, STAGE_BASE_ATTACK, STAGE_INTERCEPT, STAGE_MISSION_GOTO, mission_t::startDate, and xmlNode_t.

Referenced by SAV_Init().

◆ MS_LoadXML()

◆ MS_SaveXML()

bool MS_SaveXML ( xmlNode_t * p)

Save callback for messages.

Parameters
[out]pXML Node structure, where we write the information to
See also
MS_MessageSaveXML

Definition at line 238 of file cp_messages.cpp.

References cgi, MS_MessageSaveXML(), SAVE_MESSAGES_MESSAGES, and xmlNode_t.

Referenced by SAV_Init().

◆ MSO_LoadXML()

bool MSO_LoadXML ( xmlNode_t * p)

Restores the notification and pause settings from savegame.

See also
MSO_SaveXML
Todo
(menu) check why this message is not shown anywhere in logs

Definition at line 246 of file cp_messageoptions.cpp.

References cgi, MSO_MSTATE_REINIT, MSO_NOTIFY, MSO_PAUSE, MSO_Set(), MSO_SetMenuState(), MSO_SOUND, NT_NUM_NOTIFYTYPE, nt_strings, Q_streq, SAVE_MESSAGEOPTIONS_MESSAGEOPTIONS, SAVE_MESSAGEOPTIONS_NAME, SAVE_MESSAGEOPTIONS_NOTIFY, SAVE_MESSAGEOPTIONS_PAUSE, SAVE_MESSAGEOPTIONS_SOUND, SAVE_MESSAGEOPTIONS_TYPE, type, and xmlNode_t.

Referenced by SAV_Init().

◆ MSO_SaveXML()

◆ NAT_LoadXML()

bool NAT_LoadXML ( xmlNode_t * p)

◆ NAT_SaveXML()

bool NAT_SaveXML ( xmlNode_t * p)

Nation saving callback.

Parameters
[out]pXML Node structure, where we write the information to

Definition at line 229 of file cp_nation.cpp.

References cgi, nationInfo_t::happiness, nationInfo_t::inuse, DateTime::MONTHS_PER_YEAR, NAT_Foreach, SAVE_NATION_HAPPINESS, SAVE_NATION_ID, SAVE_NATION_MONTH, SAVE_NATION_MONTH_IDX, SAVE_NATION_NATION, SAVE_NATION_NATIONS, SAVE_NATION_XVI, xmlNode_t, and nationInfo_t::xviInfection.

Referenced by SAV_Init().

◆ PR_LoadXML()

◆ PR_PostLoadInit()

bool PR_PostLoadInit ( void )

actions to do with productions after loading a savegame

See also
SAV_GameActionsAfterLoad

Definition at line 803 of file cp_produce.cpp.

References PR_PostLoadInitProgress().

Referenced by SAV_GameActionsAfterLoad().

◆ PR_SaveXML()

◆ RS_LoadXML()

◆ RS_SaveXML()

◆ SAV_AddSubsystem()

bool SAV_AddSubsystem ( saveSubsystems_t * subsystem)

Adds a subsystem to the saveSubsystems array.

Note
The order is not important
See also
SAV_Init

Definition at line 391 of file cp_save.cpp.

References cgi, saveSubsystems_t::load, MAX_SAVESUBSYSTEMS, saveSubsystems_t::name, saveSubsystems_t::save, saveSubsystems, and saveSubsystemsAmount.

Referenced by SAV_Init().

◆ SAV_GameLoad()

bool SAV_GameLoad ( const char * file,
const char ** error )

Loads the given savegame from an xml File.

Returns
true on load success false on failures
Parameters
[in]fileThe Filename to load from (without extension)
[out]errorOn failure an errormessage may be set.

Definition at line 152 of file cp_save.cpp.

References _, cgi, saveFileHeader_t::compressed, cp_campaignPool, f, FILE_READ, saveFileHeader_t::gameVersion, i, len, LittleLong, MAX_OSPATH, Mem_PoolAllocTypeN, name, Q_strcat(), SAV_GameActionsAfterLoad(), SAV_VerifyHeader(), SAVE_ROOTNODE, SAVEGAME_EXTENSION, saveSubsystems, saveSubsystemsAmount, va(), saveFileHeader_t::version, xmlNode_t, and saveFileHeader_t::xmlSize.

Referenced by SAV_GameContinue_f(), SAV_GameLoad_f(), SAV_GameQuickLoad_f(), TEST_F(), and TEST_F().

◆ SAV_GameSave()

◆ SAV_GameSaveAllowed()

bool SAV_GameSaveAllowed ( char ** error)

Determines if saving is allowed.

Definition at line 267 of file cp_save.cpp.

References _, B_AtLeastOneExists, cgi, and CP_IsRunning().

Referenced by SAV_GameSave(), and SAV_GameSaveAllowed_f().

◆ SAV_Init()

◆ SAV_LoadHeader()

bool SAV_LoadHeader ( const char * filename,
saveFileHeader_t * header )

Loads and verifies a savegame header.

Parameters
[in]filenameName of the file to load header from (without path and extension)
[out]headerPointer to the header structure to fill
Returns
true on success false on failure

Definition at line 114 of file cp_save.cpp.

References cgi, saveFileHeader_t::compressed, f, FILE_READ, LittleLong, MAX_OSPATH, Q_strcat(), SAV_VerifyHeader(), SAVEGAME_EXTENSION, saveFileHeader_t::version, and saveFileHeader_t::xmlSize.

Referenced by SAV_ListSaveGames_f().

◆ STATS_LoadXML()

◆ STATS_SaveXML()

◆ TR_LoadXML()

◆ TR_SaveXML()

◆ US_LoadXML()

◆ US_SaveXML()

bool US_SaveXML ( xmlNode_t * p)

Save callback for savegames in XML Format.

Parameters
[out]pXML Node structure, where we write the information to
See also
US_LoadXML
SAV_GameSaveXML

Definition at line 299 of file cp_uforecovery.cpp.

References cgi, SAVE_STOREDUFOSTATUS_NAMESPACE, SAVE_UFORECOVERY_CONDITION, SAVE_UFORECOVERY_DATE, SAVE_UFORECOVERY_INSTALLATIONIDX, SAVE_UFORECOVERY_STATUS, SAVE_UFORECOVERY_STOREDUFOS, SAVE_UFORECOVERY_UFO, SAVE_UFORECOVERY_UFOID, SAVE_UFORECOVERY_UFOIDX, saveStoredUFOConstants, US_Foreach, and xmlNode_t.

Referenced by SAV_Init().

◆ XVI_LoadXML()

bool XVI_LoadXML ( xmlNode_t * p)

Load the XVI map from the savegame.

See also
Savegame callback
SAV_InitXML
XVI_SaveXML

Definition at line 247 of file cp_xvi.cpp.

References cgi, CP_InitializeXVIOverlay(), CP_SetXVILevel(), level, SAVE_XVI_ENTRY, SAVE_XVI_HEIGHT, SAVE_XVI_LEVEL, SAVE_XVI_WIDTH, SAVE_XVI_X, SAVE_XVI_XVI, SAVE_XVI_Y, and xmlNode_t.

Referenced by SAV_Init().

◆ XVI_SaveXML()

bool XVI_SaveXML ( xmlNode_t * p)

XVI map saving callback.

Note
Only save transparency
See also
Savegame callback
SAV_InitXML
XVI_LoadXML

Definition at line 215 of file cp_xvi.cpp.

References cgi, CP_GetXVILevel(), CP_GetXVIMapDimensions(), SAVE_XVI_ENTRY, SAVE_XVI_HEIGHT, SAVE_XVI_LEVEL, SAVE_XVI_WIDTH, SAVE_XVI_X, SAVE_XVI_XVI, SAVE_XVI_Y, and xmlNode_t.

Referenced by SAV_Init().