aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/RegionCombinerModule
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/RegionCombinerModule')
-rw-r--r--OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs26
1 files changed, 7 insertions, 19 deletions
diff --git a/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs b/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs
index 09da97a..a2e3ac2 100644
--- a/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs
+++ b/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs
@@ -716,29 +716,17 @@ namespace OpenSim.Region.RegionCombinerModule
716 { 716 {
717 if (sp.UUID != presence.UUID) 717 if (sp.UUID != presence.UUID)
718 { 718 {
719 if (sp.ParentID != 0) 719 SceneObjectPart sitPart = sp.ParentPart;
720 { 720
721 // sitting avatar 721 if (sitPart != null)
722 SceneObjectPart sop = connectiondata.RegionScene.GetSceneObjectPart(sp.ParentID); 722 CoarseLocations.Add(sitPart.AbsolutePosition + sp.AbsolutePosition);
723 if (sop != null)
724 {
725 CoarseLocations.Add(sop.AbsolutePosition + sp.AbsolutePosition);
726 AvatarUUIDs.Add(sp.UUID);
727 }
728 else
729 {
730 // we can't find the parent.. ! arg!
731 CoarseLocations.Add(sp.AbsolutePosition);
732 AvatarUUIDs.Add(sp.UUID);
733 }
734 }
735 else 723 else
736 {
737 CoarseLocations.Add(sp.AbsolutePosition); 724 CoarseLocations.Add(sp.AbsolutePosition);
738 AvatarUUIDs.Add(sp.UUID); 725
739 } 726 AvatarUUIDs.Add(sp.UUID);
740 } 727 }
741 }); 728 });
729
742 DistributeCourseLocationUpdates(CoarseLocations, AvatarUUIDs, connectiondata, presence); 730 DistributeCourseLocationUpdates(CoarseLocations, AvatarUUIDs, connectiondata, presence);
743 } 731 }
744 732