1.3 - 变量复制

1_3.png

为能同时从 服务器客户端 进行查看,请在 Play (运行)的下拉框中,设置 Number of Clients (客户端数量)区域为2。

概述

对游戏性重要的变量应 仅仅 在网络授权端(服务器)进行修改,然后根据所需复制到远程机(客户端)。

本例中,鬼魂的生命值只是在网络授权端的计时器上进行修改。 对非复制的鬼魂来说,远程机永不接受更新的生命值。 对复制的鬼魂来说,它们随着服务器变更生命值而接受更新。

蓝图详细信息

BP_Ghost_Variable_Replication_None 蓝图的事件图表中(下图),您将可以看到对 Initialize Health (初始生命值)和 Update Health (更新生命值)(它通过计时器每3秒被调用一次)的脚本调用仅仅发生于服务器。

点击查看放大图片

同时,在每个时基中,鬼魂的生命值的文本都会被显示,以确认变量值。 然而对这个蓝图而言, Health (生命值)的变量并不被设置为复制,这样它的值将总是保持不变。

BP_Ghost_Variable_Replication_Enabled 事件图表中(如下图),您将会看到和上述内容相同的设置,然而 Health (生命值)变量被设置为复制。

点击查看放大图片

您可以如下图中这样,通过启用变量的 细节 面板的勾选框来启用对 Health (生命值)的变量 Replication (复制)。

1_3_Rep_Variables.png

通过将变量设置为复制,此蓝图将会接受由下图的游戏性示例所示的由服务器执行的变量更新。