يوضّح هذا الموضوع كيفية استخدام الإنجازات في "خدمات ألعاب Play" في ألعاب Unity. يفترض هذا الدليل أنّك أعددت مشروعك وأحد مكونات "ألعاب Google Play" لمحرك Unity، كما هو موضّح في دليل البدء.
إنشاء إنجاز
عند إعداد مشروعك والمكوّن الإضافي، أنشئ الإنجازات في Google Play Console، ثم عدِّل المكوّن الإضافي باستخدام موارد Android لإنجازاتك. للاطّلاع على تفاصيل عن إنشاء الإنجازات في Play Console، يُرجى الاطّلاع على دليل الإنجازات.
إظهار إنجاز وفتح قفله
للحصول على إنجاز، استخدِم الطريقة Social.ReportProgress مع قيمة التقدّم 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
});
وفقًا للسلوك المتوقّع لسمة Social.ReportProgress، تعني القيمة 0.0f أنّه تم الكشف عن الإنجاز، وتعني القيمة 100.0f أنّه تم فتح الإنجاز.
للكشف عن إنجاز كان مخفيًا في السابق بدون فتح قفله، يمكنك استدعاء Social.ReportProgress مع تحديد قيمة 0.0f.
زيادة إنجاز
إذا كان الإنجاز متزايدًا، سيحاول تطبيق "ألعاب Play" تنفيذ Social.ReportProgress بما يتوافق مع السلوك المتوقّع وفقًا لواجهة برمجة التطبيقات الاجتماعية في Unity. ومع ذلك، قد لا يكون السلوك متطابقًا، لذا ننصحك بعدم استخدام 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
});
عرض واجهة مستخدم الإنجازات
لعرض واجهة المستخدم المدمجة لجميع الإنجازات، استخدِم الإجراء Social.ShowAchievementsUI.
using GooglePlayGames;
using UnityEngine.SocialPlatforms;
...
// show achievements UI
Social.ShowAchievementsUI();