本主题介绍如何在Unity游戏中使用Play游戏服务的成就。它假设您已按照入门指南中所述设置了您的项目和Google Play游戏插件。
创建成就
设置项目和插件时,请在Google Play控制台中创建成就,然后使用成就的Android资源更新插件。有关在Play控制台中创建成就的详细信息,请参阅成就指南。
显示和解锁成就
要解锁成就,请使用进度值为100.0f的Social.ReportProgress方法。
using GooglePlayGames;
using UnityEngine.SocialPlatforms;
...
// unlock achievement (achievement ID "Cfjewijawiu_QA")
Social.ReportProgress("Cfjewijawiu_QA", 100.0f, (bool success) => {
// handle success or failure
});
根据Social.ReportProgress的预期行为,值为0.0f表示成就已显示,进度为100.0f表示成就已解锁。
要显示先前隐藏的成就而无需解锁它,请使用值为0.0f的Social.ReportProgress。
递增成就
如果成就可递增,则Social.ReportProgress的Play游戏实现将尝试遵守Unity社交API的预期行为。但是,行为可能并不完全相同,因此我们建议您不要将Social.ReportProgress用于递增成就。相反,请使用PlayGamesPlatform.IncrementAchievement方法,这是一个Play游戏扩展。
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
});
显示成就UI
要显示所有成就的内置UI,请调用Social.ShowAchievementsUI。
using GooglePlayGames;
using UnityEngine.SocialPlatforms;
...
// show achievements UI
Social.ShowAchievementsUI();