Actionscript 3 从阵列中添加敌人

Actionscript 3 从阵列中添加敌人,actionscript-3,flash-cs5,tiles-game,Actionscript 3,Flash Cs5,Tiles Game,我有一个敌方类(保存所有敌方电影剪辑)、一个关卡类(列出数组中关卡的布局)和我的主文档类(生成平铺中关卡的布局)。我的目标是每个关卡都有不同的敌人 敌人阶级: private var enemy1:Enemy1 = new Enemy1(); private var enemy2:Enemy2 = new Enemy2(); public var enemyArray:Array = new Array(enemy1, enemy2); 级别类别: var enemies:Enemy = n

我有一个敌方类(保存所有敌方电影剪辑)、一个关卡类(列出数组中关卡的布局)和我的主文档类(生成平铺中关卡的布局)。我的目标是每个关卡都有不同的敌人

敌人阶级:

private var enemy1:Enemy1 = new Enemy1();
private var enemy2:Enemy2 = new Enemy2();

public var enemyArray:Array = new Array(enemy1, enemy2);
级别类别:

var enemies:Enemy = new Enemy();
levelStageNumber = 1;
if (levelStageNumber == 1) { floor1F(); Main.floor = floor1; }
private function floor1F():void
        {
            floor1 = new Array();
            floor1[0] = [1,1,1,1,1,1,1];
            floor1[1] = [1,1,1,1,1,1,1];
            floor1[2] = [1,1,1,2,1,1,1];
            floor1[3] = [2,1,1,2,1,1,2];
            floor1[4] = [1,1,1,2,1,1,1];
            floor1[5] = [1,1,1,1,1,1,1];
            floor1[6] = [1,1,1,1,1,1,1];

            addChild(enemy2.enemyArray[0]);

        }
主要类别:

public static var floor:Array = []; //for the main class to talk to the level class
private var level:Level = new Level();

addChild(level);

    for (var Y:int=0; Y<floor.length; Y++)
            {
                for (var X:int=0; X<floor[Y].length; X++)
                {
                    var cell:MovieClip = new Tile(X,Y);
                    cell.gotoAndStop(floor[Y][X]);
                    cell.x = ((X-Y)*level.tileh)+365;
                    cell.y = ((X+Y)*level.tileh/2)+70;
                    addChild(cell);
                }
            }
publicstaticvar-floor:Array=[]//让主班和水平班对话
私有变量级别:级别=新级别();
addChild(级别);
对于(var Y:int=0;Y(1),您可以通过指定阵列中的任何敌人的索引,将其添加到显示列表中:

addChild(enemyArray[0]);

addChild(enemyArray[1]);
(2) 向舞台显示列表中添加内容的顺序决定了顶部的内容

我的建议是你在关卡类中添加地砖,然后添加敌人

同样对于关卡来说,如果你在那里有敌人阵法可能比在敌人阵法中更好。enemyArray包含一组敌人,因此你可以在你的关卡中有敌人阵法,因为它代表了该关卡上的敌人


敌方职业应该只有特定于敌方的属性和方法。比如移动或射击是方法,而生命值或力量可能是敌方的属性

谢谢!如果我想添加两个相同的索引,比如enemyArray[0]两次?我该怎么做?这是另一个问题。每个问题最好有一个问题,因为这会使网站更有用。答案并不意味着隐藏在评论中。我要说的是,你的新问题表明你需要后退一步,了解数组和DisplayObjects/DisplayList,这样你就不会猜了。