【スクラッチ】質問に対して答えるスクリプトの作り方

初心者必見のテクニック
Scratch星人
Scratch星人

スプライトからの質問に答えるような、対話をしてみたいと思います。
ブロックの使い方を工夫しながらスクリプトを組み立てていきます。

質問ブロックの作り方

「調べる」の中に「What’s your name?と聞いて待つ」というブロックがあります。
まずはそのブロックだけをスクリプトエリアに移動してクリックしてみましょう。

分かりやすく質問文を日本語で「あなたの名前は?」に変更してみます。
変更したらブロックをクリックしてみて下さい。

なにやら、ネコの下に解答欄が現れました。
試しに自分の名前を入力してみて下さい。

・・・。
何も起こりませんね(*_*;

せっかく答えたのに、何の反応もないのは寂しいですよね。。

質問の答えに対して返事をする

答えは人それぞれなので決まった値ではありません

そこで必要になるのが「イベント」の「メッセージ1を送る」ブロックです。
質問ブロックの下にくっつけてみて下さい。

メッセージを送ったら、次にメッセージを受け取るスクリプトを作っていきます。
「メッセージ1を受け取ったとき」のブロックを使い、下に「こんにちは!と2秒言う」をくっつけてみます。

この時「メッセージ1」と言う名前から今回の場合「名前」などに変更しておくと分かりやすいです。

これで、質問に対して答えを入力したらネコが「こんにちは!」と言ってくれるようになり、一応の対話が出来るようになりました。

しかし、これではどんな値を入力しても同じ答えしか返してくれません。
「こんにちは!~~さん。」のように、名前入りで答えを返してもらうスクリプトに改造していきます。

入力の答え(名前)に応じた返答をさせる

ここまで作成したスクリプトでは「名前を受け取る」ことまでは出来ましたが「名前が何なのか」までは分かっていません。

そこで「調べる」の中の「答え」というブロックを使います。

見た目ブロックの「こんにちは!」の部分を「こんにちは!(答え)さん。」に変えてみましょう!(^^)!

・・・入力欄がひとつしかないので文字とブロックを入れることが出来ません。
困りました(´・ω・`)

ここで登場するのが「演算」の「appleとbanana」ブロックです。
今回はこれをふたつ使います。

ひとつめのブロックのどちらかの欄にもうひとつのブロックをはめ込んでみて下さい。
すると「~~と~~と~~」というブロックが完成しました。

あとは、言葉を書き換えて、「答え」ブロックをはめ込めば完成です。

まとめ

質問に対して答えを入力し、その答えに対して返事をするスクリプトについて書いてみました。

最後に使った演算ブロックの組み合わせは、知らなければなかなか思いつかないような使い方です。

今回のようなスクリプトは使う頻度が高いと思うので、ぜひ練習してマスターしてくださいね(^_-)-☆

コメント

タイトルとURLをコピーしました