【スクラッチ】メッセージ機能の使い方!-scratchなび-

『スクラッチのメッセージ機能の使い方は?』
『子どもにメッセージ機能を教えるときの教え方は?』
『scratchのメッセージ機能を使った簡単なゲームは?』
と気になる事もありますよね。

今回は、「Scratchのメッセージ機能の使い方」を学びます。

スクラッチでは、メッセージが使えるようになると一気にできることの幅が広がります。
例えば、難易度の高いゲーム作りに挑戦したり、プログラミングコードを効率的にすることも可能です。

それによって、子どものプログラミング的思考も身に付きます。

そこで、今回は、スクラッチのメッセージの使い方やメッセージを使った練習課題を詳しく解説していきます!

子どもの習い事図鑑が運営する『scratchなび』では、スクラッチ教材が無料ダウンロード・印刷ができます。

スクラッチのメッセージ機能って何?

まずは、メッセージ機能とは何かを説明します。

スクラッチのメッセージ機能とは、あるストライプから、別のストライプやステージに合図を送って、プログラムを動かすことができる機能のことを言います。
そのメッセージをきっかけに複数のストライプにプログラミングの命令を出せます。
例えば、ネコが「おはよう」というメッセージ(合図)を送ったら、犬がメッセージ(合図)を受け取り、「いい天気だね」と言うイメージです。
scratchメッセージ機能の使い方

基本的にScratchではいくつもスプライトを追加できますが、スプライトごとにそれぞれプログラムを作ってあげる必要があります。

プログラムを作っていると、スプライトとスプライトの間で横断的に合図をやり取りしたい場合があります。
ここで使う合図がメッセージ機能です。

メッセージ機能を使えば、スプライト間で指示をやり取りするため、ある動きが終わった後に、別のスプライトを動かすなど、スプライトの動きをリンクさせることができます。
これを「同期させる」といいます。

 

メッセージ機能で使うブロック

スクラッチのメッセージ機能で使うブロックは主に3つです。

ブロック意味
スクラッチの「メッセージを送る」のブロック▼メッセージを送る
「メッセージを送る」は他のストライプに指令を出したいときに使うブロックです。
メッセージを受け取ったときのブロック▼メッセージを受け取る
「メッセージを受け取る」は、メッセージを受け取ったあとに発動するプログラムです。
例えば、「ストライプAのあいさつが終わったメッセージを受け取ったら動き出すプログラミング」というようなイメージです。
メッセージを受け取って待つ▼メッセージを受け取って待つ
「メッセージを受け取って待つ」は、メッセージを送った先のストライプのプログラミング処理が終わるまで待つブロックです。
送った先のプログラムが終わるまで止まります。

 

後ほどサンプルプログラムを通して、実際の動きを学んでいきましょう。

 

メッセージ機能を使った場合、使わない場合の違い

メッセージ機能がいまいちピンと来ていない方のために、ここで簡単なテストプログラムを作って動きを確認してみましょう。

まずは、新しいプロジェクトを作って、ネコ以外にもう1つクマのスプライトを置いてみましょう。
クマが大きすぎるので、70ぐらいにしておきます。

ネコの向きもクマと向い合せるために、少し調整します。

では、準備が出来ましたので、早速プログラムを作っていきましょう。

メッセージ機能を使わない場合のプログラミング

まずはメッセージ機能を使わない動きを見てみます。
ネコのスプライトにこんなプログラムを作ります。

できたら、クマにも上と同じプログラムを入れてください。
作成できたら早速実行してみます。
どうなるでしょう?

旗を押したら同時に「こんにちは!」と言いますね。
これがメッセージ機能を使わない動きになります。

次にメッセージ機能を使ったらできることを解説します。

メッセージ機能を使った場合のプログラム

同時に言うのは挨拶の掛け合いとしてはちょっと変なので、クマが「こんにちは!」と言ったら、ネコが「こんにちは!」と返すようにしてみましょう。

ここで登場するのがメッセージ機能です。

では、ネコのプログラムを少し変更します。
まずはメッセージを作ります。
左のブロック一覧から「メッセージ1を受け取ったとき」というブロックを見つけて、「メッセージ1」という部分を押します。
そこから「新しいメッセージ」を押します。

どんなメッセージなのかわかりやすい名前を付けます。
今回は、「あいさつ」という名前を付けておきます。

