diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index b0f0a5d..ba353c4 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -2339,7 +2339,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2339 | { | 2339 | { |
2340 | pa.PIDHoverHeight = height; | 2340 | pa.PIDHoverHeight = height; |
2341 | pa.PIDHoverType = hoverType; | 2341 | pa.PIDHoverType = hoverType; |
2342 | pa.PIDTau = tau; | 2342 | pa.PIDHoverTau = tau; |
2343 | pa.PIDHoverActive = true; | 2343 | pa.PIDHoverActive = true; |
2344 | } | 2344 | } |
2345 | else | 2345 | else |
@@ -2660,19 +2660,21 @@ namespace OpenSim.Region.Framework.Scenes | |||
2660 | Quaternion oldRootRotation = linkPart.RotationOffset; | 2660 | Quaternion oldRootRotation = linkPart.RotationOffset; |
2661 | 2661 | ||
2662 | linkPart.OffsetPosition = linkPart.GroupPosition - AbsolutePosition; | 2662 | linkPart.OffsetPosition = linkPart.GroupPosition - AbsolutePosition; |
2663 | |||
2663 | linkPart.ParentID = m_rootPart.LocalId; | 2664 | linkPart.ParentID = m_rootPart.LocalId; |
2664 | linkPart.GroupPosition = AbsolutePosition; | 2665 | |
2665 | Vector3 axPos = linkPart.OffsetPosition; | 2666 | linkPart.GroupPosition = AbsolutePosition; |
2666 | 2667 | ||
2668 | Vector3 axPos = linkPart.OffsetPosition; | ||
2667 | Quaternion parentRot = m_rootPart.RotationOffset; | 2669 | Quaternion parentRot = m_rootPart.RotationOffset; |
2668 | axPos *= Quaternion.Inverse(parentRot); | 2670 | axPos *= Quaternion.Inverse(parentRot); |
2669 | |||
2670 | linkPart.OffsetPosition = axPos; | 2671 | linkPart.OffsetPosition = axPos; |
2672 | |||
2671 | Quaternion oldRot = linkPart.RotationOffset; | 2673 | Quaternion oldRot = linkPart.RotationOffset; |
2672 | Quaternion newRot = Quaternion.Inverse(parentRot) * oldRot; | 2674 | Quaternion newRot = Quaternion.Inverse(parentRot) * oldRot; |
2673 | linkPart.RotationOffset = newRot; | 2675 | linkPart.RotationOffset = newRot; |
2674 | 2676 | ||
2675 | linkPart.ParentID = m_rootPart.LocalId; | 2677 | // linkPart.ParentID = m_rootPart.LocalId; done above |
2676 | 2678 | ||
2677 | if (m_rootPart.LinkNum == 0) | 2679 | if (m_rootPart.LinkNum == 0) |
2678 | m_rootPart.LinkNum = 1; | 2680 | m_rootPart.LinkNum = 1; |