こちらは、スクラッチの「調べる」ブロックの中にある「〇までの距離」ブロックの使い方を、詳しく徹底解説しています!
「〇までの距離」ブロック
「〇までの距離」ブロックは、実行するスプライトから指定した対象物までの距離の値を返します。
値のブロック
スクラッチのブロックには、役割に応じたブロック形状の決まりがあります。
ブロックの形状については、「Scratchのブロックの種類と役割について」をご確認ください。
「〇までの距離」ブロックは、値ブロック(Reporter Block)に該当し、楕円形の形状をしています。
こちらには、数値や文字列といった、何らかの値を維持するブロックで、プログラミングの世界では「変数」と呼ばれるものです。
「〇までの距離」ブロックの中の値を確認したい場合は、「〇までの距離」ブロックをクリックしましょう。
クリックすると、「〇までの距離」ブロックの中の値を確認できます。
「〇までの距離」ブロックの規定値
こちらは、「〇までの距離」ブロックの規定値です。
- マウスのポインター
「マウスのポインター」では、スプライトとマウスのポインターまでの距離の値を返します。
スプライトを追加すると、自動的に追加されたスプライト名が選択できるようになります。
「〇までの距離」ブロックの使い方
それでは、「〇までの距離」ブロックブロックの使い方を見ていきましょう。
こちらは、「Ball」「Ball2」「Ball3」スプライトがお互いぶつかりそうになったら反転して動くプログラムです。
最初に、「Ball」スプライトのスクリプトを見てみましょう。
まず、「緑の旗が押されたとき」ブロックを使って、緑の旗がクリックされたときに、その下のスクリプトを実行します。
こちらは、初期設定のスクリプトです。
「〇へ行く」ブロックブロックを使って、ランダムな場所からスタートします。
こちらは、「ずっと」ブロックを使って、ずっとうごく処理をしています。
その中で、「〇までの距離」ブロックを使って、「Ball2」スプライトまたは「Ball3」スプライトとの距離が30未満になった場合、反転するようにしています。
反転については、「〇度に向ける」ブロックで「向き-180」を設定すると反転処理になります。
「Ball2」スプライトと「Ball3」スプライトのスクリプトも「Ball」スクリプトと同じもので、違う点は、「〇までの距離」ブロックの対象者だけです。
上は「Ball2」スプライトの設定で、下は「Ball3」スプライトの設定です。
それぞれ自分以外の他のスプライトを対象としています。
実際に、緑の旗をクリックして、プログラムを実行してると、3つのスプライトともランダムな場所から動き出し、お互いぶつかりそうになったら反転して向きを変えています。
調べるブロック一覧
「調べる」ブロックには、4個のハットブロックと5個の真偽ブロックと11個の値ブロックの計20個のブロックが用意されています。
ブロックの色は、水色で統一されています。
調べるブロック | 動作 |
---|---|
〇に触れた 指定した対象物に触れたらtrueを、そうでないときにfalseを返す |
|
〇色に触れた 指定した色に触れたらtrueを、そうでないときにfalseを返す |
|
〇色が〇色に触れた 実行するスプライトの指定色が、もう一方の指定職に触れたらtrueを、そうでないときにfalseを返す |
|
〇までの距離 実行するスプライトから指定した対象物までの距離の値を返す |
|
〇と聞いて待つ 指定したテキストを表示させ、画面下の入力ボックスの入力が完了するまで待つ |
|
答え 「〇と聞いて待つ」ブロックの入力した値を返す |
|
〇キーが押された 指定したキーが押されたらtrueを、そうでないときにfalseを返す |
|
マウスが押された マウスキーが押されたらtrueを、そうでないときにfalseを返す |
|
マウスのx座標 マウスのx座標の値を返す |
|
マウスのy座標 マウスのy座標の値を返す |
|
ドラッグ▢ようにする ドラッグモードを設定する |
|
音量 音量の値を返す |
|
タイマー Scratchが内部で管理しているタイマー値を返す |
|
タイマーをリセット タイマーの値を「0.0」に戻す(タイマーをリセット) |
|
〇の▢(ステージの背景#) 指定のスプライトやステージの指定の値を返す |
|
現在の▢(ローカルタイム) 現在(ローカルタイム)の指定した「年」「月」「日」「曜日」「分」「秒」を返す |
|
2000年からの日数 UTCの2000年1月1日午前0時0分0秒からの経過日数を返す |
|
ユーザー名 作品を閲覧しているユーザー名を返す |