Oggetti

Oggetti

Definisci gli oggetti una volta e gestisci l’inventario di ogni giocatore.

Inizia gratis

Oggetti

Definisci gli oggetti una volta e gestisci l’inventario di ogni giocatore.

SDK e REST

Integra Unity, Godot o Unreal oppure usa l’interfaccia REST.

Dashboard del progetto

Configura ogni funzionalità e gestisci i dati attuali nel tuo progetto.

Integrazione rapida

Integrazione rapida

Oggetti
Video in arrivo

Equipaggiamento unico con proprietà, regole di catalogo e inventario del progetto selezionato.

Integrazione rapida
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.

Questo esempio del SDK usa develop. Verifica che le API necessarie siano disponibili nel SDK installato. vedi la quickstart

Domande frequenti

Domande frequenti

Pronto per l'integrazione?

Inizi a costruire con horizOn oggi stesso. Tier gratuito incluso.