Erfolge in Unity-Spielen

In diesem Thema wird beschrieben, wie Sie Play-Spieldienste-Erfolge in Unity-Spielen verwenden. Es wird davon ausgegangen, dass Sie Ihr Projekt und das Google Play Spiele-Plug-in für Unity wie im Startleitfaden beschrieben eingerichtet haben.

Erfolg erstellen

Wenn Sie Ihr Projekt und Ihr Plug-in einrichten, erstellen Sie die Erfolge in der Google Play Console und aktualisieren Sie dann das Plug-in mit den Android-Ressourcen für Ihre Erfolge. Weitere Informationen zum Erstellen von Erfolgen in der Play Console finden Sie in der Anleitung zu Erfolgen.

Erfolg aufdecken und freischalten

Verwenden Sie die Methode Social.ReportProgress mit einem Fortschrittswert von 100,0f, um eine Errungenschaft freizuschalten:

    using GooglePlayGames;
    using UnityEngine.SocialPlatforms;
    ...
    // unlock achievement (achievement ID "Cfjewijawiu_QA")
    Social.ReportProgress("Cfjewijawiu_QA", 100.0f, (bool success) => {
      // handle success or failure
    });

Gemäß dem erwarteten Verhalten von Social.ReportProgress bedeutet ein Wert von 0,0f, dass der Erfolg aufgedeckt wird, und ein Fortschritt von 100,0f bedeutet, dass der Erfolg freigeschaltet wird.

Wenn Sie eine zuvor ausgeblendete Leistung anzeigen möchten, ohne sie freizuschalten, rufen Sie Social.ReportProgress mit dem Wert 0.0f auf.

Erfolg inkrementieren

Wenn der Erfolg inkrementell ist, wird bei der Play Spiele-Implementierung von Social.ReportProgress versucht, das erwartete Verhalten gemäß der Social API von Unity einzuhalten. Das Verhalten ist jedoch möglicherweise nicht identisch. Wir empfehlen daher, Social.ReportProgress nicht für inkrementelle Erfolge zu verwenden. Verwenden Sie stattdessen die Methode PlayGamesPlatform.IncrementAchievement, die eine Play Games-Erweiterung ist.

    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
    });

Erfolgs-UI anzeigen

Wenn Sie die integrierte Benutzeroberfläche für alle Erfolge anzeigen möchten, rufen Sie Social.ShowAchievementsUI auf.

    using GooglePlayGames;
    using UnityEngine.SocialPlatforms;
    ...
    // show achievements UI
    Social.ShowAchievementsUI();