Перейти к основному содержимому

Создание игры на Construct 3 с плагином GamePush

Вы узнаете как добавить в игру плагин, баннеры и таблицу лидеров. Научитесь работать с сохранением игрока.

tip

Плагин можно загрузить по по ссылке.

Идея игры

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

Как только игрок проигрывает, ему предлагается вариант продлить игру на 5 секунд через просмотр рекламы.

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

Игровая механика

Вся механика реализована 4 блоками:

  1. При старте игры — сбрасываем все состояния.

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

  3. При клике +1 к количеству нажатий, обновляем все тексты и красим блок в случайный цвет, попутно анимируя скачок блока.

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

Меню игры тоже довольно простое — обновляем показатели при старте и вешаем события на клики. Пока это только заготовка.

Добавляем плагин в игру

Создаем новую игру в панели.

Добавляем плагин в игру.

В настройках проекта отключаем режим работы в воркере.

info

Плагин еще не поддерживает режим работы с воркером.

В настройках плагина добавляем ID игры и публичный ключ.

Их можно посмотреть в панели.

Добавляем рекламу

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

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

Добавляем награду за просмотр видео.

Причем, перед тем как решить показывать ли кнопку просмотра видео, можно проверить доступно ли видео на платформе. В нашем примере — если уже получили награду или видео недоступно, то заканчиваем уровень.

Сохраняем прогресс

При завершении уровня нужно сохранить прогресс игрока. По умолчанию игрок имеет изменяемые поля: Имя, Аватар, Очки, но нам нужно добавить еще количество попыток.

Перейдите в панель управления. В разделе Игроки нажмите Добавить поле и затем перейдите к настройкам игрока.

Добавим новое поле, пометим его как Показатель (Stats) — теперь это поле числовое. В игре мы будем обращаться к полю по ключу, в примере ниже это attempts.

Добавим ему перевод.

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

Теперь вернемся в Construct. После завершения уровня добавим +1 попытку (1), сравним, если набранные очки побили предыдущие (2), то сохраним набранные (3) и синхронизируем с сервером (4).

Отображаем игрока

Выведем в меню лучший рекорд игрока, а также его количество попыток и место в рейтинге.

tip

Важно подметить, что Leaderboard: Get player position - асинхронный метод и ему нужно время, чтобы получить результат, поэтому можно его дождаться через Wait for previous actions to complete.

Выводим рейтинг

Вывести рейтинг проще всего. В плагине выбираем Leaderboard: Open, сортировать будем по score, от самых высоких к самим низким. Выведем топ 25 игроков, включая игрока на первом месте, если он не попал в лидеры. Выведем в таблице еще поле attempts, чтобы видеть сколько попыток ушло у лидеров, чтобы добиться этого рекорда.

В финале получится всего одно действие.

Лидерборд готов.

Финиш

Игра закончена, в целом такая мини-игра затронула большинство нужных функций плагина. Самое главное, вам больше не придется заботиться о сохранениях (тем более на iOS и в инкогнито).

  • Пример игры можно посмотреть здесь.
  • Исходные файлы к игре доступны по ссылке.

Оставайтесь на связи

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

Сообщество GamePush в Telegram: @gs_community.

Для ваших обращений e-mail: [email protected]

Желаем вам успехов!