ArkaliaCore.Realm.Network.RealmClient.HandleAccount C# (CSharp) Метод

HandleAccount() публичный Метод

public HandleAccount ( string packet ) : void
packet string
Результат void
        public void HandleAccount(string packet)
        {
            string[] data = packet.Split('#');
            string username = data[0];
            string password = data[1].Substring(1);//Sub one, because as a const char '1'
            var account = Database.Tables.AccountTable.GetAccountFromSQL(username);
            if (account != null)
            {
                if (Utilities.Hash.CryptPass(this.EncryptKey, account.Password) == password)
                {
                    this.Account = account;
                    Database.Tables.AccountTable.UpdateLogged(this.Account.Username, 1);
                    this.Send("Ad" + this.Account.Pseudo);
                    this.Send("Ac0");
                    this.Characters = Managers.MultiServerManager.GetCharactersInformations(this.Account);
                    Managers.MultiServerManager.SendServerState(this);
                    this.Send("AlK" + (this.Account.AdminLevel > 0 ? 1 : 0));
                    this.State = RealmState.SERVER_LIST;
                    Utilities.Logger.Infos("Client was logged with the account @'" + username + "'@");
                    lock (Managers.MultiServerManager.ConnectedAccounts)
                    {
                        if (Managers.MultiServerManager.ConnectedAccounts.Contains(account.Username))
                        {
                            Managers.MultiServerManager.Send(new Interop.Crystal.Packets.KickPlayerMessage(account.Username));
                        }
                    }
                }
                else
                {
                    this.Send("AlEx");
                    Utilities.Logger.Error("Wrong password for account @'" + username + "'@");
                }
            }
            else
            {
                this.Send("AlEx");
                Utilities.Logger.Error("Can't found account @'" + username + "'@");
            }
        }