استخدام المعلمات والأحداث

*This content is translated using AI (Beta) and may contain errors. To view this page in English, click here.

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

المعلمات هي أماكن مخصصة للمعلومات التي تريد إعطائها للوظيفة في وقت لاحق. إنها مثل النوافذ التي تسمح لك بتمرير المعلومات إلى الوظيفة.

استخدام المعلمات والأحداث لإعداد فخ

سوف ينشئ هذا البرنامج جزءًا من الفخ الذي يدمر أي شيء يلمس الجزء، بما في ذلك الأجزاء الأخرى. سيتعين عليك استخدام معلمة لإعداده. كن حذرًا لتثبيت الفخ في مكانه حتى لا يسقط ويدمر الأشياء عن غير قصد.

إنشاء جزء جديد

يحتاج جزء إلى أن يتم إعداده لتدمير أي شيء يلمسه.

  1. إنشاء جزء جديد لا يلمس أي شيء. إذا كان يلمس شيئًا ما، فقد ينفصل في وقت مبكر جدًا.
  2. في مستعرض Explorer، قم بإعادة تسمية الجزء:TrapPart.
  3. تثبيت الجزء.

إعداد البرنامج النصي

استخدم ما تعرفه عن المتغيرات وتسلسل الخبرة للإشارة إلى جزء الفخ.

  1. أضف برنامج نصي جديد إلى جزء الفخ. أعد تسمية البرنامج النصي إلى TrapScript.

  2. احذف Hello World وأضف تعليقًا وصفيًا.

  3. تحت التعليق، أنشئ متغيرًا جديدًا يعثر على والد البرنامج النصي.


    -- يدمر ما يلمس الوالد
    local trap = script.Parent

إنشاء وظيفة مع معلمة

سيستخدم الفخ وظيفة لتدمير أي شيء يلمس الجزء. لكي تعمل، تحتاج الوظيفة إلى معرفة ما الذي لمسه الجزء. وهذا يعني استخدام المعلمات. تُكتب المعلمات داخل () التي تأتي بعد اسم الوظيفة. تبدو هكذا:


local function functionName(parameterName)
end

المعلومات الفعلية التي يتم تمريرها عبر المعلمة تعرف باسم الحجة. ستقوم بإنشاء وظيفة جديدة تسمى onTouch() مع معلمة تسمى objectTouched التي ستتبع أي شيء يلمس الفخ ثم يدمر الجزء الملموس.

  1. أنشئ وظيفة محلية. يمكن تسميتها بأي شيء، لكن هذا الدرس سيستخدم onTouch


    local trap = script.Parent
    local function onTouch()
    end
  2. داخل (), اكتب اسمًا للمعلمة. سيستخدم هذا الدرس objectTouched.


    local trap = script.Parent
    local function onTouch(objectTouched)
    end
  3. بين local function onTouch() و end, أنشئ عبارة print. ستستخدم هذا للتحقق مما إذا كان هناك شيء يلامس الجزء في القسم التالي.


    local trap = script.Parent
    local function onTouch(objectTouched)
    print("شيء ما لمس الفخ")
    end

استخدام حدث لاستدعاء الوظيفة

نريد أن تعمل الوظيفة كلما لمس شيء ما الجزء. لجعل ذلك يحدث، قم بتوصيل الوظيفة بحدث Touched. الأحداث هي أشياء تحدث في التجربة. مثل لاعب يلمس جزءًا أو يخسر الصحة. عندما تكون وظيفة متصلة بحدث، تعمل الوظيفة كلما حدثت الحدث.

يتم تشغيل حدث Touched كلما لمست جزء واحد جزءًا آخر ويمكن استخدامه لإنشاء أزرار، وفخاخ، وأشياء أخرى يتفاعل معها اللاعبون.

  1. تحت end للوظيفة، اكتب trap.Touched:Connect(onTouch)


    local trap = script.Parent
    local function onTouch(objectTouched)
    print("شيء ما لمس الفخ")
    end
    -- ربط الوظيفة بحدث Touched
    trap.Touched:Connect(onTouch)
  2. انقر على Test ثم المس الجزء. تحقق من عبارة الطباعة الخاصة بك: شيء ما لمس الفخ. إذا لم تتمكن من رؤية السلسلة في نافذة الخرج، تحقق مما يلي:

    • تأكد من أن السلسلة "شيء ما لمس الجزء!" موجودة بين local function onTouch() و end.
    • تأكد من أن Touched مكتوبة بحرف كبير.
  3. الآن بعد أن تم إعداد الوظيفة بشكل صحيح، استخدمها لتدمير أي شيء يلمس الجزء. داخل الوظيفة، بعد السلسلة، اكتب objectTouched:Destroy() يجب أن يكون الكود المكتمل كالتالي:


    local trap = script.Parent
    local function onTouch(objectTouched)
    print("شيء ما لمس الفخ")
    -- دمر الشيء الملموس
    objectTouched:Destroy()
    end
    trap.Touched:Connect(onTouch)
  4. اختبر مرة أخرى وانظر ماذا يحدث عندما يتم لمس الجزء. يجب أن ينتهي البطل الخاص بك بدون أقدام أو ذراعين. إذا لامس الجزء رأس أو عنق البطل، فقد يتم تدميره تمامًا.

ملخص

تستخدم المعلمات لتمرير المعلومات التي تكون عادة خارج نطاق (حيث لا يمكن للوظيفة رؤيتها)، إلى وظيفة. في هذه الأثناء، تعتبر الأحداث إشارات خاصة تنطلق داخل التجربة عندما يحدث شيء مهم. تحتوي الكائنات المختلفة على أحداث مختلفة. يمكن ربط الوظائف بالأحداث حتى يتم استدعاؤها في كل مرة يتم فيها إطلاق الحدث. لقد ربط هذا البرنامج النصي الصغير وظيفة بحدث Touched للفخ، ومرر ما كان يلمس الفخ عبر المعلمة.

©2026 شركة Roblox Corporation. تُعد منصّة Roblox، وشعار Roblox وشعار "توسيع حدود المخيلة"، من ضمن علاماتنا التجارية المسجّلة وغير المسجّلة في الولايات المتحدة وبلدان أخرى.