Как разместить проект без экранов на сайте или в приложении

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

В редакторе проекта

Перейдите в Настройки проекта > Доступ > Сайт и укажите адрес сайта, в котором будете встраивать проект. Этот адрес необходим, чтобы проект отобразился.
Далее необходимо выбрать тип скрипта:
Полный проект — загрузится вместе с экранами лендинга и результатов.
Только игра — в проекте отобразится только игра. Вам нужен этот тип. Скопируйте скрипт и разместите его на своём сайте.

События, отправляемые скриптом

Все события приходят на окно‑родителя как MessageEvent в window.addEventListener('message', handler). Вам необходимо реализовать на странице слушатель событий и по событию .finished вызывать логику с учётом результата игры.

gamifig.ready

Отправляется после загрузки embed‑страницы.
type GamifigEmbedReadyMessage = {

ㅤtype: 'gamifig.ready'

ㅤversion: 1

ㅤprojectId: number

ㅤprojectSlug: string

}

gamifig.game.started

Отправляется при старте игры.
type GamifigEmbedReadyMessage = {

ㅤtype: 'gamifig.game.started'

ㅤversion: 1

ㅤprojectId: number

ㅤsessionId: number | null

}

gamifig.game.finished

Отправляется по завершению игры. По этому событию можно вызвать необходимую логику (показать pop-up, перевести на другую страницу и пр.)
type GamifigEmbedReadyMessage = {

ㅤtype: 'gamifig.game.finished'

ㅤversion: 1

ㅤprojectId: number

ㅤprojectSlug: string

ㅤsessionId: number

ㅤresult: 'win' | 'loss'

ㅤscore: number | null

ㅤlivesLeft number | null

ㅤtimestamp: number

}

Получение данных по сессиям

Вы можете настроить API и получать данные на свой сервер. Документация API