2022-03-15 13:29:32 +01:00
<?xml version="1.0" encoding="UTF-8" ?>
2022-08-23 13:09:12 +02:00
<class name= "AnimationNodeStateMachineTransition" inherits= "Resource" version= "3.8" >
2022-03-15 13:29:32 +01:00
<brief_description >
</brief_description>
<description >
</description>
<tutorials >
<link > $DOCS_URL/tutorials/animation/animation_tree.html</link>
</tutorials>
<methods >
</methods>
<members >
2022-03-24 01:22:45 +01:00
<member name= "advance_condition" type= "StringName" setter= "set_advance_condition" getter= "get_advance_condition" default= "@""" >
2022-03-15 13:29:32 +01:00
Turn on auto advance when this condition is set. The provided name will become a boolean parameter on the [AnimationTree] that can be controlled from code (see [url=$DOCS_URL/tutorials/animation/animation_tree.html#controlling-from-code][/url]). For example, if [member AnimationTree.tree_root] is an [AnimationNodeStateMachine] and [member advance_condition] is set to [code]"idle"[/code]:
[codeblock]
$animation_tree["parameters/conditions/idle"] = is_on_floor and (linear_velocity.x == 0)
[/codeblock]
</member>
<member name= "auto_advance" type= "bool" setter= "set_auto_advance" getter= "has_auto_advance" default= "false" >
Turn on the transition automatically when this state is reached. This works best with [constant SWITCH_MODE_AT_END].
</member>
<member name= "disabled" type= "bool" setter= "set_disabled" getter= "is_disabled" default= "false" >
Don't use this transition during [method AnimationNodeStateMachinePlayback.travel] or [member auto_advance].
</member>
<member name= "priority" type= "int" setter= "set_priority" getter= "get_priority" default= "1" >
Lower priority transitions are preferred when travelling through the tree via [method AnimationNodeStateMachinePlayback.travel] or [member auto_advance].
</member>
<member name= "switch_mode" type= "int" setter= "set_switch_mode" getter= "get_switch_mode" enum= "AnimationNodeStateMachineTransition.SwitchMode" default= "0" >
The transition type.
</member>
<member name= "xfade_time" type= "float" setter= "set_xfade_time" getter= "get_xfade_time" default= "0.0" >
The time to cross-fade between this state and the next.
</member>
</members>
<signals >
<signal name= "advance_condition_changed" >
<description >
Emitted when [member advance_condition] is changed.
</description>
</signal>
</signals>
<constants >
<constant name= "SWITCH_MODE_IMMEDIATE" value= "0" enum= "SwitchMode" >
Switch to the next state immediately. The current state will end and blend into the beginning of the new one.
</constant>
<constant name= "SWITCH_MODE_SYNC" value= "1" enum= "SwitchMode" >
Switch to the next state immediately, but will seek the new state to the playback position of the old state.
</constant>
<constant name= "SWITCH_MODE_AT_END" value= "2" enum= "SwitchMode" >
Wait for the current state playback to end, then switch to the beginning of the next state animation.
</constant>
</constants>
</class>