Подборки игр
Обзор
С GamePush вы можете показать игроку список своих игр. Откроется оверлей со списком игр, доступных на текущей площадке.
Чтобы игра была видна в списке на платформе, вам необходимо:
- Зайти в настройки игры и отметить все площадки, на которых игра уже опубликована. Это можно сделать в поле Опубликована на платформах в разделе Публичная зона.
- На площадках, не поддерживающих внутренние URL - добавьте в игру публичный URL. Это можно сделать в поле Публичный URL игры в разделе Настройки проекта.
Некоторые платформы разрешают обмен ссылками только внутри платформы. Ниже представлена таблица типов ссылок.
Площадка | Тип ссылки |
---|---|
Yandex.Games | ✅ Внутренняя |
VK Games | ✅ Внутренняя |
VK Play | ✅ Внутренняя |
OK Games | ✅ Внутренняя |
Kongregate | ✅ Внутренняя |
PlayDeck | ✅ Внутренняя |
GooglePlay | 💡 Внешняя (Public URL) |
CrazyGames | 💡 Внешняя (Public URL) |
GameMonetize | 💡 Внешняя (Public URL) |
GameDestribution | ❌ Запрещено |
GamePix | ❌ Запрещено |
WG Playground | ❌ Запрещено |
POKI | ❌ Запрещено |
SmartMarket | ❌ Нет механизма шаринга, нельзя получить URL игры (ждем возможности) |
💡 Внешняя (Public URL) - игра будет отображаться только в том случае, если в игре указан публичный URL.
Вы можете создавать любые подборки на странице Games Dashboard.
Показать подборку игр
+1 RequestОткрыть оверлей со всеми играми, отсортированными по новизне
- JavaScript
- Unity
gp.gamesCollections.open();
//Или открыть по тегу "ALL"
gp.gamesCollections.open({ tag: 'ALL' });
//Открыть по тегу
GP_GamesCollections.Open("ALL");
Открыть оверлей с играми из специальной подборки по ID
или TAG
- JavaScript
- Unity
// Открыть по тэгу
gp.gamesCollections.open({ tag: 'HALLOWEEN_GAMES' });
// Открыть по ID
gp.gamesCollections.open({ id: 547 });
// Открыть по тэгу
GP_GamesCollections.Open("PUZZLES");
// Открыть по ID
GP_GamesCollections.Open("547");
Открыть оверлей с играми с дополнительными параметрами для шаринга. Например, указать ID игрока или награду за переход. Параметры передаются в формате { "key": "value" }
.
- JavaScript
- Unity
gp.gamesCollections.open({
tag: 'HALLOWEEN_GAMES',
shareParams: {
playerId: gp.player.id,
fromGame: gp.projectId,
fromPlatform: gp.platform.type,
fromUrl: gp.app.url,
},
});
// Еще не реализовано
События открытия подборки
- JavaScript
- Unity
// Открытие оверлея
gp.gamesCollections.on('open', () => {});
// Закрытие оверлея
gp.gamesCollections.on('close', () => {});
GP_GamesCollections.Open("PUZZLES", OnOpen, OnClose);
// Открытие оверлея
private void OnOpen() => Debug.Log("GAMES COLLECTION: ON OPEN");
// Закрытие оверлея
private void OnClose() => Debug.Log("GAMES COLLECTION: ON CLOSE");
Получение подборки игр
+1 RequestПолучить все игры отсортированные по новизне
- JavaScript
- Unity
gp.gamesCollections.fetch();
//Или открыть по тегу "ALL"
gp.gamesCollections.fetch({ tag: 'ALL' });
GP_GamesCollections.Fetch();
Получить игры из специальной подборки по ID
или TAG
- JavaScript
- Unity
// По тэгу
gp.gamesCollections.fetch({ tag: 'HALLOWEEN_GAMES' });
// По ID
gp.gamesCollections.fetch({ id: 547 });
// По тэгу
GP_GamesCollections.Fetch("ALL");
// По ID
GP_GamesCollections.Fetch("547");
Получение с promises
- JavaScript
- Unity
const result = await gp.gamesCollections.fetch();
// Ответ
const {
// ID подборки
id,
// Тег подборки
tag,
// Имя подборки
name,
// Описание подборки
description,
// Список игр в подборкe
games,
} = result;
Не реализовано
События получения подборки игр
- JavaScript
- Unity
// Успешное получение
gp.gamesCollections.on('fetch', (result) => {});
/**
* Ошибка при получении
* @type {
* 'not_found' |
* undefined
* }
*/
gp.gamesCollections.on('error:fetch', (error) => {});
GP_GamesCollections.Fetch("PUZZLES", OnFetchSuccess, OnFetchError);
// Успешное получение
private void OnFetchSuccess(string idOrTag, GamesCollectionsFetchData collection)
{
Debug.Log("ID: " + collection.id);
Debug.Log("TAG: " + collection.tag);
Debug.Log("NAME: " + collection.name);
Debug.Log("DESCRIPTION: " + collection.description);
for (int i = 0; i < collection.games.Length; i++)
{
Debug.Log("GAME ID: " + collection.games[i].id);
Debug.Log("GAME NAME: " + collection.games[i].name);
Debug.Log("GAME DESCRIPTION: " + collection.games[i].description);
Debug.Log("GAME ICON: " + collection.games[i].icon);
Debug.Log("GAME URL: " + collection.games[i].url);
}
}
//Ошибка при получении
private void OnFetchError() => Debug.Log("GAMES COLLECTION: FETCH ERROR");
Поля подборки
- JavaScript
- Unity
/**
* ID Подборки
* @type {number}
*/
collection.id;
/**
* Необязательный тег для помощи при выборе
* Вы можете использовать его вместо ID
* @type {string}
*/
collection.tag;
/**
* Название, переведенное на язык пользователя
* @type {string}
*/
collection.name;
/**
* Описание, переведенное на язык пользователя
* @type {string}
*/
collection.description;
/**
* Список игры в коллекции (отсортированный)
* @type {GamePreview[]}
*/
collection.games;
public class GamesCollectionsFetchData
{
// ID Подборки
public int id;
//Необязательный тег для помощи при выборе
public string tag;
//Название, переведенное на язык пользователя
public string name;
//Описание, переведенное на язык пользователя
public string description;
//Список игры в коллекции (отсортированный)
public Games[] games;
}
Поля игры
- JavaScript
- Unity
/**
* ID Игры
* @type {number}
*/
game.id;
/**
* Название, переведенное на язык пользователя
* @type {string}
*/
game.name;
/**
* Описание, переведенное на язык пользователя
* @type {string}
*/
game.description;
/**
* Ссылка на иконку размером 256x256
* @type {string}
*/
game.icon;
/**
* URL на платформе или публичный URL игры
* @type {string}
*/
game.url;
public class Games
{
//ID Игры
public int id;
//Название, переведенное на язык пользователям
public string name;
//Описание, переведенное на язык пользователя
public string description;
//Ссылка на иконку размером 256x256
public string icon;
//URL на платформе или публичный URL игры
public string url;
}
Оставайтесь на связи
С другими разделами документации вы можете ознакомиться здесь. Для начала работы вы можете ознакомиться с нашими туториалами.
Сообщество GamePush в Telegram
: @gs_community.
Для ваших обращений e-mail
: [email protected]
Желаем вам успехов!