【问题标题】:Could anyone tell me why when I press x my Character does not move faster?谁能告诉我为什么当我按 x 时我的角色没有更快地移动?
【发布时间】:2021-08-25 14:52:39
【问题描述】:

代码部分。在我按下 x 之后,当我按下 a/d 时角色移动的速度不会变为 30。

    speed = 8

    if keys[pygame.K_x]:
        speed = 30

        
    if keys[pygame.K_d]:
        Character_rect.x += speed
    
    if keys[pygame.K_a]:
        Character_rect.x -= speed

【问题讨论】:

  • 1. speed = 8 应该在您拥有的任何循环之外,否则它会重置。 2.这段代码检查指令指针在这一行时的状态(甚至现在,idk什么是“键”,我不知道pygame本身)。假设当您点击 a/d 时,python 会评估是否使用 x - a/d 将被错过。尝试按住(不按下)您的键,直到发生某些事情(如果 ifs 写得正确 - 正如我所说,我不知道这个“键”是什么)。 3. 考虑使用事件来避免 2.
  • 谢谢,我已经修好了

标签: python pygame


【解决方案1】:

如果你把这段代码放在了一个while循环中,当while循环重新运行时,它会将速度重置为8

【讨论】:

  • 谢谢,我现在意识到我应该将 speed = 8 变量排除在循环之外
猜你喜欢
  • 2012-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-03
  • 2016-04-25
  • 2020-04-29
  • 2015-03-22
  • 1970-01-01
相关资源
最近更新 更多