タートルで作ってみよう!マイクラプログラミング【IF文編】




こんにちは、プロクラスの和方です!
マイクラプログラミング塾では「Minecraft Forge」というMOD(拡張機能)を使用して、ロボットにいろいろな物を作らせる授業も行なっています。 自分の手ではなくロボットにプログラムを覚えさせることで、好きな形を何個でも作ることができます。
現実の世界でもロボットによる作業の効率化はますます広がりを見せていますが、まさにマイクラの世界でもそんな体験をすることができそうですね。

今回は”IF文”(IFは「もし」という意味があります)を使って、「前にブロックがあったら壊す」という機能を作ってみましょう。
再生ボタンを押した時に、タートルの前にブロックがあったら壊し、ブロックがなければ何もしないというプログラムを紹介したいと思います

言葉だけではわかりづらいところもあるので、実際にプログラムをみながら動きを確認していきましょう!

手順は以下の通りです
手順は以下の通りです
1.「もし目の前にブロックがあったら」の文を作ろう!
2.ブロックを「壊す」or「壊さない」を確認しよう!

1.「もし目の前にブロックがあったら」の文を作ろう!


まずはIFに必要な条件を決めましょう。(A)
[IF]パネルと[THEN]で条件をはさみ、[END]で終了します。
IFは「もし」という意味なので、今回は「もし目の前にブロックがあったら〜」という文を作ります。

[IF]と[THEN]のパネルで、以下のパネルを挟みます。
・はてなマークのついた[DETECT](目の前にブロックがあるかないかを判定します)パネル
・[=]パネル(右と左の条件があっている場合の記号です)
・[TRUE]パネル(正しい、ある、条件を満たす、などの意味があります)
この3つのパネルを日本語に直すと、「目の前にブロックがある」という意味になります。
さらに「もし」で挟みますので、「もし目の前にブロックがあるならば〜」という意味になっていきます。

2.ブロックを「壊す」or「壊さない」を確認しよう!

1で作ったWHILE文の中に、前に進む処理を入れます。(A)
IF文〜ENDの間にツルハシを挟むので、「もし目の前にブロックがあるならばツルハシで壊す」という意味のプログラムが出来上がりました。

試しに、下の2つの状態で再生ボタンを押してみましょう。
1.タートルの目の前に何も置かないで再生ボタンを押す
2.タートルの目の前にブロックを置いて再生ボタンを押す

いかがでしょうか?
1では何も起こりませんが、2では目の前のブロックが壊されたかと思います。
再生ボタンを押してからの一瞬の間で、タートルが「目の前にブロックがあるかないか?」を判断し、「壊すor壊さない」の行動しました。


いかがでしたでしょうか?
IFの基本をわかりやすく理解するのに有効な形と言えます。
プログラミングを使ってまだまだ色々なことができますので、楽しく学びながら自由に試してみてください!