Add missing TeleportStart packets to llTeleportAgentHome and osTeleportAgent.
As those aren't viewer-initiated TPs, the viewer has to be informed. This should fix Mantis #2351 and #2397.0.6.0-stable
parent
9770cf778e
commit
1df67a37dc
|
@ -3444,7 +3444,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
{
|
{
|
||||||
// agent must be over the owners land
|
// agent must be over the owners land
|
||||||
if (m_host.OwnerID == World.GetLandOwner(presence.AbsolutePosition.X, presence.AbsolutePosition.Y))
|
if (m_host.OwnerID == World.GetLandOwner(presence.AbsolutePosition.X, presence.AbsolutePosition.Y))
|
||||||
|
{
|
||||||
|
presence.ControllingClient.SendTeleportLocationStart();
|
||||||
World.TeleportClientHome(agentId, presence.ControllingClient);
|
World.TeleportClientHome(agentId, presence.ControllingClient);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// ScriptSleep(5000);
|
// ScriptSleep(5000);
|
||||||
|
|
|
@ -479,6 +479,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
// agent must be over owners land to avoid abuse
|
// agent must be over owners land to avoid abuse
|
||||||
if (m_host.OwnerID == World.GetLandOwner(presence.AbsolutePosition.X, presence.AbsolutePosition.Y))
|
if (m_host.OwnerID == World.GetLandOwner(presence.AbsolutePosition.X, presence.AbsolutePosition.Y))
|
||||||
{
|
{
|
||||||
|
presence.ControllingClient.SendTeleportLocationStart();
|
||||||
World.RequestTeleportLocation(presence.ControllingClient, regionName,
|
World.RequestTeleportLocation(presence.ControllingClient, regionName,
|
||||||
new Vector3((float)position.x, (float)position.y, (float)position.z),
|
new Vector3((float)position.x, (float)position.y, (float)position.z),
|
||||||
new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation);
|
new Vector3((float)lookat.x, (float)lookat.y, (float)lookat.z), (uint)TPFlags.ViaLocation);
|
||||||
|
|
Loading…
Reference in New Issue