当前位置: 首页 > 面试题库 >

按住键时如何移动精灵

柳德义
2023-03-14
问题内容

目前,每次按键时,精灵仅移动1个像素。按住左右键时,如何使水暖工精灵不断移动?

while running:
    setup_background()
    spriteimg = plumberright

    screen.blit(spriteimg,(x1, y1))

    for event in pygame.event.get():
         if event.type == pygame.QUIT:
             running = False
         elif event.type == pygame.KEYDOWN:
             if event.key == pygame.K_UP:
                 x1 = x1 + 0
                 y1 = y1 - 1
             elif event.key == pygame.K_DOWN:
                 x1 = x1 + 0
                 y1 = y1 + 1
             elif event.key == pygame.K_LEFT:
                 x1 = x1 -1
                 y1 = y1 + 0
             elif event.key == pygame.K_RIGHT:
                 x1 = x1 + 1
                 y1 = y1 + 0

    pygame.display.flip()
    clock.tick(120)

问题答案:

您可以使用pygame.key.get_pressed来做到这一点。

例:

while running:
    keys = pygame.key.get_pressed()  #checking pressed keys
    if keys[pygame.K_UP]:
        y1 -= 1
    if keys[pygame.K_DOWN]:
        y1 += 1


 类似资料:
  • 我创建了一个程序,创建一个正方形并将其绘制在JPanel上。还有控制正方形运动的键绑定(w为上)(s为下)(a为左)(d为右)。我的问题是,当我按下键时,它会移动一个实例,犹豫,然后继续移动。有没有办法防止运动的犹豫。 这是我的面板类。 任何帮助都将不胜感激。非常感谢。

  • 问题内容: 我正在使用Java通过Robot类生成鼠标按下: 但是,我希望机器人在一定时间内按下按钮。我该如何实现? 问题答案: 只需在两个动作之间睡眠一下(以毫秒为单位):

  • 问题内容: 我开始学习Java编程,并且我认为通过游戏开发学习Java很酷。我知道如何绘制图像并听按键,然后移动该图像。但是,当窗口正在听按键时,是否可以使图像在窗口中来回移动?例如,当图像或对象(如太空飞船)在窗口中从左向右移动时,如果按空格键,激光将在屏幕底部发射(很酷的:D)。但是基本上,我只是想知道在窗口正在听按键时如何使图像左右移动。 我在想将一个关键侦听器添加到我的窗口,然后触发一个无

  • 快速开发工具类,用最简洁的命令实现想要的功能。辅助模拟开发。 纯Java,跨平台,模拟按键、鼠标点击、找图、找色,实现简单按键精灵的功能 DEMO演示  辅助开发配套工具:ScreenCapture.jar:  将指定文字发音读出: new TTSUtil().speak("这是要读出的文字内容"); 发送一条短信     SendPhoneMsgUtil.send("13011658091", 

  • 我正在开发一个Swing gui。我有一个“Save”(保存)按钮,我希望它删除一个条目,而不是在按住Alt键时单击该条目。检查单击按钮时是否按住alt键没有问题。这不是这个问题的主题。 当按下Alt时,我希望“Save”(保存)按钮的文本更改为“Delete”(删除),当松开Alt时,返回到“Save”(保存)。 我曾尝试向我的JPanel添加一个KeyListener,但它似乎没有激活,可能是

  • 我使用vim插件,我通常通过按住j在vim中滚动。在VSCode中,保持j只是执行一个j命令,无论它保持多长时间。 即使在原版 vscode 中,这也不起作用 - 如果您尝试为注释分隔符键入 ####知道如何启用此功能吗?