こんにちは、ECF Techブログ 担当のMichiです。
今回はScratchで単語クイズゲームを作ってみたいと思います。
すでに小学校での英語学習もスタートしております。楽しく英語を学べるしくみを自分でプログラムできたらきっと楽しくなると思います。
また「リスト」の活用など、プログラミング的思考の応用的要素も含まれておりますので、ぜひ学習にお役立ていただければと思います。
というわけで、早速見ていきましょう。
対象読者
- Scratchを教育活動に活用している教育者の方
- Scratchでのプログラミング経験がある小学校高学年やその保護者
ゲームの流れ
- 画面上の方に英単語が出てきます。
- 下の3人の宇宙人が日本語意味を言います。
- 正しい意味を言っている宇宙人をクリックすると、得点が入ります。
- 約5秒ごとに1.~3.が繰り返され、次々に出題されます。
作り方
リストの用意
解答者に選んでもらう答えを入れておくためにリストを使います。リストは変数のような値を入れておく入れ物ですが、いくつかの値をまとめて扱えるという特徴があります。次のようなイメージです。
Scratchでリストを作るためには、変数グループの下図の部分をクリックします。
下の画面が出てきます。「こたえ1」と入力してOKを押します。
上と同じ方法で「こたえ2」「こたえ3」「せいかい」の合計4つのリストを作成します。
今回は3問だけ作ります。というわけで、それぞれ次のように値を入れていきます。
スプライトの準備
つぎにスプライトです。下の6つのうち「たんご」以外の5つを用意します。すべて素材の中に入っています。アルファベットのOとXを「まる」と「ばつ」の代わりに使っています。
次に「たんご」スプライトなのですが、次のようなコスチュームのスプライトを描画機能を使って用意しています。
スプライトの描画機能を始める手順は下のようになります。
英単語はコスチュームという形でどんどん増やしていくことにしました。あと最初のコスチュームはなにも描いていません。これはプログラミングの時にちょっとラクをするためのコツになります。
※ただ、この方法は大量(100問以上など)の問題制作には向かないかもしれません。やや見た目重視です。
変数の準備
今回は次の変数をあらかじめ用意しています。
- こたえた
- 何問目
- 得点
プログラム
ではそれぞれのプログラムを見ていきましょう。
ステージのプログラム
本ブログのScratch記事では、「このスプライト!」と特定できないプログラムについては、ステージのプログラムとして書くことにしています。今回も同様です。
ということで、まずはステージのプログラムです。
プログラムのポイント
- ゲームを始める準備として、「得点」と「何問目」を最初の状態にしています。
- 「こたえ1」の長さとは、「こたえ1」というリストに入っている値の数を表します。これを使う事で、問題の数だけ繰り返すことができます。
- 「メッセージ1を送る」ことで、それをきっかけに3人の宇宙人が3つの答えを言います。
- 「こたえた」はゲームをする人が答えたかどうかを表す変数です。0ならまだ答えていない。1なら答えたことにします。
それぞれの宇宙人のプログラム
プログラムのポイント
- ステージのプログラムから「メッセージ1」を受け取ることで、今の問題の答えを5秒間言います。
- このスプライトがクリックされたときは
- せいかいリストの何番目には、いまの問題の正解が番号で入っているのでそれが1かどうかを確認します
リストと変数の関係がすこし複雑になってきたので、下にまとめてみました。
- 変数「何問目」が、リストの値の位置を表していることがわかります。
- こたえ1~3のリストはそれぞれ3人の宇宙人が言う答えです。
- 「せいかい」のリストには、こたえ1~3のどれが正解かを番号で表しています。
- コスチュームはプログラムの都合により2番目をあらわしていますが、のちほどに説明をします。
この場合は、「Apple」という英単語について3人の宇宙人が「りんご」「みかん」「バナナ」と3つの答えを言っています。せいかいは「1」なので、一番左の宇宙人をクリックすると正解となります。
のこり2人の宇宙人のプログラムは、最初の宇宙人とほとんど同じです。次の部分の数字がそれぞれ2と3に変わります。
たんごのプログラム
次に単語を表示しているスプライトのプログラムです。こちらは簡単です。
はたが押される(ゲームがスタートする)と、コスチュームは1になります。これは何も描かれていないコスチュームです。これにより、最初は問題を見えなくしています。
そのあとステージのプログラムから「メッセージ1」が送られ、次のコスチューム(1問目の単語)にうつります。
ここまででもゲームとして成立しますが、せっかくなので○や×の演出を入れましょう。
スプライトに音を準備する
まるとばつに利用している次の2つのスプライトには、音を設定します。
音の設定には、画面上から「音」をえらびます。最初にセットされている「meow」はねこの鳴き声です。今回はつかわないので×ボタンで消しちゃいましょう。
参考ですが「まる」に「Doorbell」、「ばつ」に「Crunch」という音を使いました。いろんな音がありますのでぜひ気に入った音を探してみてください。
音を準備したところでプログラミングです。まずは「まる」から
プログラムのポイント
- スタートすると隠します
- 変数「こたえた」は、その問題についてすでに答えていれば1、まだだったら0となります。
- 「まる」は1秒だけ表示されて、消えます。
- 「ピンポーン!」の音がちょっと長いので、1秒たったらピタッと止めてます。
これで必要なプログラムはそろいました。みどりの旗をクリックして動かしてみましょう。5秒ごとに単語クイズが次々と出題されます。
クイズが表示されている間に正しい答えをクリックすると、得点が1点入ります。
おわりに
というわけで、今回はこれで終わりとさせていただきます。最後までご覧くださりありがとうございました。実はこれを作りながらもう1つ思いついたことがありまして( ^ ^ ; ・・・音声合成を使うともっと本格的な単語ゲームができるのではと。。。というわけで、それはまた次回にチャレンジしてみたいと思います。