Este tópico descreve como usar as conquistas dos serviços relacionados a jogos do Google Play em jogos do Unity. É necessário que você tenha configurado o projeto e o plug-in do Google Play Games para Unity, conforme discutido no Guia para iniciantes.
Criar uma conquista
Depois de configurar seu projeto e o plug-in, crie as conquistas no Google Play Console e atualize o plug-in com os recursos do Android para suas conquistas. Para saber mais sobre como criar conquistas no Play Console, consulte o guia de conquistas.
Revelar e desbloquear uma conquista
Para desbloquear uma conquista, use o método Social.ReportProgress com um valor de progresso de 100.0f:
using GooglePlayGames;
using UnityEngine.SocialPlatforms;
...
// unlock achievement (achievement ID "Cfjewijawiu_QA")
Social.ReportProgress("Cfjewijawiu_QA", 100.0f, (bool success) => {
// handle success or failure
});
De acordo com o comportamento esperado do Social.ReportProgress, um valor de 0,0f significa que a conquista é revelada, e um progresso de 100,0f significa que a conquista está desbloqueada.
Para revelar uma conquista que estava oculta sem desbloqueá-la, chame Social.ReportProgress com um valor de 0,0f.
Incrementar uma conquista
Se a conquista for incremental, a implementação de Social.ReportProgress no Play Games vai tentar aderir ao comportamento esperado de acordo com a API social do Unity. No entanto, o comportamento pode não ser idêntico. Por isso, recomendamos que você não use o Social.ReportProgress para conquistas incrementais. Em vez disso, use o método PlayGamesPlatform.IncrementAchievement, que é uma extensão do Play Games.
using GooglePlayGames;
using UnityEngine.SocialPlatforms;
...
// increment achievement (achievement ID "Cfjewijawiu_QA") by 5 steps
PlayGamesPlatform.Instance.IncrementAchievement(
"Cfjewijawiu_QA", 5, (bool success) => {
// handle success or failure
});
Mostrar a interface de conquistas
Para mostrar a IU integrada de todas as conquistas, chame Social.ShowAchievementsUI.
using GooglePlayGames;
using UnityEngine.SocialPlatforms;
...
// show achievements UI
Social.ShowAchievementsUI();