kit carlson
This commit is contained in:
parent
08ff9abad6
commit
d2a67b7350
@ -26,6 +26,9 @@ class Deck:
|
|||||||
self.game.notify_scrap_pile()
|
self.game.notify_scrap_pile()
|
||||||
return card
|
return card
|
||||||
|
|
||||||
|
def put_on_top(self, card: Card):
|
||||||
|
self.cards.insert(0, card)
|
||||||
|
|
||||||
def draw(self) -> Card:
|
def draw(self) -> Card:
|
||||||
card = self.cards.pop(0)
|
card = self.cards.pop(0)
|
||||||
if len(self.cards) == 0:
|
if len(self.cards) == 0:
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
import deck
|
||||||
from enum import IntEnum
|
from enum import IntEnum
|
||||||
import json
|
import json
|
||||||
from random import randrange
|
from random import randrange
|
||||||
@ -124,6 +125,12 @@ class Player:
|
|||||||
def draw(self, pile):
|
def draw(self, pile):
|
||||||
if self.pending_action != PendingAction.DRAW:
|
if self.pending_action != PendingAction.DRAW:
|
||||||
return
|
return
|
||||||
|
if isinstance(self.character, characters.KitCarlson):
|
||||||
|
self.is_drawing = True
|
||||||
|
self.available_cards = [self.game.deck.draw() for i in range(3)]
|
||||||
|
self.pending_action = PendingAction.CHOOSE
|
||||||
|
self.notify_self()
|
||||||
|
else:
|
||||||
self.pending_action = PendingAction.PLAY
|
self.pending_action = PendingAction.PLAY
|
||||||
if pile == 'scrap' and isinstance(self.character, characters.PedroRamirez):
|
if pile == 'scrap' and isinstance(self.character, characters.PedroRamirez):
|
||||||
self.hand.append(self.game.deck.draw_from_scrap_pile())
|
self.hand.append(self.game.deck.draw_from_scrap_pile())
|
||||||
@ -316,6 +323,13 @@ class Player:
|
|||||||
self.choose_action = ''
|
self.choose_action = ''
|
||||||
self.pending_action = PendingAction.PLAY
|
self.pending_action = PendingAction.PLAY
|
||||||
self.notify_self()
|
self.notify_self()
|
||||||
|
elif self.is_drawing and isinstance(self.character, characters.KitCarlson):
|
||||||
|
self.hand.append(self.available_cards.pop(card_index))
|
||||||
|
if len(self.available_cards) == 1:
|
||||||
|
self.game.deck.put_on_top(self.available_cards.pop())
|
||||||
|
self.is_drawing = False
|
||||||
|
self.pending_action = PendingAction.PLAY
|
||||||
|
self.notify_self()
|
||||||
else:
|
else:
|
||||||
self.game.respond_emporio(self, card_index)
|
self.game.respond_emporio(self, card_index)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user