12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- using UnityEngine;
- using UnityEngine.Tilemaps;
-
- namespace UnityEditor.Tilemaps
- {
- /// <summary>
- /// Utility class for creating Tiles
- /// </summary>
- public class TileUtility
- {
- internal static void CreateNewTile()
- {
- string message = string.Format("Save tile'{0}':", "tile");
- string newAssetPath = EditorUtility.SaveFilePanelInProject("Save tile", "New Tile", "asset", message, ProjectWindowUtil.GetActiveFolderPath());
-
- // If user canceled or save path is invalid, we can't create the tile
- if (string.IsNullOrEmpty(newAssetPath))
- return;
-
- AssetDatabase.CreateAsset(CreateDefaultTile(), newAssetPath);
- }
-
- /// <summary>Creates a Tile with defaults based on the Tile preset</summary>
- /// <returns>A Tile with defaults based on the Tile preset</returns>
- public static Tile CreateDefaultTile()
- {
- return ObjectFactory.CreateInstance<Tile>();
- }
-
- /// <summary>Creates a Tile with defaults based on the Tile preset and a Sprite set</summary>
- /// <param name="sprite">A Sprite to set the Tile with</param>
- /// <returns>A Tile with defaults based on the Tile preset and a Sprite set</returns>
- [CreateTileFromPalette]
- public static TileBase DefaultTile(Sprite sprite)
- {
- Tile tile = CreateDefaultTile();
- tile.name = sprite.name;
- tile.sprite = sprite;
- tile.color = Color.white;
- return tile;
- }
- }
- }
|