Para aquellos que tienen problemas con la versión 4.0.0, pueden utilizar la siguiente forma de codificación:
Este simula lo que se buscaba con el get_inputs(), pero se hace uso de get_axis() y luego se asignan los valores correspondientes de cada eje a la propiedad de velocity multiplicado por la velocidad creada en el inicio, permitiendo así el movimiento del personaje.
Gracias
aqui va mi codigo y me salio perfectamente el personaje :)
Ese código se ve muy bien. 🙌
Yo utilizo godot 4 aqui les dejo el codigo que hice en mi caso lo que use fue move_and_collide pero pueden usar slide, si usan collide deben de multiplicar * delta de su parentesis ya que slide ya lo hace por defecto
tengo una cuestion y es que instale la version de godot 3.5.1 y al hacer el script en la parte de movimiento = Vector2() (en la linea 8)
¡Hola, Gabriel! El problema es la edentación, por cada línea nueva tiene que tener un "TAB". Por lo que se ve en el screen está todo el código pegado a la izquierda.
si me sirvió gracias
¿No sería mejor crear en un nodo aparte a nuestro personaje y luego instanciarlo como hijo de nuestra escena principal?
¡Hola, Matías! ¿Te referís a hacerlo como una escena aparte? Eso lo hacemos más adelante. 😁
Si me refería a eso, gracias. 😅
profe ami me paso un error extraño le programe todo pero la nave no se quiere mover que hago?
Hola estoy trabajando con godot 4.0.1, este es mi código, pero cuando intento probarlo el nodo personaje no se mueve y luego se cierra el programa.
extends CharacterBody2D
var velocidad = 500
var movimiento = Vector2(0,0)
func get_inputs():
movimiento = Vector2()
if Input.is_action_pressed("move right"):
movimiento.x += velocidad
if Input.is_action_pressed("move left"):
movimiento.x -= velocidad
if Input.is_action_pressed("move up"):
movimiento.y -= velocidad
if Input.is_action_pressed("move down"):
movimiento.y += velocidad