IEnumerator MCTSAIInput() { thinking = true; MCTS search = new MCTS(board.boardState, targetTurnState); for (int i = 0; i < budget; i++) { for (int q = 0; q < 10; q++) { for (int j = 0; j < 10; j++) { search.Iterate(); } yield return(null); } } MCTS.Move bestMove = search.GetBestMove(); while (board.selectedTurn != bestMove.MoveIndex) { if (team == Team.Blue) { board.MoveLeft(); } else { board.MoveRight(); } yield return(new WaitForSeconds(0.1f)); } if (bestMove.Up) { board.MoveUp(); } else { board.MoveDown(); } thinking = false; }