Erfolge in Unity-Spielen

In diesem Thema wird beschrieben, wie Sie Erfolge der Play Games-Dienste in Unity-Spielen verwenden. Dabei wird davon ausgegangen, dass Sie Ihr Projekt und das Google Play Games-Plug-in für Unity wie in der Anleitung Erste Schritte beschrieben eingerichtet haben.

Erfolg erstellen

Wenn Sie Ihr Projekt und das 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 im Leitfaden zu Erfolgen.

Erfolg aufdecken und freischalten

Verwenden Sie die Methode Social.ReportProgress mit einem Fortschrittswert von 100.0f, um einen Erfolg freizuschalten:

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

Entsprechend 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 einen zuvor verborgenen Erfolg aufdecken möchten, ohne ihn freizuschalten, rufen Sie Social.ReportProgress mit einem Wert von 0.0f auf.

Erfolg schrittweise erzielen

Wenn der Erfolg schrittweise erzielt wird, versucht die Play Games-Implementierung von Social.ReportProgress dem erwarteten Verhalten gemäß der Social API von Unity zu entsprechen. Das Verhalten ist jedoch möglicherweise nicht identisch. Daher empfehlen wir, Social.ReportProgress nicht für schrittweise erzielte Erfolge zu verwenden. Verwenden Sie stattdessen die PlayGamesPlatform.IncrementAchievement Methode, eine Play Games-Erweiterung.

    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 für Erfolge anzeigen

Rufen Sie Social.ShowAchievementsUI auf, um die integrierte UI für alle Erfolge anzuzeigen.

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