Skip to main content

XblAchievementsManagerUpdateAchievement

Permite que o progresso de conquistas seja atualizado e que conquistas sejam desbloqueadas.

Sintaxe

Parâmetros

xboxUserId   _In_
Tipo: uint64_t
A ID de usuário do XBOX do jogador. achievementId   _In_
Tipo: char*
A ID da conquista codificada em UTF-8, conforme definida pelo Dev Center. currentProgess   _In_
Tipo: uint8_t
A porcentagem de conclusão da conquista para indicar o progresso. Os valores válidos vão de 1 a 100. Defina como 100 para desbloquear a conquista. O progresso será definido pelo servidor como o maior valor enviado.

Valor retornado

Tipo: HRESULT Código de retorno HRESULT para esta operação de API.

Comentários

Supondo que o Achievements Manager tenha sido inicializado com êxito com XblAchievementsManagerAddLocalUser, esta API funcionará mesmo offline no PC e nos consoles XBOX. As atualizações offline serão publicadas pelo sistema quando a conexão for restabelecida, mesmo que o título não esteja em execução. O resultado da operação não será representado localmente de imediato. A atualização será refletida, no mínimo, após a chamada a DoWork do próximo quadro. Quando a alteração for refletida, a matriz retornada por DoWork conterá um XblAchievementsManagerEvent com o tipo de evento AchievementProgressUpdated e, possivelmente, um evento adicional do tipo AchievementUnlocked se o novo progresso tiver resultado no desbloqueio da conquista. Se a conquista já tiver sido desbloqueada ou se o valor de progresso for menor ou igual ao que está armazenado em cache do servidor, esta função retornará E_NOT_VALID_STATE ou E_INVALIDARG, respectivamente. Somente conquistas baseadas em título podem ser atualizadas com esta função. Conquistas baseadas em eventos não podem ser atualizadas com esta função.

Chamada REST

V2 POST /users/xuid()/achievements//update

Requisitos

Cabeçalho: achievements_manager_c.h Biblioteca: Microsoft.Xbox.Services.14x.GDK.C.lib

Confira também

achievements_manager_c
Last modified on October 6, 2026