aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine
diff options
context:
space:
mode:
authoronefang2020-09-09 22:59:24 +1000
committeronefang2020-09-09 22:59:24 +1000
commitaaef497afbedef9382c9afdcb9f8d0d5b0a0e0bc (patch)
tree0cca9608b28ec503f045a26b0f664a176a061d1f /OpenSim/Region/ScriptEngine
parentUse F1 instead of ? as the in command help key. (diff)
downloadopensim-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 'OpenSim/Region/ScriptEngine')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs6
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs2
2 files changed, 4 insertions, 4 deletions
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 }