При нажатии кнопки движения персонажа, анимация моба так же начинает проигрывать анимацию. Хотя должна проигрывать анимацию отдельно

Я делаю игры на Python при помощи Pygame. Изучать язык начал примерно пол года назад, так что знаю его не полностью. Суть проблемы заключается в следующем: Я создал персонажа, и он начинает двигаться при нажатии кнопки "a" - влево, "d" - вправо соответственно, и создал моба который движется справа налево, постоянно, я хотел сделать так чтобы моб бежал без остановок и анимация проигрывалась постоянно, но получается так что моб движется постоянно но анимация проигрывается только после нажатия какой либо из кнопок ("a" или "d")

         pygame.image.load("rR4.png"), pygame.image.load("rR5.png"), pygame.image.load("rR6.png")]```
^^Это спрайты.^^

```def drawwin():
    global animcon
    drawMob()
    win.blit(bg, (0, 0))
    if animcon + 1 >= 30:
        animcon = 0
    
    if left:
        win.blit(walkl[animcon // 5], (x, y))
        animcon += 1
    elif right:
        win.blit(walkr[animcon // 5], (x, y))
        animcon += 1
    else:
        if lastM == "right":
            facing = 1
            win.blit(pSR, (x, y))
        else:
            facing = -1
            win.blit(pSL, (x, y))
    for bullet in bullets:
        bullet.draw(win)

    pygame.display.update()```

```    if keys[pygame.K_a] and x > 5:
        x -= speed
        left = True
        right = False
        lastM = "left"
    elif keys[pygame.K_d] and x < 1024 - width - 5:
        x += speed
        right = True
        left = False
        lastM = "right"
    else:
        left = False
        right = False
        animcon = 0
    if not (isjump):
        if keys[pygame.K_SPACE]:
            isjump = True
    else:
        if jumpcon >= -10:
            if jumpcon < 0:
                y += (jumpcon ** 2) / 5
            else:
                y -= (jumpcon ** 2) / 5
            jumpcon -= 1
        else:
            isjump = False
            jumpcon = 10```
^^Эта часть отвечающая за его движение и стрельбу^^

```def drawMob():
    global mobx, moby, mobwidth, mobheight
    win.blit(mobMotion[animcon // 5], (mobx, moby))
    if mobx >= -mobwidth:
        mobx -= 4
    else:
        mobx = 1024``` 
и вот такой функцией я задал рисования спрайта моба. Помогите пожалуйста, почему спрайт движется без анимации когда кнопка не нажата, Но как только кнопку нажимают анимация начинается?


Ответы (0 шт):