2018-07-26 11:56:21 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								<?xml version="1.0" encoding="UTF-8" ?>  
						 
					
						
							
								
									
										
										
										
											2023-03-01 01:44:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								<class  name= "AnimationNodeTransition"  inherits= "AnimationNodeSync"  version= "4.1"  xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"  xsi:noNamespaceSchemaLocation= "../class.xsd" >  
						 
					
						
							
								
									
										
										
										
											2018-07-26 11:56:21 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									<brief_description > 
							 
						 
					
						
							
								
									
										
										
										
											2023-04-28 17:16:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										A transition within an [AnimationTree] connecting two [AnimationNode]s.
							 
						 
					
						
							
								
									
										
										
										
											2018-07-26 11:56:21 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</brief_description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<description > 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-03 19:21:21 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										Simple state machine for cases which don't require a more advanced [AnimationNodeStateMachine]. Animations can be connected to the inputs and transition times can be specified.
							 
						 
					
						
							
								
									
										
										
										
											2023-02-10 11:04:56 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										After setting the request and changing the animation playback, the transition node automatically clears the request on the next process frame by setting its [code]transition_request[/code] value to empty.
							 
						 
					
						
							
								
									
										
										
										
											2023-02-13 14:16:40 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										[b]Note:[/b] When using a cross-fade, [code]current_state[/code] and [code]current_index[/code] change to the next state immediately after the cross-fade begins.
							 
						 
					
						
							
								
									
										
										
										
											2023-02-10 11:04:56 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										[codeblocks]
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										[gdscript]
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										# Play child animation connected to "state_2" port.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										animation_tree.set("parameters/Transition/transition_request", "state_2")
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										# Alternative syntax (same result as above).
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										animation_tree["parameters/Transition/transition_request"] = "state_2"
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-02-13 14:16:40 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										# Get current state name (read-only).
							 
						 
					
						
							
								
									
										
										
										
											2023-02-10 11:04:56 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										animation_tree.get("parameters/Transition/current_state")
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										# Alternative syntax (same result as above).
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										animation_tree["parameters/Transition/current_state"]
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-02-13 14:16:40 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										# Get current state index (read-only).
							 
						 
					
						
							
								
									
										
										
										
											2023-04-30 23:32:18 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										animation_tree.get("parameters/Transition/current_index")
							 
						 
					
						
							
								
									
										
										
										
											2023-02-10 11:04:56 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										# Alternative syntax (same result as above).
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										animation_tree["parameters/Transition/current_index"]
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										[/gdscript]
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										[csharp]
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Play child animation connected to "state_2" port.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										animationTree.Set("parameters/Transition/transition_request", "state_2");
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-02-13 14:16:40 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// Get current state name (read-only).
							 
						 
					
						
							
								
									
										
										
										
											2023-02-10 11:04:56 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										animationTree.Get("parameters/Transition/current_state");
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2023-02-13 14:16:40 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// Get current state index (read-only).
							 
						 
					
						
							
								
									
										
										
										
											2023-02-10 11:04:56 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										animationTree.Get("parameters/Transition/current_index");
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										[/csharp]
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										[/codeblocks]
							 
						 
					
						
							
								
									
										
										
										
											2018-07-26 11:56:21 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<tutorials > 
							 
						 
					
						
							
								
									
										
										
										
											2023-04-28 17:16:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<link  title= "Using AnimationTree" > $DOCS_URL/tutorials/animation/animation_tree.html</link> 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-01 04:34:47 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<link  title= "3D Platformer Demo" > https://godotengine.org/asset-library/asset/125</link> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<link  title= "Third Person Shooter Demo" > https://godotengine.org/asset-library/asset/678</link> 
							 
						 
					
						
							
								
									
										
										
										
											2018-07-26 11:56:21 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</tutorials> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<methods > 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-31 00:40:45 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<method  name= "is_input_reset"  qualifiers= "const" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<return  type= "bool"  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<param  index= "0"  name= "input"  type= "int"  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												Returns whether the animation restarts when the animation transitions from the other animation.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
									
										
										
										
											2019-06-27 16:10:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<method  name= "is_input_set_as_auto_advance"  qualifiers= "const" > 
							 
						 
					
						
							
								
									
										
										
										
											2021-07-30 15:28:05 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<return  type= "bool"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-06 21:11:48 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "0"  name= "input"  type= "int"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2019-06-27 16:10:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-20 21:20:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												Returns [code]true[/code] if auto-advance is enabled for the given [param input] index.
							 
						 
					
						
							
								
									
										
										
										
											2019-06-27 16:10:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<method  name= "set_input_as_auto_advance" > 
							 
						 
					
						
							
								
									
										
										
										
											2021-07-30 15:28:05 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<return  type= "void"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2022-08-06 21:11:48 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<param  index= "0"  name= "input"  type= "int"  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<param  index= "1"  name= "enable"  type= "bool"  /> 
							 
						 
					
						
							
								
									
										
										
										
											2019-06-27 16:10:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-20 21:20:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												Enables or disables auto-advance for the given [param input] index. If enabled, state changes to the next input after playing the animation once. If enabled for the last input state, it loops to the first.
							 
						 
					
						
							
								
									
										
										
										
											2019-06-27 16:10:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-31 00:40:45 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<method  name= "set_input_reset" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<return  type= "void"  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<param  index= "0"  name= "input"  type= "int"  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<param  index= "1"  name= "enable"  type= "bool"  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											<description > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												If [code]true[/code], the destination animation is restarted when the animation transitions.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</method> 
							 
						 
					
						
							
								
									
										
										
										
											2018-07-26 11:56:21 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</methods> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<members > 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-31 21:17:29 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "allow_transition_to_self"  type= "bool"  setter= "set_allow_transition_to_self"  getter= "is_allow_transition_to_self"  default= "false" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											If [code]true[/code], allows transition to the self state. When the reset option is enabled in input, the animation is restarted. If [code]false[/code], nothing happens on the transition to the self state.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-29 23:54:13 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "input_count"  type= "int"  setter= "set_input_count"  getter= "get_input_count"  default= "0" > 
							 
						 
					
						
							
								
									
										
										
										
											2023-04-30 23:32:18 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											The number of enabled input ports for this animation node.
							 
						 
					
						
							
								
									
										
										
										
											2022-04-05 19:11:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2022-07-28 17:31:23 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "xfade_curve"  type= "Curve"  setter= "set_xfade_curve"  getter= "get_xfade_curve" > 
							 
						 
					
						
							
								
									
										
										
										
											2023-01-20 21:20:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Determines how cross-fading between animations is eased. If empty, the transition will be linear.
							 
						 
					
						
							
								
									
										
										
										
											2022-07-28 17:31:23 +09:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "xfade_time"  type= "float"  setter= "set_xfade_time"  getter= "get_xfade_time"  default= "0.0" > 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-03 19:21:21 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Cross-fading time (in seconds) between each animation connected to the inputs.
							 
						 
					
						
							
								
									
										
										
										
											2018-07-26 11:56:21 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</members> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</class>