fix il giudice
This commit is contained in:
parent
e7a79b0858
commit
9f1ec34d73
@ -59,7 +59,12 @@ class Card(ABC):
|
|||||||
self.must_be_used = False
|
self.must_be_used = False
|
||||||
|
|
||||||
def play_card(self, player, against=None, _with=None):#self --> carta
|
def play_card(self, player, against=None, _with=None):#self --> carta
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
|
if (player.game.check_event(ce.IlGiudice)) and self.usable_next_turn and not self.can_be_used_now:
|
||||||
|
return False
|
||||||
if self.is_equipment:
|
if self.is_equipment:
|
||||||
|
if (player.game.check_event(ce.IlGiudice)):
|
||||||
|
return False
|
||||||
if self.is_weapon:
|
if self.is_weapon:
|
||||||
has_weapon = False
|
has_weapon = False
|
||||||
for i in range(len(player.equipment)):
|
for i in range(len(player.equipment)):
|
||||||
@ -98,8 +103,6 @@ class Card(ABC):
|
|||||||
return Suit.SPADES in accepted
|
return Suit.SPADES in accepted
|
||||||
return self.suit in accepted
|
return self.suit in accepted
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class Barile(Card):
|
class Barile(Card):
|
||||||
def __init__(self, suit, number):
|
def __init__(self, suit, number):
|
||||||
super().__init__(suit, 'Barile', number, is_equipment=True)
|
super().__init__(suit, 'Barile', number, is_equipment=True)
|
||||||
@ -146,6 +149,9 @@ class Prigione(Card):
|
|||||||
self.alt_text = "♥️= 🆓"
|
self.alt_text = "♥️= 🆓"
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
|
if (player.game.check_event(ce.IlGiudice)):
|
||||||
|
return False
|
||||||
if against != None and not isinstance(player.game.get_player_named(against).role, r.Sheriff):
|
if against != None and not isinstance(player.game.get_player_named(against).role, r.Sheriff):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.sio.emit('chat_message', room=player.game.name,
|
player.sio.emit('chat_message', room=player.game.name,
|
||||||
|
@ -149,11 +149,12 @@ class Bibbia(Schivata):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
pass
|
pass
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -170,12 +171,13 @@ class Cappello(Mancato):
|
|||||||
self.alt_text = "😅"
|
self.alt_text = "😅"
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
pass
|
pass
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -203,11 +205,12 @@ class Pugnale(Pugno):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
return super().play_card(player, against=against)
|
return super().play_card(player, against=against)
|
||||||
else:
|
else:
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -224,11 +227,12 @@ class Derringer(Pugnale):
|
|||||||
# self.desc_eng += ' and then draw a card.'
|
# self.desc_eng += ' and then draw a card.'
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
player.hand.append(player.game.deck.draw(True))
|
player.hand.append(player.game.deck.draw(True))
|
||||||
return super().play_card(player, against=against)
|
return super().play_card(player, against=against)
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -250,13 +254,14 @@ class Borraccia(Card):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
super().play_card(player, against)
|
super().play_card(player, against)
|
||||||
player.lives = min(player.lives+1, player.max_lives)
|
player.lives = min(player.lives+1, player.max_lives)
|
||||||
player.notify_self()
|
player.notify_self()
|
||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -273,10 +278,11 @@ class PonyExpress(WellsFargo):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
return super().play_card(player, against)
|
return super().play_card(player, against)
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -293,10 +299,11 @@ class Howitzer(Gatling):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
return super().play_card(player, against)
|
return super().play_card(player, against)
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -313,11 +320,12 @@ class CanCan(CatBalou):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
player.sio.emit('chat_message', room=player.game.name, data=f'_play_card_against|{player.name}|{self.name}|{against}')
|
player.sio.emit('chat_message', room=player.game.name, data=f'_play_card_against|{player.name}|{self.name}|{against}')
|
||||||
return super().play_card(player, against)
|
return super().play_card(player, against)
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -336,10 +344,11 @@ class Conestoga(Panico):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
return super().play_card(player, against)
|
return super().play_card(player, against)
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -356,6 +365,7 @@ class Pepperbox(Bang):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
if against != None:
|
if against != None:
|
||||||
Card.play_card(self, player, against=against)
|
Card.play_card(self, player, against=against)
|
||||||
@ -363,7 +373,7 @@ class Pepperbox(Bang):
|
|||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
@ -381,6 +391,7 @@ class FucileDaCaccia(Card):
|
|||||||
self.can_be_used_now = False
|
self.can_be_used_now = False
|
||||||
|
|
||||||
def play_card(self, player, against, _with=None):
|
def play_card(self, player, against, _with=None):
|
||||||
|
import bang.expansions.fistful_of_cards.card_events as ce
|
||||||
if self.can_be_used_now:
|
if self.can_be_used_now:
|
||||||
if against != None:
|
if against != None:
|
||||||
super().play_card(player, against=against)
|
super().play_card(player, against=against)
|
||||||
@ -388,7 +399,7 @@ class FucileDaCaccia(Card):
|
|||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
if not self.is_duplicate_card(player):
|
if not self.is_duplicate_card(player) and not player.game.check_event(ce.IlGiudice):
|
||||||
self.reset_card()
|
self.reset_card()
|
||||||
player.equipment.append(self)
|
player.equipment.append(self)
|
||||||
return True
|
return True
|
||||||
|
Loading…
Reference in New Issue
Block a user