diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneGraph.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneGraph.cs | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs index 0a1b921..f6f6a1a 100644 --- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs +++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs | |||
@@ -1519,8 +1519,18 @@ namespace OpenSim.Region.Framework.Scenes | |||
1519 | if (m_parentScene.Permissions.CanEditObject(group.UUID, remoteClient.AgentId)) | 1519 | if (m_parentScene.Permissions.CanEditObject(group.UUID, remoteClient.AgentId)) |
1520 | { | 1520 | { |
1521 | // VolumeDetect can't be set via UI and will always be off when a change is made there | 1521 | // VolumeDetect can't be set via UI and will always be off when a change is made there |
1522 | if (PhysData.PhysShapeType == PhysShapeType.invalid) | 1522 | // now only change volume dtc if phantom off |
1523 | group.UpdatePrimFlags(localID, UsePhysics, SetTemporary, SetPhantom, false); | 1523 | |
1524 | if (PhysData.PhysShapeType == PhysShapeType.invalid) // check for extraPhysics data | ||
1525 | { | ||
1526 | bool vdtc; | ||
1527 | if (SetPhantom) // if phantom keep volumedtc | ||
1528 | vdtc = group.RootPart.VolumeDetectActive; | ||
1529 | else // else turn it off | ||
1530 | vdtc = false; | ||
1531 | |||
1532 | group.UpdatePrimFlags(localID, UsePhysics, SetTemporary, SetPhantom, vdtc); | ||
1533 | } | ||
1524 | else | 1534 | else |
1525 | { | 1535 | { |
1526 | SceneObjectPart part = GetSceneObjectPart(localID); | 1536 | SceneObjectPart part = GetSceneObjectPart(localID); |