ブロックの使い方イベント

スクラッチの「このスプライトが押されたとき」ブロックの使い方を徹底解説!

こちらは、スクラッチの「このスプライトが押されたとき」ブロックの使い方を、詳しく徹底解説しています!

スポンサーリンク

「このスプライトが押されたとき」ブロック

「このスプライトが押されたとき」ブロックは、このスプライトがクリックされたときに、下にあるスクリプトを実行します。

また、背景を選択した場合は、「ステージが押されたとき」ブロックに名称が変わります。

ハットブロック

スクラッチのブロックには、役割に応じたブロック形状の決まりがあります。

ブロックの形状については、「Scratchのブロックの種類と役割について」をご確認ください。

「このスプライトが押されたとき」ブロックは、ハットブロック(Hat Block)に該当します。

ハットブロックは、上の部分が丸くなっており、ハットブロックの上にはブロックを置くことができませんが、下の部分には凸がついており、下にブロックをつなげることができます。

この下につなげたブロック群(スクリプト)を実行するためのブロックです。

「このスプライトが押されたとき」ブロックの使い方

それでは、「このスプライトが押されたとき」ブロックの使い方を見ていきましょう。

こちらは、このスプライトがクリックされたときに、「スプライトが押されました。」と言うプログラムです。

このスプライトをクリックすると、下にあるスクリプトが実行されます。

実際に、スプライトをクリックすると、プログラム通り「スプライトが押されました。」と言っています。

使い方としては、この通りですが、注意点があるので、そちらを紹介します。

「このスプライトが押されたとき」ブロックの注意点

「このスプライトが押されたとき」ブロックを使う時の注意点は、以下の3つです。

  • スプライトの透明部分を押しても、動作しない
  • スプライト同士重なっている見えないところを押しても、動作しない
  • 非表示のスプライトを押しても、動作しない
  • 幽霊効果が100%でない場合は、動作する

スプライトの透明部分を押しても、動作しない

まず、スプライトの透明部分を押しても、動作しません。

例えば、「スクラッチキャット」スプライトの赤丸のところは、透明の部分で、こちらをクリックしても動作しません。

スプライトがどうなっているか、コスチュームの「ペイントエディター」を確認するとこの通り。

背景の市松模様になっている部分が透明の部分です。

こちらをクリックしても反応しませんので、スプライトの中心をクリックするようにしましょう。

また、こちらはスプライトの背景に白い四角形を配置した例です。

この場合は、透明でないので、ステージ上の赤丸をクリックすると、動作します。

スプライト同士重なっている見えないところを押しても、動作しない

次に、スプライト同士重なっていた場合、クリックしたいスプライトが背面にあるところをクリックしても、動作しません。

こちらの例では、前面にある「Ball」スプライトの赤丸のところをクリックしました。

この場合は当然動作しません。

非表示のスプライトを押しても、動作しない

スクラッチのブロックには、スプライトを非表示にする「隠す」ブロックがあります。

こちらを使って、スプライトを非表示にした場合、クリックしたとしても動作はしません。

幽霊効果が100%でない場合は、動作する

「隠す」ブロック以外に、スプライトを隠す方法として、「▢の効果を〇にする」ブロックを使った幽霊効果があります。

幽霊効果は、スプライトを透明にする効果があり、「100」にすると「隠す」ブロックと同様に、クリックしても動作しません。

しかし、「99」にするとステージ上では、肉眼では消えているように見えますが、クリックすると動作します。

イベントブロック一覧

「イベント」ブロックには、以下の8個のブロックが用意されています。

  • ハットブロック・・・6つ
  • スタックブロック・・・2つ

ブロックの色は、黄色で統一されています。

スクリプトを実行するトリガー(きっかけ)としてよく利用されます。

イベントブロック 動作
緑の旗が押されたとき
緑の旗がクリックされたときに、下にあるスクリプトを実行する
▢キーが押されたとき
指定したキーが押されたときに、下にあるスクリプトを実行する

このスプライトが押されたとき
このスプライトがクリックされたときに、下にあるスクリプトを実行する
※背景のブロックでは、「ステージが押されたとき」に名称が変わる
背景が▢になったとき
背景が指定した背景になったときに、下にあるスクリプトを実行する
▢>〇のとき
指定した値より指定した項目の値が大きいときに、下にあるスクリプトを実行する
メッセージ▢受け取ったとき
指定したメッセージを受け取ったときに、下にあるスクリプトを実行する
メッセージ〇を送る
指定したメッセージをスクラッチプログラム全体へ送る
メッセージ〇を送って待つ
指定したメッセージをスクラッチプログラム全体へ送り、受け取った側のスクリプトが終わるまで待つ