🎯 Цели занятия

📋 План занятия

ЭтапВремяЧто делаем
Теория20 минdef, вызов, параметры
Примеры15 минМаленькие функции в Minecraft
Интерактив15 минСопоставление
Практика35 мин«Шоу» из 3 функций + чат
Итоги5 минВикторина
Итого90 мин—

1 Что такое функция?

Функция — именованный кусок кода, который можно выполнить в любой момент. Один раз написал — много раз вызываешь. Это как рецепт в книге: «сделай салат» — внутри шаги, а ты просто говоришь «готовь салат».

📦
Порядок
Код читается по блокам, а не одной простынёй
🔁
Повтор
Не копируешь одно и то же десять раз
🧩
Сборка
Большая программа = несколько маленьких функций
hello_fn.py
def say_hello():
    player.say("Привет из функции!")

# вызов — имя функции и скобки:
say_hello()
Связь с курсом: ты уже использовал функции с player.on_chat("команда", имя_функции) — там в чат передаётся имя функции, а Minecraft вызывает её, когда игрок пишет команду.

2 Параметры и «главная» функция

Функция может принимать параметры — данные внутрь скобок:

params.py
def say_times(message: str, count: number):
    for i in range(count):
        player.say(message)

say_times("Строй!", 3)

Функция может вызывать другие функции — так собирают сценарий:

main_calls.py
def step_one():
    player.say("Шаг 1")

def step_two():
    agent.move(FORWARD, 2)

def run_show():
    step_one()
    step_two()
    player.say("Финал!")

player.on_chat("show", run_show)

🔑 Сопоставь термин и смысл

def
say_hello()
run_show()
🤖
Спроси Алису (по желанию)

Если что-то непонятно про def и вызов — короткий вопрос Алисе.

💬 На занятии главное — написать функции руками в Minecraft, а не только прочитать теорию.
⚠️ Без личных данных в чатах с ИИ.

🛠️ Практика: «Шоу» из функций

Создай три простые функции и одну start_show(), которая вызывает их по порядку. Запуск — команда в чате (например show).

Выполнено шагов: 0 из 6
Шаг 1 Функция приветствия

def greet_player(): — минимум одно player.say с твоим текстом.

Шаг 2 Функция агента

def agent_dance(): — агент делает 2–4 шага или поворота (move / turn).

Шаг 3 Функция финала

def grand_finale(): — поставь один блок через blocks.place или agent.place рядом с игроком.

Шаг 4 Главная функция

def start_show(): вызывает greet_player(), agent_dance(), grand_finale() по порядку.

Шаг 5 Чат

player.on_chat("show", start_show) — проверь в игре.

Шаг 6 Объяснение

Расскажи соседу: какая функция за что отвечает и почему удобнее, чем один длинный код.

📝 Проверь себя

1. Зачем выносить код в функции?

2. Что пишут после def?

💭 Рефлексия