AS3敌人编队



我一直在as3中使用starling框架开发射击游戏,通过查看一些不同的教程。问题在于,所有教程都教导玩家如何创造从一边移动到另一边的随机敌人。我想知道如何在屏幕上创造不同形式的敌人。

谁能建议一些书,教程,或任何基本的算法,让我走上正轨?

这是一个相当简单的生成阵型的方法。

在你的库中创建一个名为formation的符号,并将其用作链接/类名。

在那个符号中,在你想要的任何位置放置5个标记影片剪辑。对于标记夹,我建议使用居中的圆圈。无论你在哪里放置这些标记,都代表着敌人将在哪里诞生。

现在,在你想要生成这个队列的代码中,你可以这样做:

var formationData:MovieClip = new formation;
for (var index:int = 0;index < formationData.numChildren;index++)
{
    var spawnMarker:MovieClip = formationData.getChildAt(index) as MovieClip;
    var enemy:Enemy = new Enemy;
    enemy.x = spawnMarker.x;
    enemy.y = spawnMarker.y;
    addChild(enemy);
}

现在,这将根据你在你的队形符号中设置的内容生成一个队形。

你可以通过这样做来抵消生成敌人的位置:

var offsetX:Number = 200;
var offsetY:Number = 50;
for (var index:int = 0;index < formationData.numChildren;index++)
{
    var spawnMarker:MovieClip = formationData.getChildAt(index) as MovieClip;
    var enemy:Enemy = new Enemy;
    enemy.x = offsetX + spawnMarker.x;
    enemy.y = offsetY + spawnMarker.y;
    addChild(enemy);
}

这个概念允许你在flash IDE中可视化地布局你的阵型。所以你可以创造一大堆不同的形状然后随机选择一个。刷出点拼出一个单词吗?

显然上面的代码是一个例子,你需要将这个概念整合到你的刷出系统等。

根据你的敌人是从哪里生成的,你可能需要使用偏移量来启动他们在屏幕外。

最新更新