↑サンプル↑
「フィールドにマスを配置するAS」にいくつかASを加えます。
質問や間違いなどは左のメールフォームよりお願いいたします。
フレーム1―スクリプト |
---|
ここは変更なしです。function panelset(){ //function"panelsetを定義" for(_root.x=0;_root.x<=2;_root.x++){ //_root.xが0〜2の間_root.xは増加する for(_root.y=0;_root.y<=2;_root.y++){ //_root.yが0〜2の間_root.xは増加する name="arr"+(_root.y*3+_root.x); //name="arr1"+0〜8の数字 左上が0で右下が8 _root.block.duplicateMovieClip (name,250-(_root.y*3+_root.x),{_x:_root.x*20,_y:_root.y*20}); //"_root.block."= 複製元スプライト //"name" = 生成したスプライト名 //"250-(_root.y*3+_root.x)" = 深度=250−(3y+x)←yは縦何段目かxは横何列目かを示す //{_x:_root.x*20,_y:_root.y*20}) = マスを配置する場所の指定 }//for(_root.y=0;_root.y<=2;_root.y++)にかかる }//for(_root.x=0;_root.x<=2;_root.x++)にかかる }//function panelset()にかかる |
フレーム2―スプライト |
スプライトにASを付け加えます。on(press){ //このスプライトをクリックしたとき _root.x=this._x/20; //_root.xはこのスプライトのx座標/20 _root.y=this._y/20; //_root.yはこのスプライトのy座標/20 _root.test=this._name; //クリックしたスプライト名をテキスト"test"で表示 _root.test2=_root.arr1; //_root.arr1の値をテキスト"test2"で表示 switch(_root.arr1[_root.y*3+_root.x]){ //_root.arr1の(_root.y*3+_root.x)番目の値が case 0: //0のとき _root.arr1[_root.y*3+_root.x]=1; //_root.arr1の(_root.y*3+_root.x)番目の値を1にする this.gotoAndPlay("1"); //このスプライトのラベル"1"を再生 break; //処理終了 case 1: _root.arr1[_root.y*3+_root.x]=2; this.gotoAndPlay("2"); break; case 2: _root.arr1[_root.y*3+_root.x]=0; this.gotoAndPlay("0"); break; } } |
フレーム3―スクリプト |
ここも変更なし。_root.panelset(); //function"panelset"呼び出し |
フレーム4―テキスト |
・スプライト名確認用 ・名前はtest |
フレーム5―テキスト |
・_root.arr1のデータの状態確認用 ・名前はtest2 |
フレーム6―停止 |
・停止 |