Menu
CoddyTech

רק מהרצפה

חלק מהיחידה קלט ותנועה במסלול ה-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
challenge icon

אתגר

קל

אפשר לקפוץ רק מהרצפה.

  1. הוסף תנאי שני ל־if של הקפיצה באמצעות and.
  2. השתמש ב־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()

כל השיעורים ביחידה קלט ותנועה

תרגלו בעצמכם: Godot אונליין