Часть 6: Добавление врагов
Введение
Теперь, когда у вас есть коллекционные монеты в вашей игре, пора добавить немного препятствий, чтобы создать вызов для игрока.
Эта часть руководства основана на Части 5, которая предполагает, что у вас есть управляемый персонаж, коллекционные монеты и базовое понимание добавления объектов в вашу сцену, системы поведения и коллизий.
Ваш первый враг
В библиотеке активов вернитесь к "Пакету стартовых платформ", который вы загрузили на предыдущем шаге, и выберите Розовую Слизь, затем добавьте анимацию "Движение" в док.
После того, как Розовая Слизь добавлена в ваш док, перетащите её из дока и разместите в вашей сцене.
Нажмите на слизь, которую вы только что добавили в сцену, чтобы открыть Свойства объекта, затем установите её как Физический объект.
Затем из Свойств объекта нажмите на иконку коллизий, чтобы открыть редактор коллизий. Нам нужно немного уменьшить коллизионную коробку вокруг неё, чтобы наш игрок не получал урон слишком рано. С помощью пальца переместите зеленую точку по сторонам ближе к слизи, затем нажмите на зеленую галочку, чтобы подтвердить изменения.
Теперь нам нужно, чтобы враг патрулировал путь. Для этого перейдите к поведению слизи. Из категории Объект добавьте поведение "Патруль".
Затем из Свойств поведения вы можете установить, как далеко слизь должна двигаться и сколько времени потребуется, чтобы достичь желаемого пункта назначения.
В разделе "Движение" значение X - это насколько враг будет двигаться вдоль оси X (влево или вправо). Отрицательное число указывает на движение влево, положительное число указывает на движение вправо.
Мы оставим значение по умолчанию (-6) на данный момент. Но вы можете изменить это в зависимости от вашей сцены и того, насколько далеко вы хотите, чтобы враг двигался.
Чтобы замедлить скорость врага, мы изменим длительность на 2 секунды. Это означает, что на движение на -6 метров потребуется 2 секунды.
Уничтожение врага
Чтобы уничтожить врага, мы будем использовать систему тегов в hyperPad. Теги позволяют вам ссылаться на несколько объектов без необходимости добавлять дополнительные поведения для каждого объекта. В этой ситуации теги помогут нам, так как нужно будет добавить поведения только для одного врага, и это автоматически будет работать для любого нового врага с тем же тегом. Вы можете узнать больше о тегах здесь: Теги объектов и Применение поведения к объектам с тегами.
Итак, давайте начнем с того, чтобы проставить тег нашей Розовой Слизи. Сначала выйдите из редактора поведения и вернитесь в главный редактор. Затем выберите Розовую Слизь, чтобы увидеть свойства объекта.
Снизу в свойствах объекта выберите вкладку "Теги" (это последняя вкладка внизу).
Чтобы добавить тег, введите имя в верхнем поле поиска. Убедитесь, что вы выбираете теги, которые легко запомнить. Для этого учебника мы просто будем использовать тег "Враг". Затем нажмите на кнопку +, чтобы добавить тег.
Теперь мы можем перейти к добавлению наших поведений. На этот раз выберите игрового персонажа и НЕ врага. Затем откройте поведения для игрового персонажа.
Из категории Объект добавьте поведение "Коллизия", затем выберите его, чтобы просмотреть свойства поведения.
В свойствах поведения коллизии выключите все переключатели, кроме "Сверху". Это сделает так, что поведение коллизии будет срабатывать только в том случае, если наш персонаж касается верхней части врага.
Затем внизу свойств поведения переключитесь на вкладку Теги. Затем выберите тег Враг, который мы добавили ранее. Зеленая точка рядом с тегом означает, что он выбран и активен. Теперь, вместо того, чтобы срабатывать на событие при касании конкретного врага, он будет срабатывать на событие при касании верхней части любого объекта, который имеет тег врага.
Теперь из категории Объект добавьте поведение "Отключить объект" и соедините его с коллизией, это остановит врага от патрулирования и взаимодействия.
Снова измените его так, чтобы он затрагивал только тег Враг. Поскольку как коллизия, так и отключение объекта имеют одинаковый тег, только конкретно коллизировавший объект будет отключен, а не все другие объекты с тем же тегом.
Следующим шагом, чтобы сделать игру немного более эффектной, мы заставим врага выглядеть иначе, когда его топчут. Добавьте поведение "Проиграть анимацию" из категории FX и соедините его с отключением объекта.
Затем нажмите на область, где написано "Выберите анимацию". Перейдите к розовой слизи в библиотеке активов и выберите анимацию "Удар".
Снова измените поведение так, чтобы оно затрагивало только объекты с тегом Враг.
Далее добавьте поведение ожидания и соедините его с поведением отключения объекта (рядом с проигрыванием анимации) и установите его на очень короткое время, например 0,25 секунды.
Наконец, добавьте поведение "Уничтожить объект" из категории объектов и соедините его с ожидаемым поведением, которое вы добавили ранее. Затем снова установите его на тег Враг. (Обратите внимание, на изображении ниже отключение было переименовано в "8")
И это всё! Теперь у вас есть враг, которого можно уничтожить.
Создание вызова
Теперь пора заставить врага иметь возможность уничтожать вас и заканчивать игру.
Находясь всё еще в поведениях игрока, добавьте новое поведение коллизии. На этот раз в свойствах поведения коллизии просто выключите переключатель "Сверху". И снова убедитесь, что выбран тег врага.
Затем добавьте поведение "Уничтожить объект" и соедините его с коллизией. Поскольку вы находитесь в поведениях игрока, он автоматически настроен на уничтожение игрока.
Наконец, добавьте поведение "Загрузить наложение" из категории Сцена и соедините его с поведением уничтожения объекта, которое вы добавили ранее.
Наложение - это как специальная сцена, которая может работать поверх вашей текущей сцены. Они часто используются для меню, пауз или экранов конца игры. hyperPad включает в себя 2 наложения, уже созданных. Одно для меню паузы и другое для экрана конца игры. Вы можете изменить их в соответствии с вашими нуждами из Меню проекта. Вы можете прочитать больше о Сценах и Наложениях, исследуя темы в руководстве.
В свойствах поведения загрузки наложения нажмите "Выбрать наложение". Затем из появившегося списка выберите предусмотренное hyperPad наложение "Конец игры".
И это всё! Теперь, когда вы столкнетесь с вашим врагом, игрок исчезнет, и экран конца игры появится, позволяя вам перезапустить сцену.
На этом этапе вы можете добавить больше врагов в ваш уровень. Просто убедитесь, что вы назначаете им тег Враг.

