public void Evalulate(Node node, IStragetgyItterator <Node> itterator) { if (node.Position == target) { itterator.AddSolution(node); return; // stop } if (bountry[node.Position]) { return; } CheckAndAddChild(itterator, node, VectorInt2.Up); CheckAndAddChild(itterator, node, VectorInt2.Down); CheckAndAddChild(itterator, node, VectorInt2.Left); CheckAndAddChild(itterator, node, VectorInt2.Right); }