예제 #1
0
        public override bool doDecode(NetReadBuffer DataIn)
        {
            ushort nCount = DataIn.GetUShort();

            for (int i = 0; i < nCount; i++)
            {
                byte[] buffer = DataIn.GetFixLenBytes();
                if (buffer != null)
                {
                    string PartName = DataIn.GetPerfixString();
                    m_RolePacketDatas.Add(PartName, new NetReadBuffer(buffer));
                }
            }

            // fufeng add: extra info
            byte[] boardBuf = DataIn.GetFixLenBytes();
            if (boardBuf != null)
            {
                string boardName = DataIn.GetPerfixString();
                m_RolePacketDatas.Add(boardName, new NetReadBuffer(boardBuf));
            }

            //music list info
            byte[] musicsBuf = DataIn.GetFixLenBytes();
            if (musicsBuf != null)
            {
                string musicsName = DataIn.GetPerfixString();
                m_RolePacketDatas.Add(musicsName, new NetReadBuffer(musicsBuf));
            }

            byte[] systemSettingBuf = DataIn.GetFixLenBytes();
            if (systemSettingBuf != null)
            {
                string systemName = DataIn.GetPerfixString();
                m_RolePacketDatas.Add(systemName, new NetReadBuffer(systemSettingBuf));
            }

            // mall data
            //byte[] mallDataBuff = DataIn.GetFixLenBytes();
            //if (mallDataBuff != null)
            //{
            //    string mallName = DataIn.GetPerfixString();
            //    m_RolePacketDatas.Add(mallName, new NetReadBuffer(mallDataBuff));
            //}

            // mall commend
            byte[] mallCommendBuff = DataIn.GetFixLenBytes();
            if (mallCommendBuff != null)
            {
                string mallCommendName = DataIn.GetPerfixString();
                m_RolePacketDatas.Add(mallCommendName, new NetReadBuffer(mallCommendBuff));
            }

            byte[] festivalConfigBuf = DataIn.GetFixLenBytes();
            if (festivalConfigBuf != null)
            {
                string festivalName = DataIn.GetPerfixString();
                m_RolePacketDatas.Add(festivalName, new NetReadBuffer(festivalConfigBuf));
            }

            //fufeng new todo: use two msg for the differences
            //非点点乐平台设置Payment
            m_strPayment = DataIn.GetUTF8String();

            m_bSwitchLine = DataIn.GetBool();
            return(true);
        }