Часть 7. Последние штрихи | В паутине

Часть 7. Последние штрихи

Вольный перевод статьи How to Create a Platform Game in AS3 – Part 7 Часть комментариев (особенно по математическим расчетам) — моя.

Как и в предыдущих моих руководствах, в этой последней части я, скорее, расскажу о том, что нужно делать, нежели о том, как это делать. Но, разумеется, я поделюсь с вами готовым кодом. Начнем?
Прежде всего, мы должны отобразить на экране игровой счет персонажа. Просто создайте текстовое поле с типом «Динамический текст» где-нибудь наверху рабочей области и напишите код, который выведет в это поле текст: «Score: 0». Разумеется, значение 0 нужно будет заменить на реальный текущий счет нашего героя. Предлагаю разместить этот код где-нибудь в функции moveChar(), чтобы вам не пришлось создавать для этого новую функцию.
Далее, я думаю, что необходимо обнулять счет, если персонаж умирает. Потребуется какой-то трюк, ведь мы используем функцию resetLvl() и если персонаж проигрывает, и если он заканчивает уровень. На самом деле это довольно просто реализовать. Прежде всего, просто обнуляем счет в конце функции resetLvl(). Теперь находим место в классе Goal (файл Goal.as, где-то около 30 строки), где мы перезагружаем уровень при победе игрока и вносим следующие правки:

Таким образом, мы сохраняем счет в другой переменной перед тем, как перейти на следующий уровень, обнуляем его и после снова возвращаем текущее значение. Здорово, правда?
Следующим шагом будет добавление в игру заднего фона. Он будет немного темнее, чтобы его было видно. Кроме того, он будет двигаться медленнее, чем сама игра, создавая иллюзию удаленности.
Создадим контейнер для элементов фона внутри общего контейнера уровня. Сделайте это так же, как мы делали контейнеры для бамперов и трамплинов. Назовем его bgHolder и разместим до всех остальных элементов, чтобы он оказался снизу.
Добавим следующий код в конец функции createLvl():

Затем мы должны заставить фон двигаться медленнее.
Найдите эту часть кода:

И замените ее на:

И последнее, что мы должны сделать с фоном, — сбросить его координаты по x, если уровень сброшен. Сделайте это в функции createLvl() или в функции resetLvl(), как вам больше нравится. Я решил использовать первый вариант.
Вот и все, что мы должны были сделать в этом последнем уроке. Наслаждайтесь вашей новой игрой!

Все уроки руководства

1. Создание главного персонажа
2. Создание уровня
3. Взаимодействие персонажа с блоками
4. Добавление элементов уровня
5. Добавление врагов
6. Завершение уровня
7. Последние штрихи

Комментарии (0)

Ваш email не будет опубликован. Все поля обязательны