Unity 6.3
0 онлайн 78 гостей 3 в системе
Вход

TileBase.GetTileAnimationData

Declaration

public bool GetTileAnimationData(Vector3Int position, Tilemaps.ITilemap tilemap, ref Tilemaps.TileAnimationData tileAnimationData);

Параметры

Параметр Описание
должность Положение плитки на Tilemap.
карта плиток На Tilemap плитка присутствует.
tileAnimationData Данные для запуска анимации на плитке.

Возвращаемое значение

логическое Был ли вызов успешным.

Описание

Получает любые данные анимации плитки из скриптовой плитки.

Выполните это и заполните TileAnimationData, чтобы Tilemap запустили анимацию для плитки.

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; } }