#if !defined(__GAMSAVE_H__)
#define __GAMSAVE_H__
 
/******************************************/
#if _MSC_VER >= 1000
#pragma once
#endif /* _MSC_VER >= 1000 */
/******************************************/
 
#include "GAM/Header.h"
 
#if defined(__cplusplus)
extern "C"
{
#endif /* __cplusplus */
 
/*#define C_szDefaultSaveName    C_szDefaultPlayerName*/
/*#define C_szDefaultSaveComment "INVALID SAVED GAME"*/
 
 
/* ******* U64 U64 U64 U64 U64 U64
	pour la version U64 : si ça ne compile pas à cause du
	tdstSavedGame, c'est parce-que vous n'avez pas encore
	adapté vos sauvegardes spécifiques au nouveau système
	de Benoit... 
	2 solutions :
	- enlever le commentaire (pas bon)
	- adapter vos sauvegardes spécifiques au nouveau système (bon)
   ******* U64 U64 U64 U64 U64 U64 */
 
/*typedef struct tdstSavedGame_
{
 unsigned char bNewGame;
 unsigned char bSaveAsked;
 //char szSavedComment[_MAX_PATH];
 //unsigned long ulCurrentSavedNumber;
 //unsigned long ulMaxSavedNumber;
} tdstSavedGame;*/
 
 
 
 
 
/*extern CPA_EXPORT void fn_vInitNewGamePlayerSavedGame(void);*/
/*extern CPA_EXPORT void fn_vInitPlayerSavedGame(void);*/
 
/*extern CPA_EXPORT void fn_vSearchAllGameSavePlayer(void);*/
/*extern CPA_EXPORT void fn_vFreeAllGameSavePlayer(void);*/
 
/*extern CPA_EXPORT void fn_vIncPlayerSavedNumber(void);
extern CPA_EXPORT void fn_vFirstPlayerSavedNumber(void);
extern CPA_EXPORT void fn_vLastPlayerSavedNumber(void);
extern CPA_EXPORT void fn_vNextPlayerSavedNumber(void);
extern CPA_EXPORT void fn_vPreviousPlayerSavedNumber(void);*/
 
/*extern CPA_EXPORT void fn_vSetPlayerSavedComment(char * _szComment);
extern CPA_EXPORT char *fn_p_szGetPlayerSavedComment(void);*/
 
/*extern CPA_EXPORT void fn_vAskToPlayerSaveTheGame(char * _szComment);*/
 
extern CPA_EXPORT unsigned char fn_bPlayerSaveGameAll(void);
extern CPA_EXPORT unsigned char fn_bLevelSaveGameAll(void);
/*extern CPA_EXPORT unsigned char fn_bPlayerSaveGameNumber(char *_szFileName);*/
extern CPA_EXPORT unsigned char fn_bPlayerSaveGameGeneral(char *_szFileName);
/*extern CPA_EXPORT unsigned char fn_bPlayerSaveGameOneLevel(char *_szFileName);*/
extern CPA_EXPORT unsigned char fn_bLevelSaveGameItSelf(char *_szFileName);
 
/*extern CPA_EXPORT unsigned char fn_bLoadPlayerSaveGameSavedNumber(void);
extern CPA_EXPORT unsigned char fn_bLoadPlayerSaveGameInformation(void);
extern CPA_EXPORT unsigned char fn_bLoadPlayerSaveGameBeforeLoadLevel(void);*/
extern CPA_EXPORT unsigned char fn_bLoadPlayerSaveGameAfterLoadLevel(void);
extern CPA_EXPORT unsigned char fn_bLoadLevelSaveGameAfterLoadLevel(void);
 
/*extern CPA_EXPORT unsigned char fn_bIsSavedGamePlayerExist(char *_szPlayerName);*/
extern CPA_EXPORT unsigned char fn_bDestroySavedGame(unsigned long _ulSlotId);
extern CPA_EXPORT ACP_tdxBool fn_bRenameSaveGameSlot(char *_szOldName, char *_szNewName);
extern CPA_EXPORT ACP_tdxBool fn_bSaveGameInSlot(unsigned long _ulSlotId);
extern CPA_EXPORT ACP_tdxBool fn_bLoadGameFromSlot(unsigned long _ulSlotId);
extern CPA_EXPORT ACP_tdxBool fn_bEraseGameInSlot(unsigned long _ulSlotId);
extern CPA_EXPORT ACP_tdxBool fn_bCopyGameInSlotFromSlot(unsigned long _ulDstSlotId, unsigned long _ulSrcSlotId);
 
extern CPA_EXPORT ACP_tdxBool fn_bIsSlotOccupied(unsigned long _ulSlotId);
 
extern unsigned char GAM_g_ucSaveGameBeforeChangeLevel;
 
/* ******* U64 U64 U64 U64 U64 U64
	pour la version U64 : si ça ne compile pas à cause du
	g_stSavedGame, c'est parce-que vous n'avez pas encore
	adapté vos sauvegardes spécifiques au nouveau système
	de Benoit... 
	2 solutions :
	- enlever le commentaire (pas bon)
	- adapter vos sauvegardes spécifiques au nouveau système (bon)
   ******* U64 U64 U64 U64 U64 U64 */
/*EXTERN struct tdstSavedGame_ g_stSavedGame;*/
 
 
 
#ifndef _FIRE_DEADCODE_U64_ /* Added by RUC */
EXTERN const char *g_c_szSlotNames[];
#endif /* _FIRE_DEADCODE_U64_ */ /* Added by RUC */
 
#if defined(__cplusplus)
}
#endif /* __cplusplus */
 
#endif /* __GAMSAVE_H__ */
