mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 17:05:55 +08:00
several changes to llTeleport so it does HG lms
This commit is contained in:
@@ -62,6 +62,8 @@ namespace OpenSim.Region.Framework.Interfaces
|
||||
/// <param name='client'></param>
|
||||
bool TeleportHome(UUID id, IClientAPI client);
|
||||
|
||||
void RequestTeleportLandmark(IClientAPI remoteClient, AssetLandmark lm, Vector3 lookAt);
|
||||
|
||||
/// <summary>
|
||||
/// Teleport an agent directly to a given region without checking whether the region should be substituted.
|
||||
/// </summary>
|
||||
|
||||
@@ -4996,6 +4996,20 @@ Label_GroupsDone:
|
||||
EntityTransferModule.Teleport(sp, regionHandle, position, lookAt, teleportFlags);
|
||||
}
|
||||
|
||||
public void RequestTeleportLandmark(IClientAPI remoteClient, AssetLandmark lm, Vector3 lookAt)
|
||||
{
|
||||
if (EntityTransferModule == null)
|
||||
{
|
||||
m_log.DebugFormat("[SCENE]: Unable to perform teleports: no AgentTransferModule is active");
|
||||
return;
|
||||
}
|
||||
|
||||
ScenePresence sp = GetScenePresence(remoteClient.AgentId);
|
||||
if (sp == null || sp.IsDeleted || sp.IsInTransit)
|
||||
return;
|
||||
EntityTransferModule.RequestTeleportLandmark(remoteClient, lm, lookAt);
|
||||
}
|
||||
|
||||
public bool CrossAgentToNewRegion(ScenePresence agent, bool isFlying)
|
||||
{
|
||||
if (EntityTransferModule != null)
|
||||
|
||||
Reference in New Issue
Block a user