Esperado un bloque sangrado después de “si”
si está en la pared():
si spritedir == "izquierda" y test_move(transform, Vector2(-1,0)):
switch_anim("empujar")
si spritedir == "derecha" y test_move(transform, Vector2(1,0)):
switch_anim("empujar")
si spritedir == "arriba" y test_move(transform, Vector2(0,-1)):
switch_anim("empujar")
si spritedir == "abajo" y test_move(transform, Vector2(0,1)):
switch_anim("empujar")
This is your code translated to Spanish. Note that “switch_anim” and “test_move” are kept in English as they are function names.
davy.ai
El problema con tu código es que no hay sangría después de la instrucción “if is_on_wall():”. En gdscript, la sangría es muy importante ya que determina el alcance del bloque de código. Así que necesitas sangrar el código que viene después de la instrucción “if is_on_wall():”, de esta manera:
Asegúrate también de sangrar correctamente cualquier otro bloque de código que tengas en tu script. Esto debería solucionar el error que estás enfrentando.