diff --git a/backend/bang/deck.py b/backend/bang/deck.py index 57aa884..3f21054 100644 --- a/backend/bang/deck.py +++ b/backend/bang/deck.py @@ -80,6 +80,7 @@ class Deck: if len(self.scrap_pile) > 0: card = self.scrap_pile.pop(-1) self.game.notify_scrap_pile() + card.reset_card() return card else: return self.draw() diff --git a/backend/bang/game.py b/backend/bang/game.py index e0845cd..af15d1c 100644 --- a/backend/bang/game.py +++ b/backend/bang/game.py @@ -558,8 +558,10 @@ class Game: else: for i in range(len(player.hand)): vulture[0].hand.append(player.hand.pop()) + vulture[0].hand[-1].reset_card() for i in range(len(player.equipment)): vulture[0].hand.append(player.equipment.pop()) + vulture[0].hand[-1].reset_card() vulture[0].notify_self() #se Vulture Sam è uno sceriffo e ha appena ucciso il suo Vice, deve scartare le carte che ha pescato con la sua abilità diff --git a/backend/bang/players.py b/backend/bang/players.py index 7e947dc..eadf24e 100644 --- a/backend/bang/players.py +++ b/backend/bang/players.py @@ -862,8 +862,8 @@ class Player: data=f'_special_bart_cassidy|{self.name}') self.hand.append(self.game.deck.draw(True)) elif self.character.check(self.game, chars.ElGringo) and self.attacker and self.attacker in self.game.get_alive_players() and len(self.attacker.hand) > 0: - self.hand.append(self.attacker.hand.pop( - randrange(0, len(self.attacker.hand)))) + self.hand.append(self.attacker.hand.pop(randrange(0, len(self.attacker.hand)))) + self.hand[-1].reset_card() self.sio.emit('chat_message', room=self.game.name, data=f'_special_el_gringo|{self.name}|{self.attacker.name}') self.attacker.notify_self()