我正在使用pygame制作街机游戏,并且试图每隔几秒钟就有一个精灵更改位置。我尝试使用time.sleep(1)并将帧频更改为.5(clock.tick(.5))。两者都仅在经过时间间隔后才能使对象改变位置,但是它们也使跟随我的鼠标更新的精灵以相同的速率移动。我一直在研究,似乎无法找到另一种方法来使Sprite移动,而不会使我的程序每次运行时刷新速度变慢或“休眠”。
3 回答

慕码人8056858
TA贡献1803条经验 获得超6个赞
怎么样
var = 0
while True:
event_handling()
game_logic()
if var == 5:
sprite.update.position()
var = 0
pygame.display.flip()
var += 1
显然,这只是伪代码,但是您知道了。

aluckdog
TA贡献1847条经验 获得超7个赞
如果Rect播放器在屏幕的Rect外部(例如,x坐标为负或x坐标+宽度大于屏幕宽度),那么钳制功能将“将其移回”它位于屏幕内部。Rect类的大多数函数都将返回一个新的Rect,但是它们具有_ip(就地)版本,它将代替原来的Rect。因此,这条线基本上只是确保播放器不能移出屏幕
添加回答
举报
0/150
提交
取消