这是在python和pygame中为角色设置动画的最佳方法吗?

时间:2015-04-30 17:56:33

标签: python pygame

所以我在python和pygame中制作一个游戏,从顶视图(自上而下的游戏)在屏幕上行走的角色,我想出了如何让他在延迟中更改图像,这样看起来他走路这就是我的方式做到了

Sprite_animation_list = [
pygame.image.load(os.path.join('assets','sprites','pic1.png')),
pygame.image.load(os.path.join('assets','sprites','pic2.png')),
pygame.image.load(os.path.join('assets','sprites','pic3.png')),
pygame.image.load(os.path.join('assets','sprites','pic4.png')),

animation_timer = pygame.USEREVENT + 1
pygame.time.set_timer(animation_timer, 50)
current_sprite = sprite_animation_list[0]
while True:
   if animation_frame == 0:
      current_sprite = sprite_animation_list[0]
   if animation_frame == 1:
      current_sprite = sprite_animation_list[1]
   if animation_frame == 2:
      current_sprite = sprite_animation_list[2]
   if animation_frame == 3:
      current_sprite = sprite_animation_list[3]

   for event in pygameevent.get():
      if event.type == animation_timer:
          animation_frame += 1
          if animation_frame == 3:
            animation_frame = 0

   display.blit(current_sprite,(0,0))

这不是我在游戏中的实际代码,只是动画如何工作的一个简单示例。但即使这看起来像我一周想出来。我不相信这是最好的方式,因为计时器仍将在背景中进行,当你静止不动和精灵变化时。有没有其他方法可以更好地做到这一点,还是一个好方法?

0 个答案:

没有答案