Onready
جزء من قسم العُقد والمشاهد في رحلة Godot على Coddy. الدرس 21 من 28.
إن كتابة $Face/Eyes في كل إطار تبحث عن العقدة 60 مرة في الثانية. من الأفضل العثور عليها مرة واحدة والاحتفاظ بها في متغير.
تُنشأ المتغيرات الموجودة في أعلى النص البرمجي عندما تُنشأ العقدة. لم تُوصَل عناصرها الفرعية بعد، لذا لن يعثر $Face/Eyes على شيء، ولن تبدأ Godot اللعبة. ضع @onready في البداية، وستملأ Godot المتغير عندما تصبح العقدة جاهزة، مباشرةً قبل تشغيل _ready():
@onready var mouth = $Face/Mouth
func _ready():
mouth.position.y += 2بعد ذلك، تكون mouth هي العقدة المتاحة في كل دالة من دوال النص البرمجي.
التحدي
سهلاجعل روبوتًا يشعر بالدوار وتدور عيناه.
- في أعلى النص البرمجي، احتفظ بالعينين في متغير:
@onready var eyes = $Face/Eyes. - في
_process()، أدرeyesباتجاه عقارب الساعة نصف دورة (180درجة) كل ثانية.
اضغط على «العب»: تدور العينان حول منتصف الوجه، ويبقى الروبوت ساكنًا. ثم اضغط على «تحقق».
جرّب بنفسك
extends Node2D
func _process(delta):
pass
جميع دروس العُقد والمشاهد
تدرّب بنفسك: Playground لـ Godot