Example #1
0
    /// <summary>
    /// 发送消息
    /// </summary>
    /// <param name="cmd">消息ID</param>
    /// <param name="data">消息内容</param>
    public void SendCmd(Const.CMD cmd, byte[] data)
    {
        var lenArray = BitConverter.GetBytes(data.Length + 2);
        var cmdArray = BitConverter.GetBytes((int)cmd);

        byte[] head     = new byte[] { lenArray[0], lenArray[1], cmdArray[0], cmdArray[1] };
        var    sendData = new byte[6 + data.Length];//6=包头(4)+包尾(2)

        //包头
        Buffer.BlockCopy(head, 0, sendData, 0, 4);
        //包体
        Buffer.BlockCopy(data, 0, sendData, 4 * sizeof(byte), data.Length);
        //包尾
        byte[] tail = new byte[] { 0x0, 0x0 };
        Buffer.BlockCopy(tail, 0, sendData, (4 + data.Length) * sizeof(byte), 2);

        client.Send(sendData, 0, sendData.Length);
    }
Example #2
0
    public static bool loadGCScene = false; //是否加载游戏中心场景

    public static void Send2LoginGate(Const.CMD cmd, byte[] data)
    {
        lgClient.SendCmd(cmd, data);
    }