Co-authored-by: zzdxxz <2079238449@qq.com> Co-committed-by: zzdxxz <2079238449@qq.com>
50 lines
1.3 KiB
C#
50 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.Xml;
|
|
using System.Xml.Linq;
|
|
using UnityEditor.Animations;
|
|
using UnityEngine.Tilemaps;
|
|
|
|
namespace Data
|
|
{
|
|
public class TileDef : Define
|
|
{
|
|
public string texturePath = "";
|
|
public string name = "";
|
|
|
|
public override bool Init(XElement xmlDef)
|
|
{
|
|
base.Init(xmlDef);
|
|
name = defName;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public class TileMappingTableDef : Define
|
|
{
|
|
public Dictionary<string, string> tileDict = new();
|
|
public override bool Init(XElement xmlDef)
|
|
{
|
|
base.Init(xmlDef);
|
|
// 清空字典以确保没有遗留数据
|
|
tileDict.Clear();
|
|
// 检查 xmlDef 是否为空
|
|
if (xmlDef == null)
|
|
return false;
|
|
foreach (var element in xmlDef.Elements())
|
|
{
|
|
// 获取子元素的名称作为键
|
|
var key = element.Name.LocalName;
|
|
// 获取子元素的 value 属性作为值
|
|
var value = element.Attribute("value")?.Value;
|
|
// 检查 value 是否存在
|
|
if (!string.IsNullOrEmpty(value))
|
|
{
|
|
tileDict[key] = value;
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
|
|
|
|
} |