Esempio n. 1
0
 def _remove_card_board(test_seq, card: Card, num: int = None) -> int:
     onum = 0
     for look_card in test_seq:
         if card.alike(look_card):
             n = test_seq[look_card]
             if num is None or n <= (num - onum):
                 onum += n
                 test_seq[look_card] = 0
             else:
                 test_seq[look_card] -= (num - onum)
                 onum = num
     test_seq += Counter()
     return onum
Esempio n. 2
0
 def find_all_copies(self, item: Card, area: CardDictTy = None) \
         -> CardListTy:
     if area is None:
         area = self.full_deck
     return [(c, n) for c, n in area.items() if item.alike(c)]
Esempio n. 3
0
 def contains_variant(self, item: Card) -> bool:
     return any(
         item.alike(other)
         for other in itertools.chain(self.mainboard, self.sideboard))