diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 7 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | 2 |
2 files changed, 5 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 32e46ec..d38fe9f 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -3505,6 +3505,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3505 | { | 3505 | { |
3506 | m_host.AddScriptLPS(1); | 3506 | m_host.AddScriptLPS(1); |
3507 | UUID invItemID = InventorySelf(); | 3507 | UUID invItemID = InventorySelf(); |
3508 | UUID targetID; | ||
3509 | |||
3510 | if (!UUID.TryParse(target, out targetID)) | ||
3511 | return; | ||
3508 | 3512 | ||
3509 | TaskInventoryItem item; | 3513 | TaskInventoryItem item; |
3510 | lock (m_host.TaskInventory) | 3514 | lock (m_host.TaskInventory) |
@@ -3524,7 +3528,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3524 | if (sp != null) | 3528 | if (sp != null) |
3525 | client = sp.ControllingClient; | 3529 | client = sp.ControllingClient; |
3526 | 3530 | ||
3527 | SceneObjectPart targetPart = World.GetSceneObjectPart((UUID)target); | 3531 | SceneObjectPart targetPart = World.GetSceneObjectPart((UUID)targetID); |
3528 | 3532 | ||
3529 | if (targetPart.ParentGroup.RootPart.AttachmentPoint != 0) | 3533 | if (targetPart.ParentGroup.RootPart.AttachmentPoint != 0) |
3530 | return; // Fail silently if attached | 3534 | return; // Fail silently if attached |
@@ -4070,7 +4074,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
4070 | if (m_host.OwnerID == World.LandChannel.GetLandObject( | 4074 | if (m_host.OwnerID == World.LandChannel.GetLandObject( |
4071 | presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) | 4075 | presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) |
4072 | { | 4076 | { |
4073 | presence.ControllingClient.SendTeleportLocationStart(); | ||
4074 | World.TeleportClientHome(agentId, presence.ControllingClient); | 4077 | World.TeleportClientHome(agentId, presence.ControllingClient); |
4075 | } | 4078 | } |
4076 | } | 4079 | } |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs index 01b64eb..a529a94 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | |||
@@ -664,7 +664,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
664 | regionName = regInfo.RegionName; | 664 | regionName = regInfo.RegionName; |
665 | } | 665 | } |
666 | } | 666 | } |
667 | presence.ControllingClient.SendTeleportLocationStart(); | ||
668 | World.RequestTeleportLocation(presence.ControllingClient, regionName, | 667 | World.RequestTeleportLocation(presence.ControllingClient, regionName, |
669 | new Vector3((float)position.x, (float)position.y, (float)position.z), | 668 | new Vector3((float)position.x, (float)position.y, (float)position.z), |
670 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation); | 669 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation); |
@@ -696,7 +695,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
696 | == World.LandChannel.GetLandObject( | 695 | == World.LandChannel.GetLandObject( |
697 | presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) | 696 | presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID) |
698 | { | 697 | { |
699 | presence.ControllingClient.SendTeleportLocationStart(); | ||
700 | World.RequestTeleportLocation(presence.ControllingClient, regionHandle, | 698 | World.RequestTeleportLocation(presence.ControllingClient, regionHandle, |
701 | new Vector3((float)position.x, (float)position.y, (float)position.z), | 699 | new Vector3((float)position.x, (float)position.y, (float)position.z), |
702 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation); | 700 | new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation); |