Przedmioty

Przedmioty

Definiuj przedmioty raz i zarządzaj ekwipunkiem każdego gracza.

Zacznij za darmo

Przedmioty

Definiuj przedmioty raz i zarządzaj ekwipunkiem każdego gracza.

SDK i REST

Zintegruj Unity, Godot lub Unreal albo użyj interfejsu REST.

Panel projektu

Konfiguruj funkcje i zarządzaj ich bieżącymi danymi w projekcie.

Szybka integracja

Szybka integracja

Przedmioty
Wideo wkrótce

Unikalne wyposażenie z właściwościami, regułami katalogu i ekwipunkiem w wybranym projekcie.

Szybka integracja
Unity (C#)
using UnityEngine;
using PM.horizOn.Cloud.Manager;

public sealed class ItemsDemo : MonoBehaviour
{
    // Initialize/connect and restore the existing player in the Quickstart first.
    public async void ReadInventory()
    {
        var user = UserManager.Instance.CurrentUser;
        if (user == null || !user.IsValid()) return;
        var result = await ItemsManager.Instance.GetInventory(user.UserId);
        if (!result.IsSuccess) { Debug.LogWarning(result.ErrorCode); return; }
        foreach (var item in result.Data.instances)
            Debug.Log($"{item.instanceId}: {item.itemKey}");
        // Keep result.Data.revision for a separately reviewed mutation.
    }

    // Wire a separate explicit action; no automatic catalog traversal or poll.
    public async void ReadCatalogPage()
    {
        var user = UserManager.Instance.CurrentUser;
        if (user == null || !user.IsValid()) return;
        var result = await ItemsManager.Instance.GetCatalog(user.UserId, limit: 1);
        if (!result.IsSuccess) { Debug.LogWarning(result.ErrorCode); return; }
        Debug.Log($"Catalog revision: {result.Data.revision}");
        // Explicit Next keeps result.Data.revision and nextAfterKey unchanged.
    }
}
// SDK ItemsExample/ItemsSampleStore persist original instanceId/body/revision before writes.
// Keep the original Player Values operationId for purchase recovery.
// The initial success may include item references; retained replay may return empty applied/items.
// Read the current inventory separately. Never reconstruct earlier item references.
// A failed refresh never authorizes a replacement purchase or a local item grant.

Ten przykład SDK korzysta z develop. Sprawdź, czy wymagane API istnieją w zainstalowanym SDK. zobacz quickstart

Najczęściej zadawane pytania

Najczęściej zadawane pytania

Gotowy do integracji?

Zacznij budować z horizOn już dziś. Free Tier w zestawie.