python 3.X滞后玩家移动



我试图用python/pygame重新创建pong,但我被玩家的移动卡住了。每当两个玩家同时移动时,他们就会滞后甚至停止移动。

我认为这与我阅读键盘键输入的方式有关——我试过几次改变它,但仍然没有成功。

while run1v1:
clock.tick(60)
window.fill((black))
for event in pg.event.get():
keys = pg.key.get_pressed()
playerposY += (keys[pg.K_s] - keys[pg.K_w]) * speed
player2posY += (keys[pg.K_DOWN] - keys[pg.K_UP]) * speed

请参阅按住键时如何移动精灵。

pygame.key.get_pressed()不是一个事件。您必须在应用程序循环中而不是在事件循环中进行移动:

# application loop
while run1v1:
clock.tick(60)
window.fill((black))
# event loop
for event in pg.event.get():
if event.type == pg.QUIT:
run1v1 = False
# INDENTTAION
#<--|
keys = pg.key.get_pressed()
playerposY += (keys[pg.K_s] - keys[pg.K_w]) * speed
player2posY += (keys[pg.K_DOWN] - keys[pg.K_UP]) * speed
while run1v1:
clock.tick(60)
window.fill((black))
keys = pg.key.get_pressed()
playerposY += (keys[pg.K_s] - keys[pg.K_w]) * speed
player2posY += (keys[pg.K_DOWN] - keys[pg.K_UP]) * speed
for event in pg.event.get():

最新更新