では、早速ネコからメッセージを送りましょう。
こんにちは!と言った後にメッセージを送ります。

では、クマのプログラムも変更しましょう。
クマは「あいさつ」を受けたら挨拶するようにしたいので、こんな風にしてみます。

順番に挨拶するようになりましたか?

このように、メッセージ機能を使うと順番に実行したい処理を作ることができます。

【発展編】メッセージ機能は複数にも送れる!

ここからは、もっと使いこなすためにメッセージ機能の特徴を学びましょう。

 

メッセージ機能は1対1ではない

メッセージは相手が沢山いても同じように使うことができます。
試しにスプライトをもう1つ増やしてみましょう。
スプライト「Dog1」を追加しました。
置いたら場所を少し調整してあげましょう。

イヌのプログラムは、クマのものと全く同じものを入れておきます。

では実行してみましょう!ネコの後に、イヌとクマが同時に「こんにちは!」と言うようになったかと思います。

メッセージを送る相手を選びたい

前のプログラムで体験したように、メッセージ機能は相手を選ばずに送られます
もし送る相手を選びたい場合は、違うメッセージを作ることで対応できます。
これも実際に試してみましょう。

イヌには「こんにちは」で挨拶して、クマには「さようなら」というようにしてみましょう。
まず、クマは「さようなら」なので、向きを変えます。

先ほどのネコと同様に、回転方法を左右のみにして向きを-90で設定します。

では、続いて新しいメッセージを作って、ネコのプログラムに組み込んでみましょう。

「さようなら」というメッセージを作りました。
下の赤枠の部分を変更しています。

ここで先ほどと違うのが「あいさつを送って待つ」に変わっていますね。
これはイヌのスプライトに「あいさつ」を送って、イヌのプログラムが終わったら次の処理を実行するようになるブロックです。
会話の掛け合いなどは、このブロックを使うことで上手にやり取りできます。

では、続いてクマのプログラムを変更します。
受け取るメッセージを「さようなら」にします。

これで準備は完了。うまく会話の掛け合いができましたか?

このように、それぞれのスプライトで違うメッセージを受けた動きを作ることができることが分かりました。

 

【課題】scratchのメッセージ機能を利用したゲームを作ってみよう

ここまでの動きを応用して、スクラッチのゲーム作品を作ってみましょう。

「ネコがランダムな二つの数字を使った足し算を言って、相手はそれの答えを言う」という動きがゴールです。

\メッセージ機能を使ったプログラミング教材の見本/

このようなゲームの完成を目指します!

スプライトと変数の準備をしよう

まずは、新規でプロジェクトを作成し、ネコは反転させてDog1というスプライトを置き向い合せましょう。

まずは、ネコが問題を出す部分を作ります。
足し合わせるための数字を入れておく「変数」を2つ作ります。

※scratchの変数がわからない方はこちら
【Scratch】変数の使い方!リスト・表示しない・ゲーム作りの練習も解説!

乱数ブロックを使って、足し合わせるための数字を作って変数に入れておきます。

一度変数に入れる理由は、この乱数ブロックは使われるたびに違う数字が出てきます。
そのため、変数に入れて保存しておいてそれを使うことで数字が変わってしまわないようにするためです。

では続いてネコが問題文を言うために、「りんごとバナナ」ブロックを組み合わせます。
「〇+〇=?」と言わせたいので、下のように組み合わせます。

2秒言うブロックと組み合わせて、こんな形になりました。
ここまでできたところで、ネコが問題文を言うかどうか試してみましょう。

答えをイヌに渡してみよう

では、続いて「答え」という変数を作ります。

答えに足し算した結果を入れます。

そして、メッセージを送ります。メッセージを新しく作りましょう。
「足し算の答え」という名前で作り、最後に追加します。
最終的なネコのプログラムは以下のようになりました。

では続いて、イヌのプログラムを作ります。
イヌは答えを言うだけなので、メッセージを受けたら変数「答え」を言うように作れば完了です。

最後に背景を入れて、スプライトの位置を少し調整すれば完成です。

2つのスプライトがちゃんと掛け合って問題に答えるようになったでしょうか?

このメッセージ機能の基本ができれば、クイズゲームもscratchで作れるようになります!

【Scratch】レーシングゲームの作り方!競争・タイムの計り方も解説!

