0

This is part of a script I wrote. The script works when I press the keys A, D, RIGHT and LEFT. Except for the fact that when I press A and D "moving" isn't true, and the image of the sprite doesn't change, but it works for LEFT and RIGHT. I've tried modifying my code, but the same trend appears where it "moving" doesn't become true when I press A and D. Would anyone know how to solve this?


while running:
    ........
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT or event.key == pygame.K_a:
                moving = True
                spriteX_change = -0.3
            if event.key == pygame.K_RIGHT or event.key == pygame.K_d:
                moving = True
                spriteX_change = 0.3
            if event.key == pygame.K_SPACE:
                jumping = True
        else:
            moving = False

        if event.type == pygame.KEYUP:
            if event.key == pygame.K_LEFT or pygame.K_RIGHT or pygame.K_a or pygame.K_d:
                spriteX_change = 0
                spriteY = 480
                spriteY_change = 0
                spriteY_acc = 0

        ........

        
        if moving == True:
            print("moving")
            spriteImg = pygame.image.load("spider-man_2.png")
            spriteImg = pygame.transform.scale(spriteImg, (145, 140))
        elif moving == False:
            spriteImg = pygame.image.load("spider-man_1.png")
            spriteImg = pygame.transform.scale(spriteImg, (128, 140))
Rabbid76
  • 177,135
  • 25
  • 101
  • 146
Advas
  • 1
  • `if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT or event.key == pygame.K_a or event.key == pygame.K_d`: – Rabbid76 Jan 04 '22 at 16:47

0 Answers0