viernes, 16 de febrero de 2024

Animar por teclado en godot4.2 un ejemplo;

 extends Node3D


var animacion_actual = "Game_engineAction"


func _physics_process(delta):

    # Agacharse

    if Input.is_action_pressed("ui_down"):

        if animacion_actual != "SEAGACHA":

            $AnimationPlayer.play("SEAGACHA")

            animacion_actual = "SEAGACHA"


    # Acción del motor del juego

    elif Input.is_action_pressed("ui_up"):

        if animacion_actual != "Game_engineAction":

            $AnimationPlayer.play("Game_engineAction")

            animacion_actual = "Game_engineAction"


    # Saltar

    elif Input.is_action_pressed("ui_accept"):

        if animacion_actual != "Saltar":

            $AnimationPlayer.play("Saltar")

            animacion_actual = "Saltar"


    # Moverse hacia la izquierda

    elif Input.is_action_pressed("ui_left"):

        if animacion_actual != "MoverIzquierda":

            $AnimationPlayer.play("MoverIzquierda")

            animacion_actual = "MoverIzquierda"


    # Moverse hacia la derecha

    elif Input.is_action_pressed("ui_right"):

        if animacion_actual != "MoverDerecha":

            $AnimationPlayer.play("MoverDerecha")

            animacion_actual = "MoverDerecha"


Mas ejemplos de animar con script y teclado en godot4.2

 extends Node3D


var animacion_actual = "Game_engineAction"

func _physics_process(delta):
    # Agacharse
    if Input.is_action_pressed("ui_down"):
        if animacion_actual != "SEAGACHA":
            $AnimationPlayer.play("SEAGACHA")
            animacion_actual = "SEAGACHA"

    # Acción del motor del juego
    elif Input.is_action_pressed("ui_up"):
        if animacion_actual != "Game_engineAction":
            $AnimationPlayer.play("Game_engineAction")
            animacion_actual = "Game_engineAction"

    # Saltar
    elif Input.is_action_pressed("ui_accept"):
        if animacion_actual != "Saltar":
            $AnimationPlayer.play("Saltar")
            animacion_actual = "Saltar"

    # Moverse hacia la izquierda
    elif Input.is_action_pressed("ui_left"):
        if animacion_actual != "MoverIzquierda":
            $AnimationPlayer.play("MoverIzquierda")
            animacion_actual = "MoverIzquierda"

    # Moverse hacia la derecha
    elif Input.is_action_pressed("ui_right"):
        if animacion_actual != "MoverDerecha":
            $AnimationPlayer.play("MoverDerecha")
            animacion_actual = "MoverDerecha"

    # Agregar más acciones y teclas aquí...
    # Por ejemplo:
    # elif Input.is_action_pressed("ui_a"):
    #     if animacion_actual != "AccionA":
    #         $AnimationPlayer.play("AccionA")
    #         animacion_actual = "AccionA"
    # ...

    # ¡Personaliza según tus necesidades!

6 movimientos GDScript;

 extends Node3D


var animacion_actual = "Game_engineAction"


func _physics_process(delta):

    # Agacharse

    if Input.is_action_pressed("ui_down"):

        if animacion_actual != "SEAGACHA":

            $AnimationPlayer.play("SEAGACHA")

            animacion_actual = "SEAGACHA"


    # Acción del motor del juego

    elif Input.is_action_pressed("ui_up"):

        if animacion_actual != "Game_engineAction":

            $AnimationPlayer.play("Game_engineAction")

            animacion_actual = "Game_engineAction"


    # Saltar

    elif Input.is_action_pressed("ui_accept"):

        if animacion_actual != "Saltar":

            $AnimationPlayer.play("Saltar")

            animacion_actual = "Saltar"


    # Moverse hacia la izquierda

    elif Input.is_action_pressed("ui_left"):

        if animacion_actual != "MoverIzquierda":

            $AnimationPlayer.play("MoverIzquierda")

            animacion_actual = "MoverIzquierda"


    # Moverse hacia la derecha

    elif Input.is_action_pressed("ui_right"):

        if animacion_actual != "MoverDerecha":

            $AnimationPlayer.play("MoverDerecha")

            animacion_actual = "MoverDerecha"