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

95 lines
1.9 KiB
C

/*
*=======================================================================================
* Name : MecCol.c
* Author : J Thénoz Date : 01/05/98
* Description : Mechanic collision functions
*=======================================================================================
*/
#ifndef _MECCOL_H_
#define _MECCOL_H_
#ifdef __cplusplus
extern "C" {
#endif
//extern DNM_tdstMecObstacle g_a_stObstacle [COL_C_xMaxNumberOfCollisions];
extern DNM_tdstMecObstacle *g_a_stObstacle;
ACP_tdxBool MEC_fn_bCollision
(
long* p_lObstacle,
DNM_tdstMecObstacle *p_stObstacle,
struct DNM_stDynamics* p_stDynamic,
HIE_tdxHandleToSuperObject p_stSupObj,
POS_tdstCompletePosition *p_stStartPosition,
POS_tdstCompletePosition *p_stEndPosition,
ACP_tdxBool bBackFace
);
ACP_tdxBool MEC_fn_bInCollision
(
struct DNM_stDynamics *p_stDynamic,
HIE_tdxHandleToSuperObject hSupObj
);
void MEC_fn_vReportCollideActor
(
HIE_tdxHandleToSuperObject hCollideSupObj,
DNM_tdstMecObstacle* p_stCollideObstacle
);
void MEC_fn_vReportCollision
(
struct DNM_stDynamics* p_stDynamic,
HIE_tdxHandleToSuperObject hSupObj,
long lNbObstacle,
DNM_tdstMecObstacle a_stObstacle[COL_C_xMaxNumberOfCollisions],
long lObstacle
);
void MEC_fn_vFillCollisionReport
(
struct DNM_stDynamics* p_stDynamic
);
ACP_tdxBool MEC_fn_vComputeAdjustVector
(
MTH3D_tdstVector *p_stAdjustVector,
struct DNM_stDynamics* p_stDynamic,
long lObstacle,
DNM_tdstMecObstacle *p_stObstacle,
long lObstacleMin
);
void MEC_fn_vEdgeAnalysis
(
struct DNM_stDynamics *p_stDynamic,
long lObstacle,
DNM_tdstMecObstacle *p_stObstacle,
DNM_tdstMecObstacle *p_stGround
);
void MEC_fn_vCrashAnalysis
(
struct DNM_stDynamics *p_stDynamic,
long lObstacle,
DNM_tdstMecObstacle *p_stObstacle
);
#ifdef __cplusplus
}
#endif
#endif /* _MECCOL_H_*/