拿着多个钥匙的游戏

2024-04-19 18:07:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用Pygame制作一个游戏,但是我在命令方面有一个问题: 例如,当我按左键时,播放器向左;按住左键我按右键:然后播放器向右。 当我释放右键时,我希望玩家再次向左移动,直到我不能有效地释放左键。在

以下是我的移动代码:

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

因此:

^{pr2}$

[抱歉我的英语不好]


Tags: keyineventiftypespaceevents播放器
1条回答
网友
1楼 · 发布于 2024-04-19 18:07:55
elif event.type == pygame.KEYUP:
    if event.key in (275, 276):
        KeyVar.dx = 0

this bit of code makes it so that if either key is released it stops moving. you may want to use an "and" statement to prevent it from stopping you even if you are holding a key down

相关问题 更多 >