public static void DoSearch()
        {
            NodeGrid   nodeGrid = GameObject.Find("Grid").GetComponent <NodeGrid>();
            Search_PFA search   = new Search_PFA(nodeGrid);

            search.DoStep();
        }
        public static void AStarSearch()
        {
            NodeGrid nodeGrid = GameObject.Find("Grid").GetComponent <NodeGrid>();
            AStar    search   = new AStar(nodeGrid);

            search.GetHeuristic();
            search.DoStep();
        }
 /// <summary>
 /// Node class constructor
 /// </summary>
 /// <param name="grid">NodeGrid class object</param>
 /// <param name="row">the node‘s row</param>
 /// <param name="col">the node's col</param>
 /// <param name="type">Node type</param>
 public Node(NodeGrid grid, int row, int col, NodeType type)
 {
     Grid      = grid;
     Row       = row;
     Col       = col;
     NodeType  = type;
     Pos       = new Vector2(Row, Col);
     Name      = $"Node({Row},{Col})";
     IsStepped = false;
     IsMarked  = false;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="nodeGrid">NodeGrid class object</param>
 protected PathFindAlgorithm(NodeGrid nodeGrid)
 {
     grid      = nodeGrid;
     motionDic = new Dictionary <Node, Vector3>();
 }
 public VisualStep(NodeGrid grid)
 {
     nodeGrid = grid;
 }
 public AStar(NodeGrid nodeGrid) : base(nodeGrid)
 {
     openList  = new List <Node>();
     pathNodes = new List <Node>();
 }
 public Search_PFA(NodeGrid nodeGrid) : base(nodeGrid)
 {
     openList  = new List <Node>();
     pathNodes = new List <Node>();
 }