def play(self, board, player, step, time_left): """This function is used to play a move according to the board, player and time left provided as input. It must return an action representing the move the player will perform. """ self.time_left = time_left self.maxMinMaxDepth = calculate_maxMinMaxDepth(step, time_left) newBoard = avalam.Board(board.get_percepts(player == avalam.PLAYER2)) state = (newBoard, player, step) return minimaxImproved.search(state, self)