Найти тему
Мастерская Wood’Zap

Clickteam Fusion. Инвентарь и сбор предметов.

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

 Герой стоит возле подбираемого предмета
Герой стоит возле подбираемого предмета

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

-2

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

-3

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

Нам понадобится несколько одинаковых моделей объекта, который мы собираемся метать.

-4

Я использовал три модели. Две большие, статичные. Одну мы будем подбирать и она размещена на игровом поле. Вторая будет отображаться возле жизней, привязана к положению их рамки и изначально будет невидимой. А третья будет Bouncing ball без изначального направления, так как задавать его будем исходя из направления взгляда героя при помощи редактора событий.

Зайдём в редактор событий и создадим первое условие.

-5

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

-6

Таким образом игровой объект пропадёт, а тот, что привязан к рамке жизней - появится.

Для чего это нужно? Объясню следующими условиями.

-7

По порядку:

Условие выполняется только если второй объект, привязанный к рамке жизней, видим. Именно поэтому мы не могли стрелять раньше.

Герой смотрит направо или налево.

Игрок жмёт заданную кнопку, пускай будет +

-8

При соблюдении этих условий и при нажатии кнопки + из героя будут появляться маленькие метательные шары, те самые, что мы создали как bouncing ball.

Если сейчас запустить приложение, то шары будут появляться, но не будут лететь. Помните, мы не задали направление движения для них? Зададим его соответственно ориентации героя.

-9

Теперь шар при запуске будет лететь с заданной в Properties скоростью.

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

Здесь можно пойти двумя путями:

1. По аналогии со взаимодействием падающих шаров описываем столкновения с каждой из поверхностей.

2. Либо по аналогии с горизонтальным триггером для ходьбы создаём вертикальный триггер, с которым и будет сталкиваться шар.