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); }