Lua怎么替换BlueprintImplementableEvent或BlueprintNativeEvent的方法实现的
时机发生在UUnLuaManager中绑定UObject和Lua Object的时候,具体到函数是BindInternal
648-649行是拿到所有的Lua方法,并且存储到LuaFunctions里,650-651行拿到所有的UE的所有BlueprintEvent和RepNotify方法,存起来,然后最重要的函数OverrideFunctions中,其实就是本小节的答案所在,在这个函数里用Lua的函数覆盖BlueprintImplementableEvent或
BlueprintNativeEvent的方法
/**
* Override candidate UFunctions
*/
void UUnLuaManager::OverrideFunctions(const TSet<FName> &LuaFunctions, TMap<FName, UFunction*> &UEFunctions, UClass *OuterClass, bool bCheckFuncNetMode)
{
for (const FName &LuaFuncName : LuaFunctions)
{
UFunction **Func = UEFunctions.Find(LuaFuncName);
if (Func)
{
UFunction *Function