diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden/UDP')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 12 |
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 | } |