・X座標とY座標(スプライトの位置)
・「~度に向ける」(向き、角度、左右反転)
・「ずっと」ブロックの使い方
前回<入門編>2-1 ねことお話ししよう!(スプライトって何?/~と~秒言う)の続きです。
まずはさっそく、「10歩動かす」のブロックを、旗が押されたとき、のブロックの下にドロップして、
旗のボタンをクリックしてみましょう。すると、、、
・・・ん?ほんの少し?動きましたね。(笑)
ここで、スプライトの欄のXと書いてあるところを見てください。(上の図で赤丸で囲ったところ)
ねこが向いている方向に10歩動いた結果、Xの数字が10になっています。
旗のボタンを何度も押してみてください。
さらにねこも10歩ずつ動いて、押すごとにXの数字も10ずつ増えていくのがわかりますか?
この数値が「座標」です。
○座標と向きについて
スクラッチには、横向きのX座標とY座標があって、その数値によって、スプライトの位置や動きが決まるようになっています。
<X座標とY座標>
また、スプライトには向きがあります。
向きの初期設定は、90度となっています。ねこがいま向いている、X座標のプラスの向き(=右向き)ですね。
下の図で、向きと角度の関係がイメージできると思います。
<向きと角度>
今回は、
「10歩動かす」のブロックを使って、
向きが90度のねこを10歩動かす(=X座標をプラスの方向に10ずつ変える)ことになった、というわけです。
では一度、ねこ1のX座標をもとの0に入力しなおして、
今度は、ねこを左右に行ったり来たりさせるスクリプトを作ってみましょう!
○「ずっと」ブロックを使ってみる
まず、「10歩動かす」のブロックを一度消します。
消し方は、置いた時とは反対に、コード一覧のほうに向けてドラッグ&ドロップします。(右クリック→「ブロックを削除」でも可能)
次に、
向きや位置を毎回もとの位置に戻すのは手間なので、初期位置の設定のために、
「旗が押されたとき」のすぐ下に、
「X座標を0、Y座標を0にする」
「90度に向ける」
のブロックを付けておきましょう。
こうしておくことで、毎回、旗を押してスタートしたときに、スプライトが元の位置と向きに戻るようになります。
初期化のために置いたブロック(「90度に向ける」)のすぐ下に、「制御」の中にある「ずっと」のブロックを置きます。

(「もし端に着いたら、跳ね返る」のブロックは、「動き」欄内の下のほうにあります。)


「ずっと」ブロックのおかげで、ねこはずっと10歩動き続けて端に当たると跳ね返っていますが、左に行くときにさかさまになってしまっています。。。!
向きの数値の欄から、回転を「左右のみ」にするボタンをクリックするか、「回転方法を左右のみにする」のブロックを配置します。


その理由は、「回転方法を左右のみにする」という設定への切り替えは、一回きりでいいからです。この場合、初期化の際だけ設定すれば良いということですね。
何度もする必要が無いものは、「ずっと」の外に配置する、という考え方です。
うまくできましたでしょうか?
自動で動いているだけだと、ゲームという感じはしませんね。
実際に、キーボードの矢印キーでねこを自分で動かすことができるようにしますよ!
今回も、ありがとうございました。