Пример #1
0
class Table:
	def __init__(self, people_number):
		self._all_cards = None
		self._copy_cards = None
		self._public_cards = []
		self.newRound()

	# 新的一局
	def newRound(self):
		self._all_cards = Cards()

	# 发手牌
	def Deal(self):
		hands = []
		for i in range(0, 2):
			hands.append(self._all_cards.pop())
		return hands

	# 发特定手牌
	def specialDeal(self, hands):
		self._all_cards.remove(hands[0])
		self._all_cards.remove(hands[1])
		return hands

	# 从牌堆里随机抽出一张牌
	def popCard(self):
		card = self._all_cards.pop()
		return card

	# 同步桌子上的公共牌
	def syncPublicCards(self, cards_list):
		self._public_cards = cards_list
		all_cards = self._all_cards.getAllCards()
		for i in range(0, len(cards_list)):
			if cards_list[i] in all_cards:
				self._all_cards.remove(cards_list[i])

	# 返回桌子上的公共牌
	def getPublicCards(self):
		return self._public_cards

	# 回收牌
	def recoverCards(self, cards):
		self._all_cards.add(cards)

	# 显示牌堆
	def showAllCards(self):
		print (self._all_cards.show())

	# 复制牌堆
	def copyCards(self):
		self._copy_cards = copy.deepcopy(self._all_cards)

	# 恢复牌堆
	def recoverPreCards(self):
		self._all_cards = copy.deepcopy(self._copy_cards)

	# 洗牌
	def shuffle(self):
		self._all_cards.shuffle()
Пример #2
0
def read_cards(database, query_tuple):
    """
    read card data
    """
    conn = sqlite3.connect(database)
    cursor = conn.cursor()
    if query_tuple == "all":
        cursor.execute("SELECT DISTINCT posid, statid FROM cards")
        all_cards = cursor.fetchall()
    else:
        all_cards = query_tuple
    cards = Cards()
    for t in all_cards:
        cursor.execute("""SELECT time FROM cards
                          WHERE posid = ? AND statid = ?
                          ORDER BY time ASC""", t)
        results = cursor.fetchall()
        results = [time[0] for time in results]
        card = Card(results, t)
        cards.add(card)
    cursor.close()
    conn.close()
    return cards
Пример #3
0
def read_cards(database, query_tuple):
    """
    read card data
    """
    conn = sqlite3.connect(database)
    cursor = conn.cursor()
    if query_tuple == "all":
        cursor.execute("SELECT DISTINCT posid, statid FROM cards")
        all_cards = cursor.fetchall()
    else:
        all_cards = query_tuple
    cards = Cards()
    for t in all_cards:
        cursor.execute(
            """SELECT time FROM cards
                          WHERE posid = ? AND statid = ?
                          ORDER BY time ASC""", t)
        results = cursor.fetchall()
        results = [time[0] for time in results]
        card = Card(results, t)
        cards.add(card)
    cursor.close()
    conn.close()
    return cards