aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorTeravus Ovares2008-04-29 13:12:36 +0000
committerTeravus Ovares2008-04-29 13:12:36 +0000
commit80ea0b94b9fe1bd4028edc9b183b2a9ce49d9bb2 (patch)
treebd8f15f0a005322aa779e6ec29ffd7ec09caf90a /OpenSim
parent* Applying melanie's List2Vector and List2Rot patch. Added a routine in the... (diff)
downloadopensim-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.cs2
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs16
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);