aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs12
1 files changed, 10 insertions, 2 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index 1ac3b76..f835e56 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -3774,6 +3774,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3774 // doesn't seem to be attached, skip 3774 // doesn't seem to be attached, skip
3775 if (!found) 3775 if (!found)
3776 continue; 3776 continue;
3777
3778 // On vehicle crossing, the attachments are received
3779 // while the avatar is still a child. Don't send
3780 // updates here because the LocalId has not yet
3781 // been updated and the viewer will derender the
3782 // attachments until the avatar becomes root.
3783 if (sp.IsChildAgent)
3784 continue;
3777 } 3785 }
3778 if (part.ParentGroup.IsAttachment && m_disableFacelights) 3786 if (part.ParentGroup.IsAttachment && m_disableFacelights)
3779 { 3787 {
@@ -4837,7 +4845,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4837 if (part != null && part != part.ParentGroup.RootPart) 4845 if (part != null && part != part.ParentGroup.RootPart)
4838 { 4846 {
4839 position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset; 4847 position = part.OffsetPosition + presence.OffsetPosition * part.RotationOffset;
4840 rotation = presence.Rotation * part.RotationOffset; 4848 rotation = part.RotationOffset * presence.Rotation;
4841 } 4849 }
4842 } 4850 }
4843 4851
@@ -4966,7 +4974,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4966 if (part != null && part != part.ParentGroup.RootPart) 4974 if (part != null && part != part.ParentGroup.RootPart)
4967 { 4975 {
4968 offsetPosition = part.OffsetPosition + data.OffsetPosition * part.RotationOffset; 4976 offsetPosition = part.OffsetPosition + data.OffsetPosition * part.RotationOffset;
4969 rotation = data.Rotation * part.RotationOffset; 4977 rotation = part.RotationOffset * data.Rotation;
4970 parentID = part.ParentGroup.RootPart.LocalId; 4978 parentID = part.ParentGroup.RootPart.LocalId;
4971 } 4979 }
4972 } 4980 }