将敌人添加到pygame平台游戏中

时间:2015-06-14 19:01:09

标签: python pygame scroller

我是pygame的新手,并尝试制作基于本教程的平台游戏:http://programarcadegames.com/python_examples/show_file.php?file=platform_scroller.py

我无法弄清楚如何添加移动的敌人,你能帮助我吗?

1 个答案:

答案 0 :(得分:0)

移动敌人将是PlayerPlatform对象在您链接的示例中的工作方式的组合:

  1. 敌人类将是pygame.sprite.Sprite的子类,类似于上述两个对象。

  2. 他们必须实施update()方法,类似于Player,以定义它们在每个帧上的移动方式。请Player.update()获取指导;基本上,以某种方式移动Enemy' rect

  3. 敌人类的实例应该添加到一个级别的enemy_list对象(已经存在于示例代码中),这意味着它们将在每一帧上更新和绘制。这类似于Level_0x构造函数将Platform个实例添加到关卡platform_list变量的方式。

  4. 简而言之,这看起来像是:

    class Enemy(pygame.sprite.Sprite):
        def __init__(self):
            # Set the size, look, initial position, etc. of an enemy here...
            pass
    
        def update(self):
            # Define how the enemy moves on each frame here...
            pass
    
    class Level_01(Level):
        def __init__(self, player):
            # platform code already in example goes here...
    
            # Add two enemies to the level
            self.enemy_list.add(Enemy())
            self.enemy_list.add(Enemy())