こちらは、スクラッチの「〇秒で〇へ行く」ブロックの使い方を詳しく、徹底解説しています!
「〇秒で〇へ行く」ブロック
「〇秒で〇へ行く」ブロックは、指定した時間をかけて、マウスポインターや他のスプライトの位置に移動します。
動きブロックに属するブロックで、主にスプライトに対して動きを与えます。
秒数
指定した「秒数」で指定された場所へ移動するため、時間が短ければ早く、時間が長ければゆっくり移動します。
移動する位置
移動する位置の規定値は、以下の2つです。
- どこかの場所
- マウスのポインター
「どこかの場所」を選択すると、ランダムな座標に移動します。
「マウスのポインター」を選択すると、マウスポインタ―を目指して移動します。
また、スプライトを追加すると、自動的に追加したスプライトも選択できるようになります。
時間と位置の関係
「〇秒で〇へ行く」ブロックは、時間と位置を設定するブロックです。
以下のような関係にあることを理解しておくと、何かと便利です。
- 短い時間+遠い場所=一番早く移動する
- 短い時間+近い場所=意外とゆっくり移動する
- 長い時間+遠い場所=そこそこ早く移動する
- 長い時間+近い場所=気の遠くなるような時間を移動する
こちらは、実際にマウスのポインターを使うと体験できます。
こちらのように2つのスクリプトをそれぞれ使ってみて、マウスのポインターを近づけたり遠ざけたりしてみてください。
時間と位置の関係を体験できます。
「〇秒で〇へ行く」ブロックの使用例
こちらでは、「〇秒で〇へ行く」ブロックの使用例を紹介します。
スクラッチキャットから逃げろ!
こちらはマウスのポインターを追いかけてくるスクラッチキャットから逃げるゲームです。
スクリプトの内容は、この通り。
こちらは、並列処理のプログラムです。
秒数は、変数「スピード」の時間を設定しており、1秒から-0.01秒ずつ秒数が短くなっていきます。
その変数「スピード」を「〇秒で〇へ行く」ブロックの秒数に設定し、マウスのポインターへいくようプログラミングしています。
もう一つは、スプライトのスクラッチキャットがマウスポインタ―に触れると「ゲームオーバー!」と言い、プログラムが終了するスクリプトです。
「〇に触れた」ブロックを使って、スクラッチキャットがマウスのポインターに触れたら、「もし◇なら」ブロックの中を実行します。
動きブロック一覧
「動き」ブロックには、以下の18個のブロックが用意されています。
- スタックブロック・・・15つ
- 値ブロック・・・3つ
ブロックの色は、青色で統一されています。
尚、背景に対しての「動き」ブロックはありません。
背景に動きをつけたい場合は、「背景をスプライトにする方法」があります。
動きブロック | 動作 |
---|---|
〇歩動かす スプライトが現在向いている向きに、指定した歩数だけ動かす |
|
右に〇度回す 指定した数値だけ右回り(時計回り)にスプライトを回す |
|
左に〇度回す 指定した数値だけ左回り(反時計回り)にスプライトを回す |
|
〇へ行く 指定したマウスポインターや他のスプライトの位置に移動する |
|
x座標を〇、y座標を〇にする ステージ上の指定したx座標、y座標にスプライトを移動する |
|
〇秒で〇へ行く 指定した時間をかけて、マウスポインターや他のスプライトの位置に移動する |
|
〇秒でx座標を〇に、y座標を〇に変える 指定した時間をかけて、指定したx座標、y座標にスプライトを移動する |
|
〇度に向ける スプライトを指定角度の方向に向ける |
|
〇へ向ける スプライトを指定したマウスポインターや他のスプライトの方向に向ける |
|
x座標を〇ずつ変える 現在のスプライトのx座標から指定された数値ずつ移動する |
|
x座標を〇にする ステージ上の指定したx座標にスプライトを移動する |
|
y座標を〇ずつ変える 現在のスプライトのy座標から指定された数値ずつ移動する |
|
y座標を〇にする ステージ上の指定したy座標にスプライトを移動する |
|
もし端に着いたら、跳ね返る スプライトがステージの端に触れたとき、スプライトがやって来た方向と逆の方向を向く |
|
回転方法を▢にする スプライトの見た目の回転方法を設定する |
|
x座標 スプライトのx座標を返す |
|
y座標 スプライトのx座標を返す |
|
向き スプライトの向いている角度を返す |