예제 #1
0
        /// <summary>
        /// Metodo para conctarse al servidor
        /// </summary>
        /// <param name="jugador">Jugador que va a conectarse</param>
        public void Conectarse(Jugador jugador)
        {
            bool yaEstaConectado = false;

            try
            {
                foreach (var j in servidor.ObtenerClientes())
                {
                    if (j.Key.nickName == jugador.nickName)
                    {
                        yaEstaConectado = true;
                    }
                }

                if (!yaEstaConectado)
                {
                    servidor.Conectarse(jugador);
                    MostrarVentanaLoby(jugador);
                }
                else
                {
                    string msj3 = this.recurso.GetString("vLoginMsj3");
                    MessageBox.Show(msj3);
                }
            }
            catch (CommunicationException ex)
            {
                string msj2 = this.recurso.GetString("vLoginMsj2" + ex.ToString());
                MessageBox.Show(msj2);
                Application.Current.Shutdown();
            }
        }
예제 #2
0
        private void BotonIngresar(object sender, RoutedEventArgs e)
        {
            Jugador jugador = new Jugador();

            jugador.nickName    = TextoNickName.Text;
            jugador.contrasenia = TextoPassword.Password;

            if (Logearse(jugador))
            {
                servidor?.Conectarse(jugador);
                MostrarVentanaLoby(jugador);
            }
            else
            {
                MessageBox.Show("Usuario o contraseña incorrecta");
            }
        }
예제 #3
0
        /// <summary>
        /// Constructor de la clase
        /// </summary>
        /// <param name="jugadores">Jugadores conectados</param>
        /// <param name="jugador">Jugador actual</param>
        public Lobby(ObservableCollection <Jugador> jugadores, Jugador jugador)
        {
            this.jugador          = jugador;
            WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen;
            InitializeComponent();
            TxtJugador.Text = jugador.nickName;

            contexto = new InstanceContext(this);
            servidor = new ProxyLogin.LoginServiceClient(contexto);

            if (!servidor.BuscarClientePorNombre(jugador.nickName))
            {
                servidor.Conectarse(jugador);
            }

            jugadoresConectados = new ObservableCollection <Jugador>();
            jugadoresConectados = jugadores;
            jugadoresEnLinea.Items.Clear();
            jugadoresEnLinea.ItemsSource = jugadoresConectados;
        }