Mau карта
Игровые карты Mau.
CARD_BEHAVIOR
module-attribute
CARD_BEHAVIOR = {'number': NumberBehavior, 'turn': TurnBehavior, 'reverse': ReverseBehavior, 'take': TakeBehavior, 'wild+color': WildColorBehavior, 'wild+take': WildTakeBehavior}
CARD_REGEX
module-attribute
CARD_REGEX = compile('(\\d)_(\\d)_(\\d+)_([a-z+]+)')
MauCard
MauCard(color: CardColor, value: int, cost: int, behavior: NumberBehavior)
Описание каждой карты Mau.
Предоставляет общий функционал для всех карт.
__slots__
class-attribute
instance-attribute
__slots__ = ('color', 'value', 'cost', 'behavior')
behavior
instance-attribute
behavior = behavior
cost
instance-attribute
cost: int = cost
value
instance-attribute
value: int = value
__call__
__call__(game: MauGame) -> None
Синтаксический сахар для вызова действия карты.
Позволяет использовать способность этой карты. Является сокращением для метода use_card.
__eq__
__eq__(other: object) -> bool
Проверяет соответствие двух карт.
__lt__
__lt__(other_card: object) -> bool
Проверяет что данная карта меньшей стоимости чем прочая.
__repr__
__repr__() -> str
Представление карты для отладки.
can_cover
can_cover(other_card: Self) -> bool
Проверяет что другая карта может покрыть текущую.
По правилам игры цель каждого игрока - избавить от своих карт. Чтобы избавиться от карт, нужно накрыть текущую карту с верхушки одной из своей руки. Как только карты кончатся - вы победили.
iter_covering
iter_covering(hand: Iterable[Self]) -> Iterator[tuple[Self, bool]]
Проверяет какие карты вы можете покрыть из своей руки.
Используется чтобы проверить всю свою руку на наличие карт, которыми можно покрыть текущую.
Parameters:
-
hand
Iterable[BaseCard]
) –Карты в вашей руке.
Yields:
-
tuple[Self, bool]
–Iterator[BaseCard, bool]: Возвращает карту и можете ли вы ею покрыть текущую.
pack
pack() -> str
запаковывает карту в строку.
prepare_used
prepare_used() -> None
Подготавливает карту к повторному использованию в колоде.
unpack
classmethod
unpack(card_str: str) -> Self | None
Превращает упакованную строку карты в её экземпляр.
Обратное действие для получения экземпляра карты из строки. Используется уже при обработке отправленного стикеров.