Scratch(スクラッチ)では、クローンを扱うことができます。
この記事では、クローンを利用してスプライトからボールを連射するプログラムについて書きます。
クローンについて理解したい方はこの記事をご覧ください。
プログラムを作成しよう
スプライトキャットがボールを連射するプログラムを作成していきましょう!
プログラムを自分で作れるよと言う方は「プログラム完成版」を真似して作ってみてください。
1からプログラムを作成したい方は、「プログラム完成版」を飛ばして、「プログラムを1から作ろう」から読んでください。
プログラム完成版
プログラムを1から作りたい方は読み飛ばしてください。
今回のプログラムではスプライトキャットとBallに対してプログラムを書いています。
まず、スプライトキャットについてのプログラムはこのようになります。
Ballについてのプログラムはこのようになります。
プログラムを1から作ろう
プログラムを1から作っていきましょう!
スプライトキャットがボールを連射するプログラムは、スプライトキャットとボールそれぞれに対してプログラムを作成していきます。
スプライトキャットのプログラム
まず、スプライトキャットに対するプログラムです。
「イベント」をクリックして、「実行(緑の旗)が押されたとき」をドラッグ&ドロップしてください。
「制御」をクリックして、「ずっと」をドラッグ&ドロップしてください。
「ずっと」の中に、「〜まで待つ」をドラッグ&ドロップしてください。
「調べる」をクリックして、「スペースキーが押された」をドラッグ&ドロップしてください。
「制御」をクリックして、「自分自身のクローンを作る」をドラッグ&ドロップしてください。
「自分自身のクローンを作る」の自分自身にカーソルを合わせてクリックして、「Ball」をクリックしてください。
「1秒待つ」をドラッグ&ドロップしてください。
1秒を0.2秒に変えてください。
0.2秒に変えることで、ボールが連射されているように見えます。
これでスプライトキャットに対するプログラミングは完了です。
Ballのプログラム
次に、Ballに対するプログラムです。
まず、Ballをスプライトキャットの手元に置くためのプログラムを書きます。
「スプライトを選ぶ」から「Ball」を追加して、Ballが追加されたことを確認してください。
最初に「Ball」をクリックしましょう。
「イベント」をクリックして、「実行(緑の旗)が押されたとき」をドラッグ&ドロップしてください。
ボールをスプライトキャットの手元にドラッグ&ドロップしてください。
「動き」をクリックして、「x座標を〜、y座標を〜にする」をドラッグ&ドロップしてください。
これでBallの位置を決めることができました。
「見た目」をクリックして、「隠す」をドラッグ&ドロップしてください。
Ballがクローンされたときの動作を書いていきましょう。
「制御」をクリックして、「クローンされたとき」をドラッグ&ドロップしてください。
「見た目」をクリックして、「表示する」をドラッグ&ドロップしてください。
「制御」をクリックして、「〜まで繰り返す」をドラッグ&ドロップしてください。
「調べる」をクリックして、「マウスのポインターに触れた」をドラッグ&ドロップしてください。
「マウスのポインター」にカーソルを合わせて、「端」をクリックしてください。
「動き」をクリックして、「x座標を10ずつ動かす」をドラッグ&ドロップしてください。
「制御」をクリックして、「このクローンを削除する」をドラッグ&ドロップしてください。
こうすることで、Ballが端についたら消えるようになります。
以上でプログラムは完了です!
プログラムのアルゴリズムを理解しよう
プログラムの中身を理解したい人もいると思うのでプログラムの内容を表す簡単なアルゴリズムを作りました。
- 実行が押されたらボールの位置を固定してを隠す
- スペースキーが押されたらボールのクローンを作る
- 作成されたクローンは端に触れるまでx座標を10ずつ動かす
- クローンが端に触れたらクローンを削除する
意外と簡単ですね!
ではプログラムも理解したところで実行していきましょう!
プログラムを実行しよう
プログラムを実行していきましょう。
「実行(緑の旗)」をクリックしてください。
「スペースキー」を連打するとボールが連射されることを確認してください。
スペースキーを連打してみてください!
最後に
この記事では、スプライトキャットがボールを連射するプログラムについてわかりやすく紹介しました。
難しそうに見えて意外と簡単なプログラムでしたね!
もう少しアレンジを加えるとシューティングゲームも作成できるのでぜひ作ってみましょう!
また、クローンを使いこなすことでプログラミングの幅が広がります。
クローンの使い方はぜひ覚えておいてください!