【问题标题】:How to display each player's score [Network Manager]如何显示每个玩家的得分 [网络管理员]
【发布时间】:2018-01-08 22:33:18
【问题描述】:

我正在开发基于内置网络管理器(基于这个很棒的教程 https://unity3d.com/learn/tutorials/s/multiplayer-networking)的简单多人游戏(到目前为止是 2 人游戏),我完全不知道如何解决我的问题。我发现的每个关于评分系统的教程都侧重于本地多人游戏(不使用网络管理器)。

我的问题是: 如果我将玩家的分数存储在玩家预制件的实例中(作为字段),如何以 [Player1Score : Player2Score] 等格式在每个玩家的 UI 上显示两个玩家的分数。 我想以任何方式显示分数,作为单独的或作为一个附加字符串(UI 文本)。

欢迎任何帮助和想法! 干杯!

【问题讨论】:

    标签: unity3d unity5 networkmanager unity-ui


    【解决方案1】:

    基本上,据我所知,您首先需要一个控制器(服务器端)来保持分数。 然后通过 Syncvar 和 RPC,您可以将您需要的分数传播给客户端。 您可以选择其中的逻辑,例如,您可以在每次得分时使用委托(这将取决于您的游戏),并同步变量。

    https://docs.unity3d.com/Manual/UNetActions.html

    【讨论】:

      【解决方案2】:

      不知道你的情况是什么?但是我可以建议使用 Socket 在客户端和服务器之间传输数据吗?从那里可以向对手显示每一方的得分。 通过https://docs.microsoft.com/en-us/dotnet/api/system.net.sockets.socket?view=net-5.0

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-12-31
        • 2017-11-11
        • 1970-01-01
        • 2019-01-19
        • 2019-08-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多