今回は中学校の数学で習う「座標(ざひょう)」という考えを利用した操作を紹介します。お手本通りにプログラミングすれば完成させられるので小学生のみなさんもぜひチャレンジしてくださいね。

前回までのキャラクターを動かす方法はこちらの記事で紹介しています。未読の方は下のリンクからアクセスし読んでみてください。
プログラミングでキャラクターを自由自在に動かそう!【マウス編】
プログラミングでキャラクターを自由自在に動かそう!【キーボード編】


それでは下記のリンクからLINE entryのワークスペースにアクセスしてプログラミングを始めましょう。
ワークスペース


■座標とはなんだろう?
座標とは位置を数字で表わしたものです。画面を横方向と縦方向に分け、横の位置をX、縦の位置をYとして、後ろに数字を付けます。LINE entryでは、下の図のように実行画面の上部にはマウスカーソルの座標が表示され、キャラクターレイヤーにはそのキャラクターの座標が表示されています。

図20

座標の数値は画面の中央が「X:0.0」「Y:0.0」で、Xは右に行けば行くほど大きくなり、Yは上に行けば行くほど大きくなります。実行画面に表示できるのは、Xが-240から240まで、Yが-135から135までで、これより大きい数値や小さい数値の座標にキャラクターを表示すると、画面からはみ出してしまい一部または全部が見えなくなります。

もし座標の目安を見たいときは画面右上の網目の四角をクリックしてください。するとグレーの目盛りと数値が表示され確認しながらプログラミングすることができます。

図22

■座標を使ってキャラクターを動かそう!
座標の考えを利用してキャラクターを操作するプログラムを作ります。
使うブロックは
・「開始」カテゴリーから「スタートボタンをクリックした時」ブロック
・「制御」カテゴリーから「ずっと繰り返す」「もし”正しい”なら」ブロック
・「動作」カテゴリーから「x:”10”移動する」ブロック
・「動作」カテゴリーから「y:”10”移動する」ブロック
・「判断」カテゴリーから「”q”キーを押しているか?」ブロック
です。

ブロックを取り出して下の画像のように組み合わせてみましょう。左と下に動かすところはマイナスの数値を入れるのを忘れないようにしてください。

スクリーンショット 2021-09-14 160248


前回紹介したその2の方法と仕組みがとてもよく似ていますね。「もし”正しい”なら」ブロックのあいだに組み合わせていた「”90°”の方向に”10”だけ動く」ブロックを「x:”10”移動する」「y:”10”移動する」ブロックに変更するだけです。

図19

このプログラムは押しているキーによってキャラクターの今の座標から数値で指定したぶんだけ移動させることでキャラクターを動かす仕組みになっています。座標の考え方が理解できると、どの方向にどれくらい移動するのかがすぐにわかるようになりますよ。

■座標にはこんな使い方も
キャラクター操作しているときについ画面の外に行ってしまうことがありますね。そんなとき座標を使ってキャラクターが画面の外にはみ出さないようにすることができます。

zahyou

使うブロックは
・「開始」カテゴリーから「スタートボタンをクリックした時」ブロック
・「制御」カテゴリーから「ずっと繰り返す」「もし”正しい”なら」ブロック
・「動作」カテゴリーから「x:”0” の位置に移動する」「 y:”0”の位置に移動する」ブロック
・「判断」カテゴリーから「”q”キーを押しているか?」「”10”≧”10”」「”10”≦”10”」ブロック
・「計算」カテゴリーから「”キャラクター名”の”x座標値”」ブロック
です。

ブロックを取り出したら下の画像のようにプログラミングしましょう。使うブロックは多いですがまとまりごとに作っていくとまちがいにくくなりますよ。

図21

このプログラムはキャラクターの座標が指定した値以上、あるいは以下になったときにその値と同じ位置に移動させることでそれ以上動かないという仕組みになっています。今回紹介した2つのテクニックは「みんなの作品」の「リンゴキャッチゲーム(改)」に使われています。

今回はここまで。 座標を使ってキャラクターを動かす方法について紹介しました。座標の考え方は緯度と経度という言葉で地図やGPSにも使われているんです。プログラミングで理解した考え方はほかの学びにもつながっていきますよ。

●まずは登録! →  LINE entry
●LINE entryの動画はこちら! →  YouTube
●公式Twitter フォロー、いいね!・RTもお願いします! → 公式Twitter
●ブックマーク登録お願いします →  公式ブログ