お知らせ

『プログラミング能力検定(2月検定)』受検受付中!

詳細はこちら

【02】前・後・左・右・上・下に移動する

移動(move)のイメージ画像 マイクラ(Blocks)

この項では「1ブロック前に移動しろ!」といったように、エージェントを動かすための命令を学習します。エージェントは空中に浮かぶこともできるため、障害物がなければ、移動できる方向は前・後・左・右・上・下の6方向になります。

エージェントを前に移動させる

エージェントを前に1ブロック移動させる

まずはエージェントをに移動させてみましょう。[C]を押してエディターを起動します。

エディターが起動したら、左側のリストから[エージェント]を選び、その中の[エージェントを前に1ブロック移動させる]を右側のスペースまでドラッグします。さらにそのままドラッグして、もともと置いてあった[最初だけ]というブロックの中に入れます。

この[最初だけ]というブロック、英語版では[on start]となっています。「最初だけ」という日本語訳がわかりづらいのでピンとこないかもしれませんが、ここは「スタートボタンを押したとき」という意味だと思ってください。

スタートボタンというのは右下の▶(実行ボタン)のことです。この を押すと、[最初だけ]というブロックの中のプログラムが実行されます。

今回は[エージェントを前に1ブロック移動させる]というブロックを入れましたので、文字どおり、エージェントが前に1ブロック移動します。

エージェントをほかの方向に移動させる

エージェントを前後座右上下に1ブロック移動させる

さて[エージェントを前に1ブロック移動させる]のブロックの[前]の文字のところに[▼]マークがついていると思います。ここをマウスでクリックすると上の画像のように[前、後ろ、左、右、上、下]というリストが出て、移動する方向を変えることができます。

さらに[(1)ブロック]の数字の部分を違う数字に変えることで移動する距離を変えることもできます。

エージェントを後ろに3ブロック移動させる

たとえば上の画像のように変えた場合は、エージェントが後ろ方向に3ブロック分移動することになります。

[エージェントを○○に○ブロック移動させる] という命令では、どの方向へ移動してもエージェントの向く方向は変わりません。

実際にエージェントを動かしてみよう

エージェントを動かす課題1

それでは実際にエージェントを移動させてみましょう。上の画像のような道を作り、スタート地点(金のブロック)からゴール地点(ダイヤモンドのブロック)まで赤い道に沿って[エージェントを○○に○ブロック移動させる]でエージェントを移動させます。

まずは方向に3ブロック進みます。

エージェントを前に3ブロック移動させる

これで下の画像のように移動できたと思います。

エージェントを前に3ブロック移動させる

次はエージェントから見て方向に2ブロック移動させます。

エージェントを右に2ブロック移動させる
エージェントを右に2ブロック移動させる

これでゴールに到達できました!

「前に移動」もチャットコマンドで実行できるようにする

この移動の命令は、エージェントの位置を微調整したいときによく使います。とはいっても毎度毎度エディターの画面を開いてプログラムを作るのもたいへんです。

そこで、TP と同じように、この命令もチャットコマンドで実行できるようにしておきましょう。ただし、前後左右上下すべて設定するのもたいへんなので、ここでは「前に移動」だけ設定します。

チャットコマンド "jump" を入力した時

まず、エディター画面の左側のリストから[プレイヤー]を選び、その中の[チャットコマンド “jump” を入力した時]を右側のスペースまでドラッグします。

エージェントを前に1ブロック移動させる

そしてその中に[エージェントを前に1ブロック移動させる]ブロックを入れます。

チャットコマンド "jump" を入力した時[num1]

次に[チャットコマンド “jump” を入力した時]の右にある + を押して[num1]を表示させます。

エージェントを前にnum1ブロック移動させる

[num1]を表示させると左側の[変数]というリストに(num1)という楕円形のブロックが現れます。これを右のスペースまでドラッグして、そのまま[エージェントを前に1ブロック移動させる](1)の部分に重ねます。

チャットコマンド "FW" を入力した時

最後に jump の部分をクリックしてキーボードで FW と書き換えます。FWFORWARDフォワード(前へ)の略です。ラグビーやサッカーのフォワードも FW と略しますからわかりやすいと思います。

これでチャット欄で「FW 1」と入力すればエージェントが1歩だけ前へ、「FW 5」と入力すればエージェントが5歩前に進むようになりました。また「FW -5」と入力すれば後ろに5歩移動することになります。

こちらも TP と同じく、大文字で FW と入力しても、小文字で fw と入力しても正しく実行されます。

//イメージマップ(クリッカブルマップ)用コード