ブロックの使い方動き

スクラッチの「y座標」ブロックの使い方を徹底解説!

こちらは、スクラッチの「y座標」ブロックの使い方を詳しく徹底解説しています!

スポンサーリンク

「y座標」ブロック

「y座標」ブロックは、選択されているスプライトのy座標の値を返します。

値のブロック

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

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

「y座標」ブロックは、値ブロック(Reporter Block)に該当し、楕円形の形状をしています。

こちらには、数値や文字列といった、何らかの値を維持するブロックで、プログラミングの世界では「変数」と呼ばれるものです。

「y座標」ブロックの中の値を確認したい場合は、「y座標」ブロックの左側にあるチェックボックスにチェックを付けましょう。

チェックを付けると、ステージ左上に、現在のy座標がステージモニターとして、表示されます。

また、「y座標」ブロックをクリックしても確認できます。

ステージモニターの上で右クリックするとメニューが表示されます。

「y座標」ブロックのステージモニターには、2つのタイプがあります。

  • 普通の表示
  • 大きな表示

「普通の表示」は、デフォルトの表示モードで、ブロック名と値が表示されます。

「大きな表示」は、普通の表示より少し文字サイズが大きくなり、値だけが表示されます。

「隠す」をクリックすると、ステージモニターが消え、「y座標」ブロックの左側にあるチェックボックスのチェックも外れます。

y座標の範囲

x座標の範囲の前に、ステージの画面サイズについて、お話しします。

ステージ画面サイズは、横480×縦360ピクセルです。

中心の座標が「x座標:0、y座標:0」なので、上下の幅は、y座標が「-180から180まで」となります。(中心から上側が正の値、下側が負の値)

しかし、実際にスプライを動かしてみると、この範囲を超えることがあります。

これは、スプライトが画面サイズより外側にも移動できるからです。

どこまでいけるかというと、スプライトがギリギリ触れるまで。

例えば、スプライトを大きくすると、画面右端のy座標「-180」を優に超えます。

スプライトを画面の外にだすようなプログラミングをする際は、スプライトの大きさに注意しましょう。

スプライトの座標の基準は?

「y座標」ブロックは、選択されているスプライトのx座標の値を返しますが、スプライトの座標の基準はどこでしょうか?

スプライトの座標の基準は、コスチュームの中心です。

「スプライトリスト」の「描く」からスプライトを追加します。

すると、まっさらなスプライトが追加され、右側の「ペイントエディター」の中心にマークがついています。

このマークが、「座標の基準」です。

例えば、スクラッチキャットのイラストを、座標の基準からずらして描いた場合、ステージではy座標が「0」となっていますが、スクラッチキャットは、中心よりも上側にいます。

これは、あくまで座標の基準が「ペイントエディター」の中心だからです。

スクラッチプロジェクトの中を見る

例えば、こちらは左右矢印キーでタイヤが回りながら車を動かすプログラムで、スプライトは、以下の3つです。

  • 車体
  • 後輪
  • 前輪

こちらは、後輪スプライトのスクリプトの内容で、「右に〇度回す」「左に〇度回す」ブロックを使って、タイヤを回しています。

このタイヤは、「ペイントエディター」の中心に配置しています。

もしも、中心よりずれてタイヤを配置してしまうと、タイヤがおかしな方向へと回ってしまいます。

このように、シビアに位置が求められる場合は、座標の基準がどこなのかをしっかり理解しましょう。

動きブロック一覧

「動き」ブロックには、以下の18個のブロックが用意されています。

  • スタックブロック・・・15つ
  • 値ブロック・・・3つ

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

尚、背景に対しての「動き」ブロックはありません。

背景に動きをつけたい場合は、「背景をスプライトにする方法」があります。

動きブロック 動作
〇歩動かす
スプライトが現在向いている向きに、指定した歩数だけ動かす
右に〇度回す
指定した数値だけ右回り(時計回り)にスプライトを回す
左に〇度回す
指定した数値だけ左回り(反時計回り)にスプライトを回す
〇へ行く
指定したマウスポインターや他のスプライトの位置に移動する
x座標を〇、y座標を〇にする
ステージ上の指定したx座標、y座標にスプライトを移動する
〇秒で〇へ行く
指定した時間をかけて、マウスポインターや他のスプライトの位置に移動する
〇秒でx座標を〇に、y座標を〇に変える
指定した時間をかけて、指定したx座標、y座標にスプライトを移動する
〇度に向ける
スプライトを指定角度の方向に向ける
〇へ向ける
スプライトを指定したマウスポインターや他のスプライトの方向に向ける
x座標を〇ずつ変える
現在のスプライトのx座標から指定された数値ずつ移動する
x座標を〇にする
ステージ上の指定したx座標にスプライトを移動する
y座標を〇ずつ変える
現在のスプライトのy座標から指定された数値ずつ移動する
y座標を〇にする
ステージ上の指定したy座標にスプライトを移動する
もし端に着いたら、跳ね返る
スプライトがステージの端に触れたとき、スプライトがやって来た方向と逆の方向を向く
回転方法を▢にする
スプライトの見た目の回転方法を設定する
x座標
スプライトのx座標を返す
y座標
スプライトのx座標を返す
向き
スプライトの向いている角度を返す