Menu
CoddyTech

شغّل المحرك

جزء من قسم المشاريع في رحلة 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").

challenge icon

التحدي

متوسط

اجعل المحرك يدفع السفينة.

  1. أضف const THRUST = 300.
  2. أثناء الضغط على مفتاح السهم لأعلى، أضف Vector2.UP.rotated(rotation) * THRUST * delta إلى velocity.
  3. حرّك السفينة باستخدام velocity * delta في كل إطار، سواء كان المفتاح مضغوطًا أم لا.
  4. أظهر $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