Limitar ambos ejes
Parte de la sección Entrada y movimiento del Journey de Godot de Coddy. Lección 22 de 28.
Un héroe con vista desde arriba puede salir de la pantalla por cualquiera de sus cuatro lados. Un Vector2 tiene su propio clamp, que mantiene ambos números dentro del rango:
position = position.clamp(Vector2(16, 16), Vector2(624, 344))El primer vector es la esquina superior izquierda. El segundo es la esquina inferior derecha. Cada número de position se mantiene entre los números correspondientes de las dos esquinas.
El héroe es un círculo de unos 32 píxeles de diámetro. Por lo tanto, su centro se mantiene a 16 píxeles de cada borde de la pantalla de 640 por 360.
Desafío
FácilMantén al héroe en pantalla por los cuatro lados. Después de move_and_slide(), limita position entre Vector2(16, 16) y Vector2(624, 344).
Pruébalo tú mismo
extends CharacterBody2D
var speed = 200
func _physics_process(delta):
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * speed
move_and_slide()
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Entrada y movimiento
1Acciones de entrada
Presiona para moverteIzquierda y derechaUn ejeCuatro direccionesRecién presionadoEntrada no gestionada4Movimiento fluido
Acelerar poco a pocoFricciónMirar hacia donde te muevesLimitar al área de la pantallaLimitar ambos ejesPractica por tu cuenta: Playground de Godot