mywayなプログラミング生活ブログ

プログラミング関連の記事を書いています。作る様子がわかる様に動画も作っています。

Scratch2(スクラッチ2)でシューティングゲームを作ろう(4回目)

myway@おじさんです。
前回の続きです。
今回は、弾がタコに当たったときのプログラムを作ります。


動作環境について
OS:MAC OS X(Windowsでも操作はほとんど変わりません)
エディタ:Scratch offline editor(ver.454)

1.準備

前回保存したプロジェクトを開いて下さい。
画面左上の「ファイル」をクリックしてから、「ひらく」をクリックして、プロジェクトを開いて下さい。

 

2.弾のプログラム

弾がタコに当たった時のプログラムを作ります。
タコに当たれば、弾が消える様にします。

「ball」のプログラムを以下の様に変更します。

f:id:mywayhaojisan:20170525151124p:plain
「yざひょうを10ずつかえる」ブロックの下に「もし...」ブロックを追加しています。
これで、タコとの当たり判定をしています。

3.「...をおくってまつ」のブロック

上のプログラムに「...をおくってまつ」ブロックがあります。
このブロックは他のブロックとは、少し違う動きをします。
他のスプライトに信号を送るブロックで、キーボードやマウスの操作以外のタイミングで、他のスプライトを動かしたい時に使うブロックです。
作り方は以下の通りです。
「イベント」の「メッセージ1をおくってまつ」ブロックを適当な場所に置きます。

f:id:mywayhaojisan:20170525151210p:plain
「メッセージ1」の横の三角をクリックし、「あたらしいメッセージ」をクリック。

f:id:mywayhaojisan:20170525151357p:plain

「メッセージめい」に「弾が当たった」とキーボーボから入力して、「OK」ボタンをクリックします。

f:id:mywayhaojisan:20170525151234p:plain

これで、ブロックの完成です。

f:id:mywayhaojisan:20170525151306p:plain

注意点として、「メッセージ1」のまま利用するのは、おすすめしません。
理由は、メッセージをたくさん使った場合、どのメッセージが何の役割なのかがわからなくなってしまうからです。

4.音を出すプログラム

今までは、ゲーム音を出していませんでしたので、ここで、音を出したいと思います。

タコが弾に当たった時の音を追加します。

f:id:mywayhaojisan:20170525151510p:plain

f:id:mywayhaojisan:20170525151530p:plain

f:id:mywayhaojisan:20170525151550p:plain

f:id:mywayhaojisan:20170525151612p:plain

これで、音を出す準備ができました。

5.タコのプログラム

では、タコのプログラムを作成します。
下のプログラムをタコに追加します。

f:id:mywayhaojisan:20170525151642p:plain

「Ball」の「弾に当たったをおくってまつ」ブロックで送ったのを、「弾に当たったをうけとったとき」ブロックで受け取っています。
ここで、タコ側のあたり判定を行っています。

次に、「Ballにふれたとき」の判定を入れています。
このブロックがないと、画面上全てのタコが消えてしまうので、「Ball」との判定をしています。

ちなみにですが、「Ball」のプログラムで、「タコにふれたとき」の判定と、「タコ」のプログラム で「Ballにふれたとき」の判定を入れたプログラムの場合、片方が消えないので注意してください。
理由は、見た目は同時に動いている様に見えますが、プログラムは1つずつしか動きません。
なので、片方が動いて、消してしまうと、もう一方はすでに消えているので、表示を消すプログラムは動きません。

では、動かしてみましょう。 緑のはたをクリックします。 タコを撃ってみて下さい。タコが消えて音が鳴ると思います。

今回はここまでです。
作ったら、必ず、「ほぞん」をするように心がけて下さい。
それと、今回も動画がありますので、よければ、参考にしていただければと思います。

youtu.be


初登場したブロックについて、簡単ですが説明します。

f:id:mywayhaojisan:20170525151306p:plain
このブロックは、他のスプライトに信号を送るブロックです。
今回は、送って待つブロックを使っていますが、送って待たないブロックもあります。

f:id:mywayhaojisan:20170525151750p:plain
このブロックは、信号受け取ったときに動くブロックです。
上のブロックとセットで使います。

f:id:mywayhaojisan:20170525151815p:plain
このブロックは、音を鳴らすブロックです。
音楽を流したり、効果音を鳴らしたりするブロックです。

説明は以上です。

読んだだけでは、よくわからないと思うので、実際に作ってみて、動かしてください。
また、いろいろ変えて、遊んでみてください。



最後まで読んで頂いてありがとうございます。
皆さんに少しでもお役に立てれば幸いです。

<<シューティング(3回目) シューティング(5回目)>>