reman3/Rayman_X/cpa/public/GMT/GmtFunct.h

179 lines
8.7 KiB
C

/* (c) Ubi R&D 1996*/
/* See Alain Robin for any comment or question*/
#ifndef __GMTFUNCT_H__
#define __GMTFUNCT_H__
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
/* For DLLs who are using this module : */
#undef CPA_EXPORT
#if defined(CPA_WANTS_IMPORT)
#define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
#define CPA_EXPORT __declspec(dllexport)
#else
#define CPA_EXPORT
#endif
/****************************************************************************/
/* ACCESSORS FOR GMT */
/****************************************************************************/
/*----------------------------------------------------------------------------
// Description : GMT_fn_hGetVisualMaterial
// Used to get the visual part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// Output : Handle to the visual material
----------------------------------------------------------------------------*/
extern CPA_EXPORT ACP_tdxHandleOfMaterial GMT_fn_hGetVisualMaterial(GMT_tdxHandleToGameMaterial _hGameMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_vSetVisualMaterial
// Used to set the visual part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// _hVisualMat : Handle to the visual meterial
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void GMT_fn_vSetVisualMaterial(GMT_tdxHandleToGameMaterial _hGameMat,
ACP_tdxHandleOfMaterial _hVisualMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_hGetMechanicsMaterial
// Used to get the mechanics part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// Output : Handle to the mechanics material
----------------------------------------------------------------------------*/
extern CPA_EXPORT DNM_tdxHandleToMecMatCharacteristics GMT_fn_hGetMechanicsMaterial(GMT_tdxHandleToGameMaterial _hGameMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_vSetMechanicsMaterial
// Used to set the mechanics part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// _hMechanicsMat : Handle to the mechanics characteristics
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void GMT_fn_vSetMechanicsMaterial(GMT_tdxHandleToGameMaterial _hGameMat,
DNM_tdxHandleToMecMatCharacteristics _hMechanicsMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_hGetSoundMaterial
// Used to set the sound characteristics of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// Output : the sound material
----------------------------------------------------------------------------*/
extern CPA_EXPORT SND_tdxHandleToSoundMaterial GMT_fn_hGetSoundMaterial(GMT_tdxHandleToGameMaterial _hGameMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_vSetSoundMaterial
// Used to set the sound part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// _hMechanicsMat : Handle to the mechanics characteristics
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void GMT_fn_vSetSoundMaterial(GMT_tdxHandleToGameMaterial _hGameMat,
SND_tdxHandleToSoundMaterial _hSoundMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_hGetCollideMaterial
// Used to set the collision part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// Output : the collide material
----------------------------------------------------------------------------*/
extern CPA_EXPORT GMT_tdxHandleToCollideMaterial GMT_fn_hGetCollideMaterial(GMT_tdxHandleToGameMaterial _hGameMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_vSetCollideMaterial
// Used to set the collision part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// _hCollideMat : Handle to the collide material
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void GMT_fn_vSetCollideMaterial(GMT_tdxHandleToGameMaterial _hGameMat,
GMT_tdxHandleToCollideMaterial _hCollideMat);
#ifdef SECTOR_IN_GMT
/*----------------------------------------------------------------------------
// Description : GMT_fn_hGetSectorMaterial
// Used to set the sector part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// Output : the sector material (handle to the next sector)
----------------------------------------------------------------------------*/
extern CPA_EXPORT HIE_tdxHandleToSuperObject GMT_fn_hGetSectorMaterial(GMT_tdxHandleToGameMaterial _hGameMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_vSetSectorMaterial
// Used to set the sector part of the material
//----------------------------------------------------------------------------
// Input : _hGameMat : Handle to the game material
// _hSectorMat : Handle to the sector material
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void GMT_fn_vSetSectorMaterial(GMT_tdxHandleToGameMaterial _hGameMat,
HIE_tdxHandleToSuperObject _hSectorMat);
#endif /*SECTOR_IN_GMT*/
/****************************************************************************/
/* ACCESSORS FOR COLLIDE MATERIAL */
/****************************************************************************/
/*----------------------------------------------------------------------------
// Description : GMT_fn_wGetTypeOfCollideMaterial
// Used to get the type of the collide material
//----------------------------------------------------------------------------
// Input : _hCollideMat : Handle to the collide material
// Output : GMT_C_wZDM or GMT_C_wZDR or GMT_C_wZDE
----------------------------------------------------------------------------*/
extern CPA_EXPORT short GMT_fn_wGetTypeOfCollideMaterial(GMT_tdxHandleToCollideMaterial _hCollideMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_vSetTypeOfCollideMaterial
// Used to set the type of the collide material
//----------------------------------------------------------------------------
// Input : _hCollideMat : Handle to the game material
// GMT_C_wZDM or GMT_C_wZDR or GMT_C_wZDE
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void GMT_fn_vSetTypeOfCollideMaterial(GMT_tdxHandleToCollideMaterial _hCollideMat,
short wType);
/*----------------------------------------------------------------------------
// Description : GMT_fn_hGetCollideMaterialIdentifier
// Used to get the identifier of the collide material
//----------------------------------------------------------------------------
// Input : _hCollideMat : Handle to the collide material
// Output : the identifier
----------------------------------------------------------------------------*/
extern CPA_EXPORT GMT_tdxMask GMT_fn_hGetCollideMaterialIdentifier(GMT_tdxHandleToCollideMaterial _hCollideMat);
/*----------------------------------------------------------------------------
// Description : GMT_fn_hSetCollideMaterialIdentifier
// Used to set the collide identifier part of the collide material
//----------------------------------------------------------------------------
// Input : _hCollideMat : Handle to the collide material
// the identifier
// Output :
----------------------------------------------------------------------------*/
extern CPA_EXPORT void GMT_fn_hSetCollideMaterialIdentifier(GMT_tdxHandleToCollideMaterial _hCollideMat,
GMT_tdxMask wIdentifier);
#ifdef __cplusplus
}/* extern "C" */
#endif
#endif /* __GMTFUNCT_H__*/