القفز إلى الأعلى
جزء من قسم الإدخال والحركة في رحلة Godot على Coddy. الدرس 13 من 28.
للقفز، عيّن velocity.y إلى سرعة كبيرة نحو الأعلى في الإطار الذي يضغط فيه اللاعب على jump. الاتجاه إلى الأعلى يعني قيمة y أصغر، لذا يكون الرقم سالبًا:
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
if Input.is_action_just_pressed("jump"):
velocity.y = jump_velocity
move_and_slide()لا تبرمج الحركة إلى الأسفل. تستمر الجاذبية في إضافة قيمة إلى velocity.y، لذا يتباطأ البطل أثناء صعوده، ويتوقف عند القمة ثم يسقط مجددًا.
استخدم is_action_just_pressed، وليس is_action_pressed. سيؤدي استمرار الضغط على المفتاح إلى ضبط السرعة على -500 في كل إطار، وسيطير البطل خارج الشاشة.
التحدي
سهلعندما تضغط على jump، اضبط velocity.y على jump_velocity. يجب أن تقفز الشخصية إلى الأعلى وتهبط على الأرض مجددًا. يجب ألا يؤدي الضغط المستمر على المفتاح إلى جعلها تطير.
جرّب بنفسك
extends CharacterBody2D
var gravity = 1000
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
move_and_slide()
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الإدخال والحركة
3الجاذبية والقفز
السقوط بفعل الجاذبيةالقفز إلى الأعلىمن الأرضية فقطالجري والقفزالقفز المتغيرالقفزة المزدوجةتدرّب بنفسك: Playground لـ Godot