مراجعة: نافذة الإنجاز المنبثقة
جزء من قسم هندسة الألعاب في Unity في رحلة Unity على Coddy. الدرس 14 من 50.
التحدي
سهلتنتشر العملات في أرجاء الساحة، وتحرّك الأسهم اللاعب (Player.cs، جاهز). أضف إلى اللعبة إنجازات تظهر على الشاشة. اكتب ثلاثة سكربتات؛ فالمشهد يربط حقولها مسبقًا ويوصل قائمة On Unlocked (String) الخاصة بـ Achievements بالدالة AchievementPopup.Show على واجهة HUD.
- يلتقط
Collector(الموجود على Player) كل كائن موسوم بـCoinيلمسه، ويزيله، ثم يعلن العدد الإجمالي الجديد باستخدام حدث C# عامOnCoinsChangedيمرر قيمة int. ولا يعرف شيئًا عن الإنجازات. - يستمع
Achievementsإلىcollectorأثناء تفعيله فقط. عند جمع عملة واحدة، يفتح الإنجازFirst Coin، وعند 3 عملات يفتحPocket Money، وعند 6 عملات يفتحCoin Hoarder. يستدعي كل فتح حقل UnityEvent الخاص بهonUnlocked، الذي يمرر العنوان (سلسلة نصية). - تعرض
AchievementPopup.Show(string title)العنصرpanel، ويعرضtitleTextالنصUnlocked: First Coin، ثم يخفيه بعدshowTime(2) ثانية. إذا استُدعيت Show أثناء ظهور اللوحة، فستعرض العنوان الجديد وتبدأ الثانيتان من جديد.
اضغط على Play، واجمع العملات الست كلها، ثم اضغط على Check.
جرّب بنفسك
using UnityEngine;
public class Achievements : MonoBehaviour
{
public Collector collector;
}
جميع دروس هندسة الألعاب في Unity
1المكوّنات لا التسلسلات الهرمية
مكوّنات صغيرةسكربت أساسي للعدومكوّنات مجرّدةتعمل المكوّنات معًامراجعة: برج دفاعي معياري4البيانات المتسلسلة
الأصناف القابلة للتسلسلالقوائم في Inspectorالتعدادات في Inspectorمراجعة: جدول الغنائم10مشروع: الناجي في الساحة
البطلأنواع الأعداء3الأحداث
الأحداث في C# ضمن Unityالاشتراك في OnEnableحقول UnityEventالأحداث تحرّك واجهة المستخدممراجعة: نافذة الإنجاز المنبثقة