如何解决命令 K_UP 和 K_DOWN 在 Pygame 中不起作用
我在我的 Pygame 程序中编写了以下代码:-
if (event.type == pygame.KEYDOWN):
x = player_pos[0]
y = player_pos[1]
if (event.key == pygame.K_LEFT):
x -= player_size
elif (event.key == pygame.K_RIGHT):
x += player_size
elif (event.key == pygame.K_UP):
y += player_size
elif (event.key == pygame.K_DOWN):
y -= player_size
player_pos = [x,y]
但是,当我按下向上键时,对象会下降,当我按下向下键时,它会上升,反之亦然!任何人都可以让我知道我该如何解决这个问题?谢谢你的帮助:)
解决方法
在 Pygame 坐标系中,左上角为 (0,0)。从那里 x 坐标向右增加,y 坐标向下增加。因此,y 轴指向下方。您需要减少 y 坐标以向上移动并增加它以向下移动:
elif event.key == pygame.K_UP:
y -= player_size
elif event.key == pygame.K_DOWN:
y += player_size
,
pygame的笛卡尔式二维坐标系(一般来说,计算)的原点是左上角:(0,0)。从这里开始,x 和 y 分别向右和底部增加
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。