Scratch — продвинутый платформер
Начальный уровень
Базовая гравитация и три костюма героя — в главе "платформер и демосцена".
Здесь — уровень полноценной игры — склоны, хитбокс, враг.
Эскиз
Кот ходит и прыгает по земле со склонами и платформами. Собирает яблоки. Краб патрулирует; касание отнимает жизнь или перезапускает уровень.
| Часть | Функция |
|---|---|
| А | Гравитация (как в Scratch — баскетбол и гравитация) |
| Б | Склоны — касание цвета под углом |
| В | Низкий и высокий прыжок (короткое / долгое нажатие пробела) |
| Г | Хитбокс-костюм |
| Д | Уровень, яблоко, краб |
Часть А — гравитация и земля
Соберите спрайт Земля из зелёных сегментов (пол + платформы). У кота — скрипт из Scratch: платформер и демосцена или Scratch — баскетбол и гравитация — скорость_y, на_земле, касание Земля или цвета #00cc00.
Контрольная точка: кот стоит на полу и падает с платформы, если сойти с края.
Часть Б — склоны
Нарисуйте на Земля полосу другого оттенка (например светло-зелёного) под углом. У кота:
если <касается цвета [#90ee90]?> то
изменить y на (2)
изменить x на (2)
конец
Подберите сдвиги x/y, чтобы кот "езжал" вверх по склону. Для потолка — отдельный цвет и отмена прыжка (§20).
Часть В — прыжок
- Короткое нажатие пробела —
скорость_y = 10. - Долгое — удержание увеличивает силу (счётчик в
повторять пока <нажата [пробел]>).
Или два отдельных скрипта с разными порогами ждать (0.15) перед прыжком.
Часть Г — хитбокс
- У кота два костюма:
обычныйихитбокс(маленький прозрачный овал внизу ног). - Перед проверкой столкновений:
включить костюм [хитбокс]. - Проверка
касается [Земля]/ краба / яблока. включить костюм [обычный].
Так голова не цепляется за платформу сверху. Подробно — §19.
Часть Д — анимация ходьбы
Три костюма — стоит, шаг_1, шаг_2. В цикле ходьбы:
следующий костюм
ждать (0.1) сек.
Прыжок и падение — отдельные костюмы, как в Scratch: платформер и демосцена.
Часть Е — яблоко и краб
Яблоко: при касании хитбоксом → +1 к очки, спрятать, звук.
Краб: повторять всегда → идти (3) шага, если касается края → развернуться. При касании кота → отправить [урон] → кот на старт, минус жизнь.
Простой ИИ — только патруль влево-вправо; этого достаточно для первого врага.
Вопросы для самопроверки
- Зачем переключать костюм хитбокса только на время проверки?
- Чем склон отличается от обычной платформы в коде?
- Какие три состояния героя видны на сцене?
Что дальше
| Дальше | Ссылка |
|---|---|
| Remix и шаблоны MIT | Стартовые проекты MIT Scratch |
| Edublocks / Python | Edublocks, Программа на Python |
| Метод обучения | Scratch — как учиться по проектам |
| Lab — все мини-проекты | Scratch — мини-проекты с разбором блоков — галерея |