def clear_trick(game, win): curses.flash() if not game.player().hand: #waiting_for_deal = 15 draw_score_sheet(game, win) game.clear_trick() game.render(win) curses.doupdate()
def render(self, win): win.clear() h, w = win.getmaxyx() for i in xrange(len(self.players)): self.players[i].render(i, i == self.active_player and (self.tricks_complete != 0 or len(self.trick) > 0), win) i = (self.active_player - len(self.trick) + len(self.players) + (1 if len(self.trick) == len(self.players) else 0)) % len(self.players) coords = [(h/2 + 5*y - 4, w/2 + 5*x - 4) for y, x in [(1, 0), (0, -1), (-1, 0), (0, 1)]] for card in self.trick: card.draw(win, coords[i][0], coords[i][1]) i = (i + 1) % len(self.players) if self.tricks_complete == 0 and not self.trick and self.rounds_complete > 0: draw_score_sheet(self, win)