def interactive(ply): g = Game() mode, end = g.game_type() end = int(end) if mode: # mode is true means new game player_x = Player("x") player_y = Player("y") b = Board(player_x, player_y) ai = Ai(ply) remain = ["PlayerX King", "PlayerX Rook", "PlayerY King"] g.ask_piece(b, player_x, player_y, remain) b.display() File.prompt("Who am I, PlayerX or PlayerY?") localPlayer = input("Player [x/y]: ") if re.match(r"[Xx]", localPlayer): localPlayer = "x" else: localPlayer = "y" # if local player is playerX, PlayerX is our ai moves # PlayerY is opponents moves inputted by us if localPlayer == "x": for i in range(0, end): # b.ai_move(player_x) ai.move(b, player_x) b.display() File.debug(ai.value(b)) File.debug(ai.number_of_states) ai.opponent_move(player_y, b) b.display() else: for i in range(0, end): ai.opponent_move(player_x, b) b.display() # b.ai_move(player_y) ai.move(b, player_y) b.display() File.debug(ai.value(b)) File.debug(ai.number_of_states) else: player_x = Player("x") player_y = Player("y") b = Board(player_x, player_y) File.test_file(b, g, player_x, player_y) ai = Ai(ply) # AI random moves test: for i in range(0, end): ai.move(b, player_x) b.display() File.debug(ai.value(b)) File.debug(ai.number_of_states) ai.move(b, player_y) b.display() File.debug(ai.value(b)) File.debug(ai.number_of_states)