(client) fix: 修复Define加载时的逻辑错误(错误从about文件中筛选define,加载文件不再构建完整路径)
This commit is contained in:
@ -160,27 +160,25 @@ namespace Configs
|
||||
|
||||
foreach (var path in paths)
|
||||
{
|
||||
// 获取程序所在的目录路径
|
||||
var appDirectory = AppDomain.CurrentDomain.BaseDirectory;
|
||||
|
||||
// 构建目标目录的完整路径
|
||||
var dataDirectory = Path.Combine(appDirectory, path);
|
||||
|
||||
try
|
||||
{
|
||||
// 检查目录是否存在
|
||||
if (Directory.Exists(dataDirectory))
|
||||
if (!Directory.Exists(path))
|
||||
{
|
||||
// 获取目录下的所有子文件夹
|
||||
var subDirectories = Directory.GetDirectories(dataDirectory);
|
||||
|
||||
// 遍历并收集每个子文件夹中的 XML 文件
|
||||
foreach (var dir in subDirectories)
|
||||
{
|
||||
var xmlFiles = Directory.GetFiles(dir, "*.xml", SearchOption.AllDirectories);
|
||||
xmlFilePaths.AddRange(xmlFiles);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
// 获取目录下的所有子文件夹
|
||||
var subDirectories = Directory.GetDirectories(path);
|
||||
|
||||
// 遍历并收集每个子文件夹中的 XML 文件
|
||||
foreach (var dir in subDirectories)
|
||||
{
|
||||
var xmlFiles = Directory.GetFiles(dir, "*.xml", SearchOption.AllDirectories);
|
||||
xmlFilePaths.AddRange(xmlFiles);
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -123,9 +123,9 @@ namespace Data
|
||||
packID = packAbout.packID;
|
||||
if (aboutXmls.Count > 1) Debug.LogWarning($"{packAbout.name}包拥有多个配置文件,系统选择了加载序的第一个,请避免这种情况");
|
||||
|
||||
var defineXmls = FindDocumentsWithRootName(aboutXmls, "Define");
|
||||
var defineXmls = FindDocumentsWithRootName(packDatas, "Define");
|
||||
// Debug.Log($"Define文件数量{defineXmls.Count}");
|
||||
foreach (var defineXml in defineXmls) LoadDefines(defineXml);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -140,12 +140,15 @@ namespace Data
|
||||
var className = element.Name.ToString();
|
||||
if (string.IsNullOrEmpty(className))
|
||||
continue;
|
||||
// Debug.Log("1");
|
||||
var def = LoadDefineClass(element);
|
||||
if (def == null)
|
||||
continue;
|
||||
// Debug.Log("2");
|
||||
if (!defines.ContainsKey(className))
|
||||
defines.Add(className, new List<Define>());
|
||||
defines[className].Add(def);
|
||||
// Debug.Log($"插入{className},{def.defName}");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,7 @@ namespace Test
|
||||
{
|
||||
public class ClockTest : MonoBehaviour
|
||||
{
|
||||
private static float timer = 0;
|
||||
//private static float timer = 0;
|
||||
|
||||
// Start is called once before the first execution of Update after the MonoBehaviour is created
|
||||
private void Start()
|
||||
|
Reference in New Issue
Block a user