# GetTileAnimationData(Vector3Int, ITilemap, ref TileAnimationData)

> Retrieves any tile animation data from the scripted tile.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.Tilemaps](/engine/6000.7/script-reference/unityengine/tilemaps.md)
* **Assembly:** UnityEngine.TilemapModule

## GetTileAnimationData(Vector3Int, ITilemap, TileAnimationData)

```csharp
public virtual bool GetTileAnimationData(Vector3Int position, ITilemap tilemap, ref TileAnimationData tileAnimationData)
```

### Parameters

**** (\[Vector3Int]\(/engine/6000.7/script-reference/unityengine/vector3int)): Position of the Tile on the [Tilemap](/engine/6000.7/script-reference/unityengine/tilemaps/tilemap.md).**** (\[ITilemap]\(/engine/6000.7/script-reference/unityengine/tilemaps/itilemap)): The [Tilemap](/engine/6000.7/script-reference/unityengine/tilemaps/tilemap.md) the tile is present on.**** (\[TileAnimationData]\(/engine/6000.7/script-reference/unityengine/tilemaps/tileanimationdata)): Data to run an animation on the tile.

### Returns

| Type                                                          | Description                      |
| ------------------------------------------------------------- | -------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | Whether the call was successful. |

### Remarks

Implement this and fill in the [TileAnimationData](/engine/6000.7/script-reference/unityengine/tilemaps/tileanimationdata.md) to have the [Tilemap](/engine/6000.7/script-reference/unityengine/tilemaps/tilemap.md) run an animation for the tile.

### Examples

```csharp
using UnityEngine;
using UnityEngine.Tilemaps;

 // Tile that plays an animated loops of sprites
[CreateAssetMenu]
public class AnimatedTile : TileBase
{
    public Sprite[] m_AnimatedSprites;
    public float m_AnimationSpeed = 1f;
    public float m_AnimationStartTime;

    public override void GetTileData(Vector3Int location, ITilemap tileMap, ref TileData tileData)
    {
        if (m_AnimatedSprites != null && m_AnimatedSprites.Length > 0)
        {
            tileData.sprite = m_AnimatedSprites[m_AnimatedSprites.Length - 1];
        }
    }

    public override bool GetTileAnimationData(Vector3Int location, ITilemap tileMap, ref TileAnimationData tileAnimationData)
    {
        if (m_AnimatedSprites != null && m_AnimatedSprites.Length > 0)
        {
            tileAnimationData.animatedSprites = m_AnimatedSprites;
            tileAnimationData.animationSpeed = m_AnimationSpeed;
            tileAnimationData.animationStartTime = m_AnimationStartTime;
            return true;
        }
        return false;
    }
}
```
