From 2b1691fc3f22cd2ba91b5ecb27c776ea156755bf Mon Sep 17 00:00:00 2001 From: Alberto Xamin Date: Tue, 22 Dec 2020 16:15:34 +0100 Subject: [PATCH] start fistful of cards on the second round --- backend/bang/deck.py | 2 ++ backend/bang/game.py | 6 +++++- frontend/src/components/Card.vue | 19 +++++++++++++++---- frontend/src/components/Deck.vue | 8 ++++++-- 4 files changed, 28 insertions(+), 7 deletions(-) diff --git a/backend/bang/deck.py b/backend/bang/deck.py index 8d4a418..136127d 100644 --- a/backend/bang/deck.py +++ b/backend/bang/deck.py @@ -22,6 +22,8 @@ class Deck: self.event_cards: List[ce.CardEvent] = [] if 'fistful_of_cards' in game.expansions: self.event_cards.extend(ce.get_all_events()) + self.event_cards.insert(0, None) + self.event_cards.insert(0, None) # 2 perchè iniziale, e primo flip dallo sceriffo random.shuffle(self.cards) self.scrap_pile: List[cs.Card] = [] print(f'Deck initialized with {len(self.cards)} cards') diff --git a/backend/bang/game.py b/backend/bang/game.py index f7d67e5..78c576c 100644 --- a/backend/bang/game.py +++ b/backend/bang/game.py @@ -141,6 +141,7 @@ class Game: self.sio.emit('chat_message', room=self.name, data=f'_sheriff|{self.players[i].name}') self.turn = i self.players[i].notify_self() + self.notify_event_card() def attack_others(self, attacker: pl.Player): attacker.pending_action = pl.PendingAction.WAIT @@ -283,7 +284,10 @@ class Game: def notify_event_card(self): if len(self.deck.event_cards) > 0: - self.sio.emit('event_card', room=self.name, data=self.deck.event_cards[0].__dict__) + if self.deck.event_cards[0] != None: + self.sio.emit('event_card', room=self.name, data=self.deck.event_cards[0].__dict__) + else: + self.sio.emit('event_card', room=self.name, data=None) def notify_scrap_pile(self): print('scrap') diff --git a/frontend/src/components/Card.vue b/frontend/src/components/Card.vue index 65a339f..091739e 100644 --- a/frontend/src/components/Card.vue +++ b/frontend/src/components/Card.vue @@ -87,6 +87,17 @@ export default { box-shadow: 0 0 0pt 4pt white, 0 0 5pt 4pt #aaa; border: 2pt dashed rgb(50 122 172); } +.card.back.fistful-of-cards{ + color:white; + background: repeating-linear-gradient( + 45deg, + rgb(50 122 172), + rgb(50 122 172) 5px, + rgb(30 102 152) 5px, + rgb(30 102 152) 10px + ); + border: 2pt solid rgb(50 122 172); +} .card h4 { position: absolute; text-align: center; @@ -124,12 +135,12 @@ export default { } @media (prefers-color-scheme: dark) { :root, #app { - background-color: #181a1b; - color: rgb(174, 194, 211); - } + background-color: #181a1b; + color: rgb(174, 194, 211); + } .card { background-color: #181a1b; - color: rgb(174, 194, 211); + color: rgb(174, 194, 211); box-shadow: 0 0 0 3pt #987e51, 0 0 0 6pt #181a1b, diff --git a/frontend/src/components/Deck.vue b/frontend/src/components/Deck.vue index 2e3089c..53e6b77 100644 --- a/frontend/src/components/Deck.vue +++ b/frontend/src/components/Deck.vue @@ -5,7 +5,7 @@
- +
@@ -59,7 +59,11 @@ export default { this.lastScrap = card }, event_card(card) { - this.eventCard = card + this.eventCard = card == false ? { + name: 'PewPew!', + icon: '🎲', + back: true + } : card }, }, computed: {