Passer au contenu principal
Ce démarrage rapide suppose que vous connaissez déjà les catalogues et les articles d’inventaire. Le joueur de l’exemple doit déjà posséder les articles d’inventaire qu’il souhaite céder.
La première étape consiste à appeler l’API OpenTrade pour rendre un échange accessible à un autre joueur. Vous aurez besoin d’un playfabId pour identifier le destinataire du cadeau, et de l’ItemInstanceID du joueur qui possède actuellement l’article dans son inventaire. secondPlayerId : il s’agit de la chaîne unique qui identifie le destinataire du cadeau (PlayFabId). myItemInstanceId : il s’agit de la chaîne unique qui identifie une instance d’article possédée par le joueur actuel (InstanceID).
Tous les échanges sont des renseignements publics. N’importe quel joueur peut consulter les échanges ouverts d’un autre joueur, ainsi que l’historique des échanges d’un autre joueur (s’il connaît le playFabId de ce joueur).
Dans cet extrait, le rappel LogSuccess doit également évaluer result.Trade.TradeId et transférer à la fois firstPlayFabId et tradeId au deuxième joueur. Si ces valeurs ne sont pas enregistrées, le deuxième joueur ne pourra pas évaluer ni accepter l’échange.
Dans la préversion actuelle, vous devez vous assurer que vos échanges sont sécurisés contre les actions simultanées (thread-safe). Les options thread-safe comprennent les serveurs de jeu personnalisés et les appels Webhook au moyen de CloudScript vers une base de données ou un système externe. Des options non thread-safe peuvent être créées avec CloudScript en modifiant directement une clé de données de joueur (Player Data Key). Cette dernière option présente des problèmes de concurrence : des mises à jour simultanées de la liste d’échanges pourraient ne pas être traitées correctement.
Une fois que le premier joueur a créé l’échange et transféré son playFabId et le tradeId au deuxième joueur, ce dernier peut examiner les conditions de l’échange (en vérifiant qu’il s’agit d’un cadeau) en effectuant une requête GetTradeStatus.
Les valeurs TradeStatus les plus pertinentes sont Open, Filled et Canceled. Tous les autres états sont des états intermédiaires. Les échanges peuvent rester dans ces états intermédiaires pendant une période notable entre les appels. Un échange récemment modifié pourrait ne pas être disponible immédiatement.
Une fois terminée, la fonction AcceptGiftFrom ci-dessus transfère les articles offerts de l’inventaire du premier joueur à celui du deuxième.
Dernière modification le 6 octobre 2026