From 182977a872f837a29f936964d8df55942187261a Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Tue, 19 Mar 2019 06:38:43 +0000 Subject: do not send parceloverlay on crossings (may be bad, or not) --- OpenSim/Region/CoreModules/World/Land/LandChannel.cs | 4 ++-- OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | 5 +++-- OpenSim/Region/Framework/Scenes/ScenePresence.cs | 9 +++++---- 3 files changed, 10 insertions(+), 8 deletions(-) (limited to 'OpenSim/Region') diff --git a/OpenSim/Region/CoreModules/World/Land/LandChannel.cs b/OpenSim/Region/CoreModules/World/Land/LandChannel.cs index 993b782..eaa5292 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandChannel.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandChannel.cs @@ -247,11 +247,11 @@ namespace OpenSim.Region.CoreModules.World.Land m_landManagementModule.setParcelOtherCleanTime(remoteClient, localID, otherCleanTime); } } - public void sendClientInitialLandInfo(IClientAPI remoteClient) + public void sendClientInitialLandInfo(IClientAPI remoteClient, bool overlay = true) { if (m_landManagementModule != null) { - m_landManagementModule.sendClientInitialLandInfo(remoteClient); + m_landManagementModule.sendClientInitialLandInfo(remoteClient, overlay); } } #endregion diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index d693d21..c7b45ef 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs @@ -491,7 +491,7 @@ namespace OpenSim.Region.CoreModules.World.Land return; } - public void sendClientInitialLandInfo(IClientAPI remoteClient) + public void sendClientInitialLandInfo(IClientAPI remoteClient, bool overlay = true) { ScenePresence avatar; @@ -507,7 +507,8 @@ namespace OpenSim.Region.CoreModules.World.Land avatar.currentParcelUUID = over.LandData.GlobalID; over.SendLandUpdateToClient(avatar.ControllingClient); } - SendParcelOverlay(remoteClient); + if(overlay) + SendParcelOverlay(remoteClient); } public void SendLandUpdate(ScenePresence avatar, ILandObject over) diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index e663055..a67d701 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs @@ -2244,11 +2244,12 @@ namespace OpenSim.Region.Framework.Scenes // start sending terrain patchs if (!gotCrossUpdate) Scene.SendLayerData(ControllingClient); + + // send initial land overlay and parcel + ILandChannel landch = m_scene.LandChannel; + if (landch != null) + landch.sendClientInitialLandInfo(client, !gotCrossUpdate); } - // send initial land overlay and parcel - ILandChannel landch = m_scene.LandChannel; - if (landch != null) - landch.sendClientInitialLandInfo(client); if (!IsChildAgent) { -- cgit v1.1