best_score = float('+inf') best_move = None for legal_move in current_board.current_player.calculate_legal_moves(): new_board = legal_move.execute() move_value, move_obj = minimax(new_board, depth - 1, True) if move_value < best_score: best_score = move_value best_move = legal_move return best_score, best_move DEPTH = 2 current_board = Board.create_standard_board() while True: _, white_move = minimax(current_board, DEPTH, True) current_board = white_move.execute() print(current_board) print(_) input() _, black_move = minimax(current_board, DEPTH, True) current_board = black_move.execute() for i in current_board.current_player.calculate_legal_moves(): print(i) print(current_board) print(_) input()