コード例 #1
0
        protected static int ParseMapS2S(GameDataParser parser, byte[] bytes, int offset, GameDataBase gameDataObj, string fieldName)
        {
            BitConverterUtility.ConvertEndianFrom(bytes, true, offset, 4);
            var count = BitConverter.ToInt32(bytes, offset);

            offset += 4;

            Dictionary <string, string> values = new Dictionary <string, string>(count);

            for (int i = 0; i < count; i++)
            {
                BitConverterUtility.ConvertEndianFrom(bytes, true, offset, 4);
                var key = BitConverter.ToInt32(bytes, offset);
                offset += 4;

                BitConverterUtility.ConvertEndianFrom(bytes, true, offset, 4);
                var value = BitConverter.ToInt32(bytes, offset);
                offset += 4;

                values.Add(parser.m_StringBuffList[key], parser.m_StringBuffList[value]);
            }

            gameDataObj.SetDictionaryS2S(fieldName, values);
            return(offset);
        }