diff --git a/backend/bang/expansions/dodge_city/characters.py b/backend/bang/expansions/dodge_city/characters.py
index caa455d..4c2ac74 100644
--- a/backend/bang/expansions/dodge_city/characters.py
+++ b/backend/bang/expansions/dodge_city/characters.py
@@ -92,6 +92,13 @@ class PatBrennan(Character):
self.desc_eng = "Instead of drawing he can steal a card from the equipment of another player."
self.icon = '🤗'
+class JoseDelgrado(Character):
+ def __init__(self):
+ super().__init__("José Delgrado", max_lives=4)
+ self.desc = "Può scartare una carta blu per pescare 2 carte."
+ self.desc_eng = "He can discard a blue card to draw 2 cards."
+ self.icon = '🎒'
+
def all_characters() -> List[Character]:
return [
PixiePete(),
@@ -107,6 +114,7 @@ def all_characters() -> List[Character]:
VeraCuster(),
ChuckWengam(),
PatBrennan(),
+ JoseDelgrado(),
]
#Apache Kid: il suo effetto non conta nei duelli
diff --git a/backend/bang/players.py b/backend/bang/players.py
index 9a66c0f..61ccb27 100644
--- a/backend/bang/players.py
+++ b/backend/bang/players.py
@@ -677,10 +677,14 @@ class Player:
def scrap(self, card_index):
if self.is_my_turn or isinstance(self.character, chars.SidKetchum):
self.scrapped_cards += 1
+ card = self.hand.pop(card_index)
if isinstance(self.character, chars.SidKetchum) and self.scrapped_cards == 2:
self.scrapped_cards = 0
self.lives = min(self.lives+1, self.max_lives)
- self.game.deck.scrap(self.hand.pop(card_index))
+ elif isinstance(self.character, chd.JoseDelgrado) and card.is_equipment:
+ self.hand.append(self.game.deck.draw())
+ self.hand.append(self.game.deck.draw())
+ self.game.deck.scrap(card)
self.notify_self()
def chuck_lose_hp_draw(self):
diff --git a/frontend/src/components/Player.vue b/frontend/src/components/Player.vue
index 63c3016..58dad84 100644
--- a/frontend/src/components/Player.vue
+++ b/frontend/src/components/Player.vue
@@ -20,8 +20,9 @@
{{desc}}