diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs index 457e0bb..2a0c0b1 100644 --- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | |||
@@ -113,6 +113,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
113 | if (!m_scene.Permissions.CanTakeObject(part.UUID, remoteClient.AgentId)) | 113 | if (!m_scene.Permissions.CanTakeObject(part.UUID, remoteClient.AgentId)) |
114 | return; | 114 | return; |
115 | 115 | ||
116 | // TODO: this short circuits multiple attachments functionality in LL viewer 2.1+ and should | ||
117 | // be removed when that functionality is implemented in opensim | ||
118 | AttachmentPt &= 0x7f; | ||
119 | |||
116 | // Calls attach with a Zero position | 120 | // Calls attach with a Zero position |
117 | if (AttachObject(remoteClient, part.ParentGroup, AttachmentPt, false)) | 121 | if (AttachObject(remoteClient, part.ParentGroup, AttachmentPt, false)) |
118 | { | 122 | { |
@@ -142,6 +146,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
142 | 146 | ||
143 | if (m_scene.Permissions.CanTakeObject(group.UUID, remoteClient.AgentId)) | 147 | if (m_scene.Permissions.CanTakeObject(group.UUID, remoteClient.AgentId)) |
144 | { | 148 | { |
149 | // TODO: this short circuits multiple attachments functionality in LL viewer 2.1+ and should | ||
150 | // be removed when that functionality is implemented in opensim | ||
151 | AttachmentPt &= 0x7f; | ||
152 | |||
145 | // If the attachment point isn't the same as the one previously used | 153 | // If the attachment point isn't the same as the one previously used |
146 | // set it's offset position = 0 so that it appears on the attachment point | 154 | // set it's offset position = 0 so that it appears on the attachment point |
147 | // and not in a weird location somewhere unknown. | 155 | // and not in a weird location somewhere unknown. |
@@ -228,6 +236,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
228 | "[ATTACHMENTS MODULE]: Rezzing attachment to point {0} from item {1} for {2}", | 236 | "[ATTACHMENTS MODULE]: Rezzing attachment to point {0} from item {1} for {2}", |
229 | (AttachmentPoint)AttachmentPt, itemID, remoteClient.Name); | 237 | (AttachmentPoint)AttachmentPt, itemID, remoteClient.Name); |
230 | 238 | ||
239 | // TODO: this short circuits multiple attachments functionality in LL viewer 2.1+ and should | ||
240 | // be removed when that functionality is implemented in opensim | ||
241 | AttachmentPt &= 0x7f; | ||
242 | |||
231 | SceneObjectGroup att = RezSingleAttachmentFromInventoryInternal(remoteClient, itemID, AttachmentPt); | 243 | SceneObjectGroup att = RezSingleAttachmentFromInventoryInternal(remoteClient, itemID, AttachmentPt); |
232 | 244 | ||
233 | if (updateInventoryStatus) | 245 | if (updateInventoryStatus) |