Talking Tom — это интерактивная игра, в которой виртуальный кот реагирует на голос игрока, повторяет звуки и копит очки за общение. Мы создадим собственную версию этой игры в Scratch. Проект использует микрофон, переменные и системы событий — это уже настоящее программирование.
Шаг 1. Создаём фон и выбираем сцены. Начинаем с настройки окружения. В Scratch нажимаем кнопку смены фона в правом нижнем углу экрана. Для нашей игры нужны две сцены: комната кота (основное место действия) и магазин (куда игрок тратит накопленные очки).
Для комнаты выбираем один из уютных интерьеров из библиотеки фонов. Для магазина — простой однотонный фон, чтобы товары хорошо выделялись и не сливались с окружением.
Совет: у каждого фона в Scratch может быть своё название. Назовите фоны «Комната» и «Магазин» — это упростит программирование переходов между сценами.
Шаг 2. Добавляем персонажа и настраиваем микрофон.
Добавляем спрайт кота из библиотеки Scratch или рисуем собственного персонажа во встроенном редакторе. Размещаем его в центре сцены.
Для работы с голосом нам нужен модуль «Текст и Речь» — он находится в нижнем левом углу меню расширений. Подключаем его.
Теперь активируем микрофон: нажимаем на иконку микрофона в нижней левой части экрана и разрешаем браузеру доступ к записи звука. Проводим тест — говорим что-нибудь в микрофон и убеждаемся, что Scratch фиксирует уровень звука. Если всё работает — переходим к коду.
Шаг 3. Создаём код — подсчёт очков и реакция кота.Создаём переменную «Очки» — она будет отслеживать, сколько баллов заработал игрок. Включаем отображение переменной на экране, чтобы счёт был виден во время игры.
Теперь пишем код для спрайта кота. Логика работы:
- При запуске игры: обнуляем переменную «Очки», устанавливаем голос для кота (мужской, женский или детский — на выбор), показываем спрайт на экране
- Создаём цикл, который постоянно проверяет уровень звука с микрофона. Как только громкость превышает 30 единиц (это значение можно подстроить под конкретный микрофон) — срабатывает реакция: кот говорит «Мяу», на экране появляется его ответ («Привет!», «Отлично!» или другая фраза — можно сделать случайный выбор из нескольких вариантов), а переменная «Очки» увеличивается на 1.
Именно здесь ребёнок впервые встречается с важнейшей концепцией программирования: условным оператором («Если громкость > 30, то...»). В реальном коде это выглядело бы как if volume > 30: — в Scratch это тот же принцип, только в виде блока.
Шаг 4. Добавляем магазин с переключением сцен. Создаём иконку-кнопку для входа в магазин и размещаем её в нижней части экрана. Вводим логическую переменную «Магазин_статус» — она принимает значения «истина» (игрок в магазине) или «ложь» (игрок в комнате).
Код иконки работает так: при нажатии проверяем текущее значение переменной и переключаем сцену — отправляем сообщение «Магазин» или «Комната». Другие части программы «слышат» это сообщение и меняют фон.
Это событийная модель программирования — именно так работают реальные приложения: кнопка отправляет сигнал, система его обрабатывает. Дети усваивают этот принцип через игру, не зная, что изучают архитектуру программного обеспечения.
Шаг 5. Наполняем магазин товарами.Переносим в магазин спрайт гитары из библиотеки. Создаём две переменные: «Гитара_цена» (сколько очков стоит инструмент) и «Гитара_статус» (куплена ли гитара: истина/ложь).
Код покупки проверяет: если у игрока достаточно очков — гитара появляется в комнате кота, статус меняется на «истина», а очки уменьшаются на цену покупки. Если очков не хватает — появляется уведомление.
Дополнительно программируем анимацию: когда игрок нажимает на гитару в комнате — кот начинает играть. Это добавляет интерактивности и демонстрирует ещё одну концепцию: взаимодействие между спрайтами через сообщения.
Поздравляем — говорящий Том в Scratch готов! Игра умеет: распознавать голос, начислять очки, переключать сцены и обрабатывать покупки в магазине. Это уже полноценный интерактивный проект с несколькими игровыми механиками.