Todas las tiles (fichas) que se agregarán al Tilemap deben heredar de TileBase
. TileBase
proporciona un conjunto fijo de API a Tilemap para comunicar sus propiedades de rendering. Para la mayoría de los casos de las API, la ubicación del Tile y la instancia del Tilemap en el que se coloca el Tile se pasan como argumentos de la API. Puede usar esto para determinar cualquier atributo requerido para establecer la información del tile.
public void RefreshTile(Vector3Int location, ITilemap tilemap)
’RefreshTiledetermina qué Tiles de la vecindad se actualizan cuando se agrega este Tile al Tilemap. Por defecto,
TileBasellama a
tilemap.RefreshTile(location)`para actualizar el tileen la ubicación actual. Anule esto para determinar qué Tiles necesitan actualizarse debido a la colocación del nuevo Tile.
Ejemplo: Hay un camino recto, y coloca un RoadTile
junto a él. El camino recto ya no es válido. Necesita una sección en T en su lugar. Unity no sabe automáticamente qué necesita actualizarse, por lo que RoadTile
necesita desencadenar la actualización sobre sí mismo, pero también sobre la carretera vecina.
public bool GetTileData(Vector3Int location, ITilemap tilemap, ref TileData tileData)
GetTileData
determina cómo se ve el Tile en el Tilemap. Ver TileData
a continuación para más detalles.
public bool GetTileAnimationData(Vector3Int location, ITilemap tilemap, ref TileAnimationData tileAnimationData)
GetTileAnimationData
determina si el Tile está animado o no. Devuelve verdadero si hay una animación para el Tile, otro devuelve falso si no lo hay.
public bool StartUp(Vector3Int location, ITilemap tilemap, GameObject go)
StartUp
se llama para cada tile cuando el Tilemap se actualiza por primera vez. Puede ejecutar cualquier lógica de inicio para Tiles en el Tilemap si es necesario. El argumento go es la versión instanciada del objeto pasado como gameobject cuando se llamó a GetTileData
. También puede actualizar go según sea necesario.