如何在pygame程序中移动图片?

Kshitij singh

我下面有代码,图像不动。请告诉我出了什么问题,以便我可以快速解决。另外,请尽量使答案简短而切题。

我能听到所有的音乐,退出键和退出键也起作用,方向键则不能。

PlayerImage = pygame.image.load("ch.jpg")
Player = pygame.Rect(675, 350, 40, 4)
StretchPlayer = pygame.transform.scale(PlayerImage, (40, 40))

goLeft = False
goRight = False
goUp = False
goDown = False

Velocity = 3

EatSound = pygame.mixer.Sound("sound.wav")
pygame.mixer.music.load("X.mp3")
pygame.mixer.music.play(-1, 0.0)
musicPlaying = True

while True :

    for event in pygame.event.get() :

        if event.type == QUIT:
            pygame.quit()
            sys.exit()

        if event.type == pygame.KEYDOWN:

            if event.key == pygame.K_LEFT or event.key == ord('A'):
                goRight = False
                goLeft = True

            if event.key == pygame.K_RIGHT or event.key == ord('D'):
                goRight = True
                goLeft = False

            if event.key == pygame.K_UP or event.key == ord('W'):
                goUp = True
                goDown = False

            if event.key == pygame.K_DOWN or event.key == ord('S'):
                goUp = False
                goDown = True

        if event.type == pygame.KEYUP:

            if event.key == pygame.K_ESCAPE:
                pygame.quit()
                sys.exit()

            if event.key == pygame.K_LEFT or event.key == ord('A'):
                goLeft = False

            if event.key == pygame.K_RIGHT or event.key == ord('D'):
                goRight = False

            if event.key == pygame.K_UP or event.key == ord('W'):
                goUp = False

            if event.key == pygame.K_DOWN or event.key == ord('S'):
                goDown = False

    DisplayScreen.blit(StretchPlayer, Player)
    pygame.display.update()
拉比德76

只要改变矩形的位置Player取决于goLeftgoRightgoUp以及goDown由例如.move

dx = -1 if goLeft else 1 if goRight else 0
dy = -1 if goUp   else 1 if goDown  else 0
Player = Player.move(dx, dy)
DisplayScreen.blit(StretchPlayer, Player)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章