<?xml version="1.0" encoding="UTF-8" ?>
<class name="AnimatedSprite3D" inherits="SpriteBase3D" version="3.6" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		2D sprite node in 3D world, that can use multiple 2D textures for animation.
	</brief_description>
	<description>
		Animations are created using a [SpriteFrames] resource, which can be configured in the editor via the SpriteFrames panel.
	</description>
	<tutorials>
		<link title="2D Sprite animation (also applies to 3D)">$DOCS_URL/tutorials/2d/2d_sprite_animation.html</link>
	</tutorials>
	<methods>
		<method name="is_playing" qualifiers="const">
			<return type="bool" />
			<description>
				Returns [code]true[/code] if an animation is currently being played.
			</description>
		</method>
		<method name="play">
			<return type="void" />
			<argument index="0" name="anim" type="String" default="&quot;&quot;" />
			<description>
				Plays the animation named [code]anim[/code]. If no [code]anim[/code] is provided, the current animation is played.
			</description>
		</method>
		<method name="stop">
			<return type="void" />
			<description>
				Stops the current animation (does not reset the frame counter).
			</description>
		</method>
	</methods>
	<members>
		<member name="animation" type="String" setter="set_animation" getter="get_animation" default="&quot;default&quot;">
			The current animation from the [code]frames[/code] resource. If this value changes, the [code]frame[/code] counter is reset.
		</member>
		<member name="frame" type="int" setter="set_frame" getter="get_frame" default="0">
			The displayed animation frame's index.
		</member>
		<member name="frames" type="SpriteFrames" setter="set_sprite_frames" getter="get_sprite_frames">
			The [SpriteFrames] resource containing the animation(s).
		</member>
		<member name="playing" type="bool" setter="_set_playing" getter="_is_playing" default="false">
			If [code]true[/code], the [member animation] is currently playing.
		</member>
	</members>
	<signals>
		<signal name="animation_finished">
			<description>
				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.
			</description>
		</signal>
		<signal name="frame_changed">
			<description>
				Emitted when [member frame] changed.
			</description>
		</signal>
	</signals>
	<constants>
	</constants>
</class>
