def _getDir(self): decks = self.game.gameinfo.decks if len(self.cards) < 4 * decks: return 0 if isRankSequence(self.cards[-4 * decks:], dir=0): return 1 return 0
def _getDir(self): decks = self.game.gameinfo.decks if len(self.cards) < 4*decks: return 0 if isRankSequence(self.cards[-4*decks:], dir=0): return 1 return 0
def acceptsCards(self, from_stack, cards): if (not self.basicAcceptsCards(from_stack, cards) or not isRankSequence(cards, dir=1)): return 0 stackcards = self.cards if not len(stackcards): return 1 return stackcards[-1].rank + 1 == cards[0].rank
def canMoveCards(self, cards): if not self.basicCanMoveCards(cards): return False if not isRankSequence(cards, self.cap.mod, self.cap.dir): return False num_seq = self._getNumSSSeq(cards) max_move = self._getMaxMove(1) return num_seq <= max_move
def closeStack(self): if len(self.cards) == 4 and isRankSequence(self.cards, dir=0): if not self.game.moves.state == self.game.S_REDO: self.game.flipAllMove(self)
def isGameWon(self): for s in self.s.rows: if len(s.cards) == len(self.cards) and isRankSequence(s.cards): return 1 return 0
def acceptsCards(self, from_stack, cards): if not AbstractFoundationStack.acceptsCards(self, from_stack, cards): return False return isRankSequence(cards, dir=0)
def acceptsCards(self, from_stack, cards): if len(cards) < 4: return False return isRankSequence(cards, dir=0)
def canMoveCards(self, cards): return isSameSuitSequence(cards) or isRankSequence(cards, dir=0)
def isGameWon(self): for s in self.s.rows: if s.cards: if len(s.cards) != 13 or not isRankSequence(s.cards): return False return True
def _isAcceptableSequence(self, cards): return isRankSequence(cards, self.cap.mod, self.cap.dir)