Создание вашей первой игры. Без программирования. Часть 3. Собираем монеты

Продолжение серии уроков по созданию своей игры с помощью конструктора игр GDevelop 5. В первых частях (ссылки ниже) мы разобрались как добавить в игру платформы, персонажа и камеру, а также сделали управление.

Предыдущие уроки:

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

Поехали! (с) Гагарин Ю.А.

Прежде чем приступить к работе, давайте сначала скачает пакет монет. Я взял вот этот, но разумеется вы можете выбрать любой. Также скачаем пакет звуковых эффектов по этой ссылке. И распакуем всё это дело в удобную для вас папку.

Для тех, кто не знаком с Itch.io скачивание без оплаты происходит по нажатию вот этой надписи (если конечно товар бесплатный).

Т.е. если вольно переводить «Нет спасибо, просто хочу скачать»

Так как из прошлых уроков вы уже знакомы как добавлять объекты и анимацию для него в игру, сильно расписывать я это не буду.

Добавим к списку нашим объектов, монеты и анимацию c названием «Coin» (тип объекта «Sprite»). Поправим скорость анимации, выставив значение 0.15 (иконка с часами) и активируем параметр «Loop» (повтор анимации). Нажимаем «Apply» (применить).

Теперь расставим монеты по уровню. Приблизительно вот так

UI счётчика

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

Создадим новый слой в игре и назовём его «UI». Как это сделать… Откроем редактор слоёв кнопкой «Open the layers editor», нажимаем кнопку «Add a layer» и в поле «Layer Name» пишем название нового слоя.

Теперь добавим ещё два объекта, первый это «Sprite» с именем «CollectIcon» (иконка монеты) и второй «Text», собственно цифра с количеством собранных монет и имя ему будет «CoinCount».

previous arrow
next arrow
previous arrownext arrow
Slider

Перенесём их на сцену и в свойстве «Layer» данных объектов поставим слой с названием «UI». Делается это в панели «Properties», ну и анимации для наглядности.

Сбор монет

Добавим в нашу сцену переменную, которая будет хранить число собранных монет, назовём её «Score» и выставим значение «0».

Переменная — область памяти в программирования для хранения определённого типа данных и последующей работы с этими данными. Это если коротко…

В редакторе уровней делаем ПКМ (правый клик мышью) и в меню выбираем пункт «Scene properties». В открывшемся окне нажимаем кнопку «Edit scene variables», нажимаем на кнопку с плюсом и задаём параметры нашей переменной.

Переходим на вкладку «Events» (события) и создаём логику сбора. Сначала давайте сделаем уничтожение монеты при столкновении с игроком, также добавим озвучку.

Создаём пустое событие, нажимаем по «Add condition» (добавить условие) и выбираем элемент «Collision», как первый объект ставим нашего игрока «Hero», вторым ставим монету «Coin».
Добавляем действие к данному событию. Кликаем по «Add action» и выбираем элемент «Delete an object», в поле «Object» выбираем монету.

Теперь давайте добавим звук. Под действием уничтожения нажимаем «Add Action» и выбираем элемент «Play a sound». Справа кликаем по «Choise a new audio file». В открывшемся диалоговом окне находим папку куда распаковали звуки и выбираем файл «Coins 8 — Sound effects Pack 2» в папке «Coins» (формат OGG). Параметры Volume (громкость) и Pitch (скорость) выставляем по вашему усмотрению.

Работа с переменной + отображение количества собранных монет

Теперь нам надо сделать чтобы в текстовом объекте под названием «CointCount» отображалось то количество монет, которые собрал игрок.

Находим в событиях пустое условие (там где настраивали камеру) и по клику на «Add action» добавляем новое действие. В открывшемся окне находим элемент «Modify the text». В поле «Object» выбираем «CointCount», в «Modofication’s sign» (параметр модификации) ставим «set to» (равно) и напротив поля «Value» кликаем по кнопке «Abc». Здесь нам надо зайти в «Variables» и выбрать «Text of a scene variable» и в открывшемся окне выбрать нашу переменную сцены «Score».

Но это ещё не всё, выше мы сделали только установку текста от переменной, но поскольку сама переменная равна нулю, количество собранных монет не будет видно. Давайте исправим это.

К условию столкновения добавляем ещё одно действие, в котором находим такой параметр как «Value of scene variable» (значение переменной сцены). В поле «Variable» выбираем наше переменную «Score», поле «Modofication’s sign» устанавливаем на «+(add)» (добавить) и в поле «Value» пишем 1. Нажимаем «ok»

Вот и всё, теперь можем запустить предварительный просмотр и увидеть что получилось. Если всё сделано правильно, будет вот так (звука правда в gif не услышите, а он есть)

На этом урок по коллекционированию монет закончен. Как придёт наПисательское вдохновение, выпущу урок по завершению сцены и переходу на следующий экран (уровень)

Ну а пока…

Пишите комментарии.
Подписывайтесь

Спасибо за внимание! Всем добра=)