2017-09-13 04:42:36 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
2020-03-31 00:22:57 +08:00
<class name= "AnimatedSprite2D" inherits= "Node2D" version= "4.0" >
2017-09-13 04:42:36 +08:00
<brief_description >
Sprite node that can use multiple textures for animation.
</brief_description>
<description >
2017-10-07 00:33:16 +08:00
Animations are created using a [SpriteFrames] resource, which can be configured in the editor via the SpriteFrames panel.
2020-07-11 03:52:16 +08:00
[b]Note:[/b] You can associate a set of normal or specular maps by creating additional [SpriteFrames] resources with a [code]_normal[/code] or [code]_specular[/code] suffix. For example, having 3 [SpriteFrames] resources [code]run[/code], [code]run_normal[/code], and [code]run_specular[/code] will make it so the [code]run[/code] animation uses normal and specular maps.
2017-09-13 04:42:36 +08:00
</description>
<tutorials >
2020-08-21 20:25:12 +08:00
<link title= "2D Sprite animation" > https://docs.godotengine.org/en/latest/tutorials/2d/2d_sprite_animation.html</link>
2020-10-01 16:34:47 +08:00
<link title= "2D Dodge The Creeps Demo" > https://godotengine.org/asset-library/asset/515</link>
2017-09-13 04:42:36 +08:00
</tutorials>
<methods >
<method name= "is_playing" qualifiers= "const" >
2021-07-30 21:28:05 +08:00
<return type= "bool" />
2017-09-13 04:42:36 +08:00
<description >
2019-06-22 07:04:47 +08:00
Returns [code]true[/code] if an animation is currently being played.
2017-09-13 04:42:36 +08:00
</description>
</method>
<method name= "play" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
<argument index= "0" name= "anim" type= "StringName" default= "&""" />
<argument index= "1" name= "backwards" type= "bool" default= "false" />
2017-09-13 04:42:36 +08:00
<description >
2019-06-22 07:04:47 +08:00
Plays the animation named [code]anim[/code]. If no [code]anim[/code] is provided, the current animation is played. If [code]backwards[/code] is [code]true[/code], the animation will be played in reverse.
2017-09-13 04:42:36 +08:00
</description>
</method>
<method name= "stop" >
2021-07-30 21:28:05 +08:00
<return type= "void" />
2017-09-13 04:42:36 +08:00
<description >
2019-06-22 07:04:47 +08:00
Stops the current animation (does not reset the frame counter).
2017-09-13 04:42:36 +08:00
</description>
</method>
</methods>
<members >
2021-06-06 03:24:24 +08:00
<member name= "animation" type= "StringName" setter= "set_animation" getter= "get_animation" default= "&"default"" >
2017-10-07 00:33:16 +08:00
The current animation from the [code]frames[/code] resource. If this value changes, the [code]frame[/code] counter is reset.
2017-09-13 04:42:36 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "centered" type= "bool" setter= "set_centered" getter= "is_centered" default= "true" >
2019-06-29 21:24:23 +08:00
If [code]true[/code], texture will be centered.
2017-09-13 04:42:36 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "flip_h" type= "bool" setter= "set_flip_h" getter= "is_flipped_h" default= "false" >
2019-06-29 21:24:23 +08:00
If [code]true[/code], texture is flipped horizontally.
2017-09-13 04:42:36 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "flip_v" type= "bool" setter= "set_flip_v" getter= "is_flipped_v" default= "false" >
2019-06-29 21:24:23 +08:00
If [code]true[/code], texture is flipped vertically.
2017-09-13 04:42:36 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "frame" type= "int" setter= "set_frame" getter= "get_frame" default= "0" >
2017-10-07 00:33:16 +08:00
The displayed animation frame's index.
2017-09-13 04:42:36 +08:00
</member>
2019-07-16 02:42:47 +08:00
<member name= "frames" type= "SpriteFrames" setter= "set_sprite_frames" getter= "get_sprite_frames" >
2017-09-27 13:56:16 +08:00
The [SpriteFrames] resource containing the animation(s).
2017-09-13 04:42:36 +08:00
</member>
2019-09-25 01:45:03 +08:00
<member name= "offset" type= "Vector2" setter= "set_offset" getter= "get_offset" default= "Vector2(0, 0)" >
2017-09-27 13:56:16 +08:00
The texture's drawing offset.
2017-09-13 04:42:36 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "playing" type= "bool" setter= "_set_playing" getter= "_is_playing" default= "false" >
2018-12-20 20:46:54 +08:00
If [code]true[/code], the [member animation] is currently playing.
2017-09-13 04:42:36 +08:00
</member>
2019-06-29 18:38:01 +08:00
<member name= "speed_scale" type= "float" setter= "set_speed_scale" getter= "get_speed_scale" default= "1.0" >
2019-05-08 10:45:49 +08:00
The animation speed is multiplied by this value.
2018-05-12 15:38:00 +08:00
</member>
2017-09-13 04:42:36 +08:00
</members>
<signals >
<signal name= "animation_finished" >
<description >
2017-09-27 13:56:16 +08:00
Emitted when the animation is finished (when it plays the last frame). If the animation is looping, this signal is emitted every time the last frame is drawn.
2017-09-13 04:42:36 +08:00
</description>
</signal>
<signal name= "frame_changed" >
<description >
2017-10-07 00:33:16 +08:00
Emitted when [member frame] changed.
2017-09-13 04:42:36 +08:00
</description>
</signal>
</signals>
</class>