الجري والقفز
جزء من قسم الإدخال والحركة في رحلة Godot على Coddy. الدرس 15 من 28.
لا يغيّر الركض إلا velocity.x. ولا تغيّر الجاذبية والقفز إلا velocity.y. لذا افصل بين الجزأين:
velocity.x = Input.get_axis("move_left", "move_right") * speedلا تعيّن قيمة السرعة بأكملها، كما يلي:
velocity = Vector2(Input.get_axis("move_left", "move_right") * speed, 0)يعيّن هذا السطر velocity.y إلى 0 في كل إطار. وهذا يمحو سرعة السقوط والقفز، لذا يطفو البطل.
التحدي
سهلاجعل البطل يتحرك أثناء سقوطه وقفزه.
- فوق
move_and_slide()، اضبطvelocity.xعلىInput.get_axis("move_left", "move_right")مضروبًا فيspeed. - اترك
velocity.yللجاذبية والقفز.
اضغط «العب»: يتحرك البطل بسرعة 220 بكسلًا في الثانية، ويمكنه القفز إلى الأعلى واليمين. ثم اضغط «تحقق».
جرّب بنفسك
extends CharacterBody2D
var speed = 220
var gravity = 1000
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = jump_velocity
move_and_slide()
جميع دروس الإدخال والحركة
3الجاذبية والقفز
السقوط بفعل الجاذبيةالقفز إلى الأعلىمن الأرضية فقطالجري والقفزالقفز المتغيرالقفزة المزدوجةتدرّب بنفسك: Playground لـ Godot