محور واحد
جزء من قسم الإدخال والحركة في رحلة Godot على Coddy. الدرس 3 من 28.
اليسار واليمين هما طرفا خط واحد، أي محور. تتحقق Input.get_axis() من الإجراءين وتُرجع رقمًا واحدًا:
-1أثناء الضغط على الإجراء الأول (اليسار)1أثناء الضغط على الإجراء الثاني (اليمين)0عندما لا يكون أيٌّ منهما مضغوطًا، أو عندما يكون كلاهما مضغوطًا
اضرب هذا الرقم في السرعة، وسيتحرك البطل في الاتجاه الصحيح دون استخدام if:
var speed = 300
func _process(delta):
var direction = Input.get_axis("move_left", "move_right")
position.x += direction * speed * deltaعندما تكون قيمة direction هي -1، تصبح قيمة x أصغر ويتحرك البطل إلى اليسار. وعندما تكون قيمتها 0، يبقى البطل ساكنًا.
التحدي
سهلحرّك البطل إلى اليسار واليمين بسطر واحد من الإدخال.
- في
_process()، خزّنInput.get_axis("move_left", "move_right")فيvar direction. - حرّك
position.xبمقدارdirection * speedفي الثانية.
اضغط «العب»: تحرّك الأسهم البطل بسرعة 300 بكسل في الثانية، والضغط على السهمين معًا يُبقيه ثابتًا. ثم اضغط «تحقق».
جرّب بنفسك
extends Node2D
var speed = 300
func _process(delta):
pass
جميع دروس الإدخال والحركة
تدرّب بنفسك: Playground لـ Godot