前言
unet客户端和服务端进行消息发送时可以采用上一节中方法,也可以直接用networkReader/Writer类进行发送
1.服务端/客户端注册消息
const short k_MyMessage = 100;
m_Server.RegisterHandler(k_MyMessage, OnServerMessage);//服务端接收到消息时进行处理
2.客户端发送消息`
void SendMessage()
{
NetworkWriter writer = new NetworkWriter(); //定义
writer.StartMessage(k_MyMessage);//(一)中消息类型
writer.Write(42);
writer.Write(“What is the answer”); //写入消息
writer.FinishMessage();
m_Client.SendWriter(writer, 0);
}
3.服务端进行接收
void OnMyMessage(NetworkMessage netmsg)
{
Debug.Log(“Got message, size=” + netmsg.reader.Length);
var someValue = netmsg.reader.ReadInt32();
var someString = netmsg.reader.ReadString();
Debug.Log(“Message value=” + someValue + “ Message string=‘“ + someString + ”’”);
}