diff options
author | Oren Hurvitz | 2013-10-24 12:21:20 +0300 |
---|---|---|
committer | Oren Hurvitz | 2014-03-24 12:05:25 +0100 |
commit | 773ffcafc3dbbda29534b26d0a4813e1cf422a79 (patch) | |
tree | 6582e77017b4a86904dd10a0e6ccf461b18e80e9 | |
parent | When linking two groups, and then deleting the combined group: delete *all* o... (diff) | |
download | opensim-SC_OLD-773ffcafc3dbbda29534b26d0a4813e1cf422a79.zip opensim-SC_OLD-773ffcafc3dbbda29534b26d0a4813e1cf422a79.tar.gz opensim-SC_OLD-773ffcafc3dbbda29534b26d0a4813e1cf422a79.tar.bz2 opensim-SC_OLD-773ffcafc3dbbda29534b26d0a4813e1cf422a79.tar.xz |
Removed "hacktastic" code that is no longer needed.
We no longer set the object's AbsolutePosition in this place, so the IsAttachment hack doesn't do anything anymore.
This resolves http://opensimulator.org/mantis/view.php?id=6936
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index a78a0cb..b70e9df 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -1701,28 +1701,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1701 | SceneObjectGroup dupe = (SceneObjectGroup)MemberwiseClone(); | 1701 | SceneObjectGroup dupe = (SceneObjectGroup)MemberwiseClone(); |
1702 | dupe.Backup = false; | 1702 | dupe.Backup = false; |
1703 | dupe.m_parts = new MapAndArray<OpenMetaverse.UUID, SceneObjectPart>(); | 1703 | dupe.m_parts = new MapAndArray<OpenMetaverse.UUID, SceneObjectPart>(); |
1704 | |||
1705 | // Warning, The following code related to previousAttachmentStatus is needed so that clones of | ||
1706 | // attachments do not bordercross while they're being duplicated. This is hacktastic! | ||
1707 | // Normally, setting AbsolutePosition will bordercross a prim if it's outside the region! | ||
1708 | // unless IsAttachment is true!, so to prevent border crossing, we save it's attachment state | ||
1709 | // (which should be false anyway) set it as an Attachment and then set it's Absolute Position, | ||
1710 | // then restore it's attachment state | ||
1711 | |||
1712 | // This is only necessary when userExposed is false! | ||
1713 | |||
1714 | bool previousAttachmentStatus = dupe.IsAttachment; | ||
1715 | |||
1716 | if (!userExposed) | ||
1717 | dupe.IsAttachment = true; | ||
1718 | |||
1719 | dupe.m_sittingAvatars = new List<UUID>(); | 1704 | dupe.m_sittingAvatars = new List<UUID>(); |
1720 | |||
1721 | if (!userExposed) | ||
1722 | { | ||
1723 | dupe.IsAttachment = previousAttachmentStatus; | ||
1724 | } | ||
1725 | |||
1726 | dupe.CopyRootPart(m_rootPart, OwnerID, GroupID, userExposed); | 1705 | dupe.CopyRootPart(m_rootPart, OwnerID, GroupID, userExposed); |
1727 | dupe.m_rootPart.LinkNum = m_rootPart.LinkNum; | 1706 | dupe.m_rootPart.LinkNum = m_rootPart.LinkNum; |
1728 | 1707 | ||