分岐を使ってプログラムを完成させよう
さっそく分岐のブロックを使ってプログラムを作っていきます。今回は次のURLのスクラッチプロジェクトで作っていきます。
https://scratch.mit.edu/projects/640019462/editor/
https://scratch.mit.edu/projects/640019462/editor/

今回用意したスクラッチでは、前回のようにこのはちゃんがスイカにたどり着くようにプログラムを作って動かしてみても、何も起きません。
なぜでしょうか? そう、「スイカ割りのためのプログラム」のブロックが、今回は用意されていないからです。
なぜでしょうか? そう、「スイカ割りのためのプログラム」のブロックが、今回は用意されていないからです。

このはちゃんがスイカを触っても、まだ何も起きません
さあ、「スイカ割りのためのプログラム」のブロックを一緒に作っていきましょう。
「キャラクターが喜ぶ動き」を作ろう
スイカ割りゲームを完成させるために、プログラムのブロックを作ります。まずは、このはちゃんがスイカに到達したときに「ワーイ」と喜ぶ動きを作ってみましょうか。
先ほど紹介した「もし~なら」というブロックを取り出して、次のように配置します。
先ほど紹介した「もし~なら」というブロックを取り出して、次のように配置します。

動くブロックに、「もし〜なら」のブロックをくっつけます
次に条件をセットしていきます。今回は「スイカに触れたかどうか」を条件にするため、「~に触れた」ブロックを取り出します。「〜に触れた」ブロックはどこにあるでしょうか。
パレットの左端から「調べる」を選択してください。
パレットの左端から「調べる」を選択してください。

パレットの左端にある「調べる」を選びます
すると、「~に触れた」という六角形のブロックが出てきます。このブロックを「もし~なら」の六角形にセットします。

六角形のブロックが「もし〜なら」にはまりました
「マウスのポインターに触れた」なら、という条件を、スイカ割りゲーム用に変えていきます。
今回は「スイカに触れた」ら、いろんなことが起こるようにしたいので、、「マウスのポインター」という部分をクリックし、スイカに変更します。
今回は「スイカに触れた」ら、いろんなことが起こるようにしたいので、、「マウスのポインター」という部分をクリックし、スイカに変更します。

条件を「マウスのポインター」から「スイカ」に変更します
ここまでできたら、あと一息です。このはちゃんが「ワーイ」と喜ぶ動作を作ります。
喜ぶ動作は、どのように表現しましょうか。
いろんな方法がありますが、今回は「見た目」を変化させて表現しましょう。そのため、パレットから「見た目」を選択して、「コスチュームを~にする」というブロックを取り出します。「コスチューム」とは「見た目」のことです。
喜ぶ動作は、どのように表現しましょうか。
いろんな方法がありますが、今回は「見た目」を変化させて表現しましょう。そのため、パレットから「見た目」を選択して、「コスチュームを~にする」というブロックを取り出します。「コスチューム」とは「見た目」のことです。

「見た目」から「コスチューム」を選択します
そして、取り出したコスチュームのブロックを、「もし~なら」ブロックではさみます。

コスチュームから「よろこぶこのは」を選びます
このブロックの組み合わせだと、もしスイカに触れると、キャラクターの見た目が「しっぱいこのは」になってしまうので、「よろこぶこのは」に変えましょう。

無事スイカに触れてこのはちゃんが喜ぶプログラムができました
ですが、「スイカ割りゲーム」を完成させるには、まだまだやることがあります。なぜなら、スイカ自体が割れていないからです。今はまだ「このはちゃんがスイカに向かって歩いて、スイカに触れて、ワーイと喜んでいる」だけです。
スイカを割るプログラムを作ろう
スイカ割りを完成させるために、今度はこのはちゃんが触れたらスイカが割れるプログラムを作りましょう。

右下の④スプライトペインでスイカを選択します
今回の主役はスイカです。スイカにプログラムを書くため、④のスプライトペインから「スイカ」を選びます。

スプライトペインの中から「スイカ」を選びます
スイカを選択したら、早速、スクリプトエリアでブロックを組み合わせて、プログラミングをしていきます。
スイカのプログラムは「ある条件の時に、スイカの見た目を変更する」というものです。ですから、「このはちゃんがスイカに触れたら喜ぶ」プログラムと、内容はよく似ています。
まず、「もし~なら」のブロックを取り出して、六角形に「~に触れた」ブロックをセットします。ここまでは、このはちゃんのプログラムと同じですね。
今回は、「スイカが、どのように変わるのか」を決めるプログラムを作っているので「~に触れた」の選択肢は、このはちゃんを選択します。
スイカのプログラムは「ある条件の時に、スイカの見た目を変更する」というものです。ですから、「このはちゃんがスイカに触れたら喜ぶ」プログラムと、内容はよく似ています。
まず、「もし~なら」のブロックを取り出して、六角形に「~に触れた」ブロックをセットします。ここまでは、このはちゃんのプログラムと同じですね。
今回は、「スイカが、どのように変わるのか」を決めるプログラムを作っているので「~に触れた」の選択肢は、このはちゃんを選択します。

「このは」を選択します
そして、このはちゃんがスイカに触れて喜ぶプログラムを作ったときと同じように、スイカのコスチューム(見た目)を変更していきます。

スイカのコスチューム(見た目)を「われたスイカ」に変えます
この状態でプログラムを動かすと、このはちゃんがスイカに触れたときに、スイカが見事割れるはずです。

このはちゃんがスイカに触れたときに、スイカが割れます
次回予告「『繰り返し』に挑戦しよう!」
次回は3つのプログラミングのキホンの最後の1つ「繰り返し」にスクラッチを使って挑戦します。お楽しみに!

成瀬 允宣
【GMOインターネットグループ デベロッパーエキスパート / GMOインターネットグループ アプリケーション開発本部 所属】
テックリードとしてWebアプリケーションプロダクト開発に従事するほか、大学講師やKids VALLEY プロジェクトにおける小学校プログラミング教育に携わる。また、カンファレンスなどでソフトウェア開発・設計を主軸に講演活動を行っている。
著書『ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計の基本』
X:@nrslibi