רק מהרצפה
חלק מהיחידה קלט ותנועה במסלול ה-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אתגר
קלאפשר לקפוץ רק מהרצפה.
- הוסף תנאי שני ל־
ifשל הקפיצה באמצעותand. - השתמש ב־
is_on_floor().
לחץ על "שחק" ולחץ פעמיים על מקש הרווח: הלחיצה השנייה, באוויר, לא עושה דבר. לאחר מכן לחץ על "בדיקה".
נסו בעצמכם
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()
כל השיעורים ביחידה קלט ותנועה
5פרויקט: גיבור במשחק פלטפורמה
גיבור: ריצהגיבור: קפיצהתרגלו בעצמכם: Godot אונליין