自宅で始めるScratch(https://dk.cheerup.jp/scratch-1st-step/)で簡単に説明しましたが、さらに詳しいことを学んで頂きたいので、Scratchの連載を開始します。
前回は、制御ブロックの説明を行いました。
今回は調べるブロック(プログラム)を紹介しながら説明を行います。
調べるブロックは今まで説明したブロックとは少し異なり、組み合わせて使用することが多いブロックです。他のブロックの説明もぜひ参考にしてください。
調べるブロック
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing.png)
マウスのポインターに触れた、色に触れた、色が色に触れた
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_03.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_05.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_07.png)
このブロックは下記の様な制御ブロックと一緒に使います。
![control](https://dk.cheerup.jp/wp-content/uploads/2021/12/control_blocks_11.png)
マウスポインタ―が触れたら動きが止まるようなプログラムが下記の様になります。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/mouse_pointer.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/mouse_pointer.gif)
マウスのポインタ―までの距離
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_09.png)
マウスのポインターまでの距離を数値で渡します。
これを比較するループに入れると、マウスにネコが近づくまで動き続けます。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/mouse_distance.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/mouse_distance.gif)
あなたの名前は何ですか?と聞いて待つ
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_12.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_15.png)
これは自分の設定した質問をして、回答があるまで待つブロックです。
回答は答えブロックに入ります。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/name.png)
こちらのようなプログラムを作ると、名前を聞いた後、ネコが名前を言い返してくれます。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/name.gif)
スペースキーが押された、マウスキーが押された
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_18.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_20.png)
設定したキーが押されているかをチェックします。
このブロックを使用して、下記の様なプログラムを作成しました。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/spacekey_prog.png)
スペースキーを押しながら実行すると、
![sensing](https://dk.cheerup.jp/wp-content/uploads/2021/12/w_space_key.gif)
スペースキーを押さずに実行すると、
![sensing](https://dk.cheerup.jp/wp-content/uploads/2021/12/wo_space_key.gif)
のように状況に応じて制御できるブロックになります。
マウスのx座標、マウスのy座標
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_22.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_24.png)
マウスのx座標、y座標を得ることが出来ます。
ドラッグできるようにする
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_26.png)
全画面モードで実行した際には、スプライトをドラッグ(マウスでつかむ)することができません。
そのため、マウスを使って動かしたい場合は、下記の様なプログラムを作成することで、スプライトを動かすことができます。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/drag_prog.png)
スペースキーを一度押すと、ドラッグできるようになります。
aキーを押すと、ドラッグできません。
音量
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_28.png)
現在のマイクの音量を得ることが出来ます。
タイマー、タイマーをリセット
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_31.png)
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_34.png)
プログラム実行開始からの時間を得られます。
また、タイマーをリセットすることが可能です。
ステージの背景、現在の年、2000年空の日数、ユーザー名
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_37.png)
このブロックは、ステージの背景、背景の名前、音量、変数を得ることができます。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_40.png)
このブロックは、現在の年、月、日、曜日、時、分、秒を得ることができます。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_43.png)
2000年からの日数を得られます。
![sensing](https://dk.cheerup.jp/wp-content/uploads/2022/02/sensing_blocks_46.png)
ログインしている場合、ユーザー名を得ることができます。
まとめ
今回は、調べるブロックをご紹介しました。
制御ブロックとの組み合わせで、色々な状況での動作を作ることが可能です。
友達の名前や生年月日を聞いてからゲームを始めたりすることができるかもしれません。
次回は、「演算ブロック」を取り上げる予定です。