敵の移動処理の作成

まず、上空を移動する飛行機とヘリコプターをプログラミングします。ヘリコプターと飛行機は、左右に移動し、画面端で跳ね返ります。飛行機のほうが移動速度を早くします。

 

復習になりますが、スクラッチのステージ上で、位置情報はx,yの座標にて表します。ちょうどステージ中央が座標(0,0)となっています。画面の右上が(x,y)=(240,180)で、左下が(x,y)=(-240,-180)です。

前章では、特にスプライトの最初の表示位置を指定していませんでしたが、飛行機とヘリコプターのXY座標を最初に設定し、移動処理を実装します。

 

なお、飛行機とヘリコプターは速度が違いますが、同じような処理を実装します。飛行機のスプライトに移動の処理を実装した後に、そのスクリプトをコピーして、ヘリコプターでも流用するといいでしょう。

 

それでは、プログラミング開始です。プロジェクトを新規作成すると中央にネコがいます。まずは、飛行機とヘリコプターの実装をしますので、ステージの端に移動させておきましょう。マウスでネコをドラッグして、移動させてください。

それでは、まず、飛行機とヘリコプターのスプライトを追加します。スプライト下のスプライトリスト上部にある「新しいスプライト:」の「フォルダのボタン」をクリックします。

新しいスプライトを選択する画面になりますので、「Transportation」フォルダをダブルクリックします。

「airplane1」がありますので、選択し「OK」をクリックします。

これで飛行機のスプライトが追加されました。同様に、同じフォルダにある、ヘリコプターの画像(heliconpter1)を追加します。

2つのスプライトが追加できました。

現在はステージ中央に表示されています。スプライトリストから、飛行機のスプライトを選択し、以下のようにスクリプトを作成してください。パラメーターも以下のように変更してください。

また、スクリプトの回転の設定を左右のみに変更します。(2つめの左右方向のボタンを押します。)

プログラムを実行してみましょう。飛行機が自動的に左右に移動します。

スクリプトの説明をします。すでに学んだブロックが多数ありますが、再度説明しています。

 

「緑の旗がクリックされたとき」

プログラムを開始するとこのブロックから下に順に実行されます。

「大きさを50%にする」

スプライトの大きさを変更する命令です。もともとの大きさの半分(50%)に変更しています。

「表示する」

スプライトを表示する命令です。すでにスプライトは表示されていますが、今後、玉が当たるとスプライトの表示を消すよう実装予定ですので、プログラム開始時にスプライトを表示するようにしています。

「X座標を-200、Y座標を150にする」

スプライトの表示位置をステージ左上あたりに設定します。

「ずっと」

処理をずっと繰り返します。

「6歩動かす」

スプライトが移動します。

「もし端に着いたら、跳ね返る」

スプライトがステージ端まで移動したら、進行方向を反対側に変更します。

 

続いて、ヘリコプターのスプライトにも同様な処理を追加します。以下のようにスクリプトを作成してください。飛行機のスクリプトをコピーしてパラメーターを変更してもいいです。スクリプトのコピーは、スクリプト上で右クリックして複製を選びます。その後その複製したスクリプトを、スプライトリストのヘリコプターのスプライトにドラッグしてください。

飛行機のスクリプトと同様に、スクリプトの回転の設定を左右のみに変更します。(2つめの左右方向のボタンを押します。)

パラメーター以外は、飛行機のスクリプトと同じなので内容の説明は省きます。

プログラムを実行してみましょう。

飛行機とヘリコプターのスプライトが左右に移動します。ヘリコプターは飛行機の半分の速度で移動します。

 

あわせて読みたい