Esempio n. 1
0
    def is_Piece_threating_piece(board, piece, Piece):
        color_op = piece.color
        if Piece == Pawn:
            dir_op = 'down' if piece.rotate else 'up'
            piece = Pawn(piece.pos, color_op, dir_op)
        else:
            piece = Piece(
                piece.pos,
                color_op,
            )

        moves = piece.all_possible_moves(board)
        pos_possible_piece = [None] * 2
        for move in moves:
            pos_possible_piece[0] = piece.pos[0] + move[0]
            pos_possible_piece[1] = piece.pos[1] + move[1]
            if Rule.is_in_range(pos_possible_piece):
                possible_piece = board.arr[pos_possible_piece[1]][
                    pos_possible_piece[0]]
                if isinstance(possible_piece, Piece):
                    return True
        return False