コード例 #1
0
    public static System_GameServerConfigReturnProto GetProto(byte[] buffer, bool isChild = false)
    {
        System_GameServerConfigReturnProto proto = new System_GameServerConfigReturnProto();

        MMO_MemoryStream ms = null;

        if (!isChild)
        {
            ms = GameEntry.Socket.SocketSendMS;
        }
        else
        {
            ms = GameEntry.Pool.DequeueClassObject <MMO_MemoryStream>();
        }
        ms.SetLength(0);
        ms.Write(buffer, 0, buffer.Length);
        ms.Position = 0;

        proto.ConfigCount      = ms.ReadInt();
        proto.ServerConfigList = new List <ConfigItem>();
        for (int i = 0; i < proto.ConfigCount; i++)
        {
            ConfigItem _ServerConfig = new ConfigItem();
            _ServerConfig.ConfigCode = ms.ReadUTF8String();
            _ServerConfig.IsOpen     = ms.ReadBool();
            _ServerConfig.Param      = ms.ReadUTF8String();
            proto.ServerConfigList.Add(_ServerConfig);
        }

        if (isChild)
        {
            GameEntry.Pool.EnqueueClassObject(ms);
        }
        return(proto);
    }
コード例 #2
0
    public static void OnSystem_GameServerConfigReturn(byte[] buffer)
    {
        System_GameServerConfigReturnProto proto = System_GameServerConfigReturnProto.GetProto(buffer);

#if DEBUG_LOG_PROTO
        Debug.Log("<color=#00eaff>接收消息:</color><color=#00ff9c>" + proto.ProtoEnName + " " + proto.ProtoCode + "</color>");
        Debug.Log("<color=#c5e1dc>==>>" + JsonUtility.ToJson(proto) + "</color>");
#endif
    }
コード例 #3
0
    public static System_GameServerConfigReturnProto GetProto(byte[] buffer)
    {
        System_GameServerConfigReturnProto proto = new System_GameServerConfigReturnProto();

        using (MMO_MemoryStream ms = new MMO_MemoryStream(buffer))
        {
            proto.ConfigCount      = ms.ReadInt();
            proto.ServerConfigList = new List <ConfigItem>();
            for (int i = 0; i < proto.ConfigCount; i++)
            {
                ConfigItem _ServerConfig = new ConfigItem();
                _ServerConfig.ConfigCode = ms.ReadUTF8String();
                _ServerConfig.IsOpen     = ms.ReadBool();
                _ServerConfig.Param      = ms.ReadUTF8String();
                proto.ServerConfigList.Add(_ServerConfig);
            }
        }
        return(proto);
    }
コード例 #4
0
    public static System_GameServerConfigReturnProto GetProto(MMO_MemoryStream ms, byte[] buffer)
    {
        System_GameServerConfigReturnProto proto = new System_GameServerConfigReturnProto();

        ms.SetLength(0);
        ms.Write(buffer, 0, buffer.Length);
        ms.Position = 0;

        proto.ConfigCount      = ms.ReadInt();
        proto.ServerConfigList = new List <ConfigItem>();
        for (int i = 0; i < proto.ConfigCount; i++)
        {
            ConfigItem _ServerConfig = new ConfigItem();
            _ServerConfig.ConfigCode = ms.ReadUTF8String();
            _ServerConfig.IsOpen     = ms.ReadBool();
            _ServerConfig.Param      = ms.ReadUTF8String();
            proto.ServerConfigList.Add(_ServerConfig);
        }

        return(proto);
    }