(client) feat:定义瓦片地图映射
This commit is contained in:
@ -667,7 +667,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!114 &2104915507
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
|
40
Client/Assets/Scripts/Data/MapDefine.cs
Normal file
40
Client/Assets/Scripts/Data/MapDefine.cs
Normal file
@ -0,0 +1,40 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Xml;
|
||||
using System.Xml.Linq;
|
||||
using UnityEditor.Animations;
|
||||
using UnityEngine.Tilemaps;
|
||||
|
||||
namespace Data
|
||||
{
|
||||
public class TileDef : Define
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
3
Client/Assets/Scripts/Data/MapDefine.cs.meta
Normal file
3
Client/Assets/Scripts/Data/MapDefine.cs.meta
Normal file
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 67d4d2ac30e641189cdf018ad6769f0e
|
||||
timeCreated: 1752496329
|
39
Client/Data/Core/Define/Map/Map.xml
Normal file
39
Client/Data/Core/Define/Map/Map.xml
Normal file
@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Define>
|
||||
<TileMappingTableDef>
|
||||
<defName>GrassDirtTable</defName>
|
||||
<Grass_Grass_Grass_Grass value="GrassDirt_6"/>
|
||||
<!-- 2 + (1 * 4) = 6 -->
|
||||
<Dirt_Dirt_Dirt_Grass value="GrassDirt_13"/>
|
||||
<!-- 1 + (3 * 4) = 13 -->
|
||||
<Dirt_Dirt_Grass_Dirt value="GrassDirt_0"/>
|
||||
<!-- 0 + (0 * 4) = 0 -->
|
||||
<Dirt_Grass_Dirt_Dirt value="GrassDirt_8"/>
|
||||
<!-- 0 + (2 * 4) = 8 -->
|
||||
<Grass_Dirt_Dirt_Dirt value="GrassDirt_15"/>
|
||||
<!-- 3 + (3 * 4) = 15 -->
|
||||
<Dirt_Grass_Dirt_Grass value="GrassDirt_4"/>
|
||||
<!-- 1 + (0 * 4) = 1 -->
|
||||
<Grass_Dirt_Grass_Dirt value="GrassDirt_11"/>
|
||||
<!-- 3 + (2 * 4) = 11 -->
|
||||
<Dirt_Dirt_Grass_Grass value="GrassDirt_12"/>
|
||||
<!-- 3 + (0 * 4) = 3 -->
|
||||
<Grass_Grass_Dirt_Dirt value="GrassDirt_9"/>
|
||||
<!-- 1 + (2 * 4) = 9 -->
|
||||
<Dirt_Grass_Grass_Grass value="GrassDirt_5"/>
|
||||
<!-- 1 + (1 * 4) = 5 -->
|
||||
<Grass_Dirt_Grass_Grass value="GrassDirt_8"/>
|
||||
<!-- 2 + (0 * 4) = 2 -->
|
||||
<Grass_Grass_Dirt_Grass value="GrassDirt_10"/>
|
||||
<!-- 2 + (2 * 4) = 10 -->
|
||||
<Grass_Grass_Grass_Dirt value="GrassDirt_7"/>
|
||||
<!-- 3 + (1 * 4) = 7 -->
|
||||
<Dirt_Grass_Grass_Dirt value="GrassDirt_14"/>
|
||||
<!-- 2 + (3 * 4) = 14 -->
|
||||
<Grass_Dirt_Dirt_Grass value="GrassDirt_4"/>
|
||||
<!-- 0 + (1 * 4) = 4 -->
|
||||
<Dirt_Dirt_Dirt_Dirt value="GrassDirt_12"/>
|
||||
<!-- 0 + (3 * 4) = 12 -->
|
||||
</TileMappingTableDef>
|
||||
|
||||
</Define>
|
Reference in New Issue
Block a user