identifier "caminando" is not declared in the current

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By David_sun

Hello¡

I dont know why the identifier “caminando” and others (saltando, muriendo) are not recognitzed.

extends KinematicBody2D
export (float) var GRAVEDAD #Gravedad a aplicar en cada instante
export (float) var VEL_DESPL #velocidad a la que se movera
var Velocidad = Vector2() #Velocidad en la que se mueve en el momento actual

enum estados {idle,caminando, saltando, muriendo}
var estado_actual = estados

func _ready():
estado_actual = estados. idle #Al principio estara en reposo

func _physics_process(delta):
Velocidad.y += GRAVEDAD * delta #formula para aplicar la gravedad

if(Input.is_action_just_pressed("tecla_d")):
	estado_actual = caminando
if(Input.is_action_just_pressed("tecla_a")):
	estado_actual = caminando

if(Input.is_action_just_released("tecla_d")):
	estado_actual = idle

if(Input. is_action_just_released("tecla_a")):
	estado_actual = idle


var movimiento = Velocidad * delta #Calcula el movimiento  en cada instante
move_and_slide(movimiento) #mueve

func procesar_movimiento():
if(estado_actual == caminando):
Velocidad.x = VEL_DESPL
elif(estado_actual == idle):
velocidad.x = 0

:bust_in_silhouette: Reply From: newold

estado_actual = estados.caminando por ejemplo

los valores de estados serán 0,1,2,3 …
Así que al principio puedes poner esto:

enum estados {idle,caminando, saltando, muriendo}
var estado_actual = estados.idle # estado_actual = 0

Cada vez que quieras usar un estado tendrás que hacerlo como estados.nombre_del-estado

Muchas gracias. Voy haber si funciona.

David_sun | 2019-09-27 09:45

:bust_in_silhouette: Reply From: uriel

siempre, tus variables deben ser identificadas, sin dudas, este mensaje siñifica que no esta declarado antes… buen camino