00001 00006 /* 00007 Copyright (C) 2002-2010 UFO: Alien Invasion. 00008 00009 This program is free software; you can redistribute it and/or 00010 modify it under the terms of the GNU General Public License 00011 as published by the Free Software Foundation; either version 2 00012 of the License, or (at your option) any later version. 00013 00014 This program is distributed in the hope that it will be useful, 00015 but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00017 00018 See the GNU General Public License for more details. 00019 00020 You should have received a copy of the GNU General Public License 00021 along with this program; if not, write to the Free Software 00022 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00023 00024 */ 00025 00026 #ifndef CLIENT_CL_SAVE_H 00027 #define CLIENT_CL_SAVE_H 00028 00029 #include "../../common/msg.h" 00030 #include "../mxml/mxml_ufoai.h" 00031 00032 extern cvar_t *cl_lastsave; 00033 00034 #define MAX_SAVESUBSYSTEMS 32 00035 #define SAVE_FILE_VERSION 4 00036 00037 #include <zlib.h> 00038 00039 qboolean SAV_QuickSave(void); 00040 void SAV_Init(void); 00041 00042 /* and now the save and load prototypes for every subsystem */ 00043 qboolean B_SaveXML(mxml_node_t *parent); 00044 qboolean B_LoadXML(mxml_node_t *parent); 00045 qboolean CP_SaveXML(mxml_node_t *parent); 00046 qboolean CP_LoadXML(mxml_node_t *parent); 00047 qboolean HOS_LoadXML(mxml_node_t *parent); 00048 qboolean HOS_SaveXML(mxml_node_t *parent); 00049 qboolean BS_SaveXML(mxml_node_t *parent); 00050 qboolean BS_LoadXML(mxml_node_t *parent); 00051 qboolean AIR_SaveXML(mxml_node_t *parent); 00052 qboolean AIR_LoadXML(mxml_node_t *parent); 00053 qboolean AC_SaveXML(mxml_node_t *parent); 00054 qboolean AC_LoadXML(mxml_node_t *parent); 00055 qboolean E_SaveXML(mxml_node_t *parent); 00056 qboolean E_LoadXML(mxml_node_t *parent); 00057 qboolean RS_SaveXML(mxml_node_t *parent); 00058 qboolean RS_LoadXML(mxml_node_t *parent); 00059 qboolean PR_SaveXML(mxml_node_t *parent); 00060 qboolean PR_LoadXML(mxml_node_t *parent); 00061 qboolean MS_SaveXML(mxml_node_t *parent); 00062 qboolean MS_LoadXML(mxml_node_t *parent); 00063 qboolean STATS_SaveXML(mxml_node_t *parent); 00064 qboolean STATS_LoadXML(mxml_node_t *parent); 00065 qboolean NAT_SaveXML(mxml_node_t *parent); 00066 qboolean NAT_LoadXML(mxml_node_t *parent); 00067 qboolean TR_SaveXML(mxml_node_t *parent); 00068 qboolean TR_LoadXML(mxml_node_t *parent); 00069 qboolean AB_SaveXML(mxml_node_t *parent); 00070 qboolean AB_LoadXML(mxml_node_t *parent); 00071 qboolean XVI_SaveXML(mxml_node_t *parent); 00072 qboolean XVI_LoadXML(mxml_node_t *parent); 00073 qboolean INS_SaveXML(mxml_node_t *parent); 00074 qboolean INS_LoadXML(mxml_node_t *parent); 00075 qboolean MSO_SaveXML(mxml_node_t *parent); 00076 qboolean MSO_LoadXML(mxml_node_t *parent); 00077 qboolean US_SaveXML(mxml_node_t *parent); 00078 qboolean US_LoadXML(mxml_node_t *parent); 00079 qboolean CP_LoadMissionsXML(mxml_node_t *parent); 00080 qboolean CP_SaveMissionsXML(mxml_node_t *parent); 00081 qboolean CP_SaveInterestsXML(mxml_node_t *parent); 00082 qboolean CP_LoadInterestsXML(mxml_node_t *parent); 00083 00084 void B_PostLoadInit(void); 00085 void AIR_PostLoadInit(void); 00086 00087 #endif /* CLIENT_CL_SAVE_H */ 00088