diff options
author | UbitUmarov | 2015-12-20 11:57:52 +0000 |
---|---|---|
committer | UbitUmarov | 2015-12-20 11:57:52 +0000 |
commit | 827058e3590f9fb1bcb0df8a7856f4d8f77b5c5d (patch) | |
tree | 398b326080cb0ca488d8f5635a2e51c7c3f7ec4e /OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | |
parent | change the return list of objects costs, sending a answer if none found (diff) | |
download | opensim-SC_OLD-827058e3590f9fb1bcb0df8a7856f4d8f77b5c5d.zip opensim-SC_OLD-827058e3590f9fb1bcb0df8a7856f4d8f77b5c5d.tar.gz opensim-SC_OLD-827058e3590f9fb1bcb0df8a7856f4d8f77b5c5d.tar.bz2 opensim-SC_OLD-827058e3590f9fb1bcb0df8a7856f4d8f77b5c5d.tar.xz |
drop attachments to ground with phantom active. We should not do this, but for now there no better way to avoid nasty collisions. (large physical objects may still have bad collisions with ground on drop)
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs index a21b52c..ca54138 100644 --- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs | |||
@@ -737,11 +737,14 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
737 | } | 737 | } |
738 | 738 | ||
739 | rootPart.RemFlag(PrimFlags.TemporaryOnRez); | 739 | rootPart.RemFlag(PrimFlags.TemporaryOnRez); |
740 | 740 | ||
741 | // not physical, not temporary, phaton, not volume detector | 741 | // not physical, not temporary, phaton, not volume detector |
742 | // so.UpdatePrimFlags(rootPart.LocalId,false,false,true,rootPart.VolumeDetectActive); | 742 | // so.UpdatePrimFlags(rootPart.LocalId,false,false,true,rootPart.VolumeDetectActive); |
743 | 743 | ||
744 | // restore full physical state instead | 744 | // but do avoid nasty collisions set it phantom in this drop case |
745 | // until a better way is found | ||
746 | rootPart.AddFlag(PrimFlags.Phantom); | ||
747 | |||
745 | so.ApplyPhysics(); | 748 | so.ApplyPhysics(); |
746 | 749 | ||
747 | so.HasGroupChanged = true; | 750 | so.HasGroupChanged = true; |
@@ -761,8 +764,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments | |||
761 | 764 | ||
762 | // Attach (NULL) stops scripts. We don't want that. Resume them. | 765 | // Attach (NULL) stops scripts. We don't want that. Resume them. |
763 | so.ResumeScripts(); | 766 | so.ResumeScripts(); |
764 | so.ScheduleGroupForTerseUpdate(); | ||
765 | so.RootPart.ScheduleFullUpdate(); | 767 | so.RootPart.ScheduleFullUpdate(); |
768 | so.ScheduleGroupForTerseUpdate(); | ||
766 | } | 769 | } |
767 | 770 | ||
768 | public void DetachSingleAttachmentToInv(IScenePresence sp, SceneObjectGroup so) | 771 | public void DetachSingleAttachmentToInv(IScenePresence sp, SceneObjectGroup so) |