Сообщения в Scratch – это мощный инструмент, позволяющий организовать взаимодействие между спрайтами, фонами и скриптами. Они работают как сигналы, которые могут запускать определенные действия, синхронизировать события или передавать данные между разными частями проекта.
Не путайте сообщения с блоками «думать» и «говорить»!
Сообщения — внутренний функционал, он не виден на сцене.
Основные принципы работы
Сообщения в Scratch действуют по принципу «отправитель-получатель»:
- Один спрайт (или сцена) отправляет сообщение – например, «Игра началась», «Уровень пройден» или «Мяч коснулся земли».
- Другие спрайты (или фон) могут реагировать на это сообщение, выполняя заданные действия (запуск игры, нового уровня, прекращение игры).
Это особенно полезно в сложных проектах, где несколько объектов должны взаимодействовать друг с другом.
Отправленное сообщение получают все спрайты и сцена. Один спрайт или сцена может отправлять несколько сообщений, также как и обрабатывать разные сообщения.
Как отправить сообщение
- Выберите спрайт, который будет инициировать событие (например, кнопка «Старт», главный герой или враг).
- Перейдите в категорию «События».
- Найдите блок «Передать сообщение».

- Нажмите на выпадающий список и выберите «Новое сообщение».

- Введите сообщение (например, «Старт», «Поражение», «Собрал монету»).
Примеры
Когда спрайт нажат, отправляем сообщение «Старт» — так можно запрограммировать кнопку начала игры.

Когда переменная «Жизни» стала меньше 1, отправляем сообщение «Проигрыш» — так можно запрограммировать конец игры, если у персонажа кончились жизни.

Если игрок касается спрайта портала, передать сообщение о запуске второго уровня — так реализовывается переход между уровнями.

Как принять сообщение
Сообщение отправляется всем объектам в проекте. Но чтобы они реагировали на него, требуется запрограммировать эту реакцию. Для этого:
- Выберите спрайт или сцену, которые должны отреагировать на сообщение.
- Перейдите в категорию «События».
- Выберите блок «Когда я получу».

- Под ним разместите действия, которые должны выполняться.
Примеры
Когда было получено сообщение «Старт», меняется фон и запускается фоновая музыка — так можно запрограммировать поведение сцены с началом игры.

Когда было получено сообщение «Проигрыш», другой спрайт прячется, переключает фон и останавливает все скрипты.

Когда было получено сообщение «2 уровень», у спрайта меняется костюм, он переключает фон, переходит в другие координаты и показывается на сцене. Так можно запрограммировать портал в игре-платформере.

Советы по использованию
- Используйте понятные имена («старт», «рестарт», «монета собрана»).
- Избегайте слишком частых сообщений, чтобы не усложнять логику.
- Тестируйте взаимодействия, чтобы убедиться, что все спрайты реагируют правильно.
Сообщения — это мощный инструмент для координации действий между спрайтами и организации событий в проекте. Они позволяют запускать скрипты по сигналу, синхронизировать объекты, упрощать код, заменяя сложные проверки на простые события. Сообщения делают проекты интерактивными и удобными в разработке