Menu
CoddyTech

Eroe: guardare nella direzione di movimento

Fa parte della sezione Input e movimento del percorso Godot di Coddy. Lezione 26 di 28.

L'eroe guarda ancora a destra quando corre verso sinistra. Capovolgi il suo nodo Look nella direzione indicata dai tasti:

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

Inserisci queste righe dopo aver impostato direction. Se non tieni premuto alcun tasto, nessuno dei due if viene eseguito, quindi l'eroe mantiene l'ultima direzione verso cui guardava.

challenge icon

Sfida

Facile

Fai in modo che l’eroe sia rivolto nella direzione in cui corre.

  1. Prima di move_and_slide(), imposta $Look.scale.x su 1 quando direction > 0.
  2. Impostalo su -1 quando direction < 0.

Premi «Gioca» e corri verso sinistra: l’eroe gira a sinistra e continua a essere rivolto a sinistra quando ti fermi. Poi premi «Verifica».

Provalo tu

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()

Tutte le lezioni di Input e movimento

Esercitati da solo: Playground Godot