欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > UnLua实现继承

UnLua实现继承

2024/10/25 7:34:30 来源:https://blog.csdn.net/axin7c8/article/details/142431531  浏览:    关键词:UnLua实现继承

一、在蓝图中实现继承
1、创建父类,并绑定Lua脚本
在这里插入图片描述
2、创建子类蓝图,如果先创建的子类,可以修改父类继承
在这里插入图片描述
注意,提示选择继承父类的接口!
二、在Lua中实现继承
1、在父类Lua脚本中实现函数
BP_CharacterBase.lua

function BP_CharacterBase_C:StartFire()print("BP_CharacterBase_C:StartFire")
end

2、在子类中设置父类文件名,重写父类函数,并显示调用父类函数
BP_Player.lua

local BP_Player_C = UnLua.Class("BP_CharacterBase")	--注意传入的是文件名字function BP_Player_C:StartFire()print("P_Player_C:StartFire")self.Super:StartFire()
end

3、调用函数
BP_PlayerController.lua

function BP_PlayerController_C:Fire_Pressed()print("BP_PlayerController_C:Fire_Pressed")self.Pawn:StartFire()--如果父类有继承接口,也可以用接口的调用方法local BPI_Interfaces = UE.UClass.Load("/Game/ShootingScripts/Blueprint/Common/BP_Interfaces.BP_Interfaces_C")BPI_Interfaces.StartFire(self.Pawn)
end

4、打印,先执行子类方法,然后执行父类方法
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com