- Créant une API simple à appeler.
- Créant des informations à jour à l’aide du service d’activité en temps réel en arrière-plan.
- Permettant aux développeurs d’appeler l’API Achievements Manager de manière synchrone sans charge supplémentaire sur le service.
Fonctionnalités
Achievements Manager offre les fonctionnalités suivantes :- API de succès simplifiée
- État et progression des succès à jour pour chaque utilisateur
- Réduction du nombre d’appels aux services XBOX
- Cela se traduit directement par une réduction de la latence globale d’acquisition des données
- Sécurité des threads
- Maintien efficace des données à jour
Concepts fondamentaux
Succès : un succès comprend du gamerscore et d’autres récompenses, comme des illustrations numériques, de nouvelles cartes, des personnages et des bonus de statistiques, ainsi que la progression actuelle vers son accomplissement. Pour maintenir à jour l’état des succès d’un utilisateur, la fonction XblAchievementsManagerDoWork doit être appelée à chaque trame.Sur Windows, il ne peut y avoir qu’un seul utilisateur local
Vue d’ensemble de l’API
Vous utiliserez le plus souvent les API clés suivantes. Vous trouverez une description complète des API Achievements Manager dans la référence de l’API XBOX Live. Vous pouvez également trouver les API dans la documentation des éléments préfixés par XblAchievementsManager.Ajout d’utilisateurs locaux à Achievements Manager
- Fonction de l’API C : XblAchievementsManagerAddLocalUser
Obtention de l’état des succès d’un utilisateur
- Fonction de l’API C : XblAchievementsManagerGetAchievements
Utilisation
Utilisation des événements d’Achievements Manager
Achievements Manager vous indique ce qui s’est passé, sous forme d’événements. Vous pouvez utiliser ces événements pour mettre à jour votre interface utilisateur ou exécuter une autre logique. API CÉvénements renvoyés
Local User Initial State Synced : se déclenche lorsque Achievements Manager a fini de récupérer l’état actuel de tous les succès du titre actuel pour l’utilisateur.- API C : XblAchievementsManagerEventType::LocalUserInitialStateSynced
- API C : XblAchievementsManagerEventType::AchievementProgressUpdated
- API C : XblAchievementsManagerEventType::AchievementUnlocked
Informations supplémentaires
Au lieu de récupérer fréquemment l’état des succès auprès du service pendant la boucle de jeu, Achievements Manager récupère l’état de tous les succès d’un utilisateur lorsque celui-ci est inscrit auprès d’Achievements Manager. Achievements Manager reçoit ensuite du service des événements détaillant les mises à jour des succès de l’utilisateur, qui sont ensuite transmis au titre sous forme d’events renvoyés par la fonction * XblAchievementsManagerDoWork. events est une liste de XblAchievementsManagerEvent, et chaque XblAchievementsManagerEvent contient une modification apportée à un succès au cours de la dernière trame. Vous trouverez plus d’informations dans la documentation de l’API XblAchievementsManagerEvent.Inscrire un utilisateur dont les succès doivent être suivis
Dans ce scénario, vous souhaitez inscrire un utilisateur auprès d’Achievements Manager pour commencer à suivre les mises à jour de ses succès et mettre en cache localement l’état de tous ses succès. API CÉvénements renvoyés
Local User Initial State Synced : se déclenche lorsque Achievements Manager a fini de récupérer l’état actuel de tous les succès du titre actuel pour l’utilisateur.- API C : XblAchievementsManagerEventType::LocalUserInitialStateSynced
Informations supplémentaires
L’exemple ci-dessus montre comment initialiser Achievements Manager pour un utilisateur et le maintenir à jour. Dans la boucle de jeu, la fonction XblAchievementsManagerDoWork traite et applique toutes les mises à jour apportées aux succès des utilisateurs.Récupération d’un seul succès d’un utilisateur
Dans ce scénario, vous souhaitez obtenir l’état d’un seul succès d’un utilisateur. API C- XblAchievement
- XblAchievementsManagerAddLocalUser
- XblAchievementsManagerIsUserInitialized
- XblAchievementsManagerGetAchievement
- XblAchievementsManagerResultGetAchievements
- XblAchievementsManagerResultCloseHandle
Événements renvoyés
Local User Initial State Synced : se déclenche lorsque Achievements Manager a fini de récupérer l’état actuel de tous les succès du titre actuel pour l’utilisateur.- API C : XblAchievementsManagerEventType::LocalUserInitialStateSynced
Récupération de tous les succès d’un utilisateur
Dans ce scénario, vous souhaitez obtenir l’état de tous les succès d’un utilisateur. API C- XblAchievement
- XblAchievementOrderBy
- XblAchievementsManagerSortOrder
- XblAchievementsManagerAddLocalUser
- XblAchievementsManagerIsUserInitialized
- XblAchievementsManagerGetAchievements
- XblAchievementsManagerResultGetAchievements
- XblAchievementsManagerResultCloseHandle
Événements renvoyés
Local User Initial State Synced : se déclenche lorsque Achievements Manager a fini de récupérer l’état actuel de tous les succès du titre actuel pour l’utilisateur.- API C : XblAchievementsManagerEventType::LocalUserInitialStateSynced
Récupération d’un sous-ensemble de succès d’un utilisateur
Dans ce scénario, vous souhaitez obtenir l’état d’un sous-ensemble de succès d’un utilisateur. API C- XblAchievement
- XblAchievementOrderBy
- XblAchievementsManagerSortOrder
- XblAchievementsManagerAddLocalUser
- XblAchievementsManagerIsUserInitialized
- XblAchievementsManagerGetAchievements
- XblAchievementsManagerResultGetAchievements
- XblAchievementsManagerResultCloseHandle
Événements renvoyés
Local User Initial State Synced : se déclenche lorsque Achievements Manager a fini de récupérer l’état actuel de tous les succès du titre actuel pour l’utilisateur.- API C : XblAchievementsManagerEventType::LocalUserInitialStateSynced
Récupération d’un sous-ensemble de succès dans un état spécifique pour un utilisateur
Dans ce scénario, vous souhaitez obtenir l’état d’un sous-ensemble de succès se trouvant dans un état de progression spécifique pour un utilisateur. API C- XblAchievement
- XblAchievementOrderBy
- XblAchievementProgressState
- XblAchievementsManagerSortOrder
- XblAchievementsManagerAddLocalUser
- XblAchievementsManagerIsUserInitialized
- XblAchievementsManagerGetAchievementsByState
- XblAchievementsManagerResultGetAchievements
- XblAchievementsManagerResultCloseHandle
Événements renvoyés
Local User Initial State Synced : se déclenche lorsque Achievements Manager a fini de récupérer l’état actuel de tous les succès du titre actuel pour l’utilisateur.- API C : XblAchievementsManagerEventType::LocalUserInitialStateSynced
Mise à jour d’un succès pour un utilisateur
Met à jour la progression d’un succès pour un utilisateur. API C- XblAchievementsManagerAddLocalUser
- XblAchievementsManagerIsUserInitialized
- XblAchievementsManagerUpdateAchievement
Événements renvoyés
Local User Initial State Synced : se déclenche lorsque Achievements Manager a fini de récupérer l’état actuel de tous les succès du titre actuel pour l’utilisateur.- API C : XblAchievementsManagerEventType::LocalUserInitialStateSynced
