private void AtenderServidor() { while (true) { //Recibimos mensaje del servidor byte[] msg2 = new byte[80]; server.Receive(msg2); string msg5 = Encoding.ASCII.GetString(msg2).Split('\0')[0]; //MessageBox.Show("mensaje recibido " + msg5 + nombre + "finmensaje"); string[] trozos = msg5.Split('/'); int codigo = Convert.ToInt32(trozos[0]); string mensaje = trozos[1]; string mensajevuelta; string mensajevuelta2; string mensajecrear; string Nombreconv; switch (codigo) { case 1: // LogIn DelegadoParaMostrar d6 = new DelegadoParaMostrar(VisiblelblCase1); label3.Invoke(d6, new Object[] {}); DelegadoParaMostrar d7 = new DelegadoParaMostrar(VisibleTxtCase1); Fecha.Invoke(d7, new Object[] {}); DelegadoParaMostrar d8 = new DelegadoParaMostrar(VisibleBotonCase1); Ganador.Invoke(d8, new Object[] {}); MessageBox.Show("Estas dentro: " + mensaje); break; case 2: // Edad media de los ganadores con ese color MessageBox.Show("Edad media: " + mensaje); break; case 3: // Ganador en esa fecha MessageBox.Show("El ganador es: " + mensaje); break; case 4: // Tanto por ciento de partidas ganadas MessageBox.Show("Tanto por ciento de partidas ganadas con ese color es: " + mensaje); break; case 5: // listadeconectados //MessageBox.Show("Se ha conectado lista: " + mensaje); string[] partes = Encoding.ASCII.GetString(msg2).Split('/'); string mensajefinal = partes[1].Split('\0')[0]; string[] mensaje2 = mensajefinal.Split('|'); DelegadoParaEscribir dele = new DelegadoParaEscribir(EscribeConectados); dataGridView1.Invoke(dele, new Object[] { mensaje2 }); break; case 6: //Muestra si se ha aceptado la peticion mensajevuelta = trozos[1].Split('\0')[0]; acepta = trozos[2].Split('\0')[0]; DelegadoParaMostrar d9 = new DelegadoParaMostrar(VisiblePanelIf); DelegadoParaEscribir2 d10 = new DelegadoParaEscribir2(EscribeBox2); if ((mensajevuelta == "Acepta") && (acepta != nombre.Text)) { panel2.Invoke(d9, new Object[] {}); textBox2.Invoke(d10, new Object[] { acepta + " acepta la inviacion" }); } else if ((mensajevuelta == "Rechazar") && (acepta != nombre.Text)) { panel2.Invoke(d9, new Object[] { }); textBox2.Invoke(d10, new Object[] { acepta + " rechaza la inviacion" }); } else { MessageBox.Show("Yo no me puedo autoinvitar"); } break; case 7: //Invitar mensajevuelta = trozos[1].Split('\0')[0]; NombreInvitador = trozos[2].Split('\0')[0]; DelegadoParaMostrar d11 = new DelegadoParaMostrar(VisibleCase7); DelegadoParaEscribir2 d12 = new DelegadoParaEscribir2(EscribeBox3); DelegadoParaMostrar d13 = new DelegadoParaMostrar(NoVisiblePanel1); DelegadoParaMostrar d17 = new DelegadoParaMostrar(VisiblePanel); if (mensajevuelta == "Invitado") { tablero.Invoke(d17, new Object[] { }); panel1.Invoke(d11, new Object[] { }); InvitadortextBox3.Invoke(d12, new Object[] { NombreInvitador }); } else { tablero.Invoke(d17, new Object[] { }); panel1.Invoke(d13, new Object[] { }); } break; case 8: // Recibo una frase chat mensajevuelta = trozos[1].Split('\0')[0]; Nombreconv = trozos[2].Split('\0')[0]; DelegadoParaEscribir2 d16 = new DelegadoParaEscribir2(EscribeChat); Chatlbl.Invoke(d16, new Object[] { Chatlbl.Text + Nombreconv + ":" + mensajevuelta + "\n" }); break; case 9: //Mostramos CHAT id = idposible; mensajevuelta = trozos[1].Split('\0')[0]; mensajevuelta2 = trozos[2].Split('\0')[0]; string[] mensajeinvitados = mensajevuelta2.Split('|'); if (mensajevuelta == "crear") { DelegadoParaMostrar d14 = new DelegadoParaMostrar(CrearChatVisible); chatlabel.Invoke(d14, new Object[] { }); DelegadoParaMostrarLabel d18 = new DelegadoParaMostrarLabel(MostrarLabelrojo); nombreRojo.Invoke(d18, new Object[] { mensajeinvitados }); } else { MessageBox.Show("No se ha podido enviar nah :V"); } break; case 10: //Enviamos posibe IDP idposible = Convert.ToInt32(trozos[1].Split('\0')[0]); break; case 11: //Iniciar Partida id = idposible; mensajevuelta = trozos[1].Split('\0')[0]; string[] mensajejugadores = trozos[1].Split('|'); numerojugadores = (mensajejugadores.Length - 1); for (int i = 0; i < (mensajejugadores.Length - 1); i++) { vectorjugadores[i] = mensajejugadores[i + 1]; } vectorposiciones[0] = 130; vectorposiciones[1] = 131; vectorposiciones[2] = 132; vectorposiciones[3] = 133; // Se prepara el inicio de la Partida DelegadoParaMostrarLabel d100 = new DelegadoParaMostrarLabel(MostrarLabels); nombreRojo.Invoke(d100, new Object[] { vectorjugadores }); DelegadoParaMostrar d102 = new DelegadoParaMostrar(InicioPartida); nombreRojo.Invoke(d102, new Object[] {}); DelegadoParaMostrar jug2 = new DelegadoParaMostrar(VisibleParaJugar); button4.Invoke(jug2, new Object[] { }); numeroLbl.Invoke(jug2, new Object[] { }); turno = 0; DelegadoParaEscribir2 jug1 = new DelegadoParaEscribir2(EscribeLabelturno); turnoLbl.Invoke(jug1, new Object[] { vectorjugadores[turno] }); break; case 12: // Recibe los turnos y las posiciones de las fichas con el dado turno = Convert.ToInt32(trozos[1]); DelegadoParaEscribir2 jug12 = new DelegadoParaEscribir2(EscribeLabelturno); turnoLbl.Invoke(jug12, new Object[] { vectorjugadores[turno] }); turno2 = Convert.ToInt32(trozos[2]); mensajevuelta = trozos[3].Split('\0')[0]; string[] mensajeposiciones = trozos[3].Split('|'); for (int i = 0; i < (mensajeposiciones.Length); i++) { vectorposiciones[i] = Convert.ToInt32(mensajeposiciones[i]); } DelegadoParaFicha d21 = new DelegadoParaFicha(MostraFicha); ficharoja.Invoke(d21, new Object[] { vectorposiciones }); break; case 13: // El registro satisfactorio o no y el Borrado de usuarios MessageBox.Show(nombre.Text + ": " + mensaje); break; case 14: //Se recibe el turno y las posiciones de los jugadores al iniciar partida mensajevuelta = trozos[2].Split('\0')[0]; string[] mensajeposiciones2 = trozos[2].Split('|'); for (int i = 0; i < (mensajeposiciones2.Length); i++) { vectorposiciones[i] = Convert.ToInt32(mensajeposiciones2[i]); } DelegadoParaFicha d23 = new DelegadoParaFicha(MostraFicha); ficharoja.Invoke(d23, new Object[] { vectorposiciones }); break; case 15: //FIN PARTIDA MessageBox.Show(nombre.Text + ": " + mensaje); DelegadoParaFinalizar d101 = new DelegadoParaFinalizar(FinPartida); nombreRojo.Invoke(d101, new Object[] {}); break; } } }
private void AtenderServidor() { while (true) { //Recibimos mensaje del servidor byte[] msg2 = new byte[80]; server.Receive(msg2); string[] trozos = Encoding.ASCII.GetString(msg2).Split('/'); int codigo = Convert.ToInt32(trozos[0]); string mensaje = trozos[1].Split('\0')[0]; string mensajevuelta; string Nombreconv; switch (codigo) { case 1: // LogIn DelegadoParaMostrar d6 = new DelegadoParaMostrar(VisiblelblCase1); label3.Invoke(d6, new Object[] {}); DelegadoParaMostrar d7 = new DelegadoParaMostrar(VisibleTxtCase1); Fecha.Invoke(d7, new Object[] {}); DelegadoParaMostrar d8 = new DelegadoParaMostrar(VisibleBotonCase1); Ganador.Invoke(d8, new Object[] {}); MessageBox.Show("Estas dentro: " + mensaje); break; case 2: // Edad media de los ganadores con ese color MessageBox.Show("Edad media: " + mensaje); break; case 3: // Ganador en esa fecha MessageBox.Show("El ganador es: " + mensaje); break; case 4: // Tanto por ciento de partidas ganadas MessageBox.Show("Tanto por ciento de partidas ganadas con ese color es: " + mensaje); break; case 5: // listadeconectados string[] partes = Encoding.ASCII.GetString(msg2).Split('/'); string mensajefinal = partes[1].Split('\0')[0]; string[] mensaje2 = mensajefinal.Split('|'); DelegadoParaEscribir dele = new DelegadoParaEscribir(EscribeConectados); dataGridView1.Invoke(dele, new Object[] { mensaje2 }); break; case 6: //Muestra si se ha aceptado la peticion mensajevuelta = trozos[1].Split('\0')[0]; acepta = trozos[2].Split('\0')[0]; DelegadoParaMostrar d9 = new DelegadoParaMostrar(VisiblePanelIf); DelegadoParaEscribir2 d10 = new DelegadoParaEscribir2(EscribeBox2); if (mensajevuelta == "Acepta") { panel2.Invoke(d9, new Object[] {}); textBox2.Invoke(d10, new Object[] { acepta + " acepta la inviacion" }); } else { panel2.Invoke(d9, new Object[] { }); textBox2.Invoke(d10, new Object[] { acepta + " rechaza la inviacion" }); } break; case 7: //Invitar mensajevuelta = trozos[1].Split('\0')[0]; NombreInvitador = trozos[2].Split('\0')[0]; DelegadoParaMostrar d11 = new DelegadoParaMostrar(VisibleCase7); DelegadoParaEscribir2 d12 = new DelegadoParaEscribir2(EscribeBox3); DelegadoParaMostrar d13 = new DelegadoParaMostrar(NoVisiblePanel1); DelegadoParaMostrar d17 = new DelegadoParaMostrar(VisiblePanel); if (mensajevuelta == "Invitado") { tablero.Invoke(d17, new Object[] { }); panel1.Invoke(d11, new Object[] { }); InvitadortextBox3.Invoke(d12, new Object[] { NombreInvitador }); } else { tablero.Invoke(d17, new Object[] { }); panel1.Invoke(d13, new Object[] { }); } break; case 8: // Recibo una frase chat mensajevuelta = trozos[1].Split('\0')[0]; Nombreconv = trozos[2].Split('\0')[0]; DelegadoParaEscribir2 d16 = new DelegadoParaEscribir2(EscribeChat); Chatlbl.Invoke(d16, new Object[] { Chatlbl.Text + Nombreconv + ":" + mensajevuelta + "\n" }); break; case 9: //Mostramos CHAT id = idposible; mensajevuelta = trozos[1].Split('\0')[0]; if (mensajevuelta == "crear") { DelegadoParaMostrar d14 = new DelegadoParaMostrar(CrearChatVisible); chatlabel.Invoke(d14, new Object[] { }); } else { MessageBox.Show("No se ha podido enviar nah :V"); } break; case 10: //Enviamos posibe IDP idposible = Convert.ToInt32(trozos[1].Split('\0')[0]); break; } } }