Menu
CoddyTech

Héroe: mirar hacia donde va

Parte de la sección Entrada y movimiento del Journey de Godot de Coddy. Lección 26 de 28.

El héroe sigue mirando hacia la derecha cuando corre hacia la izquierda. Voltea su nodo Look en la dirección que indican las teclas:

if direction > 0:
	$Look.scale.x = 1
if direction < 0:
	$Look.scale.x = -1

Pon estas líneas después de establecer direction. Si no se mantiene pulsada ninguna tecla, no se ejecuta ninguno de los dos if, así que el héroe mantiene la última dirección hacia la que miraba.

challenge icon

Desafío

Fácil

Haz que el héroe mire hacia donde corre.

  1. Antes de move_and_slide(), establece $Look.scale.x en 1 cuando direction > 0.
  2. Establécelo en -1 cuando direction < 0.

Pulsa «Jugar» y corre hacia la izquierda: el héroe gira a la izquierda y sigue mirando hacia la izquierda cuando te detienes. Después, pulsa «Comprobar».

Pruébalo tú mismo

extends CharacterBody2D

var speed = 220
var acceleration = 1200
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)
	move_and_slide()

Todas las lecciones de Entrada y movimiento

Practica por tu cuenta: Playground de Godot