mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 17:05:55 +08:00
Merge branch 'master' into varregion
Conflicts: OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs OpenSim/Region/Framework/Scenes/SceneBase.cs OpenSim/Services/Interfaces/IGridService.cs OpenSim/Services/LLLoginService/LLLoginResponse.cs (conflicts were debug statements that are commented out in master branch)
This commit is contained in:
@@ -109,6 +109,9 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
STATUS_ROTATE_Z = 0x008,
|
||||
}
|
||||
|
||||
// This flag has the same purpose as InventoryItemFlags.ObjectSlamPerm
|
||||
public static readonly uint SLAM = 16;
|
||||
|
||||
// private PrimCountTaintedDelegate handlerPrimCountTainted = null;
|
||||
|
||||
/// <summary>
|
||||
@@ -3230,13 +3233,10 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
|
||||
Vector3 oldPos;
|
||||
|
||||
// FIXME: This improves the situation where editing just the root prim of an attached object would send
|
||||
// all the other parts to oblivion after detach/reattach. However, a problem remains since the root prim
|
||||
// still ends up in the wrong position on reattach.
|
||||
if (IsAttachment)
|
||||
oldPos = RootPart.OffsetPosition;
|
||||
oldPos = m_rootPart.AttachedPos + m_rootPart.OffsetPosition; // OffsetPosition should always be 0 in an attachments's root prim
|
||||
else
|
||||
oldPos = AbsolutePosition + RootPart.OffsetPosition;
|
||||
oldPos = AbsolutePosition + m_rootPart.OffsetPosition;
|
||||
|
||||
Vector3 diff = oldPos - newPos;
|
||||
Quaternion partRotation = m_rootPart.RotationOffset;
|
||||
@@ -3251,6 +3251,9 @@ namespace OpenSim.Region.Framework.Scenes
|
||||
}
|
||||
|
||||
AbsolutePosition = newPos;
|
||||
|
||||
if (IsAttachment)
|
||||
m_rootPart.AttachedPos = newPos;
|
||||
|
||||
HasGroupChanged = true;
|
||||
ScheduleGroupForTerseUpdate();
|
||||
|
||||
Reference in New Issue
Block a user