def draw_card(self, player: int) -> None:
if self.nextDraw >= len(self.deck):
return
card: ServerCard = self.deck[self.nextDraw]
if card.status != CardStatus.Deck:
raise GameException('Bad Card Status', card.status)
card.player = player
card.status = CardStatus.Hand
p: Game
info: dict
for p in self.players:
info = {'type': 'draw',
'who': player,
'order': self.nextDraw}
if p.botPosition != player:
info['suit'] = card.suit.value
info['rank'] = card.rank.value
self.send('notify', info, player=p.botPosition)
info = {'type': 'draw',
'who': player,
'order': self.nextDraw,
'suit': card.suit.value,
'rank': card.rank.value}
self.log('notify', info)
self.hands[player].append(self.nextDraw)
self.nextDraw += 1
if self.nextDraw >= len(self.deck):
self.endTurn = self.turnCount + len(self.players)
self.send('notify', {'type': 'draw_size',
'size': len(self.deck) - self.nextDraw})
self.print(verbose="{} draws {} {}".format(
names[player], card.suit.full_name(self.variant), card.rank.value))
评论列表
文章目录