RegisterCustomProperty

RegisterCustomProperty

RegisterCustomProperty 函数用于注册自定义属性,使其可以像经过反射的原生属性或蓝图属性一样使用。

这是一个高级函数,用于在多个元表的 __index 元方法中增加对未反射属性的支持。

参数

# 类型 子类型 说明
1 table CustomPropertyInfo 包含注册自定义属性所需全部信息的表

示例

注册名为 MySimpleCustomProperty 的自定义属性,以 IntProperty 的方式访问 Character 类任意实例中偏移 0xF40 处的数据。

随后读取 Character 类第一个实例中的该属性值,演示此系统的用法。

译注:原文示例在 BelongsToClass 字段后缺少逗号。下方代码按原文保留,实际使用时应在该字段值后补上逗号。

RegisterCustomProperty({
    ["Name"] = "MySimpleCustomProperty",
    ["Type"] = PropertyTypes.IntProperty,
    ["BelongsToClass"] = "/Script/Engine.Character"
    ["OffsetInternal"] = 0xF40
})

local CharacterInstance = FindFirstOf("Character")
if CharacterInstance:IsValid() then
    local MySimplePropertyValue = CharacterInstance.MySimpleCustomProperty
end

原文:docs/lua-api/global-functions/registercustomproperty.md · 固定提交 560411f18512 · 来源与 MIT 许可