Unity网络独立客户端

时间:2015-01-19 00:14:23

标签: c# unity3d network-programming

我无法理解如何分离或区分连接的客户端。我已经完成了许多网络教程中的一个,让你通过统一MasterServer在另一个窗口中移动块。我目前有自己的实现,这是一个大厅,列出了创建的服务器,玩家可以连接到这些服务器,一旦为所有连接的玩家加载一个新的场景。

现在我需要他们轮流行动(基于回合)在那里产生对象"拥有"颜色。类似于检查玩家ID,但我需要一个完整的所有连接ID列表以及检查。

2 个答案:

答案 0 :(得分:0)

你可能想要的是

MasterServer.RequestHostList
MasterServer.PollHostList
HostData.connectedPlayers

MasterServer.RequestHostList请求MasterServer上的主机列表。然后,您可以通过MasterServer.PollHostList访问此列表。

MasterServer.PollHostList返回一个HostData数组。您可以使用此阵列查询连接到每个主机的播放器。

下面链接到Unity API参考上的相应文档。每个链接都有一个很好的使用示例。

MasterServer.RequestHostList
MasterServer.PollHostList

HostData.connectedPlayers

答案 1 :(得分:0)

对于每个连接的客户端,您的服务器应该具有Network的GameObject的一个副本。由客户端实现并且客户端用来向服务器发送信息。

每个对象中的NetworkView的所有者是实例化它们的客户端,您可以在“newtorkView.owner”中找到它。

但是你已经有了单独的GameObjects,这可能足以满足你的需求;他们每个人都有一个不同的客户脚本实例,这样他们就可以在转弯队列中选择一个点,每个点都有不同的颜色。