Exemplo n.º 1
0
        public async Task CheckNickHandler(GameSession session, NickCheckReqMessage message)
        {
            var plr = session.Player;

            if (plr == null)
            {
                return;
            }

            var ascii = Config.Instance.Game.NickRestrictions.AsciiOnly;

            if (!await AuthService.IsNickAvailableAsync(message.Nickname))
            {
                await plr.Session.SendAsync(new ServerResultAckMessage(ServerResult.NicknameUnavailable));
            }

            if (!Namecheck.IsNameValid(message.Nickname, true) || ascii && message.Nickname.Any(c => c > 127) ||
                !ascii && message.Nickname.Any(c => c > 255))
            {
                await session.SendAsync(new NickCheckAckMessage(true));

                return;
            }

            await session.SendAsync(new NickCheckAckMessage(false));
        }
Exemplo n.º 2
0
 public async Task CheckNickHandler(GameSession session, NickCheckReqMessage message)
 {
     session.SendAsync(new ServerResultAckMessage(ServerResult.FailedToRequestTask));
     //if (session.Player == null || !string.IsNullOrWhiteSpace(session.Player.Account.Nickname))
     //{
     //    session.SendAsync(new NickCheckAckMessage(true));
     //    return;
     //}
     //
     //Logger.ForAccount(session)
     //    .Information("Checking nickname {nickname}", message.Nickname);
     //
     //var available = await IsNickAvailableAsync(message.Nickname);
     //if (!available)
     //    Logger.ForAccount(session)
     //        .Information("Nickname not available: {nickname}", message.Nickname);
     //
     //session.SendAsync(new NickCheckAckMessage(!available));
 }
Exemplo n.º 3
0
        public async Task CheckNickHandler(GameSession session, NickCheckReqMessage message)
        {
            if (session.Player == null || !string.IsNullOrWhiteSpace(session.Player.Account.Nickname))
            {
                session.CloseAsync();
                return;
            }

            Logger.ForAccount(session)
            .Information("Checking nickname {nickname}", message.Nickname);

            var available = await IsNickAvailableAsync(message.Nickname);

            if (!available)
            {
                Logger.ForAccount(session)
                .Information("Nickname not available: {nickname}", message.Nickname);
            }

            session.SendAsync(new NickCheckAckMessage(!available));
        }
Exemplo n.º 4
0
 public void CheckNickHandler(GameSession session, NickCheckReqMessage message)
 {
     session.SendAsync(new ServerResultAckMessage(ServerResult.FailedToRequestTask));
 }