private Node ExtractBestNodeFromOpenList()
{
float minF = float.MaxValue;
Node bestOne = null;
foreach (Node n in _openList)
{
if (n.MoveCost < minF)
{
minF = n.MoveCost;
bestOne = n;
}
}
if (bestOne != null)
_openList.Remove(bestOne);
return bestOne;
}