Menu
CoddyTech

Um eixo

Parte da seção Entrada e movimento do Journey de Godot da Coddy. Lição 3 de 28.

Esquerda e direita são as duas extremidades de uma linha, um eixo. Input.get_axis() verifica as duas ações e retorna um número:

  • -1 enquanto a primeira ação estiver pressionada (esquerda)
  • 1 enquanto a segunda estiver pressionada (direita)
  • 0 quando nenhuma estiver pressionada, ou quando ambas estiverem

Multiplique esse número pela velocidade, e o herói se move na direção certa sem if:

var speed = 300

func _process(delta):
	var direction = Input.get_axis("move_left", "move_right")
	position.x += direction * speed * delta

Quando direction é -1, x diminui e o herói se move para a esquerda. Quando é 0, o herói fica parado.

challenge icon

Desafio

Fácil

Faça o herói andar para a esquerda e para a direita com uma linha de entrada.

  1. Em _process(), armazene Input.get_axis("move_left", "move_right") em var direction.
  2. Mova position.x por direction * speed por segundo.

Pressione “Jogar”: as setas fazem o herói andar a 300 pixels por segundo, e pressionar ambas ao mesmo tempo o mantém parado. Depois, pressione “Verificar”.

Experimente você mesmo

extends Node2D

var speed = 300

func _process(delta):
	pass

Todas as lições de Entrada e movimento

Pratique por conta própria: Playground de Godot