Pygame:我如何让精灵始终向右移动?

时间:2015-05-09 23:48:01

标签: python python-2.7 pygame sprite

我想要我的精灵(一架2d自上而下的战斗机)总是移动到精灵的右边。我现在有它,所以飞机旋转到鼠标指针所在的位置。现在我需要飞机始终在移动,因此您可以在飞机飞行时用鼠标旋转它。一个简短的代码示例将是非常好的,因为我不是很有经验。精灵是" plane.png"。如果重要的话,我正在使用Python 2.7。谢谢!

1 个答案:

答案 0 :(得分:0)

在开始实施任何内容之前,您可能想要澄清一些事情。首先,你真的希望精灵相对于窗口移动,或者你想让精灵保持静止并让背景滚动,让玩家觉得精灵正在你的身上移动游戏的风景?

假设你想要精灵本身移动,你想在精灵的对象中创建一个方法,不断地将它的x位置更新为略高的数字

while True:
    xpos += 1
    display_image = pygame.image.load(plane.png)
    display.blit(display_image, [xpos, ypos])

上面的片段,同时每帧增加精灵的x位置1。如果您尚未设置每秒渲染帧数的限制,我建议您查看creating a clock in pygame and calling the tick function every time the game loop runs

或者,你可以像上面一样做,但是传入鼠标光标的当前坐标,让精灵跟随你的光标。

如果您希望精灵保持静止并移动背景,您可以对背景中的每个元素执行相同的操作,反之亦然。

while True:
    xpos -= 1
    display_image = pygame.image.load(background.png)
    display.blit(display_image, [xpos, ypos]

希望这有用!