Menu
CoddyTech

RequireComponent

חלק מהיחידה יסודות הסקריפטים ב-Unity במסלול ה-Unity של Coddy. שיעור 47 מתוך 85.

[RequireComponent(typeof(Rigidbody))], שנכתב מעל המחלקה של סקריפט, אומר ל-Unity שהסקריפט לא יכול לפעול בלי Rigidbody על אותו אובייקט:

[RequireComponent(typeof(Rigidbody))]
public class Jumper : MonoBehaviour
{
    Rigidbody rb;

    void Start()
    {
        rb = GetComponent<Rigidbody>();
    }
}

Unity פועל בהתאם לכך כשהסקריפט מתווסף לאובייקט, דרך ה-Inspector או באמצעות AddComponent: אם אין לאובייקט Rigidbody, Unity מוסיף אחד. כל עוד Jumper נמצא על האובייקט, ה-Inspector מסרב להסיר את אותו Rigidbody. לכן GetComponent תמיד מוצא אחד, ו-Jumper לא צריך בדיקה.

המאפיין אינו משפיע בדיעבד: אובייקטים שכבר היה עליהם Jumper לפני כתיבת השורה לא יקבלו Rigidbody עד שהסקריפט יוסר ויתווסף שוב. מאפיין אחד יכול לציין עד שלושה טיפוסים, כמו ב-[RequireComponent(typeof(Rigidbody), typeof(BoxCollider))], ומחלקה יכולה לכלול כמה מאפיינים כאלה.

נסו בעצמכם

השיעור הזה לא כולל אתגר קוד.

כל השיעורים ביחידה יסודות הסקריפטים ב-Unity

תרגלו בעצמכם: Unity אונליין