子どもでもわかる Scratch 入門
14.メテオパニックゲームを作ろう その3
[ 13.メテオパニックゲームを作ろう その2 ] の続きです。
隕石をクローン(複製)して、ステージの上から降ってくるようにしました。
斜め移動のための変数を作ろう
隕石が上から下へまっすぐ移動するだけでは、ゲームっぽさが足りないような気がします。
落ち方に角度を付けてみましょう。
角度という言葉を使うと難しそうですが、x座標の値を少しいじるだけです。
方法はx座標を変化させるための変数を用意します。
次の作業は隕石を選択した状態で行って下さい。
変数カテゴリで変数を作るをクリックします。
変数名をx変化と入力し、このスプライトのみを選択して最後にOKをクリックします。
すると変数を作るの下に新しく変数が追加されます。
このスプライトのみを選ぶ理由ですが、
隕石はクローンにて作られるためそれぞれ独自の変数を持つ必要があるのです。
例えばすべてのスプライト用を選ぶと、すべての隕石が同じ方向に動いてしまいます。
それから、変数の表示は消します。
x変化のチェックを外しましょう。
隕石を斜めに動かそう
x変化の変数をランダムで設定したあと、移動中の隕石に加えてみます。
まずは初期設定です。
変数カテゴリからx変化を0にするを移動します。
演算カテゴリから乱数をx変化の設定値にはめ込みます。
乱数の範囲を-5から5までに変更します。
これで隕石の移動角度がランダムになります。
斜めに移動する処理を入れます。
動きカテゴリからx座標を10ずつ変えるを移動します。
変数カテゴリからx変化を移動してはめ込みます。
隕石のx座標に、x変化の値を足していくことで斜めに移動します。
爆発のスプライトをコピーしよう
自機を爆発させるときに使う絵を用意します。
絵は隕石をバックパックでコピーしたときと同じ方法で取得します。
バックパックを開くと、まだコピーしていない爆発(explosion)のスプライトがあります。
これをスプライト一覧のところへドラッグ&ドロップしましょう。
コピー後、爆発 (explosion) のスプライトは見えないようにします。
爆発を選択してから作業します。
イベントカテゴリから旗が押されたときを移動します。
見た目カテゴリから隠すを下に付けます。
当たり判定を入れよう
隕石を避けるゲームなので、自機(ロボット)と隕石の当たり判定を行います。
ここは男らしく (?) 隕石と接触したら一発でアウトにします。
当たり判定については
6.Scratch (スクラッチ) の初歩 その1と同じ方法にします。
これからの作業はロボットを選択して行います。
隕石に触れるまで繰り返すの処理を作ります。
これが一番シンプルな当たり判定です。
制御カテゴリから ( )まで繰り返すを何もないところへ移動します。
調べるカテゴリから(マウスのポインター)に触れたを移動してはめ込みます。
(マウスのポインター)に触れたを(meteor)に触れたに変更します。
これで隕石に触れるまで繰り返すの処理ができました。
現在の処理と差し替えます。
下図の手順でするといいでしょう。ずっとはいらないので消します。
この状態で実行すると、自機は隕石と接触した瞬間に操作できなくなります。
自機を隠そう
隕石と接触してからの流れは
隕石と接触 ⇒ 自機を隠す ⇒ 爆発演出
となります。
それでは自機を隠す処理を追加します。
見た目カテゴリから隠すを当たり判定の下に移動します。
同時に表示するをy座標を-120にするの下に移動します。
表示するを入れる理由ですが、これが無いと再度実行したときに
自機が見えないままになります。
隠す処理を入れるときは、表示する処理も入れるようにしましょう。
実行してみましょう。
自機が隕石と当たったとき、自機が消えれば成功です。
次回に続きます。