diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index f74bc3c66f..f690477ab3 100755 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs @@ -8249,11 +8249,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP Math.Abs(x.CameraAtAxis.X - m_thisAgentUpdateArgs.CameraAtAxis.X) > VDELTA || Math.Abs(x.CameraAtAxis.Y - m_thisAgentUpdateArgs.CameraAtAxis.Y) > VDELTA || - //Math.Abs(x.CameraAtAxis.Z - m_thisAgentUpdateArgs.CameraAtAxis.Z) > VDELTA || Math.Abs(x.CameraUpAxis.X - m_thisAgentUpdateArgs.CameraUpAxis.X) > VDELTA || Math.Abs(x.CameraUpAxis.Y - m_thisAgentUpdateArgs.CameraUpAxis.Y) > VDELTA - //Math.Abs(x.CameraLeftAxis.Z - m_thisAgentUpdateArgs.CameraLeftAxis.Z) > VDELTA || ); } diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 13718aa8ca..7a25eee3e2 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs @@ -2707,7 +2707,7 @@ namespace OpenSim.Region.Framework.Scenes //update_movementflag |= (MovementFlags ^ oldflags) != 0; update_movementflag = true; - if (m_delayedStop < 0 && (flags & (ACFlags.AGENT_CONTROL_FAST_AT | ACFlags.AGENT_CONTROL_FAST_UP)) == 0) + if (!m_setAlwaysRun && (flags & (ACFlags.AGENT_CONTROL_FAST_AT | ACFlags.AGENT_CONTROL_FAST_UP)) == 0) agent_velocity = AgentControlMidVel; if ((MovementFlags & CONTROL_FLAG_NUDGE_MASK) != 0) @@ -3722,7 +3722,7 @@ namespace OpenSim.Region.Framework.Scenes // m_log.DebugFormat( // "[SCENE PRESENCE]: Adding new movement {0} with rotation {1}, thisAddSpeedModifier {2} for {3}", // vec, Rotation, thisAddSpeedModifier, Name); - //m_delayedStop = -1; + m_delayedStop = -1; // rotate from avatar coord space to world Quaternion rot = Rotation; if (!Flying && !IsNPC) @@ -3783,8 +3783,8 @@ namespace OpenSim.Region.Framework.Scenes #region Overridden Methods - const float ROTATION_TOLERANCE = 0.005f; - const float VELOCITY_TOLERANCE = 0.005f; + const float ROTATION_TOLERANCE = 0.01f; + const float VELOCITY_TOLERANCE = 0.1f; const float LOWVELOCITYSQ = 0.1f; const float POSITION_LARGETOLERANCE = 5f; const float POSITION_SMALLTOLERANCE = 0.05f; @@ -3817,7 +3817,10 @@ namespace OpenSim.Region.Framework.Scenes if(IsSatOnObject) m_delayedStop = -1; else if(Util.GetTimeStampMS() > m_delayedStop) + { + m_delayedStop = -1; AddNewMovement(Vector3.Zero, 0); + } } if (Appearance.AvatarSize.NotEqual(m_lastSize))