diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework')
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs index 58f3dde..71a0e52 100644 --- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs +++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs | |||
@@ -478,9 +478,17 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer | |||
478 | m_entityTransferStateMachine.UpdateInTransit(sp.UUID, AgentTransferState.Transferring); | 478 | m_entityTransferStateMachine.UpdateInTransit(sp.UUID, AgentTransferState.Transferring); |
479 | 479 | ||
480 | sp.ControllingClient.SendTeleportStart(teleportFlags); | 480 | sp.ControllingClient.SendTeleportStart(teleportFlags); |
481 | lookAt.Z = 0f; | ||
482 | |||
483 | if(Math.Abs(lookAt.X) < 0.01f && Math.Abs(lookAt.Y) < 0.01f) | ||
484 | { | ||
485 | lookAt.X = 1.0f; | ||
486 | lookAt.Y = 0; | ||
487 | } | ||
481 | 488 | ||
482 | sp.ControllingClient.SendLocalTeleport(position, lookAt, teleportFlags); | 489 | sp.ControllingClient.SendLocalTeleport(position, lookAt, teleportFlags); |
483 | sp.TeleportFlags = (Constants.TeleportFlags)teleportFlags; | 490 | sp.TeleportFlags = (Constants.TeleportFlags)teleportFlags; |
491 | sp.RotateToLookAt(lookAt); | ||
484 | sp.Velocity = Vector3.Zero; | 492 | sp.Velocity = Vector3.Zero; |
485 | sp.Teleport(position); | 493 | sp.Teleport(position); |
486 | 494 | ||