aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
authorDiva Canto2010-08-16 11:33:59 -0700
committerDiva Canto2010-08-16 11:33:59 -0700
commit77de28965ae5fc6de3c60a28ce7d4e59643a2a70 (patch)
tree61259b696fb8d8a47f10cb83a72d1df145953b8f /OpenSim/Region/CoreModules
parentIncreased the timeout on AgentUpdate to 30 sec and improved error message to ... (diff)
downloadopensim-SC_OLD-77de28965ae5fc6de3c60a28ce7d4e59643a2a70.zip
opensim-SC_OLD-77de28965ae5fc6de3c60a28ce7d4e59643a2a70.tar.gz
opensim-SC_OLD-77de28965ae5fc6de3c60a28ce7d4e59643a2a70.tar.bz2
opensim-SC_OLD-77de28965ae5fc6de3c60a28ce7d4e59643a2a70.tar.xz
Work on TeleportStart: renamed method from TeleportLocationStart to TeleportStart, and now sending this upon all teleports, not just some, and in the right place (EntityTransferModule).
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs10
-rw-r--r--OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs3
2 files changed, 4 insertions, 9 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
index 607219e..751d49a 100644
--- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
@@ -174,9 +174,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
174 position.Z = newPosZ; 174 position.Z = newPosZ;
175 } 175 }
176 176
177 // Only send this if the event queue is null 177 sp.ControllingClient.SendTeleportStart(teleportFlags);
178 if (eq == null)
179 sp.ControllingClient.SendTeleportLocationStart();
180 178
181 sp.ControllingClient.SendLocalTeleport(position, lookAt, teleportFlags); 179 sp.ControllingClient.SendLocalTeleport(position, lookAt, teleportFlags);
182 sp.Teleport(position); 180 sp.Teleport(position);
@@ -257,9 +255,6 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
257 255
258 ulong destinationHandle = finalDestination.RegionHandle; 256 ulong destinationHandle = finalDestination.RegionHandle;
259 257
260 if (eq == null)
261 sp.ControllingClient.SendTeleportLocationStart();
262
263 // Let's do DNS resolution only once in this process, please! 258 // Let's do DNS resolution only once in this process, please!
264 // This may be a costly operation. The reg.ExternalEndPoint field is not a passive field, 259 // This may be a costly operation. The reg.ExternalEndPoint field is not a passive field,
265 // it's actually doing a lot of work. 260 // it's actually doing a lot of work.
@@ -277,6 +272,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
277 return; 272 return;
278 } 273 }
279 274
275 sp.ControllingClient.SendTeleportStart(teleportFlags);
276
280 // the avatar.Close below will clear the child region list. We need this below for (possibly) 277 // the avatar.Close below will clear the child region list. We need this below for (possibly)
281 // closing the child agents, so save it here (we need a copy as it is Clear()-ed). 278 // closing the child agents, so save it here (we need a copy as it is Clear()-ed).
282 //List<ulong> childRegions = new List<ulong>(avatar.GetKnownRegionList()); 279 //List<ulong> childRegions = new List<ulong>(avatar.GetKnownRegionList());
@@ -320,6 +317,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
320 317
321 if (NeedsNewAgent(oldRegionX, newRegionX, oldRegionY, newRegionY)) 318 if (NeedsNewAgent(oldRegionX, newRegionX, oldRegionY, newRegionY))
322 { 319 {
320
323 #region IP Translation for NAT 321 #region IP Translation for NAT
324 IClientIPEndpoint ipepClient; 322 IClientIPEndpoint ipepClient;
325 if (sp.ClientView.TryGet(out ipepClient)) 323 if (sp.ClientView.TryGet(out ipepClient))
diff --git a/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
index 940b535..51f2c41 100644
--- a/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
+++ b/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
@@ -343,7 +343,6 @@ namespace OpenSim.Region.CoreModules.World.Estate
343 { 343 {
344 if (!s.IsChildAgent) 344 if (!s.IsChildAgent)
345 { 345 {
346 s.ControllingClient.SendTeleportLocationStart();
347 m_scene.TeleportClientHome(user, s.ControllingClient); 346 m_scene.TeleportClientHome(user, s.ControllingClient);
348 } 347 }
349 } 348 }
@@ -478,7 +477,6 @@ namespace OpenSim.Region.CoreModules.World.Estate
478 ScenePresence s = m_scene.GetScenePresence(prey); 477 ScenePresence s = m_scene.GetScenePresence(prey);
479 if (s != null) 478 if (s != null)
480 { 479 {
481 s.ControllingClient.SendTeleportLocationStart();
482 m_scene.TeleportClientHome(prey, s.ControllingClient); 480 m_scene.TeleportClientHome(prey, s.ControllingClient);
483 } 481 }
484 } 482 }
@@ -498,7 +496,6 @@ namespace OpenSim.Region.CoreModules.World.Estate
498 // Also make sure they are actually in the region 496 // Also make sure they are actually in the region
499 if (p != null && !p.IsChildAgent) 497 if (p != null && !p.IsChildAgent)
500 { 498 {
501 p.ControllingClient.SendTeleportLocationStart();
502 m_scene.TeleportClientHome(p.UUID, p.ControllingClient); 499 m_scene.TeleportClientHome(p.UUID, p.ControllingClient);
503 } 500 }
504 } 501 }