Python和Kivy的小型纸牌游戏



我正在用Python和Kivy编写一个程序。我想编程一个游戏,通过这个程序从滑板牌组中随机发放一张牌(这已经很好了!(。然后,每张卡片后面都应该出现一个任务。任务总是取决于数字或图片:例如,在每7个任务之后;每个人都应该喝3口"来

有人能帮我吗?不幸的是,我再也说不下去了。

感谢

其中一个代码(德语程序输出(:

from random import randint
# Global variables
cardSuits = ['PIK', 'HERZ', 'KARO', 'KREUZ']
courtCards = ['BUBE', 'DAME', 'KÖNIG']
cardRanks = ['ASS'] + ['{}'.format(x) for x in range(7, 11)] + courtCards
cardsDrawn = []
# Functions
def draw_a_card(self, *args):
# a deck of card has 32 playing cards
if len(cardsDrawn) >= 32:
print("tcards_drawn=", sorted(cardsDrawn))
return 'Alle Karten wurden ausgeteilt!'

# Example set of 32 playing cards; 8 of each suit clubs, diamonds, hearts, and spades
suit = randint(1, 4)
rank = randint(1, 8)
card = '{0}-{1:02d}'.format(suit, rank)
if card not in cardsDrawn:
cardsDrawn.append(card)
return '{1} {0}'.format(cardRanks[rank-1], cardSuits[suit-1])

else:
return draw_a_card(self, args)

尝试创建一个任务列表,并使用卡片等级作为列表的索引。类似于:

from random import randint
# Global variables
cardSuits = ['PIK', 'HERZ', 'KARO', 'KREUZ']
courtCards = ['BUBE', 'DAME', 'KÖNIG']
cardRanks = ['ASS'] + ['{}'.format(x) for x in range(7, 11)] + courtCards
cardsDrawn = []
tasks = ["unused", "task1", "task2", "task3", "task4", "task5", "task6",  "Everyone should drink 3 sips!", "task8"]
# Functions
def draw_a_card(self, *args):
# a deck of card has 32 playing cards
if len(cardsDrawn) >= 32:
print("tcards_drawn=", sorted(cardsDrawn))
return 'Alle Karten wurden ausgeteilt!'

# Example set of 32 playing cards; 8 of each suit clubs, diamonds, hearts, and spades
suit = randint(1, 4)
rank = randint(1, 8)
card = '{0}-{1:02d}'.format(suit, rank)
the_task = tasks[rank]
if card not in cardsDrawn:
cardsDrawn.append(card)
return '{1} {0}'.format(cardRanks[rank-1], cardSuits[suit-1])

else:
return draw_a_card(self, args)

也许可以将任务添加到返回字符串中。

最新更新