我正在与Pygame制作游戏,但我遇到了命令问题: 例如,当我按下时,左键播放器向左移动;按住左键我按下右键:然后播放器向右移动。 当我释放Right_Key时,我希望该玩家再次离开,直到我没有有效地释放左键。
这是我的移动代码:
def handle_events(events):
for event in events:
if event.type == pygame.QUIT:
pygame.quit()
sys.exit(1)
if event.type == pygame.KEYDOWN:
if event.key == 275:
KeyVar.dx = +2
elif event.key == 276:
KeyVar.dx = -2
elif event.key == 274:
KeyVar.dy = +2
elif event.key == 273:
KeyVar.dy = -2
if event.key == 32:
KeyVar.space = 1
elif event.type == pygame.KEYUP:
if event.key in (275, 276):
KeyVar.dx = 0
elif event.key in (274, 273):
KeyVar.dy = 0
if event.key == 32:
KeyVar.space = 0
所以:
while True:
handle_events(pygame.event.get())
[抱歉我的英语不好]
答案 0 :(得分:2)
elif event.type == pygame.KEYUP: if event.key in (275, 276): KeyVar.dx = 0
这段代码使得如果任何一个键被释放它就会停止移动。你可能想要使用"和"声明,以防止它阻止你,即使你按住一个键