From 795dcf82a78495ce380ad9b76554dccbaa8848ae Mon Sep 17 00:00:00 2001 From: Alberto Xamin Date: Sun, 29 Nov 2020 15:42:29 +0100 Subject: [PATCH] molly stark --- backend/bang/expansions/dodge_city/characters.py | 7 +++++++ backend/bang/players.py | 2 ++ 2 files changed, 9 insertions(+) diff --git a/backend/bang/expansions/dodge_city/characters.py b/backend/bang/expansions/dodge_city/characters.py index e0a9bd0..b33ee4d 100644 --- a/backend/bang/expansions/dodge_city/characters.py +++ b/backend/bang/expansions/dodge_city/characters.py @@ -37,6 +37,12 @@ class BillNoface(Character): self.desc = "Pesca 1 carta + 1 carta per ogni ferita che ha" self.icon = '🙈' +class MollyStark(Character): + def __init__(self): + super().__init__("Molly Stark", max_lives=4) + self.desc = "Quando usa una carta che ha in mano, fuori dal suo turno, ne ottiene un'altra dal mazzo" + self.icon = '🙅‍♀️' + def all_characters() -> List[Character]: return [ PixiePete(), @@ -45,6 +51,7 @@ def all_characters() -> List[Character]: HerbHunter(), ElenaFuente(), BillNoface(), + MollyStark(), ] #Apache Kid: il suo effetto non conta nei duelli diff --git a/backend/bang/players.py b/backend/bang/players.py index df78d28..080ab9b 100644 --- a/backend/bang/players.py +++ b/backend/bang/players.py @@ -435,6 +435,8 @@ class Player: ((hand_index < len(self.hand) and self.hand[hand_index].name in self.expected_response)) or self.equipment[hand_index-len(self.hand)].name in self.expected_response): card = self.hand.pop(hand_index) if hand_index < len(self.hand) else self.equipment.pop(hand_index-len(self.hand)) + if isinstance(self.character, chd.MollyStark) and hand_index < len(self.hand): + self.hand.append(self.game.deck.draw()) card.use_card(self) self.game.deck.scrap(card) self.notify_self()