2017-09-12 22:42:36 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2017-11-24 09:16:52 +01:00
<class name= "AnimationPlayer" inherits= "Node" category= "Core" version= "3.0-beta" >
2017-09-12 22:42:36 +02:00
<brief_description >
Container and player of [Animation] resources.
</brief_description>
<description >
An animation player is used for general purpose playback of [Animation] resources. It contains a dictionary of animations (referenced by name) and custom blend times between their transitions. Additionally, animations can be played and blended in different channels.
</description>
<tutorials >
</tutorials>
<demos >
</demos>
<methods >
<method name= "add_animation" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<argument index= "1" name= "animation" type= "Animation" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Adds [code]animation[/code] to the player accessible with the key [code]name[/code].
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "advance" >
<return type= "void" >
</return>
<argument index= "0" name= "delta" type= "float" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Shifts position in the animation timeline. Delta is the time in seconds to shift.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "animation_get_next" qualifiers= "const" >
<return type= "String" >
</return>
<argument index= "0" name= "anim_from" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Returns the name of the next animation in the queue.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "animation_set_next" >
<return type= "void" >
</return>
<argument index= "0" name= "anim_from" type= "String" >
</argument>
<argument index= "1" name= "anim_to" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] animation completes.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "clear_caches" >
<return type= "void" >
</return>
<description >
2017-12-05 05:13:52 +01:00
[code]AnimationPlayer[/code] caches animated nodes. It may not notice if a node disappears, so clear_caches forces it to update the cache again.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "clear_queue" >
<return type= "void" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Clears all queued, unplayed animations.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "find_animation" qualifiers= "const" >
<return type= "String" >
</return>
<argument index= "0" name= "animation" type= "Animation" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Returns the name of [code]animation[/code] or empty string if not found.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_animation" qualifiers= "const" >
<return type= "Animation" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Returns the [Animation] with key [code]name[/code] or [code]null[/code] if not found.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_animation_list" qualifiers= "const" >
<return type= "PoolStringArray" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Returns the list of stored animation names.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_autoplay" qualifiers= "const" >
<return type= "String" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Returns the name of the animation played when the scene loads.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_blend_time" qualifiers= "const" >
<return type= "float" >
</return>
<argument index= "0" name= "anim_from" type= "String" >
</argument>
<argument index= "1" name= "anim_to" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Get the blend time (in seconds) between two animations, referenced by their names.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_current_animation" qualifiers= "const" >
<return type= "String" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Returns the name of the currently playing animation.
2017-09-12 22:42:36 +02:00
</description>
</method>
2017-12-05 05:13:52 +01:00
<method name= "get_anim_length" qualifiers= "const" >
2017-09-12 22:42:36 +02:00
<return type= "float" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Get the length (in seconds) of the currently playing animation.
2017-09-12 22:42:36 +02:00
</description>
</method>
2017-12-05 05:13:52 +01:00
<method name= "get_anim_position" qualifiers= "const" >
2017-09-12 22:42:36 +02:00
<return type= "float" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Get the position (in seconds) of the currently playing animation.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_speed_scale" qualifiers= "const" >
<return type= "float" >
</return>
<description >
Get the speed scaling ratio in a given animation channel (or channel 0 if none is provided). Default ratio is [i]1[/i] (no scaling).
</description>
</method>
<method name= "has_animation" qualifiers= "const" >
<return type= "bool" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Returns [code]true[/code] if the [code]AnimationPlayer[/code] stores an [Animation] with key [code]name[/code].
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "is_active" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Returns true if the player is active.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "is_playing" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-12-05 05:13:52 +01:00
Returns [code]true[/code] if playing an animation.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "play" >
<return type= "void" >
</return>
<argument index= "0" name= "name" type= "String" default= """" >
</argument>
<argument index= "1" name= "custom_blend" type= "float" default= "-1" >
</argument>
<argument index= "2" name= "custom_speed" type= "float" default= "1.0" >
</argument>
<argument index= "3" name= "from_end" type= "bool" default= "false" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Play the animation with key [code]name[/code]. Custom speed and blend times can be set. If custom speed is negative (-1), 'from_end' being true can play the animation backwards.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "play_backwards" >
<return type= "void" >
</return>
<argument index= "0" name= "name" type= "String" default= """" >
</argument>
<argument index= "1" name= "custom_blend" type= "float" default= "-1" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Play the animation with key [code]name[/code] in reverse.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "queue" >
<return type= "void" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
Queue an animation for playback once the current one is done.
</description>
</method>
<method name= "remove_animation" >
<return type= "void" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Remove the animation with key [code]name[/code].
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "rename_animation" >
<return type= "void" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<argument index= "1" name= "newname" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Rename an existing animation with key [code]name[/code] to [code]newname[/code].
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "seek" >
<return type= "void" >
</return>
2017-09-10 15:37:49 +02:00
<argument index= "0" name= "seconds" type= "float" >
2017-09-12 22:42:36 +02:00
</argument>
<argument index= "1" name= "update" type= "bool" default= "false" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Seek the animation to the [code]seconds[/code] point in time (in seconds). If 'update' is true, the animation updates too, otherwise it updates at process time.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "set_active" >
<return type= "void" >
</return>
<argument index= "0" name= "active" type= "bool" >
</argument>
<description >
Set the player as active (playing). If false, it will do nothing.
</description>
</method>
<method name= "set_autoplay" >
<return type= "void" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
Set the name of the animation that will be automatically played when the scene is loaded.
</description>
</method>
<method name= "set_blend_time" >
<return type= "void" >
</return>
<argument index= "0" name= "anim_from" type= "String" >
</argument>
<argument index= "1" name= "anim_to" type= "String" >
</argument>
<argument index= "2" name= "sec" type= "float" >
</argument>
<description >
Specify a blend time (in seconds) between two animations, referenced by their names.
</description>
</method>
<method name= "set_current_animation" >
<return type= "void" >
</return>
<argument index= "0" name= "anim" type= "String" >
</argument>
<description >
Set the current animation (even if no playback occurs). Using set_current_animation() and set_active() are similar to calling play().
</description>
</method>
<method name= "set_speed_scale" >
<return type= "void" >
</return>
<argument index= "0" name= "speed" type= "float" >
</argument>
<description >
Set a speed scaling ratio in a given animation channel (or channel 0 if none is provided). Default ratio is [i]1[/i] (no scaling).
</description>
</method>
<method name= "stop" >
<return type= "void" >
</return>
<argument index= "0" name= "reset" type= "bool" default= "true" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Stop the currently playing animation. If [code]reset[/code] is [code]true[/code], the anim position is reset to [code]0[/code].
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "stop_all" >
<return type= "void" >
</return>
<description >
Stop playback of animations (deprecated).
</description>
</method>
</methods>
<members >
2017-09-13 08:49:40 +02:00
<member name= "playback_default_blend_time" type= "float" setter= "set_default_blend_time" getter= "get_default_blend_time" >
2017-12-05 05:13:52 +01:00
The default time in which to blend animations. Ranges from 0 to 4096 with 0.01 precision. Default value: [code]0[/code].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "playback_process_mode" type= "int" setter= "set_animation_process_mode" getter= "get_animation_process_mode" enum= "AnimationPlayer.AnimationProcessMode" >
2017-12-05 05:13:52 +01:00
The process notification in which to update animations. Default value: [enum ANIMATION_PROCESS_IDLE].
2017-09-12 22:42:36 +02:00
</member>
2017-09-13 08:49:40 +02:00
<member name= "root_node" type= "NodePath" setter= "set_root" getter= "get_root" >
2017-12-05 05:13:52 +01:00
The node from which node path references will travel. Default value: [code]".."[/code].
</member>
<member name= "autoplay" type= "String" setter= "set_autoplay" getter= "get_autoplay" >
The name of the animation to play when the scene loads. Default value: [code]""[/code].
</member>
<member name= "speed_scale" type= "float" setter= "set_speed_scale" getter= "get_speed_scale" >
The speed scaling ratio in a given animation channel (or channel 0 if none is provided). Default value: [code]1[/code].
</member>
<member name= "active" type= "bool" setter= "set_active" getter= "is_active" >
If [code]true[/code] updates animations in response to process-related notifications. Default value: [code]true[/code].
</member>
<member name= "current_anim" type= "String" setter= "set_current_anim" getter= "get_current_anim" >
The name of the current animation. If already playing, restarts the animation. Ensure [member active] is [code]true[/code] to simulate [method play]. Default value: [code]""[/code].
2017-09-12 22:42:36 +02:00
</member>
</members>
<signals >
<signal name= "animation_changed" >
<argument index= "0" name= "old_name" type= "String" >
</argument>
<argument index= "1" name= "new_name" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Emitted when the [Animation] with key [member current_anim] is modified.
2017-09-12 22:42:36 +02:00
</description>
</signal>
<signal name= "animation_finished" >
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Emitted when an animation finishes.
2017-09-12 22:42:36 +02:00
</description>
</signal>
<signal name= "animation_started" >
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
2017-12-05 05:13:52 +01:00
Emitted when an animation starts.
2017-09-12 22:42:36 +02:00
</description>
</signal>
</signals>
<constants >
2017-11-24 23:16:30 +01:00
<constant name= "ANIMATION_PROCESS_PHYSICS" value= "0" enum= "AnimationProcessMode" >
2017-11-01 00:47:07 +01:00
Process animation during the physics process. This is especially useful when animating physics bodies.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "ANIMATION_PROCESS_IDLE" value= "1" enum= "AnimationProcessMode" >
2017-10-11 23:54:43 +02:00
Process animation during the idle process.
2017-09-12 22:42:36 +02:00
</constant>
</constants>
</class>