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

الجدار

الدرس 5 من 16 في دورة لعبة Unity: تحطيم الطوب على Coddy.

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

لتوسيط شبكة عند x = 0، احسب موضع العمود الأول. بين n أعمدة توجد n ناقص 1 من الفجوات، لذا عندما تكون المسافة s، تفصل مسافة (n - 1) * s بين المركزين الطرفيين، ويقع الأول على يسار المنتصف بنصف هذه المسافة. خمسة أعمدة سياج، تفصل بينها وحدتان:

int posts = 5;
float spacing = 2f;
float left = -(posts - 1) * spacing / 2f;
for (int i = 0; i < posts; i++)
{
    Instantiate(postPrefab, new Vector3(left + i * spacing, 0f, 3f), Quaternion.identity);
}

تقع عند -4 و-2 و0 و2 و4: العمود الأول عند -4، وليس -5، لأن أربع فجوات تفصل بين خمسة أعمدة. يضع الوسيط الرابع في Instantiate، وهو Transform أب، كل نسخة تحت كائن واحد لتبقى نافذة Hierarchy مرتبة. عندما يكون نوع حقل القالب سكربتًا، مثل Brick، تُعيد Instantiate سكربت النسخة الجديدة، لتكون جاهزة للاستخدام.

challenge icon

التحدي

متوسط

ابنِ الجدار في GameManager:

  1. أضف public Brick brickPrefab وpublic Transform wall (يربط المشهد بين العنصر الجاهز Brick وكائن Wall)، وpublic int rows = 5، وpublic int columns = 9، وpublic float spacingX = 1.75f، وpublic float spacingY = 0.75f وpublic float topY = 6f.
  2. اكتب void BuildWall(): أنشئ لبنة لكل صف وعمود، واجعلها عنصرًا فرعيًا لـwall. يكون الصف 0 عند y = topY، ويكون كل صف أدنى بمقدار spacingY. تفصل بين الأعمدة مسافة spacingX وتكون متمركزة حول x = 0. ضع اللبنات عند z = 0.
  3. استدعِ BuildWall() من Start().

اضغط Play واجعل الكرة ترتد عن الجدار (اللبنات لا تنكسر بعد)، ثم اضغط Check.

جرّب بنفسك

using UnityEngine;

public class GameManager : MonoBehaviour
{
    public static GameManager Instance;

    void Awake()
    {
        Instance = this;
    }

    // لاحقًا: جدار الطوب، والنقاط، والأرواح، والمستويات.
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس لعبة Unity: تحطيم الطوب