我是pygame的新手,并尝试制作基于本教程的平台游戏:http://programarcadegames.com/python_examples/show_file.php?file=platform_scroller.py
我无法弄清楚如何添加移动的敌人,你能帮助我吗?
答案 0 :(得分:0)
移动敌人将是Player
和Platform
对象在您链接的示例中的工作方式的组合:
敌人类将是pygame.sprite.Sprite
的子类,类似于上述两个对象。
他们必须实施update()
方法,类似于Player
,以定义它们在每个帧上的移动方式。请Player.update()
获取指导;基本上,以某种方式移动Enemy
' rect
。
敌人类的实例应该添加到一个级别的enemy_list
对象(已经存在于示例代码中),这意味着它们将在每一帧上更新和绘制。这类似于Level_0x
构造函数将Platform
个实例添加到关卡platform_list
变量的方式。
简而言之,这看起来像是:
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())