diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 675fb690fc..7cdea05cd5 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs @@ -1226,14 +1226,6 @@ namespace OpenSim.Region.Framework.Scenes } else { - if (m_pos.X < 0) - m_pos.X = 128; - if (m_pos.Y < 0) - m_pos.Y = 128; - if (m_pos.X > Scene.WestBorders[0].BorderLine.X) - m_pos.X = 128; - if (m_pos.Y > Scene.NorthBorders[0].BorderLine.Y) - m_pos.Y = 128; m_LastFinitePos = m_pos; } @@ -2799,16 +2791,19 @@ namespace OpenSim.Region.Framework.Scenes { if (!needsTransit) { - Vector3 pos = AbsolutePosition; - if (AbsolutePosition.X < 0) - pos.X += Velocity.Y; - else if (AbsolutePosition.X > Constants.RegionSize) - pos.X -= Velocity.Y; - if (AbsolutePosition.Y < 0) - pos.Y += Velocity.Y; - else if (AbsolutePosition.Y > Constants.RegionSize) - pos.Y -= Velocity.Y; - AbsolutePosition = pos; + if (m_requestedSitTargetUUID == UUID.Zero) + { + Vector3 pos = AbsolutePosition; + if (AbsolutePosition.X < 0) + pos.X += Velocity.X; + else if (AbsolutePosition.X > Constants.RegionSize) + pos.X -= Velocity.X; + if (AbsolutePosition.Y < 0) + pos.Y += Velocity.Y; + else if (AbsolutePosition.Y > Constants.RegionSize) + pos.Y -= Velocity.Y; + AbsolutePosition = pos; + } } } else if (neighbor > 0)