Scratchで障害物競争ゲームを作ろう 発展編①音をつけよう

2020年5月25日

発展編では、基本編で作ったゲームをレベルアップしていきます!
今回は、BGMとSEをつけていきましょう。

基本編は終わっていますか?
終わっていない場合、こちらからチャレンジしてみましょう↓
基本編① コースを作ろう

障害物競争ゲームを作ろうトップ記事はこちら↓
障害物競争ゲームを作ろうトップ記事

ゲームに音をつける

よりゲームらしさを出すために、ゲームに音をつけていきましょう。

BGMをつける

ゲーム中に流れている音楽のことをBGM(バックグラウンドミュージック、背景音楽)といいます。
無音より、BGMがあったほうがゲームらしくなりますよ。

『背景』をクリックします。

『音』タブをクリックします。

音素材を削除する

ここは、背景でつかう音の素材を一覧できる画面です。
元から『ポップ』という音がありますが、今回は使わないので、『ゴミ箱』をクリックして削除してしまいましょう。

『ポップ』の音が削除されました。

音素材を追加する

では、BGMに使う音を追加しましょう。
左下の『スピーカー』ボタンをクリックします。

音を選ぶ画面に移動しました。
ここから、BGMに使う音を選びます。

BGMは、音が途切れないように、ループ(繰り返し)しても不自然に聞こえないものを選びます。
『ループ』タグをクリックして、ループ再生に向いている音を表示しましょう。

ループ再生に向いた音が表示されました。
各音の上の『再生(三角)』ボタンにマウスを載せると、その音が再生されます。
再生中の音は、『停止(四角)』ボタンで停止できます。
色々聞き比べて、これだ!と思った音をクリックして選びましょう。

気に入った音が選べましたか?
サンプルでは、『Dance Around』という音を選びました。
選んだ音が表示されていることを確認しておきましょう。

BGMを実装する

では、選んだ音がBGMとして再生されるように、実装しましょう。

『コード』タブをクリックします。

BGMがなり始める条件は、ゲームがスタートするときです。
つまり、『緑の旗』ボタンが押されたときですね。

『イベント』→『緑の旗が押されたとき』をドラッグします。

『音』→『○○の音を鳴らす』ブロックを、『緑の旗が押されたとき』の下にくっつけます。
○○の部分は、自分が選んだ音の名前になっていることを確認しておきます。

さぁ、これで一度、ゲームを実行して確認してみましょう。

……どうですか?うまくいっているでしょうか。
実は、一見うまくいっているようですが、ずっと聞いていると、途中でBGMが止まってしまうことがわかります。

ループ再生するように、コードを作りかえましょう。

『制御』→『ずっと』ブロックを使って、ループを表現します。
『○○の音を鳴らす』ブロックを『ずっと』ブロックで包みましょう。

これでどうでしょうか。『緑の旗』ボタンをクリックして確認してみましょう。

???
今度は音が鳴らなくなってしまいました。選んだ音によっては、音がブツブツと連続で聞こえてくるかもしれません。

これは、思っていたのと違いますね。
どこがおかしいのでしょうか?

じつは、音を鳴らすためのブロックは、
・終わるまで○○の音を鳴らす
・○○の音を鳴らす
の二つあります。

『ずっと』ブロックの中で『○○の音を鳴らす』が実行されたとき、音が鳴り終わるのを待たずに、すぐまた次の『○○の音を鳴らす』を実行し、また鳴り終わるのを待たずに次の『○○の音を鳴らす』を実行し…と、毎回最後まで音を鳴らさずに繰り返します。そのため、このようなことになってしまっているのです。

なので、きちんと最後まで音を鳴らして、また頭から音を鳴らす という繰り返しにするために、『終わるまで○○の音を鳴らす』ブロックに取り換えましょう。

三度目の正直です。『緑の旗』ボタンをクリックして確認してみましょう。

これで、BGMが問題なく再生されるようになりましたね!

SEをつける

ゲーム中で、何か起きたことを遊んでいる人にわかりやすく伝えることができるのがSE(サウンドエフェクト、効果音)と言います。

・ねこが黒い壁にぶつかったとき
・ねこがゴールしたとき

これらのときに、SEをつけてみましょう。

ねこが壁にぶつかったときのSEをつける

今度はスプライト『ねこ』のSEをつけていきます。
画面右下のスプライト一覧から『ねこ』をクリックします。

『音』タブをクリックします。

BGMのときと同じように、SEの音を選びます。
左下の『スピーカー』ボタンから、ねこが壁にぶつかったときに合う、好きな音を選んでください。
サンプルでは、元からある『ニャー』をそのまま使います。

選択した音が表示されていることを確認しておきましょう。
選んだ音でSEを実装しましょう。
『コード』タブをクリックします。

ねこが壁にぶつかったとき、SEが鳴るようにします。
コードでは、「もし黒色に触れたなら」の部分ですね。
ここに、『音』→『終わるまで○○の音を鳴らす』ブロックを追加しましょう。

実行して、わざと黒い壁にぶつかったときに、音が鳴るか確認してみましょう。

ねこがゴールしたときのSEをつける

最後に、ゴールした時のお祝いのSEをつけましょう。

LET’S TRY!
ねこがゴールした時、なにかおめでたい感じの音が鳴るように、考えてコーディングしてみましょう。
考え方は、壁にぶつかったときのSEとほとんど同じです。好きな音を鳴らしてみましょう!

うまくいきましたか?
サンプルでは、以下のようにしました。

『ゴールと言う』ブロックとの順番は、どちらでもかまいません。

まとめ

お疲れ様でした!
これで、BGMとSEが付きましたね。

音のつけ方、なんとなくわかりましたか?
いろいろ試してみてくださいね。

次は、ゲームクリアのときに『Game Clear!』と表示するようにしていきましょう。

次の記事「発展編②」こちら↓
発展編② ゲームクリアの文字を表示しよう

障害物競争ゲームを作ろうトップ記事はこちら↓
障害物競争ゲームを作ろうトップ記事

おすすめ

Scratchでのプログラミング学習におすすめの書籍です。

Scratch

Posted by バババ