def test_connect_three_you(self, current_play, passin_board, passin_log, **kwargs): if not (current_play.player in self.connect_three_you): return -1 available_plays = current_play.available_plays() current_player = copy.copy(current_play.player) other_player = 1 if current_player == 2 else 2 list_blocking_plays = [] for play_col_i in range(current_play.board.width): temp_play = Play(board = passin_board, \ state = copy.deepcopy(current_play.state), \ player_init = other_player) if not (play_col_i in available_plays): continue temp_play.make_play(play_col_i, switch_player=False) if temp_play.check_win(log=None): list_blocking_plays.append(play_col_i) if len(list_blocking_plays) > 0: if kwargs.get('ret_multi', False): return list_blocking_plays else: return list_blocking_plays[0] return -1
def test_connect_three_me(self, current_play, passin_board, passin_log, **kwargs): if not (current_play.player in self.connect_three_me): return -1 available_plays = current_play.available_plays() for play_col_i in range(current_play.board.width): temp_play = Play(board = passin_board, \ state = copy.deepcopy(current_play.state), \ player_init = copy.copy(current_play.player)) if not (play_col_i in available_plays): continue temp_play.make_play(play_col_i, switch_player=False) if temp_play.check_win(log=None): return play_col_i return -1