conn | 准备就绪的客户端连接。 |
表明客户端连接已准备好进入游戏。
例如,这可以是当客户端进入正在进行的游戏和已完成当前场景的加载时。服务器应该使用适当的处理程序(例如,该处理程序可实例化玩家对象)响应 SYSTEM_READY 事件。
using UnityEngine; using UnityEngine.UI; using UnityEngine.Networking;
//This makes the GameObject a NetworkManager GameObject public class Example : NetworkManager { public bool m_ServerStarted, m_ClientStarted; public Button m_ClientButton;
//Detect when a client connects to the Server public override void OnClientConnect(NetworkConnection connection) { ClientScene.Ready(connection); ClientScene.AddPlayer(0);
m_ClientStarted = true; //Output text to show the connection on the client side Debug.Log("Client Side : Client " + connection.connectionId + " Connected!");
//Register and receive the message on the Client's side (NetworkConnection.Send Example) client.RegisterHandler(MsgType.Ready, ReadyMessage); }
//Use this to receive the message from the Server on the Client's side public void ReadyMessage(NetworkMessage networkMessage) { Debug.Log("Client Ready! "); }
//Detect when a client disconnects from the Server public override void OnClientDisconnect(NetworkConnection connection) { //Change the text to show the connection loss on the client side Debug.Log("Client Side : Client " + connection.connectionId + " Lost!"); m_ClientStarted = false; }
public void ClientButton() { if (!m_ClientStarted) { NetworkServer.Reset(); singleton.StartClient(); m_ClientButton.GetComponentInChildren<Text>().text = "Disconnect"; } else { singleton.StopClient(); } } }