aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2013-03-28 02:17:32 +0000
committerJustin Clark-Casey (justincc)2013-03-28 02:17:32 +0000
commitb05ed4ffa693f3481f97a197de7e582492dc7271 (patch)
tree313883f6b04b17c6581b9e1a93a276f251a1dd62
parentOn the North and East sides of a megaregion, only consider regions within 256... (diff)
downloadopensim-SC_OLD-b05ed4ffa693f3481f97a197de7e582492dc7271.zip
opensim-SC_OLD-b05ed4ffa693f3481f97a197de7e582492dc7271.tar.gz
opensim-SC_OLD-b05ed4ffa693f3481f97a197de7e582492dc7271.tar.bz2
opensim-SC_OLD-b05ed4ffa693f3481f97a197de7e582492dc7271.tar.xz
Instead of going via GodLikeRequestTeleport, auto-teleport the agent directly in a megaregion, in the same manner at the "teleport user" console command.
This is to bypass an issue with the HGLureModule which stops the auto-teleport from happening.
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs15
2 files changed, 13 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs b/OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs
index e4b0cfa..7f4606b 100644
--- a/OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs
@@ -165,7 +165,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Lure
165 (uint)presence.AbsolutePosition.Y, 165 (uint)presence.AbsolutePosition.Y,
166 (uint)Math.Ceiling(presence.AbsolutePosition.Z)); 166 (uint)Math.Ceiling(presence.AbsolutePosition.Z));
167 167
168 m_log.DebugFormat("TP invite with message {0}", message); 168 m_log.DebugFormat("TP invite with message {0}, type {1}", message, lureType);
169 169
170 GridInstantMessage m = new GridInstantMessage(scene, client.AgentId, 170 GridInstantMessage m = new GridInstantMessage(scene, client.AgentId,
171 client.FirstName+" "+client.LastName, targetid, 171 client.FirstName+" "+client.LastName, targetid,
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
index 8da76df..8a16943 100644
--- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
@@ -379,8 +379,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
379 Vector3 emergencyPos = new Vector3(128, 128, 128); 379 Vector3 emergencyPos = new Vector3(128, 128, 128);
380 380
381 m_log.WarnFormat( 381 m_log.WarnFormat(
382 "[ENTITY TRANSFER MODULE]: RequestTeleportToLocation() was given an illegal position of {0} for avatar {1}, {2}. Substituting {3}", 382 "[ENTITY TRANSFER MODULE]: RequestTeleportToLocation() was given an illegal position of {0} for avatar {1}, {2} in {3}. Substituting {4}",
383 position, sp.Name, sp.UUID, emergencyPos); 383 position, sp.Name, sp.UUID, Scene.Name, emergencyPos);
384 384
385 position = emergencyPos; 385 position = emergencyPos;
386 } 386 }
@@ -1346,7 +1346,15 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
1346 Scene initiatingScene) 1346 Scene initiatingScene)
1347 { 1347 {
1348 Thread.Sleep(10000); 1348 Thread.Sleep(10000);
1349 1349
1350 agent.Scene.RequestTeleportLocation(
1351 agent.ControllingClient,
1352 Utils.UIntsToLong(regionX * (uint)Constants.RegionSize, regionY * (uint)Constants.RegionSize),
1353 position,
1354 agent.Lookat,
1355 (uint)Constants.TeleportFlags.ViaLocation);
1356
1357 /*
1350 IMessageTransferModule im = initiatingScene.RequestModuleInterface<IMessageTransferModule>(); 1358 IMessageTransferModule im = initiatingScene.RequestModuleInterface<IMessageTransferModule>();
1351 if (im != null) 1359 if (im != null)
1352 { 1360 {
@@ -1381,6 +1389,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
1381 }); 1389 });
1382 1390
1383 } 1391 }
1392 */
1384 } 1393 }
1385 1394
1386 private void InformClientToInitiateTeleportToLocationCompleted(IAsyncResult iar) 1395 private void InformClientToInitiateTeleportToLocationCompleted(IAsyncResult iar)