FindObject
FindObject 用于查找对象。
重载 #1 根据类名或对象短名称查找。
重载 #2 的工作方式与 UE 源码中的 FindObject 相同。
参数(重载 #1)
| # | 类型 | 说明 |
|---|---|---|
| 1 | string|FName|UClass|nil | 对象所属类的短名称,或 UClass 本身 |
| 2 | string|FName|nil | 对象本身的短名称 |
| 3 | EObjectFlags | 对象不能具有的标志。使用 | 分隔 |
| 4 | EObjectFlags | 对象必须具有的标志。使用 | 分隔 |
参数 1 或参数 2 可以为 nil,但不能同时为 nil。
参数(重载 #2)
| # | 类型 | 说明 |
|---|---|---|
| 1 | UClass | 要查找的类 |
| 2 | UObject|UClass | 要在其内部查找的 outer。如果为 null,参数 3 应以包名开头 |
| 3 | string | 用于查找对象的路径,相对于参数 2 |
| 4 | bool | 是否要求与 UClass 参数精确匹配 |
返回值(重载 #1 和 #2)
| # | 类型 | 说明 |
|---|---|---|
| 1 | UObject | UObject 的派生对象 |
示例(重载 #1)
-- SceneComponent instance called TransformComponent0
local Object = FindObject("SceneComponent", "TransformComponent0")
-- FirstPersonCharacter_C instance called FirstPersonCharacter_C_0
local Object = FindObject("FirstPersonCharacter_C", "FirstPersonCharacter_C_0", EObjectFlags.RF_NoFlags, EObjectFlags.RF_ClassDefaultObject)
也可以使用 UClass 对象:
local Object = FindObject(SceneComponentClass, "TransformComponent0")
示例(重载 #2)
local Object = FindObject(UClass, World, "Character", true)
原文:docs/lua-api/global-functions/findobject.md · 固定提交 560411f18512 · 来源与 MIT 许可