デジタルこどもBASE特定非営利活動法人デジタルこどもBASE← 全50回の一覧
Unit 06第26〜30回

Lesson 28:くぐれる入口

柱・窓・入口・屋根という部品を関数にし、同じ部品を組み合わせて建物らしい形をつくる単元です。

🧠 この単元のゴール

「部品をつくる命令」に名前をつけ、必要な場所で呼び出して使える。

Lesson 28建物の部品

くぐれる入口

🎯 ミッション

壁をつくってから中央の2ブロックを空気にし、実際に通れる入口をあける。

🖼 完成イメージ

完成イメージ名前をつけた部品を呼び出して、形を組み立てよう※完成する部品の位置関係を示すMinecraft風イメージです。

🌱 今回わかること

ブロックを置くだけでなく、空気にして形を変える方法

🧰 はじめる前の準備

前に8マス、上に5マスの空きがある平らな場所を選ぼう。壁や屋根が見やすいよう、正面を向いて実行する。

🪜 つくり方

  1. 横5・高さ3の石の壁をつくる。
  2. 「doorway」の中で、中央の下と中央の上を 空気 にする。
  3. 壁をつくった後で doorway を呼び出す。
  4. 実行後、中央の幅1・高さ2の空きへ実際に歩いて通る。

🔎 実行前に予想

関数を何回呼び出す? それぞれの部品はどこに現れる? 完成図を指さして予想しよう。

🧩 MakeCodeのブロック

MakeCodeブロックを読み込み中…
対応するTypeScriptコードを見る
function doorway() {
    blocks.place(AIR, posCamera(0, -1, 4))
    blocks.place(AIR, posCamera(0, 0, 4))
}
player.onChat("door", function () {
    for (let x = -2; x <= 2; x++) {
        for (let y = -1; y <= 1; y++) {
            blocks.place(STONE, posCamera(x, y, 4))
        }
    }
    doorway()
})

✅ 成功の見分け方

石の壁の中央に、プレイヤーが通れる2ブロック高の入口がある。

🎮 1か所だけ改造

入口を右へずらすには、空気にする左右の数字をどう変える?

🆘 うまくいかないとき

困ったこと確かめること
部品が1つしか出ないチャットの中で、関数を必要な回数だけ呼び出しているか確認する。
部品の高さが合わない柱のくり返し回数と、屋根の上下の数字をセットで確認する。
入口を通れない第28回は空気にするブロックが下と上の2個になっているか確認する。

保護者・先生へ:「関数は部品の名前」と言い換え、同じ部品を何度も使える良さを、完成物と結び付けて話します。