store-24API для покупок/продуктов

Игроки могут покупать продукты (пропуска игры + расходуемые предметы) за Sparks в вашей игре. Когда происходит покупка, All Out вызывает ваш обработчик покупок чтобы вы могли выдать предмет или функцию.

circle-info

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

Типы продуктов (краткий обзор)

  • Пропуска игры: разовые, постоянные разблокировки (админ-пропуск, постоянная способность, владение домом)

  • Расходуемые предметы: можно покупать несколько раз (зелье, временное усиление, одноразовый пакет монет)

Типы продуктов настраиваются в портале создателя. См. Товары в игре.

Справочник по API покупок

Product :: struct {
    id: string;
    name: string;
    description: string;
    price: s64;
    consumable: bool;
    icon: Texture_Asset;
}

Purchasing :: struct {
    prompt_purchase :: proc(player: Player, id: string);
    owns_product    :: proc(player: Player, id: string) -> bool;
    get_product     :: proc(id: string) -> Product;
}

Инициация покупки

Чтобы начать процесс покупки, вызовите Purchasing.prompt_purchase с идентификатором продукта.

circle-info

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

Проверка, владеет ли игрок продуктом (пропуска игры)

Для пропусков игры вы можете ограничивать игровые функции, проверяя владение.

circle-info

Расходуемые предметы можно покупать несколько раз, поэтому owns_product не следует использовать для их выдачи. Расходуемые предметы обычно выдаются в вашем обработчике покупок (монеты, предметы, баффы и т. п.).

Чтение информации о продукте (название/цена/иконка)

Если вы хотите показать интерфейс «Купить» или записать информацию о продукте, получите определение продукта по идентификатору:

Обработчик покупки (выдача)

Когда игрок покупает продукт в вашей игре, All Out вызывает:

Вам следует:

  • Переключиться по идентификатору продукта

  • Выдать предмет/функцию

  • Вернуть true если выдача удалась

  • Вернуть false если выдача не удалась (инвентарь полон, отсутствует предварительное условие и т. д.)

Ошибки выдачи и повторы

Если ваш обработчик покупок возвращает false, покупка отмечается как ошибка выдачи.

  • Ошибки выдачи отображаются в портале создателя

  • Они автоматически повторяются при присоединении игрока, пока не будут успешными

  • Вы можете вручную повторно запустить обработчик покупки, пометив покупку как «не выданную» в интерфейсе данных игрока

См.:

Кросс-игры (хаб + мини‑игры)

Если вы используете родительскую структуру игр, покупки могут быть общими между вашими играми. См. Кросс-игровые товары/данные.

Последнее обновление