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

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

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

Scratchで はじめようゲームプログラミング

6.せまいよゲームを作ろう③完

 

[ せまいよゲームを作ろう② ] の続きです。

せまいよゲームはこれで完結です。あと少しがんばりましょう。

ここまでのプログラムはちゃんと動いてますか?
説明通りに作っていても動かない場合があります。
初心者のうちは、どこに原因があるのか見つけることが難しいです。
そんな時はもう一度新しくプロジェクトを作るところからやり直すのも手です。
私もよくやります。

 

 

左右のキャラを近づけよう

私のお気に入りポイントを作っていきます。
その理由はプレイヤーにプレッシャーを感じさせる役割だからです。

まずは Snowman のプログラムを開いてください。
イベントからタッチを受け取ったときを持ってきます。

タッチを受け取ったときを使う

 

動きから10歩動かすを持ってきます。
移動量を 5 に変更します。

10歩動かすを使う

 

Tera 側の処理も作ります。これはコピーでやりましょう。
いま作った移動処理をドラッグして Tera のアイコンの上でドロップするだけです。

移動処理をteraにコピーする

 

Tera のプログラムを開いて、ちゃんとコピーできているか確認しましょう。

teraのプログラムを確認する

 

テストしましょう。
タッチ、または、スペースキーを押すたび左右のキャラが近づいてくればOKです。

左右のキャラが近づいてくればOK

 

 

バグを修正しよう

テストしているとき違和感を感じましたか?
「これ、ダメじゃん」と思った人はプログラマーとして優秀です。
思わなかった人は経験を積めばいいだけの話なので安心してください。

追加した移動処理にはバグ(不具合)があります。
ゲームオーバーになってもタッチすれば左右のキャラが動いてしまうのです。

ゲームオーバーになっても左右のキャラが動く

 

ゲームオーバーを判定するための変数を作ります。
変数に行き変数を作るをクリックします。

新しい変数を作る

 

新しい変数名を「ゲームオーバー」にします。

ゲームオーバーという変数を作る

 

ゲームオーバーを0にする旗が押されたときの下に入れます。
これは初期クリアです。
もう一つゲームオーバーと言うの上に入れます。
ここは値を 1 に変更しましょう。
この変数はフラグとして使います。0 ならプレイ中、1 ならゲームオーバーという感じです。

変数の初期クリアとフラグ変化

 

バグを修正します。
ステージのプログラムを開きましょう。

ステージのプログラムを開く

 

ゲームオーバーになったらタッチしてもメッセージを送らない、という処理にします。

制御からもし◯ならを持ってきて タッチを送るの周りに置きます。

もし◯ならを使う

 

演算から◯ = ◯を持ってきます。

比較の演算ブロックを使う

 

変数からゲームオーバーを持ってきます。
右辺を 0 に変更します。
これでゲームオーバー変数が 0 のときだけメッセージを送るようになりました。

ゲームオーバー変数が0か調べる

 

いま作った処理をコピーしてスペースキーが押されたときの下に付けましょう。

ゲームオーバー判定をスペースキー押下にも使う

 

テストしましょう。
ゲームオーバーになったらゲームオーバー変数が 1 になっているか確認します。
そしてステージをタッチしたり、スペースキーを押しても反応しないことを確認しましょう。

ゲームオーバー後処理が止まるか確認する

 

バグの修正が終わったらゲームオーバー変数をステージに表示する必要がありません。
変数の所を開いてチェックを外します。
これでステージから表示が消えます。

ゲームオーバー変数の表示を消す

 

 

調整しよう

ゲームはほぼ完成しました。
そうしたら、できるだけ良いゲームになるように考えてみてください
とても大切なことなので習慣にしましょう。

今回私が思ったことは、実行後、ネコがすぐに歩き出して余裕がないなぁと感じたことです。

1秒間の待ちを入れたいと思います。プレイヤーのプログラムを開いてください。
制御から1秒待つを移動処理の上に入れます。

実行後1秒まつを入れる

これで実行してから歩き出すまで1秒待つことになります。
ちなみに、待ちが長いと「このプログラム、フリーズしてるのかな?」と勘違いされてしまうので注意が必要です。

 

 

効果音とジングルを入れよう

音を入れるとゲームとしての出来栄えが違います。
ネコが反転するときの効果音と、ゲームオーバーになったときのジングルを入れたいと思います。

音を入れるときは、音を入れたいスプライトの所に入れます。
ネコの反転もゲームオーバー処理もプレイヤーのプログラムにあるので
プレイヤースプライトに入れます

のタブをクリックして左下のアイコン(音の追加)をクリックします。

新しく音を追加する

 

音の一覧が開いたら water を検索します。
Water Dropを選びます。

効果音にwater dropを使う

 

もう一つ追加します。
音の追加アイコンをクリックして lose を検索します。
Loseを選びます。

loseの音を追加する

 

Water DropLoseの追加を確認したらプログラミングに戻ります。
コードのタブをクリックしましょう。

追加した音を確認してコード編集に戻る

 

からLoseの音を鳴らすを下図のように入れましょう。

音を鳴らすを2つの場所に入れる

 

反転するときの効果音をWater Dropに変更しましょう。

効果音の変更を行う

遊んでみてください。
ネコが反転するときの効果音はそれなりに合っていると思います。
ゲームオーバーのジングルもいい感じですね。

 

これでゲーム「せまいよ」の講座は終了です。
お疲れさまでした。

ところで私はこのゲームが気に入っています。
スコアを伸ばすには、左右のキャラに当たらないギリギリの所で反転させなければなりません。
当然、失敗する確率も高くなります。
プレイヤーの度胸と判断力が試されるシンプルなゲームは好きです。