aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
diff options
context:
space:
mode:
authorUbitUmarov2012-05-04 22:24:04 +0100
committerUbitUmarov2012-05-04 22:24:04 +0100
commit6b3135aa4dcdcd469054ed0af5eba3b30ae5cd3c (patch)
tree0cc7e3a33c31ce9f93e429526617c4821a81e63b /OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
parentFix teleporting from older to newer regions (diff)
downloadopensim-SC-6b3135aa4dcdcd469054ed0af5eba3b30ae5cd3c.zip
opensim-SC-6b3135aa4dcdcd469054ed0af5eba3b30ae5cd3c.tar.gz
opensim-SC-6b3135aa4dcdcd469054ed0af5eba3b30ae5cd3c.tar.bz2
opensim-SC-6b3135aa4dcdcd469054ed0af5eba3b30ae5cd3c.tar.xz
UbitODE: leave avatar 'freemove' state (entered on setmomentum) on any significant change like new 'velocity' or new position, etc, requests
Diffstat (limited to 'OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs')
-rw-r--r--OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs6
1 files changed, 4 insertions, 2 deletions
diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
index 326fe97..672b9e0 100644
--- a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
+++ b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
@@ -1184,7 +1184,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1184 // destroy avatar capsule and related ODE data 1184 // destroy avatar capsule and related ODE data
1185 AvatarGeomAndBodyDestroy(); 1185 AvatarGeomAndBodyDestroy();
1186 } 1186 }
1187 1187 m_freemove = false;
1188 m_isPhysical = NewStatus; 1188 m_isPhysical = NewStatus;
1189 } 1189 }
1190 } 1190 }
@@ -1236,7 +1236,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1236 + (Amotor == IntPtr.Zero ? "Amotor " : "")); 1236 + (Amotor == IntPtr.Zero ? "Amotor " : ""));
1237 } 1237 }
1238 } 1238 }
1239 1239 m_freemove = false;
1240 m_pidControllerActive = true; 1240 m_pidControllerActive = true;
1241 } 1241 }
1242 else 1242 else
@@ -1250,6 +1250,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1250 if (Body != IntPtr.Zero) 1250 if (Body != IntPtr.Zero)
1251 d.BodySetPosition(Body, newPos.X, newPos.Y, newPos.Z); 1251 d.BodySetPosition(Body, newPos.X, newPos.Y, newPos.Z);
1252 _position = newPos; 1252 _position = newPos;
1253 m_freemove = false;
1253 m_pidControllerActive = true; 1254 m_pidControllerActive = true;
1254 } 1255 }
1255 1256
@@ -1260,6 +1261,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1260 private void changeVelocity(Vector3 newVel) 1261 private void changeVelocity(Vector3 newVel)
1261 { 1262 {
1262 m_pidControllerActive = true; 1263 m_pidControllerActive = true;
1264 m_freemove = false;
1263 _target_velocity = newVel; 1265 _target_velocity = newVel;
1264 } 1266 }
1265 1267