From b5e172677dfed6a9b6ec60c86aea687f46543ec7 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Mon, 12 Mar 2012 07:46:20 +0000 Subject: ubitode prim select was not doing phantom case --- OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs index 5d8f03c..39b89d3 100644 --- a/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs +++ b/OpenSim/Region/Physics/UbitOdePlugin/ODEPrim.cs @@ -2487,14 +2487,25 @@ namespace OpenSim.Region.Physics.OdePlugin if (!childPrim && Body != IntPtr.Zero && !m_disabled) d.BodyEnable(Body); - m_collisionCategories = CollisionCategories.Geom; - if (m_isphysical) - m_collisionCategories |= CollisionCategories.Body; + if (m_isphantom && !m_isVolumeDetect) + { + m_collisionCategories = 0; + if(m_isphysical) + m_collisionFlags = CollisionCategories.Land; + else + m_collisionFlags = 0; + } + else + { + m_collisionCategories = CollisionCategories.Geom; + if (m_isphysical) + m_collisionCategories |= CollisionCategories.Body; - m_collisionFlags = m_default_collisionFlags | CollisionCategories.Land; + m_collisionFlags = m_default_collisionFlags | CollisionCategories.Land; - if (m_collidesWater) - m_collisionFlags |= CollisionCategories.Water; + if (m_collidesWater) + m_collisionFlags |= CollisionCategories.Water; + } if (!childPrim) { -- cgit v1.1