Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

AnimationNodeStateMachinePlayback

Eredita: Resource < RefCounted < Object

Fornisce il controllo della riproduzione per un AnimationNodeStateMachine.

Descrizione

Permette il controllo delle macchine a stati create con AnimationNodeStateMachine in un AnimationTree. Recuperato con $AnimationTree.get("parameters/playback").

var state_machine = $AnimationTree.get("parameters/playback")
state_machine.travel("some_state")

Tutorial

Proprietà

bool

resource_local_to_scene

true (overrides Resource)

Metodi

float

get_current_length() const

StringName

get_current_node() const

float

get_current_play_position() const

float

get_fading_from_length() const

StringName

get_fading_from_node() const

float

get_fading_from_play_position() const

float

get_fading_length() const

float

get_fading_position() const

Array[StringName]

get_travel_path() const

bool

is_playing() const

void

next()

void

start(node: StringName, reset: bool = true)

void

stop()

void

travel(to_node: StringName, reset_on_teleport: bool = true)


Segnali

state_finished(state: StringName) 🔗

Emesso quando lo stato state termina la riproduzione. Se state è una macchina a stati impostata in modalità raggruppata, i suoi segnali vengono trasmessi con il suo nome come prefisso.

Se è presente una dissolvenza incrociata, questo segnale verrà attivato quando l'influenza dell'animazione di get_fading_from_node() non sarà più presente.


state_started(state: StringName) 🔗

Emesso quando lo stato state avvia la riproduzione. Se state è una macchina a stati impostata in modalità raggruppata, i suoi segnali vengono trasmessi con il suo nome come prefisso.


Descrizioni dei metodi

float get_current_length() const 🔗

Restituisce la durata dello stato attuale.

Nota: È possibile che qualsiasi AnimationRootNode possa essere dei nodi e animazioni. Ciò significa che ci possono essere più di un'animazione all'interno di un singolo stato. Quale durata d'animazione ha la priorità dipende dai nodi collegati al suo interno. Inoltre, se una transizione non viene ripristinata, la durata rimanente a quel punto sarà restituita.


StringName get_current_node() const 🔗

Restituisce lo stato di animazione attualmente in riproduzione.

Nota: Quando si usa una diffusione incrociata, lo stato attuale cambia allo stato successivo immediatamente dopo l'inizio della dissolvenza incrociata.


float get_current_play_position() const 🔗

Restituisce la posizione di riproduzione all'interno dello stato di animazione attuale.


float get_fading_from_length() const 🔗

Returns the playback state length of the node from get_fading_from_node(). Returns 0 if no animation fade is occurring.


StringName get_fading_from_node() const 🔗

Restituisce lo stato di partenza dell'animazione attualmente in dissolvenza.


float get_fading_from_play_position() const 🔗

Returns the playback position of the node from get_fading_from_node(). Returns 0 if no animation fade is occurring.


float get_fading_length() const 🔗

Returns the length of the current fade animation. Returns 0 if no animation fade is occurring.


float get_fading_position() const 🔗

Returns the playback position of the current fade animation. Returns 0 if no animation fade is occurring.


Array[StringName] get_travel_path() const 🔗

Restituisce il percorso di viaggio attuale come calcolato internamente dall'algoritmo A*.


bool is_playing() const 🔗

Restituisce true se un'animazione è in riproduzione.


void next() 🔗

Se è presente un percorso di viaggio prossimo o avanzamento automatico, passa immediatamente dallo stato attuale al prossimo stato.


void start(node: StringName, reset: bool = true) 🔗

Inizia a riprodurre l'animazione fornita.

Se reset è true, l'animazione è riprodotta dall'inizio.


void stop() 🔗

Interrompe l'animazione attualmente in riproduzione.


void travel(to_node: StringName, reset_on_teleport: bool = true) 🔗

Passa dallo stato attuale a un altro, seguendo il percorso più breve.

Se il percorso non si collega dallo stato attuale, l'animazione sarà riprodotta dopo che lo stato si teletrasporta.

Se reset_on_teleport è true, l'animazione è riprodotta dall'inizio quando il viaggio causa un teletrasporto.