aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin
diff options
context:
space:
mode:
authorTeravus Ovares2008-05-06 00:23:19 +0000
committerTeravus Ovares2008-05-06 00:23:19 +0000
commit240e8646dac402068930065c1fb792e647f1ce4b (patch)
tree10064eea011ac7155c947b11a64bcc650feb6dbb /OpenSim/Region/Physics/OdePlugin
parent* Refactor: Break out permissions code into a separate region PermissionsModule (diff)
downloadopensim-SC_OLD-240e8646dac402068930065c1fb792e647f1ce4b.zip
opensim-SC_OLD-240e8646dac402068930065c1fb792e647f1ce4b.tar.gz
opensim-SC_OLD-240e8646dac402068930065c1fb792e647f1ce4b.tar.bz2
opensim-SC_OLD-240e8646dac402068930065c1fb792e647f1ce4b.tar.xz
* If you llApplyImpulse on an attachment, it applies impulse on the avatar, not the attachment.
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin')
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODECharacter.cs21
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEPrim.cs2
2 files changed, 17 insertions, 6 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
index 3d0855f..17e041d 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
@@ -610,13 +610,24 @@ namespace OpenSim.Region.Physics.OdePlugin
610 /// The PID controller takes this target velocity and tries to make it a reality 610 /// The PID controller takes this target velocity and tries to make it a reality
611 /// </summary> 611 /// </summary>
612 /// <param name="force"></param> 612 /// <param name="force"></param>
613 public override void AddForce(PhysicsVector force) 613 public override void AddForce(PhysicsVector force, bool pushforce)
614 { 614 {
615 m_pidControllerActive = true; 615 if (pushforce)
616 _target_velocity.X += force.X; 616 {
617 _target_velocity.Y += force.Y; 617 m_pidControllerActive = false;
618 _target_velocity.Z += force.Z; 618 doForce(force);
619 619
620 //_target_velocity.X += force.X;
621 // _target_velocity.Y += force.Y;
622 //_target_velocity.Z += force.Z;
623 }
624 else
625 {
626 m_pidControllerActive = true;
627 _target_velocity.X += force.X;
628 _target_velocity.Y += force.Y;
629 _target_velocity.Z += force.Z;
630 }
620 //m_lastUpdateSent = false; 631 //m_lastUpdateSent = false;
621 } 632 }
622 633
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index 4e1696d..cf9dc5d 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -1884,7 +1884,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1884 _acceleration = accel; 1884 _acceleration = accel;
1885 } 1885 }
1886 1886
1887 public override void AddForce(PhysicsVector force) 1887 public override void AddForce(PhysicsVector force, bool pushforce)
1888 { 1888 {
1889 m_forcelist.Add(force); 1889 m_forcelist.Add(force);
1890 m_taintforce = true; 1890 m_taintforce = true;