初心者のためのゲームプログラミング入門

プログラミングとゲームの杜

初心者のためのプログラミング入門 & ゲームプログラムの作り方入門

子どもでもわかるSCRATCH入門

14.メテオパニックゲームを作ろう その3

[ 13.メテオパニックゲームを作ろう その2 ] の続きです。
隕石をクローンで複製して、ステージ上部から降ってくるようにしました。

 

 

1. 隕石を斜めに移動させるための変数を作る

上から下へまっすぐ移動するだけでは、なんかゲームらしさというのが
足りないような気がします。
隕石の落ち方に角度を付けてみましょう。

角度って言葉を使うと難しそうですが、x座標の値を少しいじるだけです。
方法はx座標を変化させるための変数を作ります。

次の作業は隕石を選択した状態で行って下さい

簡単なプログラミング入門

データカテゴリで変数を作るをクリックするとダイアログが表示されます。

変数名をx変化と入力し、このスプライトのみを選択します。

スクラッチでゲームを作ろう

このスプライトのみを選ぶ理由ですが、
隕石はクローンで複数作られるため、それぞれ独自の変数を持つ必要があるのです。

例えばすべてのスプライト用を選んだ場合、x変化の内容を変えると
どの隕石も同じ方向に動いてしまいます。

 

それから、x変化の変数表示を消すにはチェックを外します。

scratch 偏す表示のONOFF

 

 

2. 隕石を斜めに移動させる

x変化の変数をランダムで設定した後、移動中の隕石に加えてみます。

簡単なゲームの作り方

データカテゴリからx変化を0にするを移動します。
演算カテゴリから乱数をx変化の設定値にはめ込みます。
乱数の範囲を-5からまでに変更します。
これで隕石の移動角度が設定できました。

 

隕石が斜めに移動するようにします。

x座標を調整して角度をつける

動きカテゴリからx座標を10ずつ変えるを移動します。
データカテゴリからx変化を移動してはめ込みます。
これで隕石は斜めに移動します。

 

 

3. 爆発をバックパックでコピーする

自機を爆発させる時に使う絵を用意します。
隕石の時と同じ手順でコピーします。

メテオパニックゲームの素材

上のプロジェクトを開いてexplosionのスプライトをバックパックにコピーします。

他ユーザーのプロジェクトからコピーする

あなたのプロジェクトを開いてexplosionをコピーします。
注:バックパックに入れたはずのものが無い場合、ページを更新してみて下さい

 

コピー後、爆発 (explosion) のスプライトは見えないようにします。

scratch スプライトを隠す

イベントカテゴリから旗がクリックされたときをスクリプトエリアに移動します。
見た目カテゴリから隠すを移動します。

 

 

4. 自機と隕石の当たり判定をする

隕石を避けるゲームなので、自機と隕石の当たり判定を行います。
ここは男らしく (?) 隕石と接触したら一発でアウトにします。

当たり判定については
6.Scratch (スクラッチ) の初歩 その1と同じ方法にします。

 

隕石に触れるまで繰り返すの処理を作ります。

ゲーム 当たり判定を作る

制御カテゴリから ( )まで繰り返すを移動します。
調べるカテゴリから( )に触れたを移動してはめ込みます。
そして、接触の対象リストを表示してmeteorを選択します。
これで隕石に触れるまで繰り返すの処理ができました。

 

現在の処理と差し替えます。

scratch 当たり判定のやりかた

 

この状態で実行すると、自機が隕石と接触した瞬間に操作できなくなります。

 

 

5. 自機を隠す

隕石と接触してからの流れは
隕石と接触自機を隠す爆発演出
となります。

それでは自機を隠す処理を追加します。

scratch 隠すときは表示する処理も入れる

見た目カテゴリから隠すを当たり判定の下に移動します。
同時に表示するy座標を-100にするの下に移動します。

表示するを入れる理由ですが、これが無いと再度実行したときに
自機が見えないままになってしまうので入れています。

 

実行して確認してみましょう。

画面が表示されない場合はここをクリック

 

次回に続きます。