reman3/Rayman_X/cpa/public/GAM/LoadFml.h

119 lines
5.1 KiB
C

/*=========================================================================
* LoadFml.h : This module contain all functions used to load
* a family type, this states, and all over
* This is a part of the Game project.
*
* Version 1.0
* Creation date 16/10/96
* Revision date
*
* That file needs to be compatible for all platforms.
*
* (c) Ubi Studios 1996
*=======================================================================*/
#if !defined(__LOADFML_H__)
#define __LOADFML_H__
#ifdef __cplusplus
extern "C" {
#endif
#include "GAM/Header.h"
// Shaitan => module list in the level
/**** Modules scripts ****/
#define C_SectionCreateListOfPOs "CreateListOfPOs"
#define C_Entry_LoadPO "LoadNewPO"
// End Shaitan => module list in the level
/**** Actions scripts ****/
#define C_SectionCreateNewActionsArray "CreateNewActionsArray"
#define C_SubSectionCreateNewAction "CreateNewAction"
/**** States scripts ****/
// Shaitan => state list in the level
#define C_SectionCreateListOfState "CreateListOfState"
#define C_Entry_State "LoadNewState"
// End Shaitan => state list in the level
#define C_SectionCreateNewState "CreateNewState"
#define C_Entry_Animation "Animation"
#define C_Entry_NextState "NextState"
#define C_Entry_Speed "Speed"
#define C_Entry_Repeat "Repeat"
#define C_Entry_AddTargetState "AddTargetState"
#define C_Entry_ProhibitedTargetState "ProhibitedTargetState"
#define C_Entry_AffectCollSet "AffectCollSet"
#define C_Entry_LinkMechanics "LinkMechanics"
#define C_Entry_TransitionStatusFlag "TransitionStatusFlag"
#define C_Value_TransitionAllowedByDefault "AllowedByDefault"
#define C_Value_TransitionProhibitedbyDefault "ProhibitedbyDefault"
#define C_szNoState "NoState_EndOfAction" /* maj 13/12 DVD (Gizmo)*/
#define C_Entry_CustomBits "CustomBits"
/* CGHT 14/05/97*/
#define C_SectionSetBoundingVolume "SetBoundingVolume"
#define C_Entry_Geometric "BoundingVolume"
void fn_vRegisterAllBdVolumeScriptSections ();
void fn_vLoadFamily(struct tdstFamilyList_ *p_stFamily);
// Shaitan => state list in the level
void fn_vInitStateList (struct tdstFamilyList_ *p_stFamily);
// End Shaitan => state list in the level
#if !defined(U64)
SCR_tde_Anl_ReturnValue fn_eScriptCallBackCreateNewState(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
// Shaitan => state list in the level
SCR_tde_Anl_ReturnValue fn_eScriptCallBackCreateListOfState(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
// End Shaitan => state list in the level
// Shaitan => module list in the level
SCR_tde_Anl_ReturnValue fn_eScriptCallBackCreateListOfPOs(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
// End Shaitan => module list in the level
/* CGHT 14/05/97*/
SCR_tde_Anl_ReturnValue fn_eScriptCallBackSetBoundingVolume(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
#endif /* U64 */
/*-----------------------------------------------------------------------------
* Description : Save all the loaded families in binary mode
*-----------------------------------------------------------------------------
* Input :
* Output : void
*---------------------------------------------------------------------------*/
void fn_vSaveBinaryFamily(struct tdstFamilyList_ *_p_stFamily, unsigned long _ulId);
void fn_vSaveAllBinaryFamily(); /*AR970927*/
unsigned long GAM_fn_ulWriteFamilyBinaryBloc(unsigned long _ulFamily,char* _p_cBuffer);
void GAM_fn_vResolvePointersOfFamilyBinaryBloc(unsigned long _ulPointer);
/*-----------------------------------------------------------------------------
* Description : Save all structures composing a family into one file
*-----------------------------------------------------------------------------
* Input : _p_stFamily : Address of the family
* _szAnimationBankName : Name of the file containing all the family
* Output :
*---------------------------------------------------------------------------*/
void fn_vSaveStructuresOfAFamily(struct tdstFamilyList_ *_p_stFamily,char* _szAnimationBankName);
/*-----------------------------------------------------------------------------
* Description : fn_vWriteFamilyBinaryBloc : Generic write family function
*-----------------------------------------------------------------------------
* Input : _szFileName : File name
* _ulFamilyId : Id of the family (globally generated)
* _p_stFamily : Pointer to the family to write
* Output :
*---------------------------------------------------------------------------*/
void fn_vWriteFamilyBinaryBloc(char* _szFileName,unsigned long _ulFamilyId,struct tdstFamilyList_ *_p_stFamily);
#ifdef __cplusplus
}/* extern "C" */
#endif
#endif /* __LOADFML_H__ */