diff options
author | Mitchell Stokes <mogurijin@gmail.com> | 2013-01-30 09:55:17 +0400 |
---|---|---|
committer | Mitchell Stokes <mogurijin@gmail.com> | 2013-01-30 09:55:17 +0400 |
commit | 9191b783bb2bc1a2d4be2b2cd215735e68353a56 (patch) | |
tree | 8440c8b155a69580b358ded134bad49e27bb8eba /source/gameengine/Ketsji/KX_BulletPhysicsController.h | |
parent | 26ee2a1f79c3513ca9eaeb6a3a8d855c37088468 (diff) |
BGE: Some various changes to make moving the character physics type easier:
* Undoing the previous applyMovement() changes for characters. This was causing bugs for the Motion Actuator.
* Creating a Character Motion type for the Motion Actuator with specific controls for characters. This includes moving, rotating and jumping.
* Adding a KX_CharacterWrapper.walkDirection to set the character's direction and speed.
Note, this also resolves the following bugs:
[#33585] "Setting dLoc of motion actuator [0,0,0] via python won't stop object" reported by Manuel Bellersen (urfoex)
[#33503] "Character physics type won´t accept more than one motion anymore" reported by Mr Larodos
Diffstat (limited to 'source/gameengine/Ketsji/KX_BulletPhysicsController.h')
-rw-r--r-- | source/gameengine/Ketsji/KX_BulletPhysicsController.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/gameengine/Ketsji/KX_BulletPhysicsController.h b/source/gameengine/Ketsji/KX_BulletPhysicsController.h index aa42bf61a78..3d13744567b 100644 --- a/source/gameengine/Ketsji/KX_BulletPhysicsController.h +++ b/source/gameengine/Ketsji/KX_BulletPhysicsController.h @@ -40,11 +40,14 @@ public: virtual void RelativeRotate(const MT_Matrix3x3& drot,bool local); virtual void ApplyTorque(const MT_Vector3& torque,bool local); virtual void ApplyForce(const MT_Vector3& force,bool local); + virtual void SetWalkDirection(const MT_Vector3& dir,bool local); virtual MT_Vector3 GetLinearVelocity(); virtual MT_Vector3 GetAngularVelocity(); virtual MT_Vector3 GetVelocity(const MT_Point3& pos); + virtual MT_Vector3 GetWalkDirection(); virtual void SetAngularVelocity(const MT_Vector3& ang_vel,bool local); virtual void SetLinearVelocity(const MT_Vector3& lin_vel,bool local); + virtual void Jump(); virtual void getOrientation(MT_Quaternion& orn); virtual void setOrientation(const MT_Matrix3x3& orn); virtual void setPosition(const MT_Point3& pos); |