Exemple #1
0
        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);
        }
Exemple #2
0
        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);
                    }
                }
            }
        }