Scratchのブロックを1つずつ見ていきたいと思います。今回は「○歩動かす」ブロック
「10歩動かす」を実行すると、ネコがちょろっとだけしか前に進まないので、初めて実行した人はびっくりするかもしれません。僕も最初はびっくりしました。ここでの1歩は1ピクセルのことなので、10歩だと10ピクセルなのです
だったら「1ピクセル動かす」という表記にすればいいのに・・・と思うかもしれませんが、Scratchの実行画面は全画面表示にしたり、縮小表示ができたりするので単位が1ピクセル固定ではありません。なので、Scratchでは画面周りの数値には単位はつけない方向性みたいです。あと、このブロックの特徴を考えると「歩」という表現が非常にしっくり来ることがわかります。それは後ほど説明します
「○歩動かす」と同じようにスプライトを動かすブロックに「x座標を○ずつ変える」ブロックがありますが、少し機能が異なります。違いをみていきたいと思います
ネコを45度に回転させます
この状態で「100歩動かす」を実行すると、斜めに進みます
「x座標を100ずつ変える」だと、ネコの向きに関係なく右に進みます
このように「○歩動かす」は猫の向いている方向に○ピクセル進ませることができます。ブロックの表記が「○ピクセル動かす」ではなく「○歩動かす」なのは、スプライトが向いている方向に向かってスプライトを前に進ませるという意味が含まれているわけですね
斜めの方向に指定したピクセル数だけ進ませるには少し難しい計算が必要になりますが、このブロックを使えば簡単に実装できます
一方、ボールが転がるような回転しながら前に動進むような動きには向いていません。こういう場合は「x座標を○ずつ変える」を使いましょう
ちなみに、歩数にマイナスの数字を入れると後ろに下がります