دوالك الخاصة
جزء من قسم العُقد والمشاهد في رحلة Godot على Coddy. الدرس 18 من 28.
تستدعي Godot الدالتين _ready() و_process() بنفسها. ويمكنك أيضًا كتابة دوالك الخاصة لإعطاء بضعة أسطر اسمًا:
func jump_to_start():
position = Vector2(50, 250)لا تعمل الدالة إلا عندما يستدعيها الكود، وذلك بكتابة اسمها متبوعًا بأقواس: jump_to_start(). استدعها من _process() فتعمل في كل إطار. واستدعها من _ready() فتعمل مرة واحدة.
الاسم الجيد يوضح ما تفعله الدالة. عندها تُقرأ _process() كقائمة من الخطوات: تحرّك، ثم التفّ.
التحدي
سهلاجعل الروبوت يلتف عند الحافتين اليمنى والسفلية باستخدام دالة من إنشائك.
- أسفل
_process()، اكتبfunc wrap_around():لتضمين شرطifلـxعندما يتجاوز640، بالإضافة إلى شرط يعيدyإلى0عندما يتجاوز360. - في
_process()، استدعِwrap_around()بعد تحرك الروبوت، بدلًا منif.
اضغط على «العب»: سينجرف الروبوت إلى الأسفل واليمين، وسيعود دائمًا إلى الشاشة. ثم اضغط على «تحقق».
جرّب بنفسك
extends Node2D
var velocity = Vector2(200, 100)
func _process(delta):
position += velocity * delta
if position.x > 640:
position.x = 0
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس العُقد والمشاهد
3قيم يمكنك ضبطها
المتغيرات على العقدةالثوابتتصدير المتغيراتحسابات Vector2الالتفاف حول الشاشةدوالك الخاصةتدرّب بنفسك: Playground لـ Godot