Menu
CoddyTech

تشغيل اللوحات وإيقافها

جزء من قسم إنشاء ألعاب حقيقية في رحلة Unity على Coddy. الدرس 9 من 60.

اللوحة هي صورة واجهة مستخدم، غالبًا ما تُمدَّد لتغطي الشاشة بأكملها، وتكون الأزرار والنصوص عناصر فرعية لها. يؤدي استخدام SetActive(false) على اللوحة إلى إخفائها مع كل ما بداخلها، ولا يمكن النقر على أزرارها أثناء إخفائها. وعندما تكون ظاهرة، تستقبل صورتها النقرات الموجّهة إلى أي شيء خلفها، لذلك لا يمكن الضغط على الأزرار الموجودة خلف لوحة تغطي الشاشة بأكملها. تُفتح هذه الخريطة من زر في الزاوية، وتُغلق من زر على الخريطة:

public GameObject mapPanel;
public Button mapButton;
public Button closeButton;

void Start()
{
    mapPanel.SetActive(false);
    mapButton.onClick.AddListener(() => mapPanel.SetActive(true));
    closeButton.onClick.AddListener(() => mapPanel.SetActive(false));
}

يسهل تعديل اللوحات عندما تكون ظاهرة، لذا غالبًا ما تُحفَظ المشاهد واللوحات مفعّلة، ثم تخفيها Start(). أبقِ النص البرمجي الذي يفتح اللوحة خارجها: فالكائن GameObject غير النشط لا يستدعي Start() أو Update()، لذا لن يربط النص البرمجي الموجود على لوحة محفوظة وهي مخفية أزرارها أبدًا. ويُعدّ Canvas أو كائن مدير اللعبة، اللذان يظلان نشطين، مكانين مناسبين له. يوضّح mapPanel.activeSelf ما إذا كانت اللوحة مفعّلة، لذا فإن mapPanel.SetActive(!mapPanel.activeSelf) يعكس حالتها.

challenge icon

التحدي

سهل

أضف قائمة إلى لعبة المرج: اكتب Start() في Menu.cs.

  1. أخفِ menuPanel وhelpPanel باستخدام SetActive(false).
  2. يعرض menuButton القائمة ويضبط mover.enabled = false؛ ويخفي resumeButton القائمة ويضبط mover.enabled = true.
  3. يخفي helpButton القائمة ويعرض المساعدة؛ أما backButton فيفعل العكس.

اضغط على «العب» وافتح القائمة: لن يتمكن اللاعب من المشي حتى تضغط على «استئناف». ثم اضغط على «تحقق».

جرّب بنفسك

using UnityEngine;
using UnityEngine.UI;

public class Menu : MonoBehaviour
{
    public GameObject menuPanel;
    public GameObject helpPanel;
    public Button menuButton;
    public Button resumeButton;
    public Button helpButton;
    public Button backButton;
    public PlayerMover mover;

    void Start()
    {
        // أخفِ اللوحتين، ثم اربط أزرار Menu وResume وHelp وBack
    }
}

جميع دروس إنشاء ألعاب حقيقية

تدرّب بنفسك: Playground لـ Unity