侧卷轴敌人刷出系统

本文关键字:系统 敌人 | 更新日期: 2023-09-27 18:15:37

我是XNA编码的初学者,我正在尝试制作一款类似于《超级马里奥兄弟》的侧卷轴游戏。我有玩家移动和敌人移动,但我在制作多个敌人和每个敌人在固定位置刷出时遇到了麻烦。

我该如何编码呢?
我试图制作一个敌人列表,然后每个新敌人将被赋予不同的位置,但它只是最终将第一个敌人的刷出位置移动到最新敌人的位置。

谁能给我一个所需代码的大纲?

我只需要知道如何在关卡的不同位置生成多个相同的敌人。

侧卷轴敌人刷出系统

你需要一个与你的玩家类相似的敌人类,记住,因为你要制作多个实例,所以它不能是静态的。

你将需要一个这个类的列表来控制你的敌人。

List<Enemy> Enemies = new List<Enemy>();

现在你可以添加一个随机位置的敌人(在敌人构造函数中为位置设置一些参数)

Random r = new Random();
...
Enemies.Add(new Enemy(new Vector2(r.Next(0,100),r.Next(0,100));

当你需要更新敌人时你可以在敌人类中添加一个方法并调用它

foreach (Enemy enemy in Enemies)
    enemy.Update(...);