(client) feat:完成定义的链接
This commit is contained in:
@ -141,15 +141,13 @@ namespace Data
|
||||
var className = element.Name.ToString();
|
||||
if (string.IsNullOrEmpty(className))
|
||||
continue;
|
||||
// Debug.Log("1");
|
||||
var def = LoadDefineClass(element,element.Name.ToString());
|
||||
if (def == null)
|
||||
continue;
|
||||
// Debug.Log("2");
|
||||
def.packID = packID;
|
||||
if (!defines.ContainsKey(className))
|
||||
defines.Add(className, new List<Define>());
|
||||
defines[className].Add(def);
|
||||
// Debug.Log($"插入{className},{def.defName}");
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
@ -257,7 +255,17 @@ namespace Data
|
||||
{
|
||||
Object value;
|
||||
if (IsFieldTypeInheritedFrom(field, typeof(Define)))
|
||||
value = LoadDefineClass(element, field.FieldType.Name);
|
||||
{
|
||||
if (element.HasElements)
|
||||
{
|
||||
value = LoadDefineClass(element, field.FieldType.Name);
|
||||
}
|
||||
else
|
||||
{
|
||||
value = new DefineReference(field.FieldType.Name, element.Value, field.Name);
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
value = Convert.ChangeType(element.Value, field.FieldType);
|
||||
field.SetValue(define, value);
|
||||
|
Reference in New Issue
Block a user