Перейти к основному содержимому

Scratch — продвинутый платформер

Начальный уровень
Связь с курсом 3 Scratch

Базовая гравитация и три костюма героя — в главе «платформер и демосцена». Здесь — уровень полноценной игры: склоны, хитбокс, враг.


Эскиз

Кот ходит и прыгает по земле со склонами и платформами. Собирает яблоки. Краб патрулирует; касание отнимает жизнь или перезапускает уровень.

ЧастьФункция
АГравитация (как в 35)
БСклоны — касание цвета под углом
ВНизкий и высокий прыжок (короткое / долгое нажатие пробела)
ГХитбокс-костюм
ДУровень, яблоко, краб

Часть А — гравитация и земля

Соберите спрайт Земля из зелёных сегментов (пол + платформы). У кота — скрипт из 32 или 35: скорость_y, на_земле, касание Земля или цвета #00cc00.

Контрольная точка: кот стоит на полу и падает с платформы, если сойти с края.


Часть Б — склоны

Нарисуйте на Земля полосу другого оттенка (например светло-зелёного) под углом. У кота:

если <касается цвета [#90ee90]?> то
изменить y на (2)
изменить x на (2)
конец

Подберите сдвиги x/y, чтобы кот «езжал» вверх по склону. Для потолка — отдельный цвет и отмена прыжка (§20).


Часть В — прыжок

  • Короткое нажатие пробела — скорость_y = 10.
  • Долгое — удержание увеличивает силу (счётчик в повторять пока <нажата [пробел]>).

Или два отдельных скрипта с разными порогами ждать (0.15) перед прыжком.


Часть Г — хитбокс

  1. У кота два костюма: обычный и хитбокс (маленький прозрачный овал внизу ног).
  2. Перед проверкой столкновений: включить костюм [хитбокс].
  3. Проверка касается [Земля] / краба / яблока.
  4. включить костюм [обычный].

Так голова не цепляется за платформу сверху. Подробно — §19.


Часть Д — анимация ходьбы

Три костюма: стоит, шаг_1, шаг_2. В цикле ходьбы:

следующий костюм
ждать (0.1) сек.

Прыжок и падение — отдельные костюмы, как в 32.


Часть Е — яблоко и краб

Яблоко: при касании хитбоксом → +1 к очки, спрятать, звук.

Краб: повторять всегдаидти (3) шага, если касается краяразвернуться. При касании кота → отправить [урон] → кот на старт, минус жизнь.

Простой ИИ — только патруль влево-вправо; этого достаточно для первого врага.


Вопросы для самопроверки

  1. Зачем переключать костюм хитбокса только на время проверки?
  2. Чем склон отличается от обычной платформы в коде?
  3. Какие три состояния героя видны на сцене?

Что дальше

ДальшеСсылка
Remix и шаблоны MIT31
Edublocks / Python4, 6
Метод обучения39

См. также

Другие статьи этого же раздела в боковом меню (как на странице "О разделе").