Oyun fikirleri ve özellikleri

Sıradaki özelliğin

Pazar

İki oyuncu arasında orijinal bir envanter eşyası alıp satın.

SDK: developOyuncu oturumu gerekli
Unity
Pazar görseli
Görünür sonuç

Alıcı aynı eşyayı alır, satıcı ise kararlaştırılan fiyattan yapılandırılmış ücret düşüldükten sonra kalan tutarı alır.

Video yakında

Bu adımın videosu henüz yok. Rehber ve MCP isteği kullanıma hazır.

Pazar

Aynı projeyi hazırlayın

  1. Panelde oyun yapılandırmandaki projeyle aynı projeyi seç.

    Pazar →
  2. İlk istek için ek tanım gerekmez. Eşleşen oyun verisi yokken boş sonuç geçerlidir.

    Bir para birimi, ücret ve en az bir etkin fiyat kuralı belirleyin.

    Aynı projede oturum açmış iki oyuncu kullanın. Para birimini, ücreti ve fiyat kuralını yapılandırın, kuşanılmamış bir eşyayı listeleyin ve satın almayı açıkça onaylayın.

    Öğeler →Oyuncu değerleri →

Bu özelliği ekle

Kılavuzu inceleyebilirsin. Çalıştırmak için etkin bir proje anahtarı gerekir. Projeyi hazırla

SDK kurulu, proje yapılandırması içe aktarılmış ve oyuncu oturum açmış olmalı.

Bu SDK örneği develop kullanır. Gerekli API'lerin kurulu SDK sürümünde bulunduğunu kontrol et.

Hızlı başlangıç bağlantısını ilgili oyuncuyla tamamlayın. ReadListing(listingId) çağrısını açık bir düğme veya sahne eyleminden yapın. Dosyayı açmak tek başına istek göndermez.

C#
Assets/Scripts/MarketplaceDemo.cs
horizOn çağrısı
1using System.Threading.Tasks;
2using UnityEngine;
3using PM.horizOn.Cloud.Examples.Features;
4using PM.horizOn.Cloud.Objects.Network.Responses;
5​
6public class MarketplaceDemo : MonoBehaviour
7{
8 // Import the SDK Examples sample. Bind its screen to the signed-in player
9 // and set the stable projectId in the Inspector. Never use an Account Key.
10 public MarketplaceExample screen;
11​
12 public Task<MarketplaceResult<MarketplaceListingView>> ReadListing(string listingId)
13 => MarketplaceQuickstart.ReadOneListing(screen, listingId);
14​
15 // Wire only to the player's Buy confirmation after displaying ReadListing.
16 public Task<bool> ConfirmPurchase(string listingId)
17 => MarketplaceQuickstart.BuyReviewedListing(screen, listingId);
18​
19 // false/timeout does not prove nonexecution. Use screen.RetryPending() or
20 // screen.RecoverOriginalOperation(); never replace the unresolved original.
21 // The sample refreshes Inventory, Values and Marketplace before acknowledgement.
22 // Its native file journal rejects WebGL writes; use a durable browser persister.
23}
Tam SDK örneğini aç ↗

İki oyuncuyla deneyin

Aynı projede oturum açmış iki oyuncu kullanın. Para birimini, ücreti ve fiyat kuralını yapılandırın, kuşanılmamış bir eşyayı listeleyin ve satın almayı açıkça onaylayın.

Mevcut oturum açılmış oturumu kullanın. Onaylanmamış bir satın alma sonrasında aynı orijinal isteği saklayıp yeniden deneyin, ardından envanteri ve bakiyeleri yenileyin.

İptal, özgün eşyayı sahibi teslim alana kadar korur. Kurtarma yalnızca önceki sahip silinmişse kullanılabilir.

İlanlar ve tekrar koruması projede bir kez saklanır. Oyuncular yalnızca referansları ve sınırlı durum verilerini tutar.

Yeni özelliğini test et.

Alıcı aynı eşyayı alır, satıcı ise kararlaştırılan fiyattan yapılandırılmış ücret düşüldükten sonra kalan tutarı alır.

Panelde oyun yapılandırmandaki projeyle aynı projeyi seç.

Uç noktalar
  • GET/marketplace/limits
  • GET/marketplace/rules
  • GET/marketplace
  • GET/marketplace/listings
  • GET/marketplace/listings/{listingId}
  • POST/marketplace/listings
  • POST/marketplace/listings/{listingId}/buy
  • POST/marketplace/listings/{listingId}/cancel
  • GET/marketplace/operations/{operationId}
  • POST/marketplace/listings/{listingId}/retry-return
API referansındaki tüm uç noktalar
Sıradaki adım için önerimiz

Her tura bir yüksek puan ekle.

Turdan sonra puanı kaydet ve kimin önde olduğunu göster. Bağlantını ve oyuncu oturumunu kullanmaya devam et.