1

ビンのように動作するタイルベースのゲームを作成していta_*(number)*ます。ca_*(number)*物をドラッグしてドロップします。しかし、レベルはこれらのタイルをいくつか置くことができます。

私は次のようなものを作るつもりはありません:

if (my_mc.hitTestObject(ta_0) || my_mc.hitTestObject(ta_1) || my_mc.hitTestObject(ta_2).........)

いくつかは存在せず、エラーが発生する可能性があるため、何百ものものを作成したくありません。

名前が「ta_」と「ca_」で始まるステージ上のムービークリップを見つける方法はありますか?

私が得ることができるように: ta_1, ta_2.....?

4

1 に答える 1

0

いいえ、できません。ループしgetChildAt()てすべての子供の名前をチェックしない限り。

しかし、ビンを作成するときにビンを配列に追加してみませんか?
(動的に作成すると仮定します)

var myBinArray:Array = new Array(10);

for (var i:int = 0; i < myBinArray.length; i++)
{
    var myBin = new Bin();
    myBinArray[i] = myBin;
}

次に、配列をループするだけです。

for (var i:int = 0; i < myBinArray.length; i++)
{
    if (mybinArray[i] != null)
        if (my_mc.hitTestObject(mybinArray[i])
        {
            // statements
            // and here I assume you want to break for loop
        }
}
于 2013-05-22T08:10:59.197 に答える