注:ET为3.2版本,Behavior Designer插件为1.5.11版本。如有问题请多多指教,请联系QQ:1090268920。

在此以行为树行为叶节点Action为例:

1.在Mode层写一个类继承行为树的Action,并实现Action中应该实现的方法。

Action继承实现

2.在Model层加入行为树调用委托,并在行为树的行为叶子类调用。

Action委托

3.在hotfix层中写一个行为树组件类,对Model中写的行为树委托进行绑定实现。

委托实现

4.在插件中使用自定义的行为叶节点ETAction,在ETAction中加上一个string,为需要热更调用的类名,在插件的编辑界面中输入热更调用的类名,在Hotfix层中行为树组件中委托绑定的方法中去调用需要热更的类即可实现行为树叶节点热更。整颗行为树热更用插件中的外部行为树字段进行更改。

5.在ILHelper类中注册ETHotfix中行为树调用的委托,如:appDomain.DelegateManager.RegisterFunctionDelegate<BTAction,BehaviorDesigner.Runtime.Tasks.TaskStatus>();最后用Tools/ILRuntime里面的工具自动生成ILR绑定代码。

注册委托