Menu
CoddyTech
flag Ar iconالعربيةdown icon

مراجعة: نافذة الإنجاز المنبثقة

جزء من قسم هندسة الألعاب في Unity في رحلة Unity على Coddy. الدرس 14 من 50.

challenge icon

التحدي

سهل

تنتشر العملات في أرجاء الساحة، وتحرّك الأسهم اللاعب (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