自定义事件

概述

自定义事件

Custom Events(自定义事件) 为您提供了一种创建您自己的事件的方法,您可以在您的 蓝图 序列 的任何地方处调用这些事件。当您正在把多个输出执行线连接到一个特定节点的输入执行引脚时, 使用 自定义事件 可以简化您图表的节点连线网络。您甚至可以在一个 蓝图 的图表中创建 自定义事件 ,而在另一个图表中调用该事件。

创建自定义事件的简单流程:

  • 创建并命名 Custom Event(自定义事件)

  • 设置这个事件应该具有的任何输入参数及其默认值。

  • 创建一个调用该自定义事件的特殊函数。

  • 输入任何需要的输入参数。

创建自定义事件

  1. 通过右击并从关联菜单中选择 Add Custom Event(添加自定义事件)... 来创建一个 Custom Event(自定义事件) 节点。

    add_custom_event.png

  2. 给这个新事件赋予一个名称。

    name_custom_event.png

  3. 在您的新事件的 Details(详细信息) 面板中,您可以设置当在服务器上调用该事件并添加输入参数时,是否将该事件复制到所有客户端上。

    new_details_custom_event.png

要想添加输入参数:

  1. 点击 详细信息 面板的 Inputs(输入) 部分的 New(新建) 按钮。

    new_input_custom_event.png

  2. 命名该新输入并使用下拉菜单设置其类型。在这个示例中,有一个 String(字符串型) 的输入参数 MyStringParam

    named_new_variable.png

  3. 您也可以通过展开参数项来设置一个默认值。

    set_default_parameter.png

要想改变节点边缘上的这个参数的引脚的位置,请使用展开的 详细信息 面板项的向下和向上箭头。

现在,和其他 事件 或执行节点一样,您可以把其他节点附加到您的 自定义事件 的输出执行引脚上,这样当触发了您的 自定义事件 时将会开始执行那个节点网络。 这个 自定义事件 向屏幕输出了一个字符串。

small_custom_event.png

调用自定义事件

您已经创了 自定义事件 及其相关的节点网络,但是和常规的 Events(事件) 不同,没有触发 自定义事件 的预制条件。要想调用您的 自定义事件 ,请右击并从关联菜单中选择 Call Function(调用函数) > [自定义事件名称]

call_ce_context_menu.png

call_custom_event_node.png

自定义事件 上设置的任何输入参数在新的节点中都将呈现为输入数据引脚,以便它们可以传入到 自定义事件 中。您可以根据需要使用数据连线把任何数据引脚连接到变量或其他数据引脚上。

和常规的 Events(事件) 不同,常规事件在每个图表中每种 事件 类型仅能调用一次;但是您可以在图表中多次调用一个 自定义事件 。这样, 自定义事件 就可以把多个执行输出分支连入到 一个单独的执行输入上,而不需要直接连线。

connected_custom_event.png

在这个示例中,如果 IsSuccess 布尔变量为 false ,那么将打印一个错误信息。这个图表的功能,和在序列中的 Branch 节点后面连接 Print String 节点的功能一样, 但是它有个附加功能是图表中的其他部分可以使用 Print String 节点,且图表中两个网络部分的彼此位置不必太近。

自定义事件疑难解答

如果在 Custom Event(自定义事件) 节点上看到 警告! 条,提示 "不能找到名称为[CustomEvent]的函数" 信息,请 编译 您的 蓝图

custom_event_warning.png

如果您修改了您的 自定义事件 上的输入参数的数量,那么当您编译 蓝图 时,调用该 自定义事件 的所有节点都会出现错误。

parameter_change_error.png

您必须刷新调用您的 自定义事件 的 所有节点。要想刷新一个单独节点或者一组选中的节点,请右击这些节点并选择 Refresh Nodes(刷新节点)

refresh_nodes.png

要想刷新您的图表中的所有节点,请在 File(文件) 菜单中 选择 Refresh All Nodes(刷新所有节点) 项。

refresh_all_nodes.png