Scratch — лабиринт на клавишах
Начальный уровень
Эскиз
Игрок ведёт кота стрелками по лабиринту. Дойдя до яблока, получает очко и переходит на следующий уровень (новый фон-лабиринт). Стены не пускают сквозь себя.
| Часть | Функция |
|---|---|
| А | Движение стрелками |
| Б | Несколько фонов-лабиринтов |
| В | Столкновение со стеной (цвет) |
| Г | Яблоко и сообщение "следующий уровень" |
Часть А — движение героя
Переименуйте кота в Рыжий кот. Отдельный скрипт:
[Когда 🟢 нажат]
повторять всегда
если <нажата клавиша [стрелка вверх]?> то
изменить y на (4)
конец
если <нажата клавиша [стрелка вниз]?> то
изменить y на (-4)
конец
если <нажата клавиша [стрелка вправо]?> то
изменить x на (4)
конец
если <нажата клавиша [стрелка влево]?> то
изменить x на (-4)
конец
ждать (0.02) сек.
конец
Контрольная точка: кот ходит по пустой сцене во все стороны.
Часть Б — уровни как фоны
- Нарисуйте или загрузите картинку лабиринта (чёрные стены, белые коридоры).
- Вкладка Фон → добавьте несколько костюмов —
Уровень1,Уровень2, … - Создайте спрайт-"менеджер"
Лабиринт(можно пустой квадрат) со скриптом смены фона при старте:
[Когда 🟢 нажат]
переключить фон на [Уровень1 v]
Переключение фонов — внешний вид сцены.
Часть В — стены по цвету
Перед каждым шагом проверяйте, не касается ли кот цвета стены (например чёрного #000000):
если <нажата клавиша [стрелка вверх]?> то
изменить y на (4)
если <касается цвета [#000000]?> то
изменить y на (-4)
конец
конец
Повторите для всех четырёх стрелок. Кот "откатывается" назад, если вошёл в стену.
В блоке "касается цвета" щёлкните цветной квадрат и кликните по стене на сцене — Scratch подставит точный оттенок.
Контрольная точка: сквозь стены пройти нельзя.
Часть Г — яблоко и уровни
- Спрайт
Яблоков конце коридора. - У кота при касании яблока:
если <касается [Яблоко]?> то
изменить [уровень v] на (1)
отправить [следующий_уровень v] и ждать
конец
- У спрайта
Лабиринт:
[Когда получено [следующий_уровень v]]
переключить фон на [Уровень2 v] // или выбор по переменной уровень
перейти в x: (-180) y: (-150) // стартовая клетка — подберите координаты
Переместите яблоко на новом уровне или продублируйте логику для Уровень3 … Уровень8.
Контрольная точка: сбор яблока меняет фон и возвращает кота в начало коридора.
Дополнительно (после базовой версии)
| Идея | Суть |
|---|---|
| Два игрока | Второй кот (синий), свои стрелки (WASD), своё яблоко |
| Чит "сквозь стены" | Отдельная клавиша временно отключает откат от цвета |
| Счёт | Глобальная переменная очки на сцене |
Готовый классический лабиринт MIT для сравнения: проект 10128431 (каталог).
Вопросы для самопроверки
- Зачем нужен блок
отправить … и ждатьмежду котом и фоном? - Почему проверка стены делается после сдвига, а не до?
- Как добавить восьмой уровень без переписывания всего кода?
Что дальше
| Дальше | Ссылка |
|---|---|
| Гравитация и прыжок | Scratch — баскетбол и гравитация — баскетбол |
| Сообщения подробнее | Scratch §2 |
| Lab — стрелки и стены | лабиринт, фрагмент |