aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs23
1 files changed, 21 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
index 7251e9c..fbf0a73 100644
--- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs
@@ -1077,7 +1077,14 @@ namespace OpenSim.Region.Environment.Scenes
1077 { 1077 {
1078 if (m_rootPart.UUID == part.UUID) 1078 if (m_rootPart.UUID == part.UUID)
1079 { 1079 {
1080 part.SendFullUpdateToClient(remoteClient, AbsolutePosition, clientFlags); 1080 if (m_rootPart.m_IsAttachment)
1081 {
1082 part.SendFullUpdateToClient(remoteClient, m_rootPart.m_attachedPos, clientFlags);
1083 }
1084 else
1085 {
1086 part.SendFullUpdateToClient(remoteClient, AbsolutePosition, clientFlags);
1087 }
1081 } 1088 }
1082 else 1089 else
1083 { 1090 {
@@ -1094,7 +1101,14 @@ namespace OpenSim.Region.Environment.Scenes
1094 { 1101 {
1095 if (m_rootPart.UUID == part.UUID) 1102 if (m_rootPart.UUID == part.UUID)
1096 { 1103 {
1097 part.SendTerseUpdateToClient(remoteClient, AbsolutePosition); 1104 if (m_rootPart.m_IsAttachment)
1105 {
1106 part.SendTerseUpdateToClient(remoteClient, m_rootPart.m_attachedPos);
1107 }
1108 else
1109 {
1110 part.SendTerseUpdateToClient(remoteClient, AbsolutePosition);
1111 }
1098 } 1112 }
1099 else 1113 else
1100 { 1114 {
@@ -2143,6 +2157,11 @@ namespace OpenSim.Region.Environment.Scenes
2143 { 2157 {
2144 if (m_scene.EventManager.TriggerGroupMove(UUID, pos)) 2158 if (m_scene.EventManager.TriggerGroupMove(UUID, pos))
2145 { 2159 {
2160 if (m_rootPart.m_IsAttachment)
2161 {
2162 m_rootPart.m_attachedPos = pos;
2163 }
2164
2146 AbsolutePosition = pos; 2165 AbsolutePosition = pos;
2147 } 2166 }
2148 //we need to do a terse update even if the move wasn't allowed 2167 //we need to do a terse update even if the move wasn't allowed