diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/InnerScene.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/InnerScene.cs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/InnerScene.cs b/OpenSim/Region/Environment/Scenes/InnerScene.cs index 2189670..435ce77 100644 --- a/OpenSim/Region/Environment/Scenes/InnerScene.cs +++ b/OpenSim/Region/Environment/Scenes/InnerScene.cs | |||
@@ -542,12 +542,21 @@ namespace OpenSim.Region.Environment.Scenes | |||
542 | } | 542 | } |
543 | 543 | ||
544 | group.SetAttachmentPoint(Convert.ToByte(AttachmentPt)); | 544 | group.SetAttachmentPoint(Convert.ToByte(AttachmentPt)); |
545 | group.AbsolutePosition = attachPos; | ||
545 | 546 | ||
546 | // Saves and gets assetID | 547 | // Saves and gets assetID |
548 | UUID itemId; | ||
547 | if (group.GetFromAssetID() == UUID.Zero) | 549 | if (group.GetFromAssetID() == UUID.Zero) |
548 | { | 550 | { |
549 | m_parentScene.attachObjectAssetStore(remoteClient, group, remoteClient.AgentId); | 551 | m_parentScene.attachObjectAssetStore(remoteClient, group, remoteClient.AgentId, out itemId); |
550 | } | 552 | } |
553 | else | ||
554 | { | ||
555 | itemId = group.GetFromAssetID(); | ||
556 | } | ||
557 | |||
558 | m_parentScene.AttachObject(remoteClient, AttachmentPt, itemId, group); | ||
559 | |||
551 | group.AttachToAgent(remoteClient.AgentId, AttachmentPt, attachPos); | 560 | group.AttachToAgent(remoteClient.AgentId, AttachmentPt, attachPos); |
552 | // In case it is later dropped again, don't let | 561 | // In case it is later dropped again, don't let |
553 | // it get cleaned up | 562 | // it get cleaned up |