예제 #1
0
        public override void Serialize(IDataWriter writer)
        {
            byte flag1 = 0;

            flag1 = BooleanByteWrapper.SetFlag(flag1, 0, autoconnect);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 1, useCertificate);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 2, useLoginToken);
            writer.WriteByte(flag1);
            version.Serialize(writer);
            writer.WriteUTF(lang);
            writer.WriteVarInt((int)credentials.Count());
            foreach (var entry in credentials)
            {
                writer.WriteSByte(entry);
            }
            writer.WriteShort(serverId);
            writer.WriteVarLong(sessionOptionalSalt);
            var failedAttempts_before = writer.Position;
            var failedAttempts_count  = 0;

            writer.WriteShort(0);
            foreach (var entry in failedAttempts)
            {
                writer.WriteVarShort(entry);
                failedAttempts_count++;
            }
            var failedAttempts_after = writer.Position;

            writer.Seek((int)failedAttempts_before);
            writer.WriteShort((short)failedAttempts_count);
            writer.Seek((int)failedAttempts_after);
        }
예제 #2
0
        public override void Serialize(IDataWriter writer)
        {
            byte flag1 = 0;

            flag1 = BooleanByteWrapper.SetFlag(flag1, 0, autoconnect);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 1, useCertificate);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 2, useLoginToken);
            writer.WriteByte(flag1);
            version.Serialize(writer);
            writer.WriteUTF(lang);
            var credentials_before = writer.Position;
            var credentials_count  = 0;

            writer.WriteUShort(0);
            foreach (var entry in credentials)
            {
                writer.WriteSByte(entry);
                credentials_count++;
            }
            var credentials_after = writer.Position;

            writer.Seek((int)credentials_before);
            writer.WriteUShort((ushort)credentials_count);
            writer.Seek((int)credentials_after);

            writer.WriteShort(serverId);
        }
        public override void Serialize(IDataWriter writer)
        {
            byte flag1 = 0;

            flag1 = BooleanByteWrapper.SetFlag(flag1, 0, autoconnect);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 1, useCertificate);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 2, useLoginToken);
            writer.WriteByte(flag1);
            version.Serialize(writer);
            writer.WriteUTF(lang);
            writer.WriteUShort((ushort)credentials.Length);
            foreach (var entry in credentials)
            {
                writer.WriteSByte(entry);
            }
            writer.WriteShort(serverId);
        }
예제 #4
0
        public override void Serialize(BigEndianWriter writer)
        {
            byte flag1 = 0;

            flag1 = BooleanByteWrapper.SetFlag(flag1, 0, autoconnect);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 1, useCertificate);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 2, useLoginToken);
            writer.WriteByte(flag1);
            version.Serialize(writer);
            writer.WriteUTF(lang);
            writer.WriteVarInt(credentials.Length);
            foreach (var entry in credentials)
            {
                writer.WriteSByte(entry);
            }
            writer.WriteShort(serverId);
            writer.WriteDouble(sessionOptionalSalt);
        }
예제 #5
0
        public void Serialize(IDataWriter writer)
        {
            byte flag1 = 0;

            flag1 = BooleanByteWrapper.SetFlag(flag1, 0, autoconnect);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 1, useCertificate);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 2, useLoginToken);
            writer.WriteByte(flag1);
            version.Serialize(writer);
            writer.WriteUTF(lang);
            writer.WriteUShort((ushort)credentials.Length);
            foreach (var entry in credentials)
            {
                writer.WriteSByte(entry);
            }
            writer.WriteShort(serverId);
            writer.WriteVarLong(sessionOptionalSalt);
            writer.WriteUShort((ushort)failedAttempts.Length);
            foreach (var entry in failedAttempts)
            {
                writer.WriteVarShort((int)entry);
            }
        }
        public override void Serialize(ICustomDataOutput writer)
        {
            byte flag1 = 0;

            flag1 = BooleanByteWrapper.SetFlag(flag1, 0, autoconnect);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 1, useCertificate);
            flag1 = BooleanByteWrapper.SetFlag(flag1, 2, useLoginToken);
            writer.WriteByte(flag1);
            version.Serialize(writer);
            writer.WriteUTF(lang);
            writer.WriteUShort((ushort)credentials.Count());
            foreach (var entry in credentials)
            {
                writer.WriteByte(entry);
            }
            writer.WriteShort(serverId);
            writer.WriteVarLong(sessionOptionalSalt);
            writer.WriteUShort((ushort)failedAttempts.Count());
            foreach (var entry in failedAttempts)
            {
                writer.WriteVarUhShort(entry);
            }
        }