من الأرضية فقط
جزء من قسم الإدخال والحركة في رحلة Godot على Coddy. الدرس 14 من 28.
يمكن لبطل الدرس السابق أن يقفز مجددًا في الهواء، كلما أردت. ينبغي أن يقفز فقط عندما يقف على شيء ما.
تكون is_on_floor() true عندما تترك آخر move_and_slide() الجسمَ على أرضية. وفي الهواء تكون false.
تربط and شرطين. ولا يُنفَّذ if إلا عندما يكون كلاهما صحيحًا:
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = jump_velocityالتحدي
سهلاجعل البطل يقفز فقط عندما يكون على الأرض. يجب ألا يؤدي الضغط على زر القفز في الهواء إلى أي شيء.
جرّب بنفسك
extends CharacterBody2D
var gravity = 1000
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()
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الإدخال والحركة
3الجاذبية والقفز
السقوط بفعل الجاذبيةالقفز إلى الأعلىمن الأرضية فقطالجري والقفزالقفز المتغيرالقفزة المزدوجةتدرّب بنفسك: Playground لـ Godot