diff options
author | onefang | 2020-09-09 22:59:24 +1000 |
---|---|---|
committer | onefang | 2020-09-09 22:59:24 +1000 |
commit | aaef497afbedef9382c9afdcb9f8d0d5b0a0e0bc (patch) | |
tree | 0cca9608b28ec503f045a26b0f664a176a061d1f /OpenSim | |
parent | Use F1 instead of ? as the in command help key. (diff) | |
download | opensim-SC-aaef497afbedef9382c9afdcb9f8d0d5b0a0e0bc.zip opensim-SC-aaef497afbedef9382c9afdcb9f8d0d5b0a0e0bc.tar.gz opensim-SC-aaef497afbedef9382c9afdcb9f8d0d5b0a0e0bc.tar.bz2 opensim-SC-aaef497afbedef9382c9afdcb9f8d0d5b0a0e0bc.tar.xz |
Various teleport fixes.
TPs from scripts avoid all that silly raycasting nonsense, just go where
we ask.
For the "teleport from above" case, do the right thing.
Which includes looking for designated floor prims, which have ^ as
the first character of their description.
Don't do "teleport from above" when we have proper coords.
Teleport home from off grid shouldn't land on roofs either.
Diffstat (limited to '')
6 files changed, 69 insertions, 38 deletions
diff --git a/OpenSim/Framework/Constants.cs b/OpenSim/Framework/Constants.cs index ea89db3..e399e27 100644 --- a/OpenSim/Framework/Constants.cs +++ b/OpenSim/Framework/Constants.cs | |||
@@ -63,6 +63,7 @@ namespace OpenSim.Framework | |||
63 | EstateManagers = 10 | 63 | EstateManagers = 10 |
64 | } | 64 | } |
65 | 65 | ||
66 | // Identical to the one in OpenMetaverse, except I'm extending it now, and OpenSim decided to copy it here, making life hard. | ||
66 | [Flags]public enum TeleportFlags : uint | 67 | [Flags]public enum TeleportFlags : uint |
67 | { | 68 | { |
68 | /// <summary>No flags set, or teleport failed</summary> | 69 | /// <summary>No flags set, or teleport failed</summary> |
@@ -75,7 +76,7 @@ namespace OpenSim.Framework | |||
75 | ViaLure = 1 << 2, | 76 | ViaLure = 1 << 2, |
76 | /// <summary>Via Landmark</summary> | 77 | /// <summary>Via Landmark</summary> |
77 | ViaLandmark = 1 << 3, | 78 | ViaLandmark = 1 << 3, |
78 | /// <summary>Via Location</summary> | 79 | /// <summary>Via Location, seems to be a catch all, includes scripted TPs.</summary> |
79 | ViaLocation = 1 << 4, | 80 | ViaLocation = 1 << 4, |
80 | /// <summary>Via Home</summary> | 81 | /// <summary>Via Home</summary> |
81 | ViaHome = 1 << 5, | 82 | ViaHome = 1 << 5, |
@@ -99,6 +100,10 @@ namespace OpenSim.Framework | |||
99 | ResetHome = 1 << 14, | 100 | ResetHome = 1 << 14, |
100 | /// <summary>forced to new location for example when avatar is banned or ejected</summary> | 101 | /// <summary>forced to new location for example when avatar is banned or ejected</summary> |
101 | ForceRedirect = 1 << 15, | 102 | ForceRedirect = 1 << 15, |
103 | /// <summary>Via script.</summary> | ||
104 | ViaScript = 1 << 16, | ||
105 | /// <summary>Via map, though this is a guess.</summary> | ||
106 | ViaMap = 1 << 17, | ||
102 | /// <summary>Teleport Finished via a Lure</summary> | 107 | /// <summary>Teleport Finished via a Lure</summary> |
103 | FinishedViaLure = 1 << 26, | 108 | FinishedViaLure = 1 << 26, |
104 | /// <summary>Finished, Sim Changed</summary> | 109 | /// <summary>Finished, Sim Changed</summary> |
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs index fa49546..9970132 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs | |||
@@ -673,9 +673,10 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
673 | 673 | ||
674 | string homeURI = Scene.GetAgentHomeURI(sp.ControllingClient.AgentId); | 674 | string homeURI = Scene.GetAgentHomeURI(sp.ControllingClient.AgentId); |
675 | 675 | ||
676 | m_log.DebugFormat( | 676 | //// m_log.DebugFormat( |
677 | "[ENTITY TRANSFER MODULE]: Teleporting {0} {1} from {2} to {3} ({4}) {5}/{6}", | 677 | m_log.InfoFormat( |
678 | sp.Name, sp.UUID, sp.Scene.RegionInfo.RegionName, | 678 | "[ENTITY TRANSFER MODULE]: Teleporting {0} {1} from {2}/{3} to {4} ({5}) {6}/{7}", |
679 | sp.Name, sp.UUID, sp.Scene.RegionInfo.RegionName, sp.AbsolutePosition, | ||
679 | reg.ServerURI, finalDestination.ServerURI, finalDestination.RegionName, position); | 680 | reg.ServerURI, finalDestination.ServerURI, finalDestination.RegionName, position); |
680 | 681 | ||
681 | RegionInfo sourceRegion = sp.Scene.RegionInfo; | 682 | RegionInfo sourceRegion = sp.Scene.RegionInfo; |
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 0d8f286..e84018e 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1406,15 +1406,18 @@ namespace OpenSim.Region.Framework.Scenes | |||
1406 | if (groundHeight > pos.Z) | 1406 | if (groundHeight > pos.Z) |
1407 | pos.Z = groundHeight; | 1407 | pos.Z = groundHeight; |
1408 | 1408 | ||
1409 | if (((m_teleportFlags & TeleportFlags.ViaMap) == 0) && (Math.Truncate(pos.Z) == pos.Z)) | ||
1410 | m_teleportFlags |= TeleportFlags.ViaMap; | ||
1409 | bool checkPhysics = !positionChanged && | 1411 | bool checkPhysics = !positionChanged && |
1410 | m_scene.SupportsRayCastFiltered() && | 1412 | m_scene.SupportsRayCastFiltered() && |
1411 | pos.Z < physTestHeight && | 1413 | pos.Z < physTestHeight && |
1412 | ((m_teleportFlags & (TeleportFlags.ViaLogin | TeleportFlags.ViaRegionID)) == | 1414 | ((m_teleportFlags & (TeleportFlags.ViaLogin | TeleportFlags.ViaRegionID)) == |
1413 | (TeleportFlags.ViaLogin | TeleportFlags.ViaRegionID) | 1415 | (TeleportFlags.ViaLogin | TeleportFlags.ViaRegionID) |
1414 | || (m_teleportFlags & TeleportFlags.ViaLocation) != 0 | 1416 | //// || (m_teleportFlags & TeleportFlags.ViaLocation) != 0 |
1417 | || (m_teleportFlags & TeleportFlags.ViaMap) != 0 | ||
1415 | || (m_teleportFlags & TeleportFlags.ViaHGLogin) != 0); | 1418 | || (m_teleportFlags & TeleportFlags.ViaHGLogin) != 0); |
1416 | 1419 | ||
1417 | if(checkPhysics) | 1420 | if(checkPhysics && ((m_teleportFlags & TeleportFlags.ViaScript) == 0) && ((m_teleportFlags & TeleportFlags.ViaHome) == 0)) |
1418 | { | 1421 | { |
1419 | // land check was done above | 1422 | // land check was done above |
1420 | RayFilterFlags rayfilter = RayFilterFlags.BackFaceCull; | 1423 | RayFilterFlags rayfilter = RayFilterFlags.BackFaceCull; |
@@ -1443,29 +1446,49 @@ namespace OpenSim.Region.Framework.Scenes | |||
1443 | return a.Depth.CompareTo(b.Depth); | 1446 | return a.Depth.CompareTo(b.Depth); |
1444 | }); | 1447 | }); |
1445 | 1448 | ||
1446 | int sel = 0; | 1449 | int sel = -1; |
1447 | int count = physresults.Count; | 1450 | int count = physresults.Count; |
1448 | float curd = physresults[0].Depth; | 1451 | float curd = physresults[0].Depth; |
1449 | float nextd = curd + PhysMinSkipGap; | 1452 | float nextd = curd + PhysMinSkipGap; |
1450 | float maxDepth = dist - pos.Z; | 1453 | float maxDepth = dist - pos.Z; |
1451 | for(int i = 1; i < count; i++) | 1454 | // Try to find a designated floor. |
1455 | for(int i = 0; i < count; i++) | ||
1452 | { | 1456 | { |
1453 | curd = physresults[i].Depth; | 1457 | SceneObjectPart part = m_scene.GetSceneObjectPart(physresults[i].ConsumerID); |
1454 | if(curd >= nextd) | 1458 | if ((null != part) && (string.Empty != part.Description) && ('^' == part.Description[0])) |
1455 | { | 1459 | { |
1456 | sel = i; | 1460 | sel = i; |
1457 | if(curd >= maxDepth || curd >= nextd + PhysSkipGapDelta) | 1461 | dest = physresults[sel].Pos.Z; |
1458 | break; | 1462 | break; |
1459 | } | 1463 | } |
1460 | nextd = curd + PhysMinSkipGap; | 1464 | } |
1465 | |||
1466 | if (-1 == sel) | ||
1467 | { | ||
1468 | sel = 0; | ||
1469 | for (int i = 1; i < count; i++) | ||
1470 | { | ||
1471 | curd = physresults[i].Depth; | ||
1472 | if(curd >= nextd) | ||
1473 | { | ||
1474 | sel = i; | ||
1475 | if(curd >= maxDepth || curd >= nextd + PhysSkipGapDelta) | ||
1476 | break; | ||
1477 | } | ||
1478 | nextd = curd + PhysMinSkipGap; | ||
1479 | } | ||
1480 | dest = physresults[sel].Pos.Z; | ||
1461 | } | 1481 | } |
1462 | dest = physresults[sel].Pos.Z; | ||
1463 | } | 1482 | } |
1464 | 1483 | ||
1465 | dest += localAVHalfHeight; | 1484 | dest += localAVHalfHeight; |
1466 | if(dest > pos.Z) | 1485 | if ((m_teleportFlags & TeleportFlags.ViaMap) != 0) |
1467 | pos.Z = dest; | 1486 | m_log.InfoFormat("[SCENE PRESENCE]: Teleport from above, for {0} @ {1}, landing height {2}", Name, pos, dest); |
1468 | break; | 1487 | else |
1488 | m_log.ErrorFormat("[SCENE PRESENCE]: Teleport from above NOMAP, for {0} @ {1}, landing height {2}", Name, pos, dest); | ||
1489 | if(dest > pos.Z) | ||
1490 | pos.Z = dest; | ||
1491 | break; | ||
1469 | } | 1492 | } |
1470 | } | 1493 | } |
1471 | 1494 | ||
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index c9ee28e..10afe99 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -5245,7 +5245,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5245 | 5245 | ||
5246 | if ((m_item.PermsMask & ScriptBaseClass.PERMISSION_TELEPORT) != 0) | 5246 | if ((m_item.PermsMask & ScriptBaseClass.PERMISSION_TELEPORT) != 0) |
5247 | { | 5247 | { |
5248 | World.RequestTeleportLocation(presence.ControllingClient, regionHandle, targetPos, targetLookAt, (uint)TeleportFlags.ViaLocation); | 5248 | World.RequestTeleportLocation(presence.ControllingClient, regionHandle, targetPos, targetLookAt, (uint)(Constants.TeleportFlags.ViaLocation | Constants.TeleportFlags.ViaScript)); |
5249 | } | 5249 | } |
5250 | } | 5250 | } |
5251 | } | 5251 | } |
@@ -5259,7 +5259,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5259 | // Use it as a sim name | 5259 | // Use it as a sim name |
5260 | if (assetID == UUID.Zero) | 5260 | if (assetID == UUID.Zero) |
5261 | { | 5261 | { |
5262 | World.RequestTeleportLocation(sp.ControllingClient, destination, targetPos, targetLookAt, (uint)TeleportFlags.ViaLocation); | 5262 | World.RequestTeleportLocation(sp.ControllingClient, destination, targetPos, targetLookAt, (uint)(Constants.TeleportFlags.ViaLocation | Constants.TeleportFlags.ViaScript)); |
5263 | return; | 5263 | return; |
5264 | } | 5264 | } |
5265 | 5265 | ||
@@ -5272,7 +5272,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5272 | 5272 | ||
5273 | AssetLandmark lm = new AssetLandmark(lma); | 5273 | AssetLandmark lm = new AssetLandmark(lma); |
5274 | 5274 | ||
5275 | World.RequestTeleportLocation(sp.ControllingClient, lm.RegionHandle, targetPos, targetLookAt, (uint)TeleportFlags.ViaLocation); | 5275 | World.RequestTeleportLocation(sp.ControllingClient, lm.RegionHandle, targetPos, targetLookAt, (uint)(Constants.TeleportFlags.ViaLocation | Constants.TeleportFlags.ViaScript)); |
5276 | } | 5276 | } |
5277 | 5277 | ||
5278 | public void llTextBox(string agent, string message, int chatChannel) | 5278 | public void llTextBox(string agent, string message, int chatChannel) |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs index d268609..48f9d0b 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | |||
@@ -1071,7 +1071,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1071 | Util.FireAndForget( | 1071 | Util.FireAndForget( |
1072 | o => World.RequestTeleportLocation( | 1072 | o => World.RequestTeleportLocation( |
1073 | presence.ControllingClient, regionName, position, | 1073 | presence.ControllingClient, regionName, position, |
1074 | lookat, (uint)TPFlags.ViaLocation), | 1074 | lookat, (uint)(TPFlags.ViaLocation | TPFlags.ViaScript)), |
1075 | null, "OSSL_Api.TeleportAgentByRegionCoords"); | 1075 | null, "OSSL_Api.TeleportAgentByRegionCoords"); |
1076 | ScriptSleep(5000); | 1076 | ScriptSleep(5000); |
1077 | } | 1077 | } |
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs index 7aa18b1..06e3d8d 100644 --- a/OpenSim/Services/LLLoginService/LLLoginService.cs +++ b/OpenSim/Services/LLLoginService/LLLoginService.cs | |||
@@ -534,7 +534,7 @@ namespace OpenSim.Services.LLLoginService | |||
534 | Vector3 position = Vector3.Zero; | 534 | Vector3 position = Vector3.Zero; |
535 | Vector3 lookAt = Vector3.Zero; | 535 | Vector3 lookAt = Vector3.Zero; |
536 | GridRegion gatekeeper = null; | 536 | GridRegion gatekeeper = null; |
537 | TeleportFlags flags; | 537 | Constants.TeleportFlags flags; |
538 | GridRegion destination = FindDestination(account, scopeID, guinfo, session, startLocation, home, out gatekeeper, out where, out position, out lookAt, out flags); | 538 | GridRegion destination = FindDestination(account, scopeID, guinfo, session, startLocation, home, out gatekeeper, out where, out position, out lookAt, out flags); |
539 | if (destination == null) | 539 | if (destination == null) |
540 | { | 540 | { |
@@ -553,7 +553,7 @@ namespace OpenSim.Services.LLLoginService | |||
553 | } | 553 | } |
554 | 554 | ||
555 | if (account.UserLevel >= 200) | 555 | if (account.UserLevel >= 200) |
556 | flags |= TeleportFlags.Godlike; | 556 | flags |= Constants.TeleportFlags.Godlike; |
557 | // | 557 | // |
558 | // Get the avatar | 558 | // Get the avatar |
559 | // | 559 | // |
@@ -627,9 +627,9 @@ namespace OpenSim.Services.LLLoginService | |||
627 | protected GridRegion FindDestination( | 627 | protected GridRegion FindDestination( |
628 | UserAccount account, UUID scopeID, GridUserInfo pinfo, UUID sessionID, string startLocation, | 628 | UserAccount account, UUID scopeID, GridUserInfo pinfo, UUID sessionID, string startLocation, |
629 | GridRegion home, out GridRegion gatekeeper, | 629 | GridRegion home, out GridRegion gatekeeper, |
630 | out string where, out Vector3 position, out Vector3 lookAt, out TeleportFlags flags) | 630 | out string where, out Vector3 position, out Vector3 lookAt, out Constants.TeleportFlags flags) |
631 | { | 631 | { |
632 | flags = TeleportFlags.ViaLogin; | 632 | flags = Constants.TeleportFlags.ViaLogin; |
633 | 633 | ||
634 | m_log.DebugFormat( | 634 | m_log.DebugFormat( |
635 | "[LLOGIN SERVICE]: Finding destination matching start location {0} for {1}", | 635 | "[LLOGIN SERVICE]: Finding destination matching start location {0} for {1}", |
@@ -663,7 +663,7 @@ namespace OpenSim.Services.LLLoginService | |||
663 | 663 | ||
664 | position = pinfo.HomePosition; | 664 | position = pinfo.HomePosition; |
665 | lookAt = pinfo.HomeLookAt; | 665 | lookAt = pinfo.HomeLookAt; |
666 | flags |= TeleportFlags.ViaHome; | 666 | flags |= Constants.TeleportFlags.ViaHome; |
667 | } | 667 | } |
668 | 668 | ||
669 | if (tryDefaults) | 669 | if (tryDefaults) |
@@ -671,7 +671,7 @@ namespace OpenSim.Services.LLLoginService | |||
671 | List<GridRegion> defaults = m_GridService.GetDefaultRegions(scopeID); | 671 | List<GridRegion> defaults = m_GridService.GetDefaultRegions(scopeID); |
672 | if (defaults != null && defaults.Count > 0) | 672 | if (defaults != null && defaults.Count > 0) |
673 | { | 673 | { |
674 | flags |= TeleportFlags.ViaRegionID; | 674 | flags |= Constants.TeleportFlags.ViaRegionID; |
675 | region = defaults[0]; | 675 | region = defaults[0]; |
676 | where = "safe"; | 676 | where = "safe"; |
677 | } | 677 | } |
@@ -682,7 +682,7 @@ namespace OpenSim.Services.LLLoginService | |||
682 | region = FindAlternativeRegion(scopeID); | 682 | region = FindAlternativeRegion(scopeID); |
683 | if (region != null) | 683 | if (region != null) |
684 | { | 684 | { |
685 | flags |= TeleportFlags.ViaRegionID; | 685 | flags |= Constants.TeleportFlags.ViaRegionID; |
686 | where = "safe"; | 686 | where = "safe"; |
687 | } | 687 | } |
688 | } | 688 | } |
@@ -705,7 +705,7 @@ namespace OpenSim.Services.LLLoginService | |||
705 | List<GridRegion> defaults = m_GridService.GetDefaultRegions(scopeID); | 705 | List<GridRegion> defaults = m_GridService.GetDefaultRegions(scopeID); |
706 | if (defaults != null && defaults.Count > 0) | 706 | if (defaults != null && defaults.Count > 0) |
707 | { | 707 | { |
708 | flags |= TeleportFlags.ViaRegionID; | 708 | flags |= Constants.TeleportFlags.ViaRegionID; |
709 | region = defaults[0]; | 709 | region = defaults[0]; |
710 | where = "safe"; | 710 | where = "safe"; |
711 | } | 711 | } |
@@ -715,7 +715,7 @@ namespace OpenSim.Services.LLLoginService | |||
715 | region = FindAlternativeRegion(scopeID); | 715 | region = FindAlternativeRegion(scopeID); |
716 | if (region != null) | 716 | if (region != null) |
717 | { | 717 | { |
718 | flags |= TeleportFlags.ViaRegionID; | 718 | flags |= Constants.TeleportFlags.ViaRegionID; |
719 | where = "safe"; | 719 | where = "safe"; |
720 | } | 720 | } |
721 | } | 721 | } |
@@ -730,7 +730,7 @@ namespace OpenSim.Services.LLLoginService | |||
730 | } | 730 | } |
731 | else | 731 | else |
732 | { | 732 | { |
733 | flags |= TeleportFlags.ViaRegionID; | 733 | flags |= Constants.TeleportFlags.ViaRegionID; |
734 | 734 | ||
735 | // free uri form | 735 | // free uri form |
736 | // e.g. New Moon&135&46 New Moon@osgrid.org:8002&153&34 | 736 | // e.g. New Moon&135&46 New Moon@osgrid.org:8002&153&34 |
@@ -748,6 +748,8 @@ namespace OpenSim.Services.LLLoginService | |||
748 | position = new Vector3(float.Parse(uriMatch.Groups["x"].Value, Culture.NumberFormatInfo), | 748 | position = new Vector3(float.Parse(uriMatch.Groups["x"].Value, Culture.NumberFormatInfo), |
749 | float.Parse(uriMatch.Groups["y"].Value, Culture.NumberFormatInfo), | 749 | float.Parse(uriMatch.Groups["y"].Value, Culture.NumberFormatInfo), |
750 | float.Parse(uriMatch.Groups["z"].Value, Culture.NumberFormatInfo)); | 750 | float.Parse(uriMatch.Groups["z"].Value, Culture.NumberFormatInfo)); |
751 | if (0 == position.Z) | ||
752 | flags |= Constants.TeleportFlags.ViaMap; | ||
751 | 753 | ||
752 | string regionName = uriMatch.Groups["region"].ToString(); | 754 | string regionName = uriMatch.Groups["region"].ToString(); |
753 | if (regionName != null) | 755 | if (regionName != null) |
@@ -900,7 +902,7 @@ namespace OpenSim.Services.LLLoginService | |||
900 | 902 | ||
901 | protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarAppearance avatar, | 903 | protected AgentCircuitData LaunchAgentAtGrid(GridRegion gatekeeper, GridRegion destination, UserAccount account, AvatarAppearance avatar, |
902 | UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, string channel, string mac, string id0, | 904 | UUID session, UUID secureSession, Vector3 position, string currentWhere, string viewer, string channel, string mac, string id0, |
903 | IPEndPoint clientIP, TeleportFlags flags, out string where, out string reason, out GridRegion dest) | 905 | IPEndPoint clientIP, Constants.TeleportFlags flags, out string where, out string reason, out GridRegion dest) |
904 | { | 906 | { |
905 | where = currentWhere; | 907 | where = currentWhere; |
906 | ISimulationService simConnector = null; | 908 | ISimulationService simConnector = null; |
@@ -937,7 +939,7 @@ namespace OpenSim.Services.LLLoginService | |||
937 | { | 939 | { |
938 | foreach (GridRegion r in fallbacks) | 940 | foreach (GridRegion r in fallbacks) |
939 | { | 941 | { |
940 | success = LaunchAgentDirectly(simConnector, r, aCircuit, flags | TeleportFlags.ViaRegionID, out reason); | 942 | success = LaunchAgentDirectly(simConnector, r, aCircuit, flags | Constants.TeleportFlags.ViaRegionID | Constants.TeleportFlags.ViaMap, out reason); |
941 | if (success) | 943 | if (success) |
942 | { | 944 | { |
943 | where = "safe"; | 945 | where = "safe"; |
@@ -1083,7 +1085,7 @@ namespace OpenSim.Services.LLLoginService | |||
1083 | 1085 | ||
1084 | } | 1086 | } |
1085 | 1087 | ||
1086 | private bool LaunchAgentDirectly(ISimulationService simConnector, GridRegion region, AgentCircuitData aCircuit, TeleportFlags flags, out string reason) | 1088 | private bool LaunchAgentDirectly(ISimulationService simConnector, GridRegion region, AgentCircuitData aCircuit, Constants.TeleportFlags flags, out string reason) |
1087 | { | 1089 | { |
1088 | EntityTransferContext ctx = new EntityTransferContext(); | 1090 | EntityTransferContext ctx = new EntityTransferContext(); |
1089 | 1091 | ||