reman3/Rayman_X/cpa/public/MEC/MecBase.h

107 lines
2.0 KiB
C

/*
*=======================================================================================
* Name : MecBase.c
* Author : J Thénoz Date : 01/05/98
* Description : Mechanic functions for Base model
*=======================================================================================
*/
#ifndef _MECBASE_H_
#define _MECBASE_H_
#ifdef __cplusplus
extern "C" {
#endif
/*XB 05/05/99*/
struct DNM_stParsingDatas;
/*End XB 05/05/99*/
extern MTH_tdxReal MEC_g_xClimbSpeedLimit;
struct DNM_stDynamics *MEC_p_stDynamicsBaseMechanics
(
struct DNM_stDynamics *p_stDynamic,
HIE_tdxHandleToSuperObject hSupObj,
struct DNM_stParsingDatas *p_stParsingDatas,
DNM_tdxHandleToMecIdentityCard h_MecIdCard,
MTH_tdxReal _xDT
);
void MEC_vImposeRotationMatrix
(
struct DNM_stDynamics *p_stDynamic,
POS_tdxHandleToPosition hRotationMatrix
);
void MEC_vImposeRotationVector
(
struct DNM_stDynamics *p_stDynamic,
MTH3D_tdstVector *p_stX,
MTH3D_tdstVector *p_stY,
MTH3D_tdstVector *p_stZ
);
void MEC_vImposeRelativeRotation
(
struct DNM_stDynamics *p_stDynamic,
MTH3D_tdstMatrix *p_stRotationMatrix
);
void MEC_vImposeTranslation
(
struct DNM_stDynamics *p_stDynamic,
MTH3D_tdstVector* p_stVector
);
void MEC_vInitTranslation
(
struct DNM_stDynamics *p_stDynamic,
HIE_tdxHandleToSuperObject hSupObj,
MTH3D_tdstVector* p_stVector
);
void MEC_fn_vImposeActorMatrix
(
HIE_tdxHandleToSuperObject hSupObj
);
void MEC_vTurnAroundZAxis
(
struct DNM_stDynamics *p_stDynamic,
MTH_tdxReal xAngle
);
void MEC_vTurnAbsolute
(
struct DNM_stDynamics *p_stDynamic,
MTH3D_tdstVector* p_stVector
);
void DNM_fn_vSetHangingLimit
(
struct DNM_stDynamics *p_stDynamic,
MTH_tdxReal xValue
);
void MEC_fn_vUpdateSpeed (HIE_tdxHandleToSuperObject hSupObj);
INLINE
void MEC_fn_vSetClimbSpeedLimit ( MTH_tdxReal xSpeedLimit )
{
MEC_g_xClimbSpeedLimit = xSpeedLimit;
}
#ifdef __cplusplus
}
#endif
#endif /*_MECBASE_H_*/