شغّل المحرك
جزء من قسم المشاريع في رحلة Godot على Coddy. الدرس 12 من 36.
يضغط زر Up على المحرك ويدفع السفينة في اتجاه مقدمتها. تمثل Vector2.UP القيمة (0, -1). وتدير rotated(rotation) ذلك السهم بقدر دوران السفينة:
if Input.is_action_pressed("move_up"):
velocity += Vector2.UP.rotated(rotation) * THRUST * delta
position += velocity * deltaيغيّر المحرك السرعة، لا الموضع. عندما ترفع إصبعك عن زر Up، تواصل السفينة الانجراف. لإيقافها، استدر وادفعها في الاتجاه الآخر.
للسفينة عنصر فرعي مخفي اسمه Flame. أظهره أثناء عمل المحرك: $Flame.visible = Input.is_action_pressed("move_up").
التحدي
متوسطاجعل المحرك يدفع السفينة.
- أضف
const THRUST = 300. - أثناء الضغط على مفتاح السهم لأعلى، أضف
Vector2.UP.rotated(rotation) * THRUST * deltaإلىvelocity. - حرّك السفينة باستخدام
velocity * deltaفي كل إطار، سواء كان المفتاح مضغوطًا أم لا. - أظهر
$Flameفقط أثناء الضغط على مفتاح السهم لأعلى.
اضغط على «العب» واستمر في الضغط على مفتاح السهم لأعلى: يتوهج اللهب وتواصل السفينة الانزلاق بعد أن ترفع إصبعك. ثم اضغط على «تحقق».
جرّب بنفسك
extends CharacterBody2D
const TURN_SPEED = 4.0
func _physics_process(delta):
rotation += Input.get_axis("move_left", "move_right") * TURN_SPEED * delta
جميع دروس المشاريع
تدرّب بنفسك: Playground لـ Godot