Проект “Лодочная гонка”

Создадим игру в которой необходимо управлять с помощью мыши лодкой. Цель игры - максимально быстро доехать до берега и при этом не врезаться в препятствия. На пути лодки встречаются области, проехав по которым лодка ускоряется.

Движение лодки

Лодка должна двигаться за курсором мыши. Выбери спрайт Лодка и добавь ему следующий скрипт:

Нажми на флажок и проверь работу программы. Обрати внимание, что произойдёт, когда лодка приблизится вплотную к курсору. Эту ошибку надо исправить.

Для этого добавь блок если со следующим условием: если расстояние до курсора больше 5, то только тогда лодка должна двигаться за курсором мыши.

Подсказка (Нажми, чтобы показать) Тебе понадобятся эти блоки:

Обнаружение препятствий

Сейчас лодка свободна может проходить через деревянные стены. Необходимо добавить блоки с помощью которых лодка, столкнувшись с препятствием разбивалась и возвращалась в начальную позицию. У спрайта лодки есть два костюма, один из которых показывает сломанную лодку.

Тебе необходимо добавить код внутрь блок всегда для того, чтобы спрайт всегда проверял, столкнулся ли он со стенами. Если лодка касается бревенчатых стен (коричневый цвет), необходимо сменить костюм на сломанную лодку, сказать Нет! две секунды, затем вернуть костюм на нормальный. Затем необходимо вернуть повернуть лодку вверх и вернуть её в стартовую позицию.

Подсказка (Нажми, чтобы показать) Тебе понадобятся эти блоки:

Проверь работу игры.

Условие для победы в игре

Теперь добавь скрипт для определение условия победы.

Внутрь блока всегда добавь условие: если спрайт касается области жёлтого цвета (острова), то спрайт произносит фразу Победа! в течении двух секунд и затем игра полностью останавливается.

Подсказка (Нажми, чтобы показать) Тебе понадобятся эти блоки:

Добавляем таймер

Чтобы определить, кто быстрее всего добрался до острова, добавим к игре таймер.

Добавь переменную время. В ней мы будем хранить время прошедшее с момента начала игры.

За отслеживание прошедшего времени будет сама сцена. Выбери сцену.

После того как выберешь сцену, необходимо создать следующий скрипт: после нажатия на зелёный флажок, установи значение переменной время равным нулю. Затем в бесконечном цикле после задержки в 0.1 секунды, измени значение переменной на 0.1.

Подсказка (Нажми, чтобы показать) Тебе понадобятся эти блоки:

Проверь работу программы. Теперь после нажатия на зелёный флажок, ты должен увидеть как монитор переменной время, отсчитывает секунды пройденные с момента начала игры. После того как ты доплывёшь до острова, таймер должен остановиться.

Препятствия и ускорители

Сейчас игра проходится слишком легко. Добавим возможность ускорять лодку. Обрати внимание, что на игровом поле есть белые стрелочки. Как только лодка проедет по одной из них, она должна ускориться.

Выбери спрайт лодка и добавь следующие блоки в цикл всегда:

Протестируй игру.

Обрати внимание на спрайт ворота. Заставим их вращаться, чтобы сделать прохождение игры сложнее.

Выбери спрайт ворота и напиши скрипт с помощью которого они будут медленно вращаться вокруг центра.

Подсказка (Нажми, чтобы показать) Тебе понадобятся эти блоки:

Теперь запусти игру и проверь, вращается ли спрайт ворота и работают ли белые ускорители.

Как улучшить игру?

  1. Добавь к фону зелёные стрелочки, которые будут замедлять лодку. Сделай так, чтобы их было тяжело объехать.
  2. Добавь ещё несколько подвижных препятствий о которые лодка может разбиться.
  3. Клонируй спрайт с лодкой и добавь возможность управлять им с клавиатуры. Теперь в эту игру смогут играть два игрока одновременно.