連載
» 2016年02月22日 05時00分 UPDATE

マイクラで始めるプログラミング入門(4):プログラミングの「繰り返しの入れ子」「条件分岐」でMinecraftの世界を自由自在に変えちゃおう (1/2)

本連載では、子どもたちに大人気のゲーム「Minecraft」を題材にYouTube実況動画付きで「プログラミング」を学んでいく。今回は、Minecraftの世界に“壁”を作成する、たたいたブロックの“座標”を取得するサンプルから、プログラミングの「繰り返しの入れ子」「条件分岐」「座標値の変化と取得」などを学ぼう。

[薬師寺国安,PROJECT KySS]

 本連載「マイクラで始めるプログラミング入門」では、子どもたちに大人気のゲーム「Minecraft(マインクラフト、マイクラ)」を題材にYouTube実況動画付きで「プログラミング」を学んでいく。具体的には、小型PC端末Raspberry Pi(ラズベリーパイ、ラズパイ)上でビジュアルプログラミング環境である「Scratch(スクラッチ)」からMinecraftを操作する方法を解説する。

 前回の『プログラミングの「命令」「変数」「繰り返し」「イベント」って何?→初心者でもMinecraftなら理解できる!』では、ブロックを積み上げたり、消したりするサンプルでプログラミングの「命令」「変数」「繰り返し」「イベント」について学べることを解説した。

 今回のサンプルでは、プログラミングとして少し高度な、「繰り返しの入れ子」「条件分岐」「座標値の変化と取得」などについて学ぶことができる。

【動画解説】Minecraftの世界に“壁”を作成するプログラミング

 まずは、Minecraft Piの世界に、「Scratch2MCPI」から、各種壁を作成するプログラミングを解説する。

 壁を作成する手順は、基本的には、前回の10段のブロックを積み上げる処理と変わらない。10段積み上げられたブロックの塔を、再度X軸(横)に沿って並べていけば、自然と壁は出来上がる(図1)。

図1 Minecraft Piの世界に作成された壁

「Scratch2MCPI」とMinecraft Piを接続して壁を作成していく処理を紹介したのが動画1だ。

 「前回の塔や壁を作って何が面白いのか!」と思われる方もおられるだろう。塔や壁を作成しておくと、これ以後のプログラミングで、たたいた壁のブロックを消したり、たたいた壁のブロックを、違う種類のブロックに変更したりと、いろいろ面白いことができるようになる。

 その意味でも、最初は単なる塔や壁の作成にすぎないが、これらを基に、いろいろなプログラミングが可能になるので、これ以降の動画も楽しみにしておいてほしい。

Y軸の値を「0」で初期化しなければならない

 なお、この壁を作成する場合には、ちょっと気を付けなければならない点がある。それは、X軸にブロックを並べる場合は、Y軸の値を「0」で初期化しておく必要があることだ。初期化していないと、とんでもない塔が作成されるので、注意が必要だ。

「繰り返し」の中に「繰り返し」を入れる「入れ子」

 また「制御」の中にある「10回繰り返す」命令を「入れ子」にするのもポイントとなるだろう。壁はY軸に積み上げられたブロックの塔を、X軸に並べていくわけだから、「繰り返し処理」を2回記述する必要がある。

 このように、「繰り返し」の中に、再度「繰り返し」を入れることを「入れ子」と呼ぶ。これらの点については、動画の中で解説しているので参照してほしい。

【動画解説】たたいたブロックの“座標”を取得するプログラミング

 次に、たたいたブロックの座標を取得するプログラミングを解説する。

 まず、Minecraft Piの世界に、ブロックを配置する。このブロックはプログラムで配置するのではなく、キャラクターが画面下の「ホットバー」から、マウスホイールで選択したものを使用する。

 配置されたブロックを画面中央の「+」マークに合わせて、キャラクターがマウスの右クリックでたたくと、たたかれたブロックのX座標とY座標を、「Scratch2MCPI」の中の「猫」(Scratchでは「スプライト」と呼ぶ)が、吹き出しで表示する(図2)。ブロックをたたく場合は、必ず「剣」を選択し、マウスの右クリックでたたく、左クリックでたたくと、ブロックを破壊してしまうので、十分に注意してほしい。

図2 Scratch2MCPIの「猫(スプライト)」が、Minecraft Piのキャラがたたいたブロックの、XとY座標を、吹き出しで表示している

 今回のポイントは、キャラがたたいたブロックの座標の取得方法にあるので、その点に気を付けて動画2を見てほしい。

 次ページで補足の解説をする。

       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。