我正在写一个扑克游戏,我在创造一个玩家可以加注的转弯功能时遇到了麻烦,然后另一个玩家跟注再次加注,然后是另一个(等等)。我不知道如何组织这个。到目前为止我有这个:
def turn(playerBank,label):
#playerBank is just the player's balance (whoever's turn it is) and label is just tkinter text.
win.getMouse()
action = ent.getText()
if action == 'check':
pass
elif action == 'call':
playerBank = playerBank - cashMoney
pool = pool + cashMoney
elif action == 'raise':
cashMoney = cash.getText()
playerBank = playerBank - cashMoney
pool = pool + cashMoney
elif action == 'fold':
break
我如何让它转两圈(每个玩家一个)但是,如果玩家加注,允许它再次循环,以便其他玩家可以选择打电话或弃牌......等等。
答案 0 :(得分:0)
首先想到的是使用布尔值。创建一个函数,检查转弯是否完全结束,并制作另一个布尔值来检查玩家是否已经加注。
布尔值playerRaise在玩家加注之前是假的,只有当所有玩家都对加注做出回应时才会变为真。您可以通过使用玩家数量并测量有多少响应来检查。每次玩家加注时都会重置。
函数checkTurn只检查playerRaise是否变为false,因为如果它为false则我们确定转弯已经完成。
我只是在这里大声思考,但这似乎是一个合理的解决方案,你怎么看?