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)
parent
844266c4d5
commit
827058e359
|
@ -741,7 +741,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
|
||||||
// not physical, not temporary, phaton, not volume detector
|
// not physical, not temporary, phaton, not volume detector
|
||||||
// so.UpdatePrimFlags(rootPart.LocalId,false,false,true,rootPart.VolumeDetectActive);
|
// so.UpdatePrimFlags(rootPart.LocalId,false,false,true,rootPart.VolumeDetectActive);
|
||||||
|
|
||||||
// restore full physical state instead
|
// but do avoid nasty collisions set it phantom in this drop case
|
||||||
|
// until a better way is found
|
||||||
|
rootPart.AddFlag(PrimFlags.Phantom);
|
||||||
|
|
||||||
so.ApplyPhysics();
|
so.ApplyPhysics();
|
||||||
|
|
||||||
so.HasGroupChanged = true;
|
so.HasGroupChanged = true;
|
||||||
|
@ -761,8 +764,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
|
||||||
|
|
||||||
// Attach (NULL) stops scripts. We don't want that. Resume them.
|
// Attach (NULL) stops scripts. We don't want that. Resume them.
|
||||||
so.ResumeScripts();
|
so.ResumeScripts();
|
||||||
so.ScheduleGroupForTerseUpdate();
|
|
||||||
so.RootPart.ScheduleFullUpdate();
|
so.RootPart.ScheduleFullUpdate();
|
||||||
|
so.ScheduleGroupForTerseUpdate();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void DetachSingleAttachmentToInv(IScenePresence sp, SceneObjectGroup so)
|
public void DetachSingleAttachmentToInv(IScenePresence sp, SceneObjectGroup so)
|
||||||
|
|
Loading…
Reference in New Issue