* Attempt number 1 to stop the repeating crouch animation that sometimes happens.
* This tries to address it by correcting one potential bug where it never resets the falltimer. * This tries to address it by telling Physics that we're not flying this step.. instead of waiting until the next step when the next agent update comes along.0.6.8-post-fixes
parent
f605d59136
commit
abddb60b8d
|
@ -200,7 +200,10 @@ namespace OpenSim.Region.Framework.Scenes.Animation
|
||||||
else if (move.Z < 0f)
|
else if (move.Z < 0f)
|
||||||
{
|
{
|
||||||
if (actor != null && actor.IsColliding)
|
if (actor != null && actor.IsColliding)
|
||||||
|
{
|
||||||
|
//Console.WriteLine("LAND");
|
||||||
return "LAND";
|
return "LAND";
|
||||||
|
}
|
||||||
else
|
else
|
||||||
return "HOVER_DOWN";
|
return "HOVER_DOWN";
|
||||||
}
|
}
|
||||||
|
@ -249,8 +252,11 @@ namespace OpenSim.Region.Framework.Scenes.Animation
|
||||||
float landElapsed = (float)(Environment.TickCount - m_animTickFall) / 1000f;
|
float landElapsed = (float)(Environment.TickCount - m_animTickFall) / 1000f;
|
||||||
|
|
||||||
if (landElapsed <= FALL_DELAY)
|
if (landElapsed <= FALL_DELAY)
|
||||||
|
{
|
||||||
|
m_animTickFall = 0;
|
||||||
return "LAND";
|
return "LAND";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
m_animTickFall = 0;
|
m_animTickFall = 0;
|
||||||
|
|
||||||
|
|
|
@ -1445,7 +1445,10 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
// nesting this check because LengthSquared() is expensive and we don't
|
// nesting this check because LengthSquared() is expensive and we don't
|
||||||
// want to do it every step when flying.
|
// want to do it every step when flying.
|
||||||
if ((Velocity.LengthSquared() <= LAND_VELOCITYMAG_MAX))
|
if ((Velocity.LengthSquared() <= LAND_VELOCITYMAG_MAX))
|
||||||
|
{
|
||||||
StopFlying();
|
StopFlying();
|
||||||
|
m_physicsActor.Flying = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue