【マイクラ】プログラミングで家に「自動ドア」を作る!【メイクコード】

今回の内容

おすすめ記事

「自動ドア」プログラムを作る

春日部つむぎキャラアイコン
春日部つむぎ

やっほー 春日部つむぎだよ

ずんだもんキャラアイコン
ずんだもん

なのなのだ ずんだもんなのだ

ずんだもんキャラアイコン
ずんだもん

探検に行っている間に、誰かが勝手にお家に入っていたみたいなのだ…。

春日部つむぎキャラアイコン
春日部つむぎ

それは怖いね…。 それじゃあ今回は自分だけに反応する自動ドアをプログラミングで作ろう!

ずんだもんキャラアイコン
ずんだもん

それならセキュリティも万全でかっこいいのだ! 助かったのだ

春日部つむぎキャラアイコン
春日部つむぎ

それじゃあ『マイクラ』と『メイクコード』を準備してプログラミングを始めよう!

  • 『MineCraft(マインクラフト)』はMicrosoftが提供しているサンドボックスゲームです。プレイヤーはブロックを積み上げて建物を作り上げたり、広い世界を冒険してモンスターと戦うことができます。メイクコードを使ってプログラミングをするためには統合版が必要です。
  • 『MakeCode(メイクコード)』はMicrosoftが提供するオープンソースのプログラミング学習プラットフォームです。ブロックを使ったビジュアルコーディングとJavaScriptによるテキストコーディングの2種類のエディタを切り替えながら、プログラミングできます。

『マイクラ』で準備をしよう

春日部つむぎキャラアイコン
春日部つむぎ

まずは『マイクラ』の方準備をしていくね!

春日部つむぎキャラアイコン
春日部つむぎ

今回は「座標を調べるための目印を置く」のと、「ドアの開閉条件を設定」するよ!

春日部つむぎキャラアイコン
春日部つむぎ

今回はお家の作り方は解説しないから、みんなの好きな形で作っておいてね!

ドアの範囲に目印を置こう

春日部つむぎキャラアイコン
春日部つむぎ

まずはドアの大きさを決めて、座標を調べよう

ずんだもんキャラアイコン
ずんだもん

それなら今回は「幅3×高さ3」のドアを作るのだ

春日部つむぎキャラアイコン
春日部つむぎ

大きさが決まったら、ドアの左下と右上(右下と左上でもOK!)に足が来るように目印を置こう

ずんだもんキャラアイコン
ずんだもん

あとは目印の上に立って座標を確認するのだね!

ポイント!

座標とはプレイヤーの場所を表すもの(足元の場所)です

『マインクラフト』では座標はx座標(東西)、y座標(高さ)、z座標(南北)の3つがあり、[x,y,z]の順番で表示されています。


「-」記号のついた数字は、ついていない数字の反対方向になる場所と覚えておきましょう!

ずんだもんキャラアイコン
ずんだもん

今回は左下の座標は[5,-60,8]、右上の座標は[3,-58,8]だったのだ!

春日部つむぎキャラアイコン
春日部つむぎ

これでドアを作る準備は出来たから、次はドアを開閉するための準備をしていこう

開閉するためのセンサーとなるブロックを置こう

春日部つむぎキャラアイコン
春日部つむぎ

今回は実際の自動ドアみたいに動かすから、「ドアの前に立ったら開いて、離れたら閉まる」ようにするね

春日部つむぎキャラアイコン
春日部つむぎ

そのためにドアの前後に《樺の木材》を置いて、「《樺の木材》を踏んでいたら《空気ブロック》でドアを消して、踏んでいなかったら普通のブロックを置く」っていう風に作るよ!

ポイント!

《空気ブロック》とは、ブロックのない空間に存在する目に見えないブロックのことです。


《空気ブロック》で置き換えた場所は何もない状態になります。

ずんだもんキャラアイコン
ずんだもん

だったら、ドアの前後の足場を《樺の木材》にしておけばいいのだね!

ずんだもんキャラアイコン
ずんだもん

余裕をもって、前後ともに2ブロック分まで《樺の木材》にしておくのだ!

春日部つむぎキャラアイコン
春日部つむぎ

これで準備が完了したから、プログラミングをしていこう!

プログラミングをはじめよう

コードを準備しよう

春日部つむぎキャラアイコン
春日部つむぎ

それじゃあコードを準備していくね。今回は【《ブロック》が[~0,~0,~0]の地点に存在するか、確認する】【《ブロック》を並べる】【ワールド[0,0,0]】【ずっと】【もし〈真〉なら~、でなければ~】を使うから準備しておいてね

コードは画面左にある項目のように分かれています。今回必要となるブロックと対応する項目は以下の通りです。

  • ブロック   ⇨ 【《ブロック》が[~0,~0,~0]の地点に存在するか、確認する】【《ブロック》を並べる】
  • ポジション  ⇨ 【ワールド[0,0,0]】
  • ループ  ⇨ 【ずっと】
  • 論理  ⇨ 【もし〈真〉なら~、でなければ~】
ずんだもんキャラアイコン
ずんだもん

準備ができたからプログラミングを始めるのだ

コードを組み合わせていこう

メイクコードでは以下のようにブロックを組み合わせてプログラミングしていきます。

  • 凹凸のついたブロックは組み合わせられます
  • 入力・選択部分が丸い形やをしているものは同じ形のコードをはめ込めます

凹凸の付いたブロックを組み合わて作る大まかな動きと入力・選択欄を変更して詳細な動きを設定していくのが、プログラミングの基本となります。

春日部つむぎキャラアイコン
春日部つむぎ

まずは【ずっと】と【もし〈真〉なら~、でなければ~】を組み合わせよう

ポイント!

