Fix NPC sitting for prims without a sit target.

This is to partially address http://opensimulator.org/mantis/view.php?id=5769
We don't need to call SP.HandleAgentSit() again if we are within 10m since the autopilot won't trigger.
By calling it twice, the position of the sitting NPC was wrongly adjusted, ending up near <0,0,0>.
However, this change does mean that NPCs further than 10m away will not attempt to autopilot to the prim, though this code was broken anyway (is actually a different mechanism to normal NPC movmeent).
Hopefully this can be addressed soon.
This commit is contained in:
Justin Clark-Casey (justincc)
2011-11-05 01:38:42 +00:00
parent f7b8c54c24
commit 28c4dc9be4
4 changed files with 61 additions and 14 deletions

View File

@@ -1096,13 +1096,21 @@ namespace OpenSim.Region.Framework.Scenes
public Quaternion SitTargetOrientation
{
get { return m_sitTargetOrientation; }
set { m_sitTargetOrientation = value; }
set
{
m_sitTargetOrientation = value;
// m_log.DebugFormat("[SCENE OBJECT PART]: Set sit target orientation {0} for {1} {2}", m_sitTargetOrientation, Name, LocalId);
}
}
public Vector3 SitTargetPosition
{
get { return m_sitTargetPosition; }
set { m_sitTargetPosition = value; }
set
{
m_sitTargetPosition = value;
// m_log.DebugFormat("[SCENE OBJECT PART]: Set sit target position to {0} for {1} {2}", m_sitTargetPosition, Name, LocalId);
}
}
// This sort of sucks, but I'm adding these in to make some of