
スクラッチでは「メッセージを送る」→「メッセージを受け取ったとき」というブロック処理をよく使うと思います。
しかし「送る」ブロックには「~を送る」と「~を送って待つ」の2種類があります。
このブロックの違いを理解して、使い分けが出来るようになるとスクラッチがますます楽しくなるので、ぜひマスターしてみて下さい!
「送る」と「受け取る」ブロックの使い方

まずは、おさらいも兼ねて簡単に「送る→受け取る」のプログラムを作ってみましょう。
「ネコ」と「りんご」のスプライトを用意して下さい。
ネコのコード(送る方)

スペースキーが押されたら「りんご1」というメッセージを送り、360度くるっと回転するコードです。
りんごのコード(受け取る方)

こちらは「りんご1」を受け取ったら、ネコと同じようにくるっと回転するコードです。
作成することが出来たら「緑の旗」をクリックして実行してみて下さい。
どうですか?
ネコとりんごが同じタイミングで同じように回転していれば正しくコードが実行されています。

「送る」は「手紙を出す」、「受け取る」は「手紙を受け取る」と考えると分かりやすいです。
どちらかが欠けてしまうと手紙のやりとりは成り立ちません。
ブロックも同様に「送る」と「受け取る」をセットで使うと覚えて下さいね。
「送って待つ」を使ってみる

見て分かりやすくするために、ネコとりんごを「右クリック→複製」して、コスチュームの色を変更しました。
(顔色の悪い)ネコのコード

先ほどのネコのコードで「りんご1を送る」だったブロックを「りんご2を送って待つ」に変更しています。
(緑の)りんごのコード

こちらは「りんご2を受け取ったとき」にしています。
それでは、緑の旗で実行後にスペースキーを押してみましょう。
顔色の悪いネコだけが遅れて回転します。
「送る」と「送って待つ」の処理の順番
まずは「送る」の方を見てみます。

矢印のように「りんご1を送る」と同時に、下の「10回繰り返す」処理が実行されます。
そのため、ネコとりんごは同時に回転することになります。
次に「送って待つ」の方を見てみましょう。

このように、まずは「りんご2」を送ります。
次に「りんご2を受け取ったとき」から下のコードが全て実行されるのを待ってから、自分(ネコ)の方の「10回繰り返す」処理が実行されます。
つまり、りんごが1回転するのを待ってから、ネコが1回転します。

まだ、ちょっとよく分からないかも・・という方のために、ここから下の記事では、さらにイメージしやすいゲームで解説していきます。
「危険」な車と「安全」な車

歩行者が横断歩道を渡ろうとしています。
そこに車が来て、左折していきます。
まずは、早速、実行してみましょう。
旗印を押したあとに「1」を押してみて下さい。
どうでしょうか?
危険な車に歩行者がひかれてしまいました。
こんなことは絶対にあってはいけません。
次に、もう一度実行して「2」を押してみて下さい。
今度は、歩行者が横断歩道を渡り終えるまで、車が待っています。
安全な車です。
下に、コードを貼り付けますので、どのような順番で処理が行われているかを考えながら、作成してみて下さい。
車のコード

歩行者のコード

まとめ
「送る」と「送って待つ」の違いについて書きました。
今回は「送って待つ」の大切さについて触れましたが、もちろん「送る」を使うこともたくさんあります。
自分の作品でやりたいことを実現するために、どちらを使えばいいかを見極めなくてはいけません。
そのためにも、たくさんの作品を作って、慣れていく必要があります。
困ったときは今回お伝えした「処理の順番」をよーく考えてみて下さい。
そして面白い作品を作ってください(^_-)-☆
コメント