Exemplo n.º 1
0
        public void Kick(KickPacket kickPacket)
        {
            var servers = WebApiAccess.Instance.Get <List <ChannelInfo> >(WebApiRoute.Channel).Where(s => s.Type == ServerType.WorldServer);
            ServerConfiguration config  = null;
            ConnectedAccount    account = null;

            foreach (var server in servers)
            {
                config  = server.WebApi;
                account = WebApiAccess.Instance.Get <List <ConnectedAccount> >(WebApiRoute.ConnectedAccount, config)
                          .Find(s => s.ConnectedCharacter.Name == kickPacket.Name);
                if (account != null)
                {
                    break;
                }
            }

            if (account == null) //TODO: Handle 404 in WebApi
            {
                Session.SendPacket(new InfoPacket
                {
                    Message = Language.Instance.GetMessageFromKey(LanguageKey.CANT_FIND_CHARACTER, Session.Account.Language)
                });
                return;
            }

            WebApiAccess.Instance.Delete <ConnectedAccount>(WebApiRoute.Session, config, account.ConnectedCharacter.Id);
        }
Exemplo n.º 2
0
 private void client_KickUser(KickPacket packet)
 {
     if (packet.UserGuid == client.User.Guid)
     {
         WriteToLog(packet.TargetMessage);
     }
     else
     {
         WriteToChatWindow(packet.RoomMessage);
     }
 }