diff options
author | Teravus Ovares | 2008-04-29 13:12:36 +0000 |
---|---|---|
committer | Teravus Ovares | 2008-04-29 13:12:36 +0000 |
commit | 80ea0b94b9fe1bd4028edc9b183b2a9ce49d9bb2 (patch) | |
tree | bd8f15f0a005322aa779e6ec29ffd7ec09caf90a /OpenSim | |
parent | * Applying melanie's List2Vector and List2Rot patch. Added a routine in the... (diff) | |
download | opensim-SC-80ea0b94b9fe1bd4028edc9b183b2a9ce49d9bb2.zip opensim-SC-80ea0b94b9fe1bd4028edc9b183b2a9ce49d9bb2.tar.gz opensim-SC-80ea0b94b9fe1bd4028edc9b183b2a9ce49d9bb2.tar.bz2 opensim-SC-80ea0b94b9fe1bd4028edc9b183b2a9ce49d9bb2.tar.xz |
* Fixes child prim not editable as an attachment. You can right click on child prim in an attachment and get the proper pie menu. You get the attachment axis scope in the edit box.
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | 16 |
2 files changed, 16 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs index b5e2c40..d41ede1 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | |||
@@ -1276,7 +1276,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1276 | { | 1276 | { |
1277 | if (group.RootPart.Shape.PCode == (byte)PCode.Prim) | 1277 | if (group.RootPart.Shape.PCode == (byte)PCode.Prim) |
1278 | { | 1278 | { |
1279 | group.RootPart.Shape.State = (byte)0; | 1279 | group.ClearPartAttachmentData(); |
1280 | } | 1280 | } |
1281 | group.ApplyPhysics(m_physicalPrim); | 1281 | group.ApplyPhysics(m_physicalPrim); |
1282 | } | 1282 | } |
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index 4711701..c5fdcaf 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | |||
@@ -673,7 +673,13 @@ namespace OpenSim.Region.Environment.Scenes | |||
673 | m_rootPart.m_IsAttachment = true; | 673 | m_rootPart.m_IsAttachment = true; |
674 | 674 | ||
675 | m_rootPart.SetParentLocalId(avatar.LocalId); | 675 | m_rootPart.SetParentLocalId(avatar.LocalId); |
676 | m_rootPart.SetAttachmentPoint(attachmentpoint); | 676 | lock (m_parts) |
677 | { | ||
678 | foreach (SceneObjectPart part in m_parts.Values) | ||
679 | { | ||
680 | part.SetAttachmentPoint(attachmentpoint); | ||
681 | } | ||
682 | } | ||
677 | 683 | ||
678 | avatar.AddAttachment(this); | 684 | avatar.AddAttachment(this); |
679 | m_rootPart.ScheduleFullUpdate(); | 685 | m_rootPart.ScheduleFullUpdate(); |
@@ -688,6 +694,14 @@ namespace OpenSim.Region.Environment.Scenes | |||
688 | return (byte)0; | 694 | return (byte)0; |
689 | } | 695 | } |
690 | 696 | ||
697 | public void ClearPartAttachmentData() | ||
698 | { | ||
699 | foreach (SceneObjectPart part in m_parts.Values) | ||
700 | { | ||
701 | part.SetAttachmentPoint((Byte)0); | ||
702 | } | ||
703 | } | ||
704 | |||
691 | public void DetachToGround() | 705 | public void DetachToGround() |
692 | { | 706 | { |
693 | ScenePresence avatar = m_scene.GetScenePresence(m_rootPart.m_attachedAvatar); | 707 | ScenePresence avatar = m_scene.GetScenePresence(m_rootPart.m_attachedAvatar); |