Counter Strike : Global Offensive Source Code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 lines
2.7 KiB

  1. //====== Copyright � 1996-2004, Valve Corporation, All rights reserved. =====//
  2. //
  3. // Dme $collisionjoints
  4. //
  5. //===========================================================================//
  6. #ifndef DMECOLLISIONJOINTS_H
  7. #define DMECOLLISIONJOINTS_H
  8. #ifdef _WIN32
  9. #pragma once
  10. #endif
  11. #include "datamodel/dmattributevar.h"
  12. #include "mdlobjects/dmecollisionmodel.h"
  13. //-----------------------------------------------------------------------------
  14. // Dme $jointconstrain
  15. //-----------------------------------------------------------------------------
  16. class CDmeJointConstrain : public CDmElement
  17. {
  18. DEFINE_ELEMENT( CDmeJointConstrain, CDmElement );
  19. virtual void OnAttributeChanged( CDmAttribute *pAttribute );
  20. public:
  21. CDmaVar< int > m_nType; // 0: Free, 1: Fixed, 2: Limit
  22. CDmaVar< float > m_aLimitMin;
  23. CDmaVar< float > m_aLimitMax;
  24. CDmaVar< float > m_flFriction;
  25. };
  26. //-----------------------------------------------------------------------------
  27. // Dme $animatedfriction
  28. //-----------------------------------------------------------------------------
  29. class CDmeJointAnimatedFriction : public CDmElement
  30. {
  31. DEFINE_ELEMENT( CDmeJointAnimatedFriction, CDmElement );
  32. public:
  33. CDmaVar< int > m_nMinFriction;
  34. CDmaVar< int > m_nMaxFriction;
  35. CDmaVar< DmeTime_t > m_tTimeIn;
  36. CDmaVar< DmeTime_t > m_tTimeHold;
  37. CDmaVar< DmeTime_t > m_tTimeOut;
  38. };
  39. //-----------------------------------------------------------------------------
  40. //
  41. //-----------------------------------------------------------------------------
  42. class CDmeCollisionJoint : public CDmElement
  43. {
  44. DEFINE_ELEMENT( CDmeCollisionJoint, CDmElement );
  45. #ifndef SWIG
  46. public:
  47. #endif // #ifndef SWIG
  48. CDmaVar< float> m_flMassBias;
  49. CDmaVar< float> m_flDamping;
  50. CDmaVar< float> m_flRotDamping;
  51. CDmaVar< float> m_flInertia;
  52. CDmaElement< CDmeJointConstrain > m_ConstrainX;
  53. CDmaElement< CDmeJointConstrain > m_ConstrainY;
  54. CDmaElement< CDmeJointConstrain > m_ConstrainZ;
  55. CDmaStringArray m_JointMergeList;
  56. CDmaStringArray m_JointCollideList;
  57. };
  58. //-----------------------------------------------------------------------------
  59. // Dme $collisionjoints
  60. //-----------------------------------------------------------------------------
  61. class CDmeCollisionJoints : public CDmeCollisionModel
  62. {
  63. DEFINE_ELEMENT( CDmeCollisionJoints, CDmeCollisionModel );
  64. #ifndef SWIG
  65. public:
  66. #endif // #ifndef SWIG
  67. CDmaVar< bool > m_bConcavePerJoint;
  68. CDmaVar< bool > m_bSelfCollisions;
  69. CDmaVar< bool > m_bBoneFollower;
  70. CDmaString m_RootBone;
  71. CDmaElement< CDmeJointAnimatedFriction> m_AnimatedFriction;
  72. CDmaStringArray m_JointSkipList;
  73. CDmaElementArray< CDmeCollisionJoint > m_JointList;
  74. };
  75. #endif // DMECOLLISIONJOINTS_H