示例#1
0
        private void Form1_Load(object sender, EventArgs e)
        {
            Size = new Size(768, 412);
            constructorTablero = new ConstructorTablero(); //Instanciar el creador de tableros
            string[] personajes = Enum.GetNames(typeof(Personaje.TipoPersonaje));
            NombreTablero = string.Empty;
            Random rnd = new Random();

            for (int i = 0; i < personajes.Length; i++)
            {
                personajes[i] = personajes[i].Replace('_', ' ');
            }

            lstListaTableros.Items.AddRange(constructorTablero.obtenerListaTableros()); //mostrar la lista de tableros
            cmbPersonaje_1.Items.AddRange(personajes);
            cmbPersonaje_2.Items.AddRange(personajes);
            cmbPersonaje_3.Items.AddRange(personajes);
            cmbPersonaje_4.Items.AddRange(personajes);
            cmbPersonaje_5.Items.AddRange(personajes);

            try{
                lstListaTableros.SelectedIndex = 1; //Seleccionar el primero de los tableros de la lista

                //seleccionar automaticamente los tipos de personajes
                cmbPersonaje_1.SelectedIndex = rnd.Next(personajes.Length - 1);
                cmbPersonaje_2.SelectedIndex = rnd.Next(personajes.Length - 1);
                cmbPersonaje_3.SelectedIndex = rnd.Next(personajes.Length - 1);
                cmbPersonaje_4.SelectedIndex = rnd.Next(personajes.Length - 1);
                cmbPersonaje_5.SelectedIndex = rnd.Next(personajes.Length - 1);

                lblIPPartida.Text = ConexionRed.obtenerIpLocal(); //Mostrar la IP de la nueva partida
            }catch (ArgumentOutOfRangeException) {
                Close();
            }
        }
示例#2
0
        private void btnUnirsePartida_Click(object sender, EventArgs e)
        {
            if (!txtDireccionIP.Text.Trim().Equals(string.Empty))
            {
                try {
                    string personaje;

                    personaje                = string.Empty;
                    personajesLocales        = new string[5];
                    btnUnirsePartida.Enabled = false;

                    conexion = new ConexionRed(ConexionRed.ArquitecturaRed.cliente, this, txtDireccionIP.Text);

                    while (NombreTablero.Equals(string.Empty))
                    {
                        ;                                      // Espera a que el servidor mande el nombre del tablero.
                    }
                    while (personajesRemotos == null)
                    {
                        ;                             // Espera por los personajes
                    }
                    tabIniciarJuego.Visible = boxPersonajes.Visible = false;

                    personajesLocales[0] = cmbPersonaje_1.SelectedItem.ToString();
                    personajesLocales[1] = cmbPersonaje_2.SelectedItem.ToString();
                    personajesLocales[2] = cmbPersonaje_3.SelectedItem.ToString();
                    personajesLocales[3] = cmbPersonaje_4.SelectedItem.ToString();
                    personajesLocales[4] = cmbPersonaje_5.SelectedItem.ToString();

                    for (int i = 0; i < personajesLocales.Length; i++)
                    {
                        personaje += personajesLocales[i];

                        if (i < personajesLocales.Length - 1)
                        {
                            personaje += ",";
                        }
                    }

                    conexion.enviarDatos("0;" + personaje);

                    juego = new Juego(this, false);

                    timerPersonajeSeleccionado.Enabled = true;
                }catch {
                    MessageBox.Show("Ocurrio un problema!");
                }
            }
            else
            {
                MessageBox.Show("Debe ingresar una ip no vacia");
            }
        }
示例#3
0
        private void btnIniciarPartida_Click(object sender, EventArgs e)
        {
            try{
                string personaje;

                personaje                 = string.Empty;
                personajesLocales         = new string[5];
                btnIniciarPartida.Text    = "Esperando contrincante ...";
                btnIniciarPartida.Enabled = false;
                NombreTablero             = lstListaTableros.SelectedItem.ToString();

                conexion = new ConexionRed(ConexionRed.ArquitecturaRed.servidor, this, NombreTablero); //esperar conexion del otro jugador

                tabIniciarJuego.Visible = boxPersonajes.Visible = false;

                personajesLocales[0] = cmbPersonaje_1.SelectedItem.ToString();
                personajesLocales[1] = cmbPersonaje_2.SelectedItem.ToString();
                personajesLocales[2] = cmbPersonaje_3.SelectedItem.ToString();
                personajesLocales[3] = cmbPersonaje_4.SelectedItem.ToString();
                personajesLocales[4] = cmbPersonaje_5.SelectedItem.ToString();

                for (int i = 0; i < personajesLocales.Length; i++)
                {
                    personaje += personajesLocales[i];

                    if (i < personajesLocales.Length - 1)
                    {
                        personaje += ",";
                    }
                }

                conexion.enviarDatos("0;" + personaje);

                while (personajesRemotos == null)
                {
                    ;                             // Espera por los personajesRemotos
                }
                juego = new Juego(this, true);

                timerPersonajeSeleccionado.Enabled = true;
            }catch (Exception) {
                MessageBox.Show("Ocurrio un problema!");
            }
        }