只需等待 5 秒按钮被点击,否则其他玩家将赢得游戏
Wait only for 5 seconds for a button to be clicked else other player wins the game
我正在创建一个井字游戏,我有一个条件,即如果玩家在 5 秒内没有响应,他将输掉游戏。播放器通过单击按钮进行响应。我们有这样的事情要做吗?
我尝试通过点击按钮的时间列表来实现这一点,并检查在接下来的 5 秒内是否发生了新的按钮点击。它在第一次点击时运行良好,但在添加多次点击时会变得复杂。code of what i tried
您可以创建一个 class 来记录上次单击按钮的时间,方法是 returns 下一次单击是否在 5 秒内。
class ClickCheck:
def __init__(self):
self.last_click = None
def clicked_in_time(self) -> bool:
# Handle the first click.
if self.last_click is None:
self.last_click = time.time()
return True
# Handle later clicks.
new_click = time.time()
if new_click - self.last_click > 5:
return False
self.last_click = new_click
return True
您将需要创建 ClickCheck
的实例,并创建一个在您的按钮被单击时调用的回调函数。在那个回调中,调用 ClickCheck
实例的 clicked_in_time
方法,它会告诉你它是否被及时点击。回调函数中的其余代码可以决定如何处理结束或继续游戏。
我正在创建一个井字游戏,我有一个条件,即如果玩家在 5 秒内没有响应,他将输掉游戏。播放器通过单击按钮进行响应。我们有这样的事情要做吗?
我尝试通过点击按钮的时间列表来实现这一点,并检查在接下来的 5 秒内是否发生了新的按钮点击。它在第一次点击时运行良好,但在添加多次点击时会变得复杂。code of what i tried
您可以创建一个 class 来记录上次单击按钮的时间,方法是 returns 下一次单击是否在 5 秒内。
class ClickCheck:
def __init__(self):
self.last_click = None
def clicked_in_time(self) -> bool:
# Handle the first click.
if self.last_click is None:
self.last_click = time.time()
return True
# Handle later clicks.
new_click = time.time()
if new_click - self.last_click > 5:
return False
self.last_click = new_click
return True
您将需要创建 ClickCheck
的实例,并创建一个在您的按钮被单击时调用的回调函数。在那个回调中,调用 ClickCheck
实例的 clicked_in_time
方法,它会告诉你它是否被及时点击。回调函数中的其余代码可以决定如何处理结束或继续游戏。