63 lines
1.5 KiB
C#
63 lines
1.5 KiB
C#
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using UnityEngine;
|
|
using UnityEngine.Tilemaps;
|
|
|
|
namespace Map
|
|
{
|
|
public class DoubleMap : MonoBehaviour
|
|
{
|
|
public List<List<int>> mapData = new();
|
|
// public Tilemap dataLevel;
|
|
public Tilemap textureLevel;
|
|
|
|
public Dictionary<string, TileBase> tileDict = new();
|
|
void Start()
|
|
{
|
|
TileManager.Instance.Init();
|
|
}
|
|
|
|
public void UpdateTexture()
|
|
{
|
|
|
|
}
|
|
|
|
public void SetTile(int x, int y, string tileName)
|
|
{
|
|
|
|
}
|
|
|
|
public void SetTile(int x, int y, int id)
|
|
{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
public class TileManager:Utils.Singleton<TileManager>
|
|
{
|
|
public Dictionary<(int, int, int, int), TileBase> TileToTileBaseMapping = new();
|
|
public void Init()
|
|
{
|
|
if( TileToTileBaseMapping.Count>0||!Managers.DefineManager.Instance.defines.TryGetValue("TileDef",out var tileType))
|
|
{
|
|
return;
|
|
}
|
|
Managers.PackagesImageManager.Instance.Init();
|
|
foreach (var tileDef in tileType.Values)
|
|
{
|
|
var packPath= Managers.DefineManager.Instance.GetDefinePackage(tileDef)?.packRootPath;
|
|
if(packPath==null)
|
|
continue;
|
|
|
|
}
|
|
}
|
|
|
|
public void Reload()
|
|
{
|
|
TileToTileBaseMapping.Clear();
|
|
Init();
|
|
}
|
|
}
|
|
}
|