aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics')
-rw-r--r--OpenSim/Region/Physics/ChOdePlugin/ODEPrim.cs9
1 files changed, 9 insertions, 0 deletions
diff --git a/OpenSim/Region/Physics/ChOdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/ChOdePlugin/ODEPrim.cs
index 6b17ce7..7e70db9 100644
--- a/OpenSim/Region/Physics/ChOdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/ChOdePlugin/ODEPrim.cs
@@ -1735,6 +1735,13 @@ namespace OpenSim.Region.Physics.OdePlugin
1735 if (m_isphysical) 1735 if (m_isphysical)
1736 { 1736 {
1737 disableBodySoft(); 1737 disableBodySoft();
1738
1739 if (Body != IntPtr.Zero)
1740 {
1741 d.BodySetLinearVel(Body, 0f, 0f, 0f);
1742 d.BodySetForce(Body, 0, 0, 0);
1743 enableBodySoft();
1744 }
1738 } 1745 }
1739 } 1746 }
1740 else 1747 else
@@ -1756,6 +1763,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1756 d.GeomSetCategoryBits(prim_geom, (int)m_collisionCategories); 1763 d.GeomSetCategoryBits(prim_geom, (int)m_collisionCategories);
1757 d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags); 1764 d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags);
1758 } 1765 }
1766/* Uhhh - stop the motion if the object is _selected_!!
1759 if (m_isphysical) 1767 if (m_isphysical)
1760 { 1768 {
1761 if (Body != IntPtr.Zero) 1769 if (Body != IntPtr.Zero)
@@ -1765,6 +1773,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1765 enableBodySoft(); 1773 enableBodySoft();
1766 } 1774 }
1767 } 1775 }
1776*/
1768 } 1777 }
1769 1778
1770 resetCollisionAccounting(); 1779 resetCollisionAccounting();