【发布时间】:2014-01-14 09:39:42
【问题描述】:
我正在使用 pygame 编写游戏。如果我在玩游戏时用鼠标拖动窗口,那么游戏似乎会暂停,但是当我们松开鼠标点击时,敌人已经越过了所有的墙壁,并且正在愉快地向远处移动。
我推测这是因为循环继续更新精灵的位置,但由于某种原因没有检测到墙壁和敌人之间的碰撞。
无论如何,我决定让 pygame 告诉我窗口是否被拖动。然后我想暂停游戏。
有没有可以做到这一点的功能?不然怎么办?
如果这个问题没有得到解决,我显然可以一直使用全屏,但我更愿意解决这个问题。
【问题讨论】:
-
这在我看来不像答案是检测何时有人拖动窗口。看起来您应该弄清楚当有人拖动窗口并使其停止发生时发生了什么。您的游戏甚至不应该注意到窗口何时被拖动。
-
我知道这个回复有点晚了;但是关于评论,我注意到了同样的效果,我怀疑这不是因为代码继续运行,而是因为通过使用 DeltaTime = clock.tick(30) 来调整慢速计算机,那么这个导致循环被延迟 - 但不是时钟,因此这个值增加到更大的比例。我相信这一点,因为我注意到通过停止循环使游戏暂停时产生相同的效果 - 发生了同样的事情 - 但是当我通过将变量声明为 clock.tick(30) 1 额外时间来“浪费”一个值时,这停止了
标签: python time drag-and-drop window pygame