예제 #1
0
 public override void FromExpando(dynamic expandoVersion)
 {
     Username = expandoVersion.Username;
     Password = expandoVersion.Password;
     Domain   = expandoVersion.Domain;
     Session  = expandoVersion.Session;
     Reason   = (LoginReason)((byte)expandoVersion.Reason);
 }
예제 #2
0
 public override void FromDict(IDictionary <string, object> expandoVersion)
 {
     Username = (string)expandoVersion["Username"];
     Password = (string)expandoVersion["Password"];
     Domain   = (string)expandoVersion["Domain"];
     Session  = (int)expandoVersion["Session"];
     Reason   = (LoginReason)((byte)expandoVersion["Reason"]);
 }
예제 #3
0
 public override void FromDict(IDictionary<string, object> expandoVersion)
 {
     Username = (string) expandoVersion["Username"];
     Password = (string) expandoVersion["Password"];
     Domain = (string) expandoVersion["Domain"];
     Session = (int) expandoVersion["Session"];
     Reason = (LoginReason)((byte)expandoVersion["Reason"]);
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="netState"></param>
 /// <param name="alrReason"></param>
 internal static void AccountLogin_ReplyRej( NetState netState, LoginReason alrReason )
 {
     netState.Send( new AccountLoginRej( alrReason ) );
 }
예제 #5
0
        /// <summary>
        /// 
        /// </summary>
        internal AccountLoginRej( LoginReason alrReason )
            : base( 0x708, 11 /*6 + 5*/ )
        {
            WriterStream.Write( (ushort)11 /*6 + 5*/ );     // ×ֶδóС
            WriterStream.Write( (ushort)base.PacketID );    // ×ֶαàºÅ
            WriterStream.Write( (ushort)0x00 );             // ×ֶα£Áô
            //////////////////////////////////////////////////////////////////////////


            if ( alrReason == LoginReason.GeneralError )
            {
                WriterStream.Write( (sbyte)0x01 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.NameError )
            {
                WriterStream.Write( (sbyte)0x02 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.PasswordError )
            {
                WriterStream.Write( (sbyte)0x03 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.InUse )
            {
                WriterStream.Write( (sbyte)0x04 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.Blocked )
            {
                WriterStream.Write( (sbyte)0x05 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.TopUpAccount )
            {
                WriterStream.Write( (sbyte)0x06 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.ServerError )
            {
                WriterStream.Write( (sbyte)0x07 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.ServerCapacityFull )
            {
                WriterStream.Write( (sbyte)0x08 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.AccountInvalid )
            {
                WriterStream.Write( (sbyte)0x09 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.LoginFailed )
            {
                WriterStream.Write( (sbyte)0x10 );
                WriterStream.Write( (int)0x0 );
            }
            else if ( alrReason == LoginReason.IPCapacityFull )
            {
                WriterStream.Write( (sbyte)0x11 );
                WriterStream.Write( (int)0x0 );
            }
            else
            {
                WriterStream.Write( (sbyte)0x05 );
                WriterStream.Write( (int)0x0 );
            }
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="netState"></param>
 /// <param name="alrReason"></param>
 internal static void AccountLogin_ReplyRej(NetState netState, LoginReason alrReason)
 {
     netState.Send(new AccountLoginRej(alrReason));
 }
예제 #7
0
        /// <summary>
        ///
        /// </summary>
        internal AccountLoginRej(LoginReason alrReason)
            : base(0x708, 11 /*6 + 5*/)
        {
            WriterStream.Write((ushort)11 /*6 + 5*/);       // ×ֶδóС
            WriterStream.Write((ushort)base.PacketID);      // ×ֶαàºÅ
            WriterStream.Write((ushort)0x00);               // ×ֶα£Áô
            //////////////////////////////////////////////////////////////////////////


            if (alrReason == LoginReason.GeneralError)
            {
                WriterStream.Write((sbyte)0x01);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.NameError)
            {
                WriterStream.Write((sbyte)0x02);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.PasswordError)
            {
                WriterStream.Write((sbyte)0x03);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.InUse)
            {
                WriterStream.Write((sbyte)0x04);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.Blocked)
            {
                WriterStream.Write((sbyte)0x05);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.TopUpAccount)
            {
                WriterStream.Write((sbyte)0x06);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.ServerError)
            {
                WriterStream.Write((sbyte)0x07);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.ServerCapacityFull)
            {
                WriterStream.Write((sbyte)0x08);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.AccountInvalid)
            {
                WriterStream.Write((sbyte)0x09);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.LoginFailed)
            {
                WriterStream.Write((sbyte)0x10);
                WriterStream.Write((int)0x0);
            }
            else if (alrReason == LoginReason.IPCapacityFull)
            {
                WriterStream.Write((sbyte)0x11);
                WriterStream.Write((int)0x0);
            }
            else
            {
                WriterStream.Write((sbyte)0x05);
                WriterStream.Write((int)0x0);
            }
        }