Menu
CoddyTech

Limiter à l’écran

Fait partie de la section Entrées et déplacements du Journey Godot de Coddy. Leçon 21 sur 28.

Courez vers la gauche et le héros sort de l’écran. clamp(value, low, high) maintient un nombre entre deux limites. Cette fonction renvoie low si value est inférieur à cette valeur, high si value est supérieur à cette valeur, et value dans les autres cas. clamp(700, 14, 626) vaut 626.

Limitez la position après le déplacement et stockez le résultat :

move_and_slide()
position.x = clamp(position.x, 14, 626)

position correspond au centre du héros, et le héros mesure 28 pixels de large. Ainsi, son centre reste à 14 pixels de chaque bord de l’écran de 640 pixels, et le héros reste entièrement visible.

challenge icon

Défi

Facile

Gardez le héros entièrement à l’écran. Après move_and_slide(), limitez position.x entre 14 et 626.

Essayez vous-même

extends CharacterBody2D

var speed = 220
var acceleration = 900
var friction = 2400
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
	var direction = Input.get_axis("move_left", "move_right")
	if direction == 0:
		velocity.x = move_toward(velocity.x, 0, friction * delta)
	else:
		velocity.x = move_toward(velocity.x, direction * speed, acceleration * delta)
	if direction > 0:
		$Look.scale.x = 1
	if direction < 0:
		$Look.scale.x = -1
	move_and_slide()
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Entrées et déplacements

Entraînez-vous par vous-même : Playground Godot