aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs27
1 files changed, 23 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 423fbc7..a78ed8b 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -2584,14 +2584,33 @@ namespace OpenSim.Region.Framework.Scenes
2584 /// <param name="remoteClient"></param> 2584 /// <param name="remoteClient"></param>
2585 public void SendFullUpdateToClient(IClientAPI remoteClient) 2585 public void SendFullUpdateToClient(IClientAPI remoteClient)
2586 { 2586 {
2587 RootPart.SendFullUpdate(remoteClient); 2587 PrimUpdateFlags update = PrimUpdateFlags.FullUpdate;
2588
2589 RootPart.SendFullUpdate(remoteClient, update);
2590
2591 SceneObjectPart[] parts = m_parts.GetArray();
2592 for (int i = 0; i < parts.Length; i++)
2593 {
2594 SceneObjectPart part = parts[i];
2595 if (part != RootPart)
2596 part.SendFullUpdate(remoteClient, update);
2597 }
2598 }
2599
2600 public void SendFullAnimUpdateToClient(IClientAPI remoteClient)
2601 {
2602 PrimUpdateFlags update = PrimUpdateFlags.FullUpdate;
2603 if (RootPart.Shape.MeshFlagEntry)
2604 update = PrimUpdateFlags.FullUpdatewithAnim;
2605
2606 RootPart.SendFullUpdate(remoteClient, update);
2588 2607
2589 SceneObjectPart[] parts = m_parts.GetArray(); 2608 SceneObjectPart[] parts = m_parts.GetArray();
2590 for (int i = 0; i < parts.Length; i++) 2609 for (int i = 0; i < parts.Length; i++)
2591 { 2610 {
2592 SceneObjectPart part = parts[i]; 2611 SceneObjectPart part = parts[i];
2593 if (part != RootPart) 2612 if (part != RootPart)
2594 part.SendFullUpdate(remoteClient); 2613 part.SendFullUpdate(remoteClient, update);
2595 } 2614 }
2596 } 2615 }
2597 2616
@@ -3110,7 +3129,7 @@ namespace OpenSim.Region.Framework.Scenes
3110 ScenePresence sp = m_scene.GetScenePresence(AttachedAvatar); 3129 ScenePresence sp = m_scene.GetScenePresence(AttachedAvatar);
3111 if (sp != null) 3130 if (sp != null)
3112 { 3131 {
3113 sp.SendAttachmentUpdate(this,UpdateRequired.FULL); 3132 sp.SendAttachmentUpdate(this, PrimUpdateFlags.FullUpdate);
3114 return; 3133 return;
3115 } 3134 }
3116 } 3135 }
@@ -3160,7 +3179,7 @@ namespace OpenSim.Region.Framework.Scenes
3160 ScenePresence sp = m_scene.GetScenePresence(AttachedAvatar); 3179 ScenePresence sp = m_scene.GetScenePresence(AttachedAvatar);
3161 if (sp != null) 3180 if (sp != null)
3162 { 3181 {
3163 sp.SendAttachmentUpdate(this, UpdateRequired.TERSE); 3182 sp.SendAttachmentUpdate(this, PrimUpdateFlags.TerseUpdate);
3164 return; 3183 return;
3165 } 3184 }
3166 } 3185 }