Найти в Дзене

C2: прикрепляю брелки к маятнику через Image point (шаблон внутри)

Оглавление

Одной из основных механик является привязка одного объекта к другому через точку.

Таким способом, например, можно привязать плащ к персонажу или прикрепить платформу, как я сделала в игре "Найди меня".

На гиф ниже показано, что черепашка прикреплена к платформе и двигается вместе с ней:

Фрагмент из моей игры "Найди меня"
Фрагмент из моей игры "Найди меня"

В этом уроке я буду присоединять к покачивающемуся маятнику три брелка, которые тоже будут покачиваться вслед за основным объектом.

Выглядеть это будет так:

Результат урока
Результат урока

У меня уже есть нарисованный шаблон из моего кликера "Маятник", поэтому я возьму его. Если вы не желаете рисовать свой шаблон, то можете взять мой:

Шаблон с маятником и брелками
Шаблон с маятником и брелками

Графика

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

Тут же настраиваю одну основную точку для самого маятника и три для брелков.

Добавление маятника: создаю новый проект --> правой кнопкой мыши нажимаю на холст --> Insert new object --> Sprite --> Insert --> нажимаю на холст, чтобы открыть редактор изображений --> нажимаю на иконку папки в верхней панели редактора --> загружаю шаблон --> выбираю инструмент Rectangle select в левой панели редактора и выделяю им маятник --> в верхней панели редактора нажимаю дважды на Crop

Настройка точек: в левой панели редактора выбираю Set origin and image points --> появляется отдельное окошко Image points, в нем я трижды нажимаю на иконку плюса --> теперь расставляю на маятнике точки. Нулевую ставлю в центр круга маятника, а 1, 2 и 3 точку ставлю на места, где будут располагаться брелки

Добавление маятника и настройка точек
Добавление маятника и настройка точек
На всякий случай настрою поле для касания. Если его не настроить, при воспроизведении проекта невыделенные части не будут реагировать. В игре "Маятник" при нажатии на сам маятник, у меня прибавлялись очки для покупки улучшений.

Поле для касания: в левой панели редактора выбираю Set collision polygon --> расставляю появившиеся точки по кругу маятника, если нужно добавить еще, то я нажимаю на какую-либо точку, она принимает желтый цвет, и я нажимаю на нее дважды --> закрываю редактор без сохранения

Поле для касания
Поле для касания
Настраиваю поведение для маятника. Он должен покачиваться из стороны в сторону. За подобное поведение отвечает Sine.

Поведение маятника: нажимаю на маятник --> в основной левой панели проекта, в Properties, нахожу Behaviors и нажимаю на текст, выделенный синим --> в появившемся окошке нажимаю на иконку плюса --> Sine --> Add --> закрываю окошко --> в левой основной панели, где behaviors, напротив Movement должно стоять Horizontal, напротив Wave - Sine, напротив Period - 2, напротив Magnitude - 50.

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

Добавление брелков: правой кнопкой мыши нажимаю на холст --> Insert new object --> Sprite --> Insert --> нажимаю на холст, чтобы открыть редактор изображений --> нажимаю на иконку папки в верхней панели редактора --> загружаю шаблон --> выбираю инструмент Rectangle select в левой панели редактора и выделяю им брелок --> в верхней панели редактора нажимаю дважды на Crop

Настройка точек: в редакторе изображений нажимаю на Set origin and image points --> ставлю точку вверху, брелка, в то место, которым он будет крепиться к маятнику

Добавление брелков
Добавление брелков
Объединяю все брелки в семью, так как это одинаковые объекты.

Создание семьи для брелков: в правой основной панели проекта, в панели Project, нахожу папку Families --> нажимаю на нее правой кнопкой мыши --> Add family --> в появившемся окошке выбираю брелок и нажимаю на стрелочку, перемещающую брелок из левой колонки в правую. Так перемещаю каждый брелок --> ОК

Создание семьи для брелков
Создание семьи для брелков
Теперь мне не нужно присваивать поведение каждому брелку. Я могу нажать на Family и поставить для нее одно поведение Sine, отвечающее в этом уроке за покачивание.

Поведение для брелков: нажимаю на Family --> в левой основной панели нажимаю на Family behaviors, написанное синим цветом --> в появившемся окошке нажимаю на иконку плюса --> Sine --> Add --> закрываю окошко --> в левой основной панели, где family behaviors, напротив Movement должно стоять Angle, напротив Wave - Triangle, напротив Period - 2, напротив Magnitude - 25.

Поведение для брелков
Поведение для брелков

Механика

Теперь нужно с помощью механики прикрепить точки на брелках к точкам на маятнике. В этом нет ничего сложного, так как большинство действий повторяются.

(событие) Прикрепление брелков к маятнику: перехожу в верхних вкладках в Event sheet --> правой кнопкой мыши нажимаю на на пустое место и выбираю Add event --> System --> Next --> Every tick --> Done

(действие 1) Прикрепление брелков к маятнику: напротив события нажимаю Add action --> выбираю первый брелок --> Next --> Set position to another object --> Next --> в появившемся окошке напротив Object выбираю маятник, а напротив Image point (optional) ставлю цифру 1 --> Done

(действие 2) Прикрепление брелков к маятнику: напротив события нажимаю Add action --> выбираю второй брелок --> Next --> Set position to another object --> Next --> в появившемся окошке напротив Object выбираю маятник, а напротив Image point (optional) ставлю цифру 2 --> Done

(действие 3) Прикрепление брелков к маятнику: напротив события нажимаю Add action --> выбираю третий брелок --> Next --> Set position to another object --> Next --> в появившемся окошке напротив Object выбираю маятник, а напротив Image point (optional) ставлю цифру 3 --> Done

Прикрепление брелков к маятнику
Прикрепление брелков к маятнику

Механика должна выглядеть так:

-11

Запуск проекта

При запуске проекта маятник покачивается, а брелки следуют за ним.

-12

Спасибо, что были со мной на этом уроке! На моем канале есть различные уроки, в том числе, о генерации ландшафта или о создании жизней для босса на гибкой системе анимации.