Brad Stein e3ff6416ff
Add files via upload
Generalized out attack cards.  Fixed bugs.
2018-01-10 23:30:39 -05:00

34 lines
853 B
Python

from table.supply import Supply
class Hand(Supply):
def contains_one_of(self, acceptable_class):
result = False
unique_class_instances = self.__get_unique_class_instances()
for uci in unique_class_instances:
result |= isinstance(uci, acceptable_class)
return result
def get_card_type_count(self, card_class):
result = 0
for c in self.get_supply():
if isinstance(c, card_class):
result += 1
return result
def reaction_blocks_attack(self, what_attack):
attack_blocked = False
for c in self.get_supply():
attack_blocked |= c.react(what_attack)
return attack_blocked
def __get_unique_class_instances(self):
unique_class_instances = list()
for c in self.get_supply():
if c not in unique_class_instances:
unique_class_instances.append(c)
return unique_class_instances