#if !defined(__IaDnm_H__) #define __IaDnm_H__ /******************************************/ #if _MSC_VER >= 1000 #pragma once #endif /* _MSC_VER >= 1000 */ /******************************************/ #include "GAM/Header.h" /* Mechanical function pointers */ typedef struct DNM_stDynamics *(* tdpfnDynamicFunction) ( struct DNM_stDynamics *_p_stDynamics, HIE_tdxHandleToSuperObject _hSupObj, struct DNM_stParsingDatas *_p_stParsingDatas, DNM_tdxHandleToMecIdentityCard _h_MecIdCard, MTH_tdxReal _xDT ); #define C_NumberOfMechanics 2 EXTERN tdpfnDynamicFunction g_a_pfnDynamicFunction[C_NumberOfMechanics]; void InitArrayOfDynamicFunction(struct DNM_stDynamics* (**)(struct DNM_stDynamics*,HIE_tdxHandleToSuperObject,struct DNM_stParsingDatas *,DNM_tdxHandleToMecIdentityCard,MTH_tdxReal) ); /* Links With AnimPlayer*/ DNM_tdxHandleToMecIdentityCard fn_h_GetCurrentDNMIdCard(HIE_tdxHandleToSuperObject p_SuperObjPerso); void fn_vTransferSpeedInformationPLA_DNM(HIE_tdxHandleToSuperObject p_stSuperObj,short sLastFrame); /*Links with Intelligence*/ char fn_cCollideWithWallFunction(HIE_tdxHandleToSuperObject hSuperObjPerso); char fn_cCollideWithGroundFunction(HIE_tdxHandleToSuperObject hSuperObjPerso); /*Calls Intelligence and mechanics*/ void fn_vMakeCharacterReact(HIE_tdxHandleToSuperObject); void fn_vMakeCharacterThink(HIE_tdxHandleToSuperObject); void fn_vMakeCharacterMechanicallyReact(HIE_tdxHandleToSuperObject); extern CPA_EXPORT void fn_vAverageLinearSpeed(HIE_tdxHandleToSuperObject p_stSuperObj,unsigned char NbUsedFrames,MTH3D_tdstVector *p_result); extern CPA_EXPORT void fn_vAveragePosition(HIE_tdxHandleToSuperObject p_stSuperObj,MTH_tdxReal xTimeWindow,MTH3D_tdstVector *p_result); extern CPA_EXPORT void fn_vAverageSpeed(HIE_tdxHandleToSuperObject p_stSuperObj,MTH_tdxReal xTimeWindow,MTH3D_tdstVector *p_result); extern CPA_EXPORT void fn_vLinearApprochOnPosition(HIE_tdxHandleToSuperObject p_stSuperObj,MTH_tdxReal xTimeWindow,MTH3D_tdstVector *p_result); /*ANNECY CT 18/02/98{*/ extern CPA_EXPORT void fn_vSuperObjectSetLastCollidedCharacter(HIE_tdxHandleToSuperObject hCharacter, HIE_tdxHandleToSuperObject _h_LastCollidedCharacter); extern CPA_EXPORT HIE_tdxHandleToSuperObject fn_hSuperObjectGetLastCollidedCharacter(HIE_tdxHandleToSuperObject hCharacter); /*ENDANNECY CT}*/ /*ANNECY CT 02/02/98{*/ extern CPA_EXPORT void fn_vGetScrollSpeedMatCollided(HIE_tdxHandleToSuperObject p_stSuperObj,MTH3D_tdstVector * p_stVector,unsigned long ulObstacleType); /*ENDANNECY CT}*/ #endif /* !__IaDnm_H__ */