🎯 Цели занятия
- Повторить все способы строительства в Python: Агент, блоки по координатам, готовые фигуры
- Научиться выбирать подходящий инструмент под задачу
- Спланировать постройку и реализовать её за ~70 минут (с тестированием)
- Писать код на циклах и командах — без отдельного изучения функций
📋 План занятия
| Этап | Время | Что делаем |
|---|---|---|
| Теория: способы строить | 20 мин | Агент, blocks, фигуры |
| Интерактив | 10 мин | Закрепляем выбор инструмента |
| Выбор темы | 5 мин | Один проект из 10 вариантов |
| Творческая практика | 70 мин | План → код → тест → доработка |
| Итоги | 5 мин | Показ работ и рефлексия |
| Итого | ~110 мин | На усмотрение педагога можно сократить теорию |
1 Три способа строить в Python
🤖 Через Агента
Робот ходит и ставит блоки. Удобно для дорог, заборов, башен «по шагам».
📍 Через координаты
Команды blocks.place и blocks.fill сразу в точке мира — без ходьбы.
📦 Готовые объёмы
Заполнение куба, «полый» дом, контур — одной командой fill или циклом.
def как тему. Запускай код через команду чата — используй готовый шаблон в конце теории (скопируй и вставь свой код с отступом внутрь).
2 Строительство с Агентом
Повторение занятий 2.1–2.2. Агенту нужны блоки в инвентаре.
# Дорога из 8 блоков (вставь внутрь шаблона чата)
for i in range(8):
agent.place(DOWN)
agent.move(FORWARD, 1)
3 Блоки по координатам
Из занятия 3.1: абсолютные world(x,y,z) и относительные pos(...), posCamera(...).
# Площадка 7×7 под игроком
blocks.fill(
GRASS,
pos(-3, -1, -3),
pos(3, -1, 3),
FillOperation.REPLACE
)
4 Фигуры: как собрать из кода
| Фигура | Лучший способ | Идея |
|---|---|---|
| Плоская площадка | blocks.fill | Один слой: Y одинаковый у обоих углов |
| Куб / комната | fill + HOLLOW | Два угла задают размер; внутри пусто |
| Линия / дорога | Агент или цикл place | for i in range(N): place + сдвиг |
| Столб / башня | Агент UP + place DOWN | Цикл из 5–12 повторений |
| Квадрат / забор | Агент FORWARD + turn | 4 стороны в цикле range(4) |
| «Торт» (ярусы) | Несколько fill | Каждый ярус меньше и выше на 1 блок |
| Надпись | blocks.print | Текст из блоков: blocks.print("HI", GOLD_BLOCK, pos(0,2,0), WEST) |
| Мост | fill или цикл place | Тонкий прямоугольник в воздухе |
# Комната 6×4×6 (полый куб) рядом с игроком
blocks.fill(
COBBLESTONE,
pos(1, 0, 1),
pos(6, 4, 6),
FillOperation.HOLLOW
)
# === Шаблон: скопируй в редактор, внутрь вставь СВОЙ код ===
# (слово def — служебное, функции разберём позже)
def build():
player.say("Начинаю строить!")
# ----- твои циклы и команды здесь -----
player.on_chat("build", build)
🔑 Какой инструмент лучше?
5 Выбери тему постройки
Кликни на карточку — одна тема на весь урок. Все варианты рассчитаны на ~70 минут с тестами.
Нажми на вопрос — Алиса ответит тебе прямо сейчас!
«Алиса, как построить мост с помощью blocks.fill в Python?»
🛠️ Практика: строим выбранную тему
Открой редактор кода в Minecraft (клавиша C) и выбери Python. На выполнение — около 70 минут (вместе с тестированием).
Выбери карточку выше. Набросай на бумаге размеры и что делает агент, а что — fill/place.
Скопируй шаблон player.on_chat("build", build) из части 4. Проверь: в чате build — появляется сообщение «Начинаю…».
Реализуй «скелет» (один fill, один цикл агента или линия place). Сначала без декора.
Запусти в своём плоском мире. Если смещено — поправь pos / телепорт агента.
Добавь 2–3 детали: факел, другой блок, второй цвет, маленький забор и т.д.
Расскажи, почему выбрал агента или fill. Покажи работающую команду чата.
📝 Проверь себя
1. Что быстрее для плоской площадки 10×10?
2. FillOperation.HOLLOW делает…
3. Для дороги «шаг за шагом» удобнее…