/// <summary> /// Realiza el proceso para que el usuario abandone la partida. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Bt_Abandonar_Click(object sender, RoutedEventArgs e) { try { Jugador.Estadisticas.Puntos = Convert.ToInt16(Jugador.Estadisticas.Puntos - 200); clienteJugador.ModificarEstadisticas(Jugador.NombreUsuario, Jugador.Estadisticas.Puntos, Jugador.Estadisticas.Victorias); clientePartida.SalirPartidaEnJuego(Jugador, PartidaEnJuego.Nombre); clienteChat.EnviarMensajePartida("", PartidaEnJuego.Nombre, 5); clienteChat.SalirChatPartida(PartidaEnJuego.Nombre); } catch (CommunicationException) { EnviarMensajeError(); } cerrar = false; this.Close(); }
/// <summary> /// Método que cierra la ventana y saca al jugador del juego. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) { if (cerrar) { try { if (clienteJugador.ModificarEstadisticas(jugador.NombreUsuario, jugador.Estadisticas.Puntos, jugador.Estadisticas.Victorias)) { clienteJugador.SalirDelJuego(jugador); MainWindow mainWindow = new MainWindow(); mainWindow.Show(); validarConectadoMenu.Stop(); } else { e.Cancel = true; MessageBox.Show(Properties.Resources.mb_ConexionBD2, Properties.Resources.mb_Alerta); } } catch (CommunicationException) { e.Cancel = true; MessageBox.Show(Properties.Resources.mb_ConexionServidor2, Properties.Resources.mb_Alerta); } } }