public void Advance(ref Point3D p, int index)
{
if (m_Path != null && m_Path.Success)
{
Direction[] dirs = m_Path.Directions;
if (index >= 0 && index < dirs.Length)
{
int x = p.X, y = p.Y;
CalcMoves.Offset(dirs[index], ref x, ref y);
p.X = x;
p.Y = y;
}
}
}