蓝图通信(11) —— 事件分配器

简述
事件分配器可以绑定一个或多个事件,调用事件分配器后,与其绑定的所有事件将触发

创建事件分配器
打开关卡蓝图,在My Blueprint面板,点击Event Dispatchers后面的“+”创建事件分配器,命名为EventDispatcherTest,(蓝图类中的事件分配器使用方法和关卡蓝图中相同)

选中EventDispatcherTest,转到Details面板,设置输入,点击New添加输入参数,类型为String

绑定事件
创建好事件分配器后,接下来给它绑定事件,将EventDispatcherTest拖入事件图表中

点击Bind

添加事件

事件分配器EventDispatcherTest绑定两个事件,并让蓝图关卡在开始的时候调用绑定节点

调事件分配器
绑定完成后开始调用事件分配器,将EventDispatcherTest拖入事件图表中,点击Call,设置输入参数,并添加键盘事件

编译保存,点击Play,按下“1”键,输出结果

解除绑定
事件分配器除了可以绑定事件,在必要的时候还可以解绑,将EventDispatcherTest拖入事件图表中,点击Unbind

按“2”键的时候解除和事件CustomEvent_0的绑定,再次调用事件分配器,将无法除法事件CustomEvent_0,全部解除绑定用Unbind all

蓝图类中调用关卡蓝图的事件分配器
蓝图类中无法调用关卡蓝图中的事件分配器,但可以用过调用关口蓝图中的自定义事件来实现,在事件图表中点击右键,搜索add Custom

选择add Custom Event节点,添加自定义事件,命名为CustomEvent_2,将该事件连接到事件分配器

新建一个Actor蓝图类,并拖入关卡中实例化,双击打开蓝图编辑器,蓝图类需要通过一个节点来调用关卡蓝图中的事件,该节点为Execute Console Command,右键搜索并创建该节点,并添加键盘按键“1”

设置Execute Console Command节点的输入参数,参数为String类型,格式为”ce 事件名”,当前参数设为 ce CustomEvent_2,编译保存,点击Play运行

猜你喜欢

转载自blog.csdn.net/niu2212035673/article/details/80287754