Python 为什么我使用pygame.key.get_pressed()时角色只向左移动?
我是Python新手,但我决定尝试在Pygame中制作一个格斗游戏。 我的角色将仅在强制更新时向左移动 我试过: 按下键Python 为什么我使用pygame.key.get_pressed()时角色只向左移动?,python,pygame,python-idle,Python,Pygame,Python Idle,我是Python新手,但我决定尝试在Pygame中制作一个格斗游戏。 我的角色将仅在强制更新时向左移动 我试过: 按下键 如果event.key==pygame.K\u d: 钥匙 如果event.key==pygame.K\u d或event.key==pygame.K\u a: x_变化=0 它在一定程度上起作用。当你需要突然改变方向,但却无法改变方向时,这很烦人 我还用AND更改了OR,因此当两个方向都抬起时,OR将停止,但这会阻止从两个方向移动 这样我就可以移动,而不是因为测试原因而
如果event.key==pygame.K\u d:
钥匙
如果event.key==pygame.K\u d或event.key==pygame.K\u a:
x_变化=0
它在一定程度上起作用。当你需要突然改变方向,但却无法改变方向时,这很烦人
我还用AND更改了OR,因此当两个方向都抬起时,OR将停止,但这会阻止从两个方向移动
这样我就可以移动,而不是因为测试原因而战斗
fighting = False
while not fighting:
for event in pygame.event.get():
if event.type == pygame.QUIT:
fighting - False
keys = pygame.key.get_pressed()
if keys[pygame.K_a]:
x_change1 = -5
if keys[pygame.K_d]:
x_change1 = 5
if not keys[pygame.K_a] and keys[pygame.K_d]:
x_change1 = 0
x1 += x_change1
gameDisplay.fill(white)
fighter1(x1,y1)
pygame.display.update()
clock.tick(28)
我的家伙只在我强制更新时向左移动X像素,例如再次按A(左)提起A或将鼠标移到窗口上。D(右)注册但不移动。按下A键后,即使按键向上,它也不会停止运行。我想解决这个问题,这样我就可以更轻松地添加跳跃、攻击和玩家2。这里缺少not操作符:
if not keys[pygame.K_a] and keys[pygame.K_d]:
x_change1 = 0
添加如下内容:
if not keys[pygame.K_a] and not keys[pygame.K_d]:
x_change1 = 0
谢谢不知道和不知道能不能一起走上一条路。我通过将x1+=x_change1向后移动1行来解决鼠标问题。