『スクラッチのメッセージ機能の使い方は?』
『子どもにメッセージ機能を教えるときの教え方は?』
『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なび』では、絵本のプログラミング教材もあるのでぜひ挑戦してみてください!
スタペンドリルTOP | 全学年から探す
幼児 | 運筆 ・塗り絵 ・ひらがな ・カタカナ ・かず・とけい(算数) ・迷路 ・学習ポスター ・なぞなぞ&クイズ
保育無料イラスト・フリー素材
小学1年生 | 国語 ・算数 ・英語
小学2年生 | 国語 ・算数 ・英語
小学3年生 | 国語 ・算数 ・理科 ・社会 ・英語 ・音楽 ・プログラミング ・毎日計算ドリル
小学4年生 | 国語 ・算数 ・理科 ・社会 ・英語 ・音楽 ・プログラミング ・思考力
小学5年生 | 国語 ・算数 ・理科 ・社会 ・英語 ・音楽 ・プログラミング ・思考力
小学6年生 | 国語 ・算数 ・理科 ・社会 ・英語 ・音楽 ・プログラミング ・思考力
【全学年】Z会グレードアップ問題集(無料コラボ教材)
中学生 | 数学 ・英語 ・漢字 ・社会 ・理科
2024年無料カレンダー|2025年無料カレンダー