スプライトの動き

スプライトの「動き」スクリプトには以下の17つのブロックが用意されています。主にスプライトに対して動きを与えるプログラムになっています。また、座標を取得するなど条件分岐にも利用されるブロックもありますので、ご確認ください。

こちらでは「動き」スクリプトの「y座標」ブロックについて解説していきます。

動きブロック一覧

動きブロック名設定値
●歩動かす
右に●度回す
左に●度回す
▼度に向ける(90)右、(-90)左、(0)上、(180)下
▼へ向けるマウスのポインター
x座標を●、y座標を●にする
▼へ行くマウスのポインター、ランダムな場所
●秒でx座標を●に、y座標を●に変える
x座標を●ずつ変える
x座標を●にする
y座標を●ずつ変える
y座標を●にする
もし端に着いたら、跳ね返る
回転方法を▼にする左右のみ、回転しない、自由に回転
x座標
y座標
向き

y座標

ブロックパレットにある「y座標」ブロックはy座標の値そのものになります。単独では一切プログラミングできませんが、他のスクリプトのブロックと合わせて利用するとさまざまなことができるようになります。

「y座標」にチェックをつける

「動き」スクリプト一覧の中の「y座標」には左側にチェックボックスが表示されています。このチェックボックスにチェックをつけるとステージの左上に「Sprite1:y座標●」と現在の選択しているスプライト名にスプライトのy座標位置が表示されます。

スクラッチキャットのスプライトの上までマウスポインターを持ってきてドラッグしてマウスポインターを移動させるとリアルタイムでy座標の位置が表示されます。ステージの外にはみ出したとしてもy座標が表示されるのが特徴です。

また、y座標の表示をダブルクリックすると「Sprite1:y座標●」からy座標の数値のみが表示されます。

他にも、「y座標」ブロックの上でドラッグしてスクリプトエリアへ移動させ、クリックすると現在のx座標が表示されます。

ただ、「y座標」は値を表示させるだけではありません。今度は、1つの事例を説明していきます。

「y座標」にチェックをつける

「y座標を●ずつ変える」ブロックを配置し「50」に設定変更

まずは、「y座標を●ずつ変える」ブロックの上でドラッグしてスクリプトエリアへ移動しドロップします。「y座標を●ずつ変える」ブロックの「10」の数値を「50」に変更します。

「y座標を●ずつ変える」ブロックを配置し「50」に設定変更

「もし●●なら」ブロックの●●に「■>■」ブロックを配置し「y座標■>■100」を設定

そして、「制御」スクリプト「もし◆なら」ブロックを「●歩動かす」ブロックの下に配置します。次に「演算」スクリプトの「■>■(大なり・グレーターザン)」ブロックを●●に配置します。「■>■」の左辺には動きスクリプトの「y座標」を、右辺には「100」を入力します。

「もし●●なら」ブロックの●●に「■>■」ブロックを配置し「y座標■>■100」を設定

「もし●●なら」ブロックの中に「●秒でx座標を●に、y座標を●に変える」ブロックを配置し、「3秒でx座標をx座標に、y座標を0に変える」に設定

「もし●●なら」ブロックの中に「●秒でx座標を●に、y座標を●に変える」ブロックを配置して、秒数に3を、x座標には「x座標」ブロックを、y座標には「0」を入力します。

これで簡単なプログラミングが完成しました。これで実行してみましょう。

「もし●●なら」ブロックの中に「●秒でx座標を●に、y座標を●に変える」ブロックを配置し、「3秒でx座標をx座標に、y座標を0に変える」に設定

処理を実行

最初は「y座標を20ずつ変える」が処理され20ずつスプライトが上向きに移動します。「もし●●なら」ではy座標が100を超えたときに実行されますので、y座標が100を超えるまでクリックして処理をしていきます。

そして、y座標が100を越えた瞬間に「もし●●なら」の中の「3秒でx座標をx座標に、y座標を0に変える」が処理されます。動作としては、上昇していたネコのスプライトが落下したように3秒かけてy座標が「0」の位置まで落ちていきます。

このように「y座標」ブロックはただ、座標を表示させるだけでなく、条件分岐にも利用されます。

処理を実行
スクラッチプログラミング入門

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

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

TOP