マインクラフトのコマンドブロックを使ったプログラミング学習の可能性
コマンドブロックはユーザーがコマンドを入力し、レッドストーンの信号などによってコードを実行できるブロックだ。コマンドブロックを手に入れるには、コマンド入力で /give を使う。
コマンドブロックはワールドに配置して内部にコードを書くことができる。しかし、いわゆる PC 版ではコマンドブロックに書くことができるコードは複数行にわたるものを書けるようだが、現時点ではエデュケーション版で一つのブロックに書くことができるコードは一行だけだ。
複数のコードを連続して稼働させるには、必要なコード行数のコマンドブロックを用意し、レッドストーンでつなぐ方法がある。またこのとき、コードによっては実行に時間がかかるものもあるので、実行の順番を考えたいときはレッドストーンの間に反復装置を置いて信号を遅らせると確実だ。
ここでは「マインクラフトとプログラミング教育」の課題として設定した「レッドストーンのチャレンジ」をコマンドブロックで作っている。一定のエリアに拒否ブロックを敷き詰め、周囲をボーダーブロックで囲い、そのエリアの内部に端にレバーを立てた許可ブロックの列を24列作る一連のコマンドだ。
ボタンを押せばコマンドブロックが連続的に動作し、課題ワールドを自動的に作る。この一連の挙動は、プログラミング教育においては流れ図の「順次構造」のエクササイズでもある。
上から見るとこんな感じだ。
2017年5月23日
松本 吉生(まつもとよしお)
Microsoft MVP Data Platform
1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。現在は兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行う。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在14回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞。
コメントを残す