Beispiel #1
0
        protected override async Task ProcessPacket(ClientState client, Login packet)
        {
            var account = await _accountRepository.FindByUsername(packet.Username);

            if (account == null || !BCrypt.Net.BCrypt.Verify(packet.Password, account.Password))
            {
                await client.Send(new LoginResult { Result = LoginResultEnum.BadUsernameOrPassword });
            }
            else
            {
                client.Account    = account;
                client.Characters = await _characterRepository.FindByAccountId(account.Id);

                client.Stage = Stage.Characters;
                await client.Send(new LoginResult { Result = LoginResultEnum.Succcess, Characters = client.Characters });
            }
        }