aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics')
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODECharacter.cs24
1 files changed, 12 insertions, 12 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
index 5ad7616..ca8fef9 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs
@@ -1250,6 +1250,18 @@ namespace OpenSim.Region.Physics.OdePlugin
1250 1250
1251 internal void ProcessTaints() 1251 internal void ProcessTaints()
1252 { 1252 {
1253 if (m_taintPosition != _position)
1254 {
1255 if (Body != IntPtr.Zero)
1256 {
1257 d.BodySetPosition(Body, m_taintPosition.X, m_taintPosition.Y, m_taintPosition.Z);
1258
1259 _position.X = m_taintPosition.X;
1260 _position.Y = m_taintPosition.Y;
1261 _position.Z = m_taintPosition.Z;
1262 }
1263 }
1264
1253 if (m_tainted_isPhysical != m_isPhysical) 1265 if (m_tainted_isPhysical != m_isPhysical)
1254 { 1266 {
1255 if (m_tainted_isPhysical) 1267 if (m_tainted_isPhysical)
@@ -1309,18 +1321,6 @@ namespace OpenSim.Region.Physics.OdePlugin
1309 + (Amotor==IntPtr.Zero ? "Amotor ":"")); 1321 + (Amotor==IntPtr.Zero ? "Amotor ":""));
1310 } 1322 }
1311 } 1323 }
1312
1313 if (!m_taintPosition.ApproxEquals(_position, 0.05f))
1314 {
1315 if (Body != IntPtr.Zero)
1316 {
1317 d.BodySetPosition(Body, m_taintPosition.X, m_taintPosition.Y, m_taintPosition.Z);
1318
1319 _position.X = m_taintPosition.X;
1320 _position.Y = m_taintPosition.Y;
1321 _position.Z = m_taintPosition.Z;
1322 }
1323 }
1324 } 1324 }
1325 1325
1326 internal void AddCollisionFrameTime(int p) 1326 internal void AddCollisionFrameTime(int p)