diff options
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs index 414bae6..ea6174a 100644 --- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | |||
@@ -719,7 +719,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
719 | // rootPart.ApplyPhysics(rootPart.GetEffectiveObjectFlags(), rootPart.VolumeDetectActive,false); | 719 | // rootPart.ApplyPhysics(rootPart.GetEffectiveObjectFlags(), rootPart.VolumeDetectActive,false); |
720 | 720 | ||
721 | // not physical, not temporary, phaton, not volume detector | 721 | // not physical, not temporary, phaton, not volume detector |
722 | so.UpdatePrimFlags(rootPart.LocalId,false,false,true,false); | 722 | so.UpdatePrimFlags(rootPart.LocalId,false,false,true,rootPart.VolumeDetectActive); |
723 | 723 | ||
724 | so.HasGroupChanged = true; | 724 | so.HasGroupChanged = true; |
725 | rootPart.Rezzed = DateTime.Now; | 725 | rootPart.Rezzed = DateTime.Now; |
@@ -738,7 +738,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
738 | 738 | ||
739 | // Attach (NULL) stops scripts. We don't want that. Resume them. | 739 | // Attach (NULL) stops scripts. We don't want that. Resume them. |
740 | so.ResumeScripts(); | 740 | so.ResumeScripts(); |
741 | so.ScheduleGroupForFullUpdate(); | 741 | so.ScheduleGroupForTerseUpdate(); |
742 | so.RootPart.ScheduleFullUpdate(); | ||
742 | } | 743 | } |
743 | 744 | ||
744 | public void DetachSingleAttachmentToInv(IScenePresence sp, SceneObjectGroup so) | 745 | public void DetachSingleAttachmentToInv(IScenePresence sp, SceneObjectGroup so) |
@@ -935,6 +936,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
935 | // else | 936 | // else |
936 | if (part.PhysActor != null) | 937 | if (part.PhysActor != null) |
937 | { | 938 | { |
939 | if(part.PhysActor.IsPhysical) | ||
940 | so.Scene.RemovePhysicalPrim(1); | ||
938 | part.RemoveFromPhysics(); | 941 | part.RemoveFromPhysics(); |
939 | } | 942 | } |
940 | } | 943 | } |