scratchメッセージ機能の応用にも挑戦してみよう!

ここまで完成したら、次は自由に改造してみましょう!

改造例

  • 引き算、掛け算、割り算にしてみる
  • 3つの足し算にしてみる
  • イヌが答えた後、次はイヌが問題を出してネコが答えるようにしてみる

もっと、scratchのレベルアップをしたい方は、プログラミング教室に通ってみるのもおすすめです!

\子どものプログラミング教室の口コミ・評判記事/
小学生のプログラミング教室おすすめ人気5選!
ヒューマンアカデミープログラミング教室の評判・口コミ!
リタリコワンダーの評判・口コミはどう?

まとめ:scratchのメッセージ機能を使って絵本を作ってみよう!

今回はメッセージ機能について学びました。
アニメーション作品など間が大切な場面などで、活用していってください。

メッセージも変数同様に名前を分かりやすくつけることで、プログラムが大きくなっても迷わずに作っていけるようになりますので心掛けましょう。

scratchメッセージ機能の基本が学べる練習課題は「絵本のプログラミング」を作ってみることがおすすめです。
スクラッチメッセージ機能を使ったゲーム作り
子どもの習い事図鑑が運営するscratch無料教材サイトの『scratchなび』では、絵本のプログラミング教材もあるのでぜひ挑戦してみてください!


学習プリント(幼児~小学生)無料DL

学年別にプリントを探す

学年別プリント一覧教科別プリント一覧

幼児教材プリント

あいうえお表カタカナ表学習ポスター迷路プリント 簡単編迷路プリント 普通編アルファベット表ローマ字表

小学生 国語

ひらがな

ひらがな練習プリントひらがな全体のプリントひらがな表 ひらがな ならびかえひらがな 促音・拗音 ひらがな 長音ひらがな 数 ひらがな 曜日ひらがなパズル

カタカナ

カタカナ練習プリントカタカナ全体のプリントカタカナ表カタカナならびかえカタカナ 促音・拗音カタカナ 長音カタカナ 動物の鳴き声カタカナ 国名カタカナパズル

漢字

小学生漢字一覧表 小学1年生漢字テスト 小学2年生漢字テスト 小学3年生漢字テスト 小学4年生漢字テスト 小学5年生漢字テスト 小学6年生漢字テスト 都道府県の漢字テスト

語彙文法

小1語彙文法小2語彙文法

小学生 算数

毎日計算ドリル(計算問題メーカー)小1算数プリント(練習問題)小2算数プリント(練習問題)小3算数プリント(練習問題)小4算数プリント(練習問題)小5算数プリント(練習問題)小6算数プリント(練習問題)九九表

小学生 英語

スタペンドリル英語英単語練習プリント(835語)アルファベット表(かわいい)ローマ字表アルファベット練習プリント英語罫線(けいせん)ノート月・曜日・季節・天気の英単語数字を英語で覚える英語であいさつをするbe動詞+形容詞の使い方be動詞+形容詞の質問be動詞+名詞の使い方haveを使う練習プリントLikeの英語練習プリントwantの英語練習プリント

小学生 社会

日本地図のプリント世界地図のプリント小3「社会」学習プリント小4「社会」学習プリント小5「社会」学習プリント小6「社会」学習プリント小学生「地理」プリント小学生「歴史」プリント小学生「公民・政治」プリント歴史年表ポスター小学生「歴史年表」テスト問題

小学生 理科

小3理科プリント小4理科プリント小5理科プリント小6理科プリント

プログラミン学習

scratch無料教材scratchの使い方キャッチゲームの作り方シューティングゲームの作り方

小学生 音楽プリント

音楽学習プリント一覧楽譜の学習プリント臨時記号のプリント音名のプリント音符・休符のプリント拍子の学習プリントアーティキュレーション記号のプリント音楽記号のプリント

前前前世、親子診断

「習い事診断」をする

編集長プロフィール

子供の習い事研究家さとう/編集長


Twitter
「子供の習い事研究家」として活動中。
2019年5月に子どもの習い事図鑑の編集長に。
経歴:某IT企業に入社後、営業、マーケティングを経験。その後ライター/マーケッターおして独立。子どもの習い事図鑑の立ち上げに参画。子どもの習い事に関する事業を展開。
最近では、習い事に関わらず、ワーキングマザーの相談にのることも。 趣味は家族との時間。