嗨,我现在正在为记忆游戏(又名纸牌匹配游戏)编写代码,我在pygame中使用计时器来告诉玩家花多长时间才能发现每张纸牌(完全匹配纸牌组中的每对纸牌)。
self.score = pygame.time.get_ticks() // 1000
这是我写的检查时间的信息,我想在所有卡片都没被发现时停止此操作 有什么办法可以让我停下来吗?我进行了一些搜索,但没有找到适合我现在需要的东西。
https://www.youtube.com/watch?v=9-6iDRyPoVg&feature=youtu.be 这就是它的样子。
谢谢!
答案 0 :(得分:2)
如果您希望计时器停止计时,请将miliseconds参数设置为0。当所有卡都盖好后,您可能要说这样的话:cards_flipped_time =(pygame.time.get_ticks()-start_time)。
希望能有所帮助
答案 1 :(得分:2)
函数pygame.time.get_ticks()
返回自pygame.init()
被调用以来的毫秒数。
我认为一种更好的方法是记住第一次点击的时间,然后将其与最后点击的时间进行比较。
例如:
### Card was clicked
if ( game_start_time == 0 ):
game_start_time = pygame.time.get_ticks() # game start time
...
if ( cards_left_covered == 0 ):
# calculate the elapsed time
game_end_time = pygame.time.get_ticks()
self.score = ( game_end_time - game_start_time ) // 1000 # seconds