public uint GetSerializedSize() { uint num = 0u; if (this.HasAccountLevelInfoTag) { num += 1u; num += 4u; } if (this.HasPrivacyInfoTag) { num += 1u; num += 4u; } if (this.HasParentalControlInfoTag) { num += 1u; num += 4u; } if (this.GameLevelInfoTags.get_Count() > 0) { using (List <ProgramTag> .Enumerator enumerator = this.GameLevelInfoTags.GetEnumerator()) { while (enumerator.MoveNext()) { ProgramTag current = enumerator.get_Current(); num += 1u; uint serializedSize = current.GetSerializedSize(); num += serializedSize + ProtocolParser.SizeOfUInt32(serializedSize); } } } if (this.GameStatusTags.get_Count() > 0) { using (List <ProgramTag> .Enumerator enumerator2 = this.GameStatusTags.GetEnumerator()) { while (enumerator2.MoveNext()) { ProgramTag current2 = enumerator2.get_Current(); num += 1u; uint serializedSize2 = current2.GetSerializedSize(); num += serializedSize2 + ProtocolParser.SizeOfUInt32(serializedSize2); } } } if (this.GameAccountTags.get_Count() > 0) { using (List <RegionTag> .Enumerator enumerator3 = this.GameAccountTags.GetEnumerator()) { while (enumerator3.MoveNext()) { RegionTag current3 = enumerator3.get_Current(); num += 1u; uint serializedSize3 = current3.GetSerializedSize(); num += serializedSize3 + ProtocolParser.SizeOfUInt32(serializedSize3); } } } return(num); }
public static void Serialize(Stream stream, AccountFieldTags instance) { BinaryWriter binaryWriter = new BinaryWriter(stream); if (instance.HasAccountLevelInfoTag) { stream.WriteByte(21); binaryWriter.Write(instance.AccountLevelInfoTag); } if (instance.HasPrivacyInfoTag) { stream.WriteByte(29); binaryWriter.Write(instance.PrivacyInfoTag); } if (instance.HasParentalControlInfoTag) { stream.WriteByte(37); binaryWriter.Write(instance.ParentalControlInfoTag); } if (instance.GameLevelInfoTags.get_Count() > 0) { using (List <ProgramTag> .Enumerator enumerator = instance.GameLevelInfoTags.GetEnumerator()) { while (enumerator.MoveNext()) { ProgramTag current = enumerator.get_Current(); stream.WriteByte(58); ProtocolParser.WriteUInt32(stream, current.GetSerializedSize()); ProgramTag.Serialize(stream, current); } } } if (instance.GameStatusTags.get_Count() > 0) { using (List <ProgramTag> .Enumerator enumerator2 = instance.GameStatusTags.GetEnumerator()) { while (enumerator2.MoveNext()) { ProgramTag current2 = enumerator2.get_Current(); stream.WriteByte(74); ProtocolParser.WriteUInt32(stream, current2.GetSerializedSize()); ProgramTag.Serialize(stream, current2); } } } if (instance.GameAccountTags.get_Count() > 0) { using (List <RegionTag> .Enumerator enumerator3 = instance.GameAccountTags.GetEnumerator()) { while (enumerator3.MoveNext()) { RegionTag current3 = enumerator3.get_Current(); stream.WriteByte(90); ProtocolParser.WriteUInt32(stream, current3.GetSerializedSize()); RegionTag.Serialize(stream, current3); } } } }