UFO: Alien Invasion
|
Implements savegames. More...
#include "../../cl_shared.h"
#include "../cl_game.h"
#include "cp_campaign.h"
#include "cp_save.h"
#include "cp_time.h"
#include "cp_xvi.h"
#include "save/save.h"
Go to the source code of this file.
Functions | |
static bool | SAV_GameActionsAfterLoad (void) |
Perform actions after loading a game for single player campaign. More... | |
static bool | SAV_VerifyHeader (saveFileHeader_t const *const header) |
Tries to verify the Header of the savegame. More... | |
bool | SAV_LoadHeader (const char *filename, saveFileHeader_t *header) |
Loads and verifies a savegame header. More... | |
bool | SAV_GameLoad (const char *file, const char **error) |
Loads the given savegame from an xml File. More... | |
bool | SAV_GameSaveAllowed (char **error=nullptr) |
Determines if saving is allowed. More... | |
bool | SAV_GameSave (const char *filename, const char *comment, char **error) |
This is a savegame function which stores the game in xml-Format. More... | |
bool | SAV_AddSubsystem (saveSubsystems_t *subsystem) |
Adds a subsystem to the saveSubsystems array. More... | |
void | SAV_Init (void) |
Register all save-subsystems and init some cvars and commands. More... | |
Variables | |
static saveSubsystems_t | saveSubsystems [MAX_SAVESUBSYSTEMS] |
static int | saveSubsystemsAmount |
static cvar_t * | save_compressed |
Implements savegames.
Definition in file cp_save.cpp.
bool SAV_AddSubsystem | ( | saveSubsystems_t * | subsystem | ) |
Adds a subsystem to the saveSubsystems array.
Definition at line 394 of file cp_save.cpp.
References cgi, saveSubsystems_s::load, MAX_SAVESUBSYSTEMS, saveSubsystems_s::name, saveSubsystems_s::save, and saveSubsystemsAmount.
Referenced by SAV_Init().
|
static |
Perform actions after loading a game for single player campaign.
Definition at line 41 of file cp_save.cpp.
References AIR_PostLoadInit(), B_PostLoadInit(), CP_UpdateTime(), CP_UpdateXVIMapButton(), PR_PostLoadInit(), and RADAR_SetRadarAfterLoading().
Referenced by SAV_GameLoad().
bool SAV_GameLoad | ( | const char * | file, |
const char ** | error | ||
) |
Loads the given savegame from an xml File.
[in] | file | The Filename to load from (without extension) |
[out] | error | On failure an errormessage may be set. |
Definition at line 152 of file cp_save.cpp.
References _, cgi, saveFileHeader_s::compressed, cp_campaignPool, f, FILE_READ, saveFileHeader_s::gameVersion, cgame_import_s::GetRelativeSavePath(), i, len, LittleLong, MAX_OSPATH, Mem_PoolAllocTypeN, name, Q_strcat(), SAV_GameActionsAfterLoad(), SAV_VerifyHeader(), SAVE_ROOTNODE, SAVEGAME_EXTENSION, saveSubsystemsAmount, va(), saveFileHeader_s::version, cgame_import_s::XML_GetNode(), cgame_import_s::XML_Parse(), xmlNode_t, and saveFileHeader_s::xmlSize.
Referenced by SAV_GameContinue_f(), SAV_GameLoad_f(), SAV_GameQuickLoad_f(), and TEST_F().
bool SAV_GameSave | ( | const char * | filename, |
const char * | comment, | ||
char ** | error | ||
) |
This is a savegame function which stores the game in xml-Format.
[in] | filename | The Filename to save to (without extension) |
[in] | comment | Description of the savegame |
[out] | error | On failure an errormessage may be set. |
Definition at line 293 of file cp_save.cpp.
References _, ccs, cgi, Com_MakeTimestamp(), Com_sprintf(), saveFileHeader_s::compressed, cp_campaignPool, CP_DateConvertLong(), ccs_s::date, Date_GetMonthName(), dateLong_s::day, saveFileHeader_s::gameDate, saveFileHeader_s::gameVersion, cgame_import_s::GetRelativeSavePath(), i, cvar_s::integer, LittleLong, MAX_OSPATH, Mem_PoolAllocTypeN, dateLong_s::month, saveFileHeader_s::name, name, OBJZERO, Q_strcat(), Q_strncpyz(), saveFileHeader_s::realDate, SAV_GameSaveAllowed(), SAVE_COMMENT, SAVE_FILE_VERSION, SAVE_GAMEDATE, SAVE_REALDATE, SAVE_ROOTNODE, SAVE_SAVEVERSION, SAVE_UFOVERSION, SAVEGAME_EXTENSION, saveSubsystemsAmount, saveFileHeader_s::subsystems, UFO_VERSION, saveFileHeader_s::version, cgame_import_s::XML_AddNode(), xmlNode_t, saveFileHeader_s::xmlSize, and dateLong_s::year.
Referenced by SAV_GameQuickSave_f(), and SAV_GameSave_f().
bool SAV_GameSaveAllowed | ( | char ** | error = nullptr | ) |
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().
Register all save-subsystems and init some cvars and commands.
Definition at line 413 of file cp_save.cpp.
References AB_LoadXML(), AB_SaveXML(), AC_LoadXML(), AIR_LoadXML(), AIR_SaveXML(), B_LoadXML(), B_SaveXML(), BS_LoadXML(), BS_SaveXML(), cgi, CP_LoadXML(), CP_SaveXML(), CP_TriggerEventLoadXML(), CP_TriggerEventSaveXML(), CVAR_ARCHIVE, cgame_import_s::Cvar_Get(), E_LoadXML(), E_SaveXML(), HOS_LoadXML(), HOS_SaveXML(), INS_LoadXML(), INS_SaveXML(), INT_LoadXML(), INT_SaveXML(), MIS_LoadXML(), MIS_SaveXML(), MS_LoadXML(), MS_SaveXML(), MSO_LoadXML(), MSO_SaveXML(), NAT_LoadXML(), NAT_SaveXML(), OBJZERO, PR_LoadXML(), PR_SaveXML(), RS_LoadXML(), RS_SaveXML(), SAV_AddSubsystem(), saveSubsystemsAmount, STATS_LoadXML(), STATS_SaveXML(), TR_LoadXML(), TR_SaveXML(), US_LoadXML(), US_SaveXML(), XVI_LoadXML(), and XVI_SaveXML().
Referenced by CP_InitStartup(), and TEST_F().
bool SAV_LoadHeader | ( | const char * | filename, |
saveFileHeader_t * | header | ||
) |
Loads and verifies a savegame header.
[in] | filename | Name of the file to load header from (without path and extension) |
[out] | header | Pointer to the header structure to fill |
true
on success false
on failure Definition at line 114 of file cp_save.cpp.
References cgi, saveFileHeader_s::compressed, f, FILE_READ, cgame_import_s::GetRelativeSavePath(), LittleLong, MAX_OSPATH, Q_strcat(), SAV_VerifyHeader(), SAVEGAME_EXTENSION, saveFileHeader_s::version, and saveFileHeader_s::xmlSize.
Referenced by SAV_ListSaveGames_f().
|
static |
Tries to verify the Header of the savegame.
[in] | header | a pointer to the header to verify |
Definition at line 65 of file cp_save.cpp.
References cgi, DEBUG_CLIENT, saveFileHeader_s::gameDate, saveFileHeader_s::gameVersion, len, saveFileHeader_s::name, saveFileHeader_s::realDate, SAVE_FILE_VERSION, saveSubsystemsAmount, saveFileHeader_s::subsystems, UFO_SIZE_T, saveFileHeader_s::version, and saveFileHeader_s::xmlSize.
Referenced by SAV_GameLoad(), and SAV_LoadHeader().
|
static |
Definition at line 35 of file cp_save.cpp.
|
static |
Definition at line 33 of file cp_save.cpp.
|
static |
Definition at line 34 of file cp_save.cpp.
Referenced by SAV_AddSubsystem(), SAV_GameLoad(), SAV_GameSave(), SAV_Init(), and SAV_VerifyHeader().