flash cs6内に、エクスポート設定をabc.Gameboardとして設定したフラッシュムービークリップを描画しました。ゲームボード内には、abc.Pieceとしてエクスポートする一連のピース(シンボル:Piece)があります。基本クラスはMovieClipに設定されており、クラスファイルも含まれています。ピースには、ヒット、オーバーなどのフレームラベルがあります。私の問題は、コード内のピースにアクセスすることです。gotoAndPlay( "mine")-現時点では、イベントはボードの最後のピースである1回だけ発生します。この最後のピースにフレームアクションを設定できますが、各ピースに対して同じことを行う方法を理解したいと思います。
ステージにゲームボードを追加します
var gb:Gameboard = new Gameboard();
gb.name = "gb001";
contextView.addChild(gb);
それで
contextView.addEventListener(Event.ADDED, thingAdded);
private function thingAdded(event:Event):void
{
var type:String = event.target.toString();
switch(type)
{
// this runs only once - i want it to run for each piece that is inside the symbol
case "[object Piece]":
var p:MovieClip = event.target as Piece;
p.gotoAndPlay("mine");
break;
}
}
またはそれが素晴らしいだろうより良い方法がある場合..これはかなり不格好に見えます
編集:私がゲームボードを構築しようとしている方法についてもう少し情報イラストレーターで図形のコレクションを描画します-それをマスクします(ゲームボード領域)。グラフィックとしてFlashにインポートします。グラフィックをいくつかのムービークリップシンボルに変換します(JSFLがドリルダウンしてマスクされたピースにアクセスできるようにします)-JSFLスクリプトを実行し、00個のピースを作成します。次に、PieceとGameboardでエクスポート設定を設定し、GameboardをcontextViewに追加します。