2016-01-20 177 views
1

因此,我正在制作一款游戏,在60秒结束时,我想让屏幕改变颜色并显示一些结束文本。 我设置了这样的计时器:闪烁的屏幕 - pygame

time = 60 
TICKTOCK = 0 
pygame.time.set_timer (TICKTOCK+1, 1000) 

而这正显示在屏幕上就好了,但是当最终屏幕显示它原来的白色屏幕和终端屏幕之间闪烁。出于某种原因,如果我在屏幕上挥动鼠标,它不会闪光。

if time <= 0: 
    playground.fill(black) 
    playground.blit(end, (0, 100)) 

“结束”是我的游戏结束文本变量

pygame.display.flip() 
    playground.fill(white) 
    clock.tick (fps) 

pygame.quit() 

这是我在最后也没有什么帮助

有没有一种办法可以让它稳步出现不不得不改变我的计时器?

+1

可能你必须改变你的代码其他部分。 – furas

+0

这是因为你是否将背景填充为白色?我有一种感觉,填充函数的工作原理并不会让它碰到它 – Peter

+0

为什么你会填充(白色)'?可能你不需要它。 – furas

回答

1

您展示不够代码,所以我只能建议做这样的事情

if not gameover: 

    playground.fill(...) 

    # draw normal game 

else: 

    playground.fill(...) 

    # draw gameover text 

playground.flip() 
+0

这个建议有帮助,但我也发现改变我的FPS或改变从秒计数到毫秒的定时器修复它,谢谢! –

+0

改变速度不能修复它 - 白色屏幕仍然存在,但现在你的眼睛看不到这个白色屏幕;)在较慢的计算机上,你将再次看到白色屏幕:) – furas