更新日:、 作成日:
スクラッチ 1.4 メッセージを使って他のスプライトを操作する
はじめに
Scratch (スクラッチ) 1.4 のメッセージを使って他のスプライトを操作する方法を紹介します。
通常はスクリプトを書いたスプライト自身しか操作できません。メッセージを使えば、それを受け取ったスプライトやステージを操作できるようになります。
メッセージとは
制御ブロックのメッセージでは、他のスプライトやステージを操作できます。メッセージを送る側と受け取る側にそれぞれの処理が必要です。
メッセージ
メッセージを送る
指定したメッセージを送ります。メッセージを受け取った処理が終わるのを待つことなく次の処理を実行します。

指定したメッセージを送ります。メッセージを受け取った処理が終わるまで次の処理が実行されません。

メッセージを送るには、[▼] をクリックして [新規] をクリックします。

メッセージの [名前] を入力して [OK] をクリックします。

「動いて」メッセージが送られます。これを受け取ると受け取った処理が実行されます。

メッセージを受け取る
指定したメッセージを受け取ったときに処理を実行します。

受け取りたいメッセージを指定するには、[▼] をクリックして [メッセージの名前] をクリックします。

受け取ったときの処理を追加して完成です。このメッセージが送られてきたときにこの処理が実行されます。

送ると送って待つの違い
「送る」と「送って待つ」の違いは、次の処理をいつ実行するかです。

メッセージを受け取った処理が終わるのまで時間がかかるとわかりやすいです。

送る ブロックは、メッセージを受け取った処理を実行中に「待たない」と表示します。

送って待つ ブロックは、メッセージを受け取った処理が終わってから「待つ」と表示します。

送る ブロックを使うと 2 つの処理が同時に動くことになります。 2 体のスプライトを同時に動かしたいときなどに使います。
スポンサーリンク
他のスプライトを操作する
メッセージの動きをわかるために実際に作ってみます。
まずは適当にスプライトを追加します。

ネコがメッセージを送ります。ネコをクリックしたときに「この指とまれ」メッセージを送ります。

ドラゴンがメッセージを受け取ります。受け取ったらネコに向かって移動します。

ハチもメッセージを受け取ります。受け取ったらネコに向かってゆっくり移動します。

完成したので、ネコをクリックします。

ドラゴンとハチがネコに向かって移動します。

このようにネコに対してクリックしたのに他のドラゴンやハチを操作できました。ネコのスクリプトにはドラゴンやハチを動かす命令は書けませんが、メッセージを使うことでそれが可能になります。
スポンサーリンク