サイトについて      連絡先   検索

スクラッチ 制御ブロックの使い方

はじめに

Scratch (スクラッチ) 3 の制御ブロックの使い方を紹介します。

条件分岐や繰り返し行うループなど、プログラムの処理の流れを制御できます。

処理を止めたりクローンを作成できます。

  • 目次
    • 制御ブロックとは
    • 待つ、止める
    • クローン

制御ブロックとは

control

制御ブロックでは、プログラムの処理の流れを制御する次のことができます。どのプログラミング言語にも必ずあるものです。

この他にも処理を止めたり、スプライトのコピーであるクローンを作成できます。

条件分岐

テストの点数が 80 点以上なら合格、そうでないなら不合格、のように処理を分けることを「条件分岐」と言います。一般的なプログラミング言語では if 文などがあります。

if

ループ

同じ処理を繰り返し行うことを「ループ」と言います。一般的なプログラミング言語では for 文などがあります。

for-loop

クローンとは

クローンとは、スプライトのコピーです。コードやコスチュームや座標など、オリジナルのスプライトとまったく同じものを作成できます。

クローンを作成すると、どれがオリジナルでどれがクローンかわからなくなるので、コードをクローン専用として作成するのをおすすめします。

クローンは他のスプライトやステージからも作成できます。ステージに何個も同じスプライトを表示したいときに使います。

待つ、止める

wait-second

指定した秒数だけ待ってから、次の処理を実行します。

間隔をあけて処理を行いたいときに使います。待つのはこのブロックのコードだけです。同時に動いている他の処理や他のスプライトの処理は、待っている間も動きます。

ちょっとずつ前に進みます。

13

スペースキーを入力しても、スプライトは動き続けます。

15 14

待っている間に止まるのは、このブロックがくっついている処理だけです。

wait-until

指定した条件に一致するまで待ってから、次の処理を実行します。

何かの反応があるまで待つときに使います。待つのはこのブロックのコードだけです。同時に動いている他の処理や他のスプライトの処理は、待っている間も動きます。

「A キーを押して」と表示した後に、実際に A キーが入力されるまで待ちます。入力されたら「押しました」と表示されます。

16

待つ系のブロックや処理が終わったら次のブロックを実行するものを使用すると、待っている間の CPU の使用率が高くなります。

stop-process

次の処理を止めます。

  • すべてを止める:すべてのスプライトやステージの処理が終了します。[赤丸] をクリックしたのと同じです。
  • このスクリプトを止める:このブロックがくっついている処理を終了します。ループ処理を終わらせたいときに使います。同時に動いている他の処理や他のスプライトの処理は、そのまま動きます。
  • スプライトの他のスクリプトを止める:このブロックがくっついていない、このスプライトの処理を終了します。他のスプライトの処理はそのまま動いています。同時に動いているループ処理を終わらせたいときに使います。

端まで動いたら「行き止まり」と表示して、この処理だけが止まります。

17

クローン

create-clone

指定したスプライトのクローンを作成します。

delete-clone

この処理を実行しているクローンを削除します。

オリジナルのスプライトで実行しても、それは削除されません。

when-clone

クローンが作成されたときに発生します。

のクローンを作るブロックが実行されたときに、そのクローンの初期化処理に使います。この処理がオリジナルとクローンを区別できる場所なため、ここにクローンでのみ行いたい処理を作ります。

ネコをクリックしたら「Star」のクローンを作成します。

18

「Star」のクローンが作成されたときに、ランダムな位置に 1 秒だけ表示します。

19

ネコをいっぱいクリックすると、Star のクローンが増えては消えます。

20

クローンを作成するときは、そのオリジナルのスプライトを非表示にしておきます。

21

作成したときに表示すると、クローンだけ表示できます。

22
  • 目次
    • 制御ブロックとは
    • 待つ、止める
    • クローン