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

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

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

子どもでもわかるSCRATCH入門

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

[ 16.メテオパニックゲームを作ろう その5 ] の続きです。
プレイ時間に比例して隕石を大きくする仕組みと、タイトルおよびスタートボタンの絵を
作りました。

 

 

1. スタートをクリックしてゲームを開始する

前回までの作業が終わっていると次のような画面になっています。

製作中のタイトル画面

この状態からSTARTをクリックするとゲームが始まるようにします。
状況に合わせて各スプライトの表示を次のように切り替えます。

表示管理をする

 

タイトルとゲーム中を切り替える手段として
イベントカテゴリのメッセージ交換を使います。

スタートがクリックされる ⇒ 開始メッセージを送る
開始メッセージを受け取る ⇒ ゲーム中の処理へ

という感じにします。
まず、スタートボタンのスクリプトから作ります。

タイトル画面を作成する

開始直後の処理を旗がクリックされたとき表示するにします。
クリックされた時の処理をメッセージを送る隠すにします。

送るメッセージは新しく開始を作ります。
他のスプライトは、この開始メッセージを受け取ってゲーム中の処理へ移ります。

 

 

2. タイトル文字の処理

開始直後は表示して、開始メッセージを受け取ったら隠すようにします。
タイトル文字のスクリプトエリアで作業します。

かんたんプログラミング

 

実行してSTARTをクリックしてみて下さい。
STARTボタンとタイトル文字が消えたら成功です。

 

 

3. STARTクリックでゲームを開始する

今の状態では、実行と共にゲームが開始してしまいます。
それをSTARTがクリックされてから始まるように変更します。

まずは自機のスクリプトを編集します。

簡単ゲーム入門

今まで開始から処理していた内容を、開始メッセージを受け取ったときから
行われるようにしました。
スコアを0にする以降は何も変更しません。

 

次に隕石のスクリプトを編集します。

プログラムを覚える

こちらも開始メッセージを受け取ってからクローンを作るようにしました。
クローンされたときの処理は何も変更しません。

 

実行してみましょう。

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

 

実行直後にタイトルが表示され、STARTをクリックしてゲームが始まります。
自機が爆発した後、再実行してみて下さい。
隕石が消えタイトルが表示されれば成功です。

 

 

4. タイトルにロケットを表示する

タイトル名とスタートボタンだけの表示では寂しいので
タイトル画面にロケット (自機) も表示したいと思います。
ロケットは少し大きめに表示して、次のような感じにします。

タイトル画面を作ろう

 

ロケットのスクリプトを編集します。

初めてのプログラミング入門

旗がクリックされたときの後の処理を変更します。
大きさを 80 %、x座標を -93 y座標を -60 にして表示するを設定します。

変更したら実行して上手く表示されるか確認しましょう。

 

 

5. ゲームオーバーを表示する

自機が爆発したらゲームオーバーを表示するようにします。
タイトルやスタートのように新しくスプライトを作ります。

ゲームオーバーを作る

作り方を忘れてしまったら
[ 16.メテオパニックゲームを作ろう その5 ] を参照して下さい。

 

GAME OVERのスクリプトを作ります。

初級ゲーム作成

開始直後に隠します。
やられたを受け取ったときの後、1秒待って表示します。
1秒待つことでゲームオーバーらしさが出ると思います。

 

 

6. ゲームオーバーに演出を付ける

ゲームオーバーをただ表示させるのではなく、拡縮を使った演出を付けてみましょう。

GAME OVERのスクリプトを次のように変更します。

拡縮を使って演出を入れる

仕組みはシンプルで、初めに小さくしておきます。
表示を始めたら大きさを10ずつ加算していきます。これを10回繰り返せば
10×10=100 (%) になって元の大きさになります。

実行してみましょう。
ゲームオーバーの文字が拡大しながら表示されれば成功です。

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

 

 

7. プログラムを改造しよう

これにて「メテオパニックゲームを作ろう」は終了です。お疲れ様でした。

この後、このゲームを改造してみることをおすすめします。
プログラムをより深く理解できるようになりますよ。

例えば次のような改造をしてみるのもいいでしょう。

・自機の移動を左右のみでなく、上下左右の全方向にする
・隕石の他に得点アイテムも出現させる。取ればスコアに加算
・バリアアイテムを出現させる。取れば数秒間無敵になる
・ビームを発射して隕石を破壊できるようにする

などなど挑戦してみましょう。