diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index bfab7b8..63dec15 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | |||
@@ -520,8 +520,12 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
520 | } | 520 | } |
521 | } | 521 | } |
522 | 522 | ||
523 | /// <summary> | ||
524 | /// Like handleEventManagerOnSignificantClientMovement, but called with an AgentUpdate regardless of distance. | ||
525 | /// </summary> | ||
526 | /// <param name="avatar"></param> | ||
523 | public void EventManagerOnClientMovement(ScenePresence avatar) | 527 | public void EventManagerOnClientMovement(ScenePresence avatar) |
524 | //Like handleEventManagerOnSignificantClientMovement, but called with an AgentUpdate regardless of distance. | 528 | // |
525 | { | 529 | { |
526 | ILandObject over = GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y); | 530 | ILandObject over = GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y); |
527 | if (over != null) | 531 | if (over != null) |
@@ -534,7 +538,6 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
534 | } | 538 | } |
535 | } | 539 | } |
536 | 540 | ||
537 | |||
538 | public void ClientOnParcelAccessListRequest(UUID agentID, UUID sessionID, uint flags, int sequenceID, | 541 | public void ClientOnParcelAccessListRequest(UUID agentID, UUID sessionID, uint flags, int sequenceID, |
539 | int landLocalID, IClientAPI remote_client) | 542 | int landLocalID, IClientAPI remote_client) |
540 | { | 543 | { |
@@ -668,14 +671,14 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
668 | //m_scene.SimulationDataService.RemoveLandObject(lo.LandData.GlobalID); | 671 | //m_scene.SimulationDataService.RemoveLandObject(lo.LandData.GlobalID); |
669 | m_scene.EventManager.TriggerLandObjectRemoved(lo.LandData.GlobalID); | 672 | m_scene.EventManager.TriggerLandObjectRemoved(lo.LandData.GlobalID); |
670 | } | 673 | } |
671 | 674 | ||
672 | m_landList.Clear(); | 675 | m_landList.Clear(); |
676 | |||
677 | ResetSimLandObjects(); | ||
678 | |||
679 | if (setupDefaultParcel) | ||
680 | CreateDefaultParcel(); | ||
673 | } | 681 | } |
674 | |||
675 | ResetSimLandObjects(); | ||
676 | |||
677 | if (setupDefaultParcel) | ||
678 | CreateDefaultParcel(); | ||
679 | } | 682 | } |
680 | 683 | ||
681 | private void performFinalLandJoin(ILandObject master, ILandObject slave) | 684 | private void performFinalLandJoin(ILandObject master, ILandObject slave) |
@@ -1391,8 +1394,11 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
1391 | 1394 | ||
1392 | public void EventManagerOnNoLandDataFromStorage() | 1395 | public void EventManagerOnNoLandDataFromStorage() |
1393 | { | 1396 | { |
1394 | ResetSimLandObjects(); | 1397 | lock (m_landList) |
1395 | CreateDefaultParcel(); | 1398 | { |
1399 | ResetSimLandObjects(); | ||
1400 | CreateDefaultParcel(); | ||
1401 | } | ||
1396 | } | 1402 | } |
1397 | 1403 | ||
1398 | #endregion | 1404 | #endregion |