aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.cs
diff options
context:
space:
mode:
authorUbitUmarov2017-01-19 18:25:25 +0000
committerUbitUmarov2017-01-19 18:25:25 +0000
commit6826ca9b57e8582722efe3f9626148b2e52ef160 (patch)
tree05769c1887c66ec1b661e6106d6a96a3b1a5c41b /OpenSim/Region/Framework/Scenes/Scene.cs
parentchange CanDeedObject. WARNING like on other grids, if you do not set next own... (diff)
downloadopensim-SC-6826ca9b57e8582722efe3f9626148b2e52ef160.zip
opensim-SC-6826ca9b57e8582722efe3f9626148b2e52ef160.tar.gz
opensim-SC-6826ca9b57e8582722efe3f9626148b2e52ef160.tar.bz2
opensim-SC-6826ca9b57e8582722efe3f9626148b2e52ef160.tar.xz
fix the meaning of objectDuplicate[OnRay]() flags parameter but still not using it
Diffstat (limited to '')
-rwxr-xr-xOpenSim/Region/Framework/Scenes/Scene.cs10
1 files changed, 7 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index ff1e34e..d9b0327 100755
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3605,7 +3605,9 @@ namespace OpenSim.Region.Framework.Scenes
3605 /// <param name="GroupID">Group of new object</param> 3605 /// <param name="GroupID">Group of new object</param>
3606 public void DuplicateObject(uint originalPrim, Vector3 offset, uint flags, UUID AgentID, UUID GroupID) 3606 public void DuplicateObject(uint originalPrim, Vector3 offset, uint flags, UUID AgentID, UUID GroupID)
3607 { 3607 {
3608 SceneObjectGroup copy = SceneGraph.DuplicateObject(originalPrim, offset, flags, AgentID, GroupID, Quaternion.Identity); 3608 bool createSelected = (flags & (uint)PrimFlags.CreateSelected) != 0;
3609 SceneObjectGroup copy = SceneGraph.DuplicateObject(originalPrim, offset, AgentID,
3610 GroupID, Quaternion.Identity, createSelected);
3609 if (copy != null) 3611 if (copy != null)
3610 EventManager.TriggerObjectAddedToScene(copy); 3612 EventManager.TriggerObjectAddedToScene(copy);
3611 } 3613 }
@@ -3635,6 +3637,8 @@ namespace OpenSim.Region.Framework.Scenes
3635 SceneObjectPart target = GetSceneObjectPart(localID); 3637 SceneObjectPart target = GetSceneObjectPart(localID);
3636 SceneObjectPart target2 = GetSceneObjectPart(RayTargetObj); 3638 SceneObjectPart target2 = GetSceneObjectPart(RayTargetObj);
3637 3639
3640 bool createSelected = (dupeFlags & (uint)PrimFlags.CreateSelected) != 0;
3641
3638 if (target != null && target2 != null) 3642 if (target != null && target2 != null)
3639 { 3643 {
3640 Vector3 direction = Vector3.Normalize(RayEnd - RayStart); 3644 Vector3 direction = Vector3.Normalize(RayEnd - RayStart);
@@ -3676,13 +3680,13 @@ namespace OpenSim.Region.Framework.Scenes
3676 Quaternion worldRot = target2.GetWorldRotation(); 3680 Quaternion worldRot = target2.GetWorldRotation();
3677 3681
3678 // SceneObjectGroup obj = m_sceneGraph.DuplicateObject(localID, pos, target.GetEffectiveObjectFlags(), AgentID, GroupID, worldRot); 3682 // SceneObjectGroup obj = m_sceneGraph.DuplicateObject(localID, pos, target.GetEffectiveObjectFlags(), AgentID, GroupID, worldRot);
3679 copy = m_sceneGraph.DuplicateObject(localID, pos, target.GetEffectiveObjectFlags(), AgentID, GroupID, worldRot); 3683 copy = m_sceneGraph.DuplicateObject(localID, pos, AgentID, GroupID, worldRot, createSelected);
3680 //obj.Rotation = worldRot; 3684 //obj.Rotation = worldRot;
3681 //obj.UpdateGroupRotationR(worldRot); 3685 //obj.UpdateGroupRotationR(worldRot);
3682 } 3686 }
3683 else 3687 else
3684 { 3688 {
3685 copy = m_sceneGraph.DuplicateObject(localID, pos, target.GetEffectiveObjectFlags(), AgentID, GroupID, Quaternion.Identity); 3689 copy = m_sceneGraph.DuplicateObject(localID, pos, AgentID, GroupID, Quaternion.Identity, createSelected);
3686 } 3690 }
3687 3691
3688 if (copy != null) 3692 if (copy != null)