Во многих ситуациях при создании игры нужно связать вместе два объекта, таким образом, что бы каждым экземпляр дочернего объекта однозначно относился к своему родительскому объекту. Например у вас есть множество врагов (родительские объекты) в игре, и у каждого врага есть полоска жизней (дочерний объект). В Clickteam fusion 2.5 такая связка объектов происходит когда вы создаете два объекта в одном событии и при этом дочерний объект вы создаете относительно родительского. Теперь давайте подробно.
Объекты. Настройка сцены.
Все очень просто, добавьте из библиотеки на сцену какого-нибудь персонажа.
Затем снимите галочку «создавать при старте» в свойствах этого персонажа.
После этого нужно добавить объект счетчика и превратить его в горизонтальный бар для жизней. Нажмите на меню Файл (Insert> Insert New Object) и добавьте объект counter
Создаем переменную жизней у персонажа и сразу устанавливаем в значение 100.
Что бы особо не заморачиваться с движением персонажа, выставим ему тип bouncing ball.
События. Логика построения связи родитель-потомок
Будем создавать новых человечков нажатием клавиши ПРОБЕЛ.
И вместе с человечком в этом же событии будем создавать счетчик жизней в позиции относительной к человечку.
Далее того, что бы полоска жизней перемещалась вместе с персонажем нужно создать событие Always (Всегда) и присвоить позицию относительно персонажа.
Здесь же в событии Always создаем действие присвоения значению счетчика значения переменной «Жизни».
Если вы сейчас запустите свою игру и нажмете пробел несколько раз вы увидите как появляются персонажи с жизнями. Теперь давай создадим события для нанесения урона персонажам. Мы можем создать простое событие клика мышкой по персонажу и здесь отнимать у него 10 жизней:
1. Создаем событие клика мыши по объекту персонажа;
2. Отнимаем 10 из переменной «Жизни».
Запустите игру. Теперь по клику мыши на человечке у него укорачивается полоска жизней и именно у того по которому кликнули, что говорит о том что каждая полоска жизней относится к своему персонажу.
Теперь нам осталось сделать, разве что, события для отталкивания человечков от краев сцены
и уничтожать персонажа если его жизни равны нулю
Полный код:
Скачать исходный файл.
Вывод
Вот так во Fusion вы можете соединять объекты вместе устанавливая связь родитель-потомок. Когда вы создаете два объекта в одном событии, они автоматически становятся парой, и от этого будут зависеть любые будущие события, условия или выражения над этими объектами.
Если вы не создадите оба объекта в одном событии, Fusion не будет автоматически их соединять и вам придется делать это вручную, об этом можно прочитать тут.
Связь объектов родитель-потомок — это очень эффективный и экономящий время метод, который вам наверняка пригодится в разработки игр.
Используйте эту функцию в своих будущих проектах и будет вам счастье!