def tactic_killer(board, player): result = 0 result += board[jail_field(enemy(player))] \ - board[jail_field(player)] return result / 15
def _next_player(self): if get_winner(self._board) is None: with self._game_mutex: self._active_player = enemy(self._active_player) self._dice = list(self._roll_dice()) if not is_any_legal_move(self._board, self._dice, self._active_player): self._next_player()
def tactic_push_forward(board, player): modifier = player_modifier(player) result = 0 player_checkers = 0 enemy_checkers = 0 push_forward = 0 for i, k in enumerate(board): if player_from_number(k) == player: push_forward += ((26 + modifier * i) % 26) * k / 28 player_checkers += k elif player_from_number(k) == enemy(player): enemy_checkers += k push_forward -= ((26 + modifier * i) % 26) * k / 28 push_forward -= player_checkers + enemy_checkers result += push_forward return result / 15
def test_enemy(self): self.assertEqual(utils.enemy('w'), 'b') self.assertEqual(utils.enemy('b'), 'w')