Я работаю над боксерской игрой.Потратив часы на создание листа спрайта, у меня возникли проблемы с его использованием в моей игре.Анимации загружаются нормально, но я не могу найти хороший способ их контролировать.Я хотел бы, чтобы каждая строка моего цикла sprite_sheet только один раз, но, используя этот код, удар будет повторяться до тех пор, пока я не отпущу ключ.
left_jab = False
for event in pygame.event.get():
if event.type == pygame.QUIT:
quit()
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_UP:
left_jab = True
elif event.type == pygame.KEYUP:
if event.key == pygame.K_UP:
left_jab = False
if left_jab:
player.update(dt)
player.render_left_jab(gameDisplay)
Это часть класса проигрывателя:
def update(self, dt):
self.current_time += dt
if self.current_time >= self.animation_time:
self.current_time = 0
if self.current_image >= self.numImages - 1:
self.current_image = 0
else:
self.current_image += 1
Есть ли более простой способ сделать это?В моей спрайт-листе по 8 изображений в каждой строке.Это просто вопрос создания более плавной анимации с использованием большего количества изображений?