【もし〈真〉なら~、でなければ~】のコードは、〈真〉の部分に条件を付けてそれが正しいかどうかを判定するものです。

条件が正しい(真)なら組み合わさっているコードが動作し、条件が間違っている(偽)なら「でなければ」の部分が動作します。

春日部つむぎキャラアイコン
春日部つむぎ

それができたら、【もし〈真〉なら~、でなければ~】に条件をつけるね。 今回は「《樺の木材》を踏んでいるか踏んでいなかいか」が条件だったね。

ずんだもんキャラアイコン
ずんだもん

踏んでいるかどうかを判定するには【《ブロック》が[~0,~0,~0]の地点に存在するか、確認する】を使うのだ

ポイント!

【《ブロック》が[~0,~0,~0]の地点に存在するか、確認する】のコードは、指定したブロックが入力した座標にあるかを判別するものです。

単体では使えず他のコードと組み合わせて使用します。

ずんだもんキャラアイコン
ずんだもん

ワールド座標を使わない状態でy座標を「-1」にすれば、自分の足の真下にあるブロックが判別できるのだ

ポイント!

普通の座標指定([~0,~0,~0]表記)では自分が今いる位置が基準になり、ワールド座標指定([0,0,0]表記)ではそのワールドの座標が基準になるという違いがあります

春日部つむぎキャラアイコン
春日部つむぎ

バッチリだね! そしたら【もし〈真〉なら~、でなければ~】の〈真〉の部分に【《ブロック》が[~0,~0,~0]の地点に存在するか、確認する】を組み合わせよう!

ずんだもんキャラアイコン
ずんだもん

ついでに、ブロック部分を《樺の木材》に、y座標を「-1」に変更しておくのだ!

春日部つむぎキャラアイコン
春日部つむぎ

これで条件が設定できたね。 それじゃあ最後は実際にブロックを出したり消したりしてドアの開閉をする部分を作っていくよ

春日部つむぎキャラアイコン
春日部つむぎ

まずは、【ワールド[0,0,0]】のコードを複製してね

ずんだもんキャラアイコン
ずんだもん

複製はコードを右クリックして出てくるメニューからできるのだ

春日部つむぎキャラアイコン
春日部つむぎ

複製が出来たら、2つの【ワールド[0,0,0]】コードを【ブロックを並べる】に組み合わせるよ

春日部つむぎキャラアイコン
春日部つむぎ

次は今できたプログラムを複製するんだけど、複製すると入力している座標とかもそのままコピーされるから、先に入力しておこう!

ずんだもんキャラアイコン
ずんだもん

それじゃあ、始まりの範囲に[5,-60,8]を、終わりの範囲に[3,-58,8]を入力するのだ

ずんだもんキャラアイコン
ずんだもん

これを複製して、ブロックの部分を《空気ブロック》と《岩盤》に変更するのだ!

春日部つむぎキャラアイコン
春日部つむぎ

《岩盤》はドア部分のブロックだから、みんなは好きなものを選んでね!

春日部つむぎキャラアイコン
春日部つむぎ

あとは、ドアを開くプログラムを「もし〈真〉なら」の中に、閉めるプログラムを「でなければ」の部分に入れたら完成!

ずんだもんキャラアイコン
ずんだもん

これで完成なのだ!

春日部つむぎキャラアイコン
春日部つむぎ

それじゃあ実際にプログラムを動かしてみよう!

春日部つむぎキャラアイコン
春日部つむぎ

動かすには右下のスタートボタンを押して、ボタンの色が緑色から赤色になったら準備完了!

春日部つむぎキャラアイコン
春日部つむぎ

あとは『マイクラ』でプログラムを動かすために決めた条件の行動をすればOK!

ずんだもんキャラアイコン
ずんだもん

動かす前にはプログラムが合っているか最終確認しておくのだ!

プログラムを動かそう!

ずんだもんキャラアイコン
ずんだもん

《樺の木材》を踏んでプログラムを動かしてみるのだ

春日部つむぎキャラアイコン
春日部つむぎ

「《樺の木材》を踏んでいるとドアが消えて、踏んでいないとドアが閉まる」なら今回の目標は達成だね!

ずんだもんキャラアイコン
ずんだもん

大丈夫だったのだ!

さいごに

春日部つむぎキャラアイコン
春日部つむぎ

おつかれさま! 今回は「自動ドア」プログラムを覚えたね!

ポイントまとめ
  • プログラムを動かす条件の作り方を覚えておこう!
  • 座標の指定方法が2通りあることを覚えておこう!
  • 自分の下にあるブロックを判別する方法を覚えておこう!
ずんだもんキャラアイコン
ずんだもん

かっこよくてセキュリティも万全なのだ!

春日部つむぎキャラアイコン
春日部つむぎ

応用すればいろいろな場所にいろいろな形で自動ドアを作れるから、試してみてね!

春日部つむぎキャラアイコン
春日部つむぎ

最後に練習問題を用意してみたから、よかったら挑戦してみてね!

プログラムを変更してみよう!

問題1

春日部つむぎキャラアイコン
春日部つむぎ

《樺の木材》を踏んでいない時にドアが開いて、踏んでいる時にドアが閉まるようにしてみよう!

ポイント!

条件を変える方法を考えてみよう!

問題2

春日部つむぎキャラアイコン
春日部つむぎ

《樺の木材》がプレイヤーの2つ下の場所にある時にドアが開閉するようにしてみよう!

ポイント!

プレイヤー基準の座標指定を覚えよう!

問題3

春日部つむぎキャラアイコン
春日部つむぎ

今回作ったドアの大きさを「左右にそれぞれ1ブロックと高さを1ブロック」分大きくしてみよう!