Пример #1
0
        public void moveToAllLinks(BoardTreeNode boardNode, Position SourcePosition, int range)
        {
            foreach (var link in SourcePosition.Links)
            {
                var cloneBoard = DeepClone(boardNode.Board);
                cloneBoard.movePokemon(SourcePosition.guid, cloneBoard._Board[link.x, link.y].guid);
                boardNode.Add(new BoardTreeNode(cloneBoard));
                //Console.WriteLine("Generated {0}", cloneBoard.Signature);

                if (range > 1)
                {
                    //if (boardNode._children.ContainsKey(cloneBoard.Signature))
                    moveToAllLinks(boardNode.GetChild(cloneBoard.Signature), boardNode.Board._Board[link.x, link.y], range - 1);
                }
            }
        }
Пример #2
0
 public DecisionMaker(Board board)
 {
     Console.WriteLine("Initializing Decision Maker");
     rootBoardTree = new BoardTreeNode(board);
 }