スプライトのイベント

スプライトの「イベント」スクリプトには以下の8つのブロックが用意されています。主に何かの処理をした場合に発生するイベントの条件分岐で利用されるプログラムになっています。

こちらでは「イベント」スクリプトの「旗がクリックされたとき」ブロックについて解説していきます。

旗がクリックされたとき

ブロックパレットにある「旗がクリックされたとき」ブロックは、ステージの右上にある緑の旗をクリックしたときに処理を実行する条件のプログラムです。緑の旗をクリックすると「旗がクリックされたとき」ブロックの下に配置されているプログラムが実行されます。

「旗がクリックされたとき」「ずっと」「●歩動かす」ブロックをスクリプトエリアへ配置

まずは、「旗がクリックされたとき」ブロックの上でドラッグしてスクリプトエリアへ移動しドロップします。この下に制御スクリプトの「ずっと」ブロックを配置し、その中に「●歩動かす」ブロックを入れ込みます。

「旗がクリックされたとき」「ずっと」「●歩動かす」ブロックをスクリプトエリアへ配置

「20歩動かす」に設定変更して実行

「●歩動かす」ブロックの値を「20歩動かす」に設定して、「緑の旗」をクリックします。すると「旗がクリックされたとき」ブロック以下のスクリプトが実行されます。

「20歩動かす」に設定変更して実行

実際の利用方法

こちらでは、「旗がクリックされたとき」ブロックが実際の作品(プロジェクト)の中でどのように利用されているかを紹介していきます。

迷路ゲームのスターター

「迷路ゲームのスターター」は迷子ゲームの基本機能をまとめた作品になります。キーボードの矢印キーを押すことで対象物を移動させゴールを目指していきます。

「Ball」スプライトのプログラミング1

こちらでは、「Ball」と「Goal」の2つのスプライトに対して「旗がクリックされたとき」ブロックが設定されています。「Ball」スプライトの場合は、更に2つの「旗がクリックされたとき」ブロックが設定されており、1つは「動き」スクリプトの「x座標を●、y座標を●にする」ブロックが設定されています。

こちらで設定されている座標はスタート地点になりますので、「Ball」スプライトが別の場所にあったとしても「緑の旗」をクリックすることで、自動でスタート地点に移動します。

「Ball」スプライトのプログラミング6

もう1つは「制御」スクリプトの「ずっと」ブロックの中に「もし◆なら」ブロックを配置し、その条件として「もし色に触れたなら-10歩動かす」というプログラムが設定されています。

この色というのは壁の色で、「Ball」スプライトが壁に触れると自動的に-10歩移動させ、通り抜けができないようになっています。この処理を常に動作させるためのタイミングを「緑の旗」をクリックした時としてプログラミングされています。

「Goal」スプライトのプログラミング全体

「Goal」スプライトでは、「制御」スクリプトの「ずっと」ブロックの中にもし◆なら」ブロックを配置し、その条件として「もしBallに触れたならYou Win!と言う」というプログラムが設定されています。

これは、迷路をゴールしたに何らかのアクションをしなければいけませんので、「Ball」スプライトが「Goal」スプライトに触れた瞬間に「You win!」というメッセージを表示されています。こちらも処理を常に動作させるためのタイミングを「緑の旗」をクリックした時としてプログラミングされています。

スプライトのイベントスクリプトには、6個のハットブロック2個のスタックブロックの計8個のブロックが用意されています。ブロックの色は茶色で統一されています。

主に何かの処理をした場合に発生するイベントの条件分岐で利用されるプログラムになっています。

イベントブロック一覧

イベントブロック動作
緑の旗がクリックされたとき緑の旗がクリックされたときに下にあるスクリプトを実行する
スペースキーが押されたとき指定したキーが押されたとき下にあるスクリプトを実行する
規定値:「スペース」「上向き矢印」「下向き矢印」「右向き矢印」「左向き矢印」「a~z」「0~9」
このスプライトがクリックされたときこのスプライトがクリックされたときに下にあるスクリプトを実行する
背景が背景1になったとき背景が指定した背景になったとき下にあるスクリプトを実行する
音量>10のとき指定した項目の値の指定した値より大きいときに下にあるスクリプトを実行する規定値:「音量」「タイマー」「ビデオモーション」
メッセージ1を受け取ったとき指定したメッセージを受け取ったときに下にあるスクリプトを実行する
メッセージ1を送る指定したメッセージをスクラッチプログラム全体へ送る
メッセージ1を送って待つ指定したメッセージをスクラッチプログラム全体へ送って待つ
スクラッチプログラミング入門

スクラッチプログラミング入門

Scratchは、MITメディアラボが開発した子ども向けビジュアルプログラミング言語です。
スクラッチプログラミング入門では、スクラッチの基本的な使い方から複雑なプログラムの作り方まで子供たちが楽しく学ぶための教育サイトです。

TOP