Этот код читается как walkLeft
должен быть список изображений для анимации ходьбы. Однако в коде вопроса walkLeft
представляет собой одно изображение:
walkLeft = pygame.image.load('adnan_leftWalk.png')
Так что, кажется, немного запутался.
Сообщение об ошибке, которое генерирует код - object is not subscriptable
, означает, что код пытался использовать нотацию массива (технически он пытался использовать свойство __getitem__()
), но рассматриваемый объект не является массивом / списком.
Строка с ошибкой:
win.blit(walkLeft[walkCount//3], (x, y)) # ERROR HERE
Заставляет меня думать, что walkLeft
должен быть списком изображений, так как он использует обозначение массива / списка в переменной, а walkCount
ограничен максимумом 27
., Но целочисленное деление на 3, тоже не имеет смысла (может там было 3 изображения анимации?). Простое удаление массива-нотации может пролить свет на проблему:
win.blit(walkLeft, (x, y)) # Fixes the bug, somewhat
... и позволить коду функционировать, рисуя одно и то же растровое изображение, но в разных местах. Но совершенно очевидно, что чего-то не хватает. Может ли код сочетать два (или более) примера?