} //Método para dibujar las coordenadas alrededor el panelmapa private void panelMapa_Paint(object sender, PaintEventArgs e) { graficosImg = panelMapa.CreateGraphics(); for (int i = 0; i < datos.Length; i++) { for (int j = 0; j < datos[0].Length; j++) { Terreno terreno = obtenerTerreno(int.Parse(datos[i][j])); graficosImg.DrawImage(terreno.Imagen, j * CELL_WIDTH, i * CELL_WIDTH); if (coordenada_InicialXY.X == j && coordenada_InicialXY.Y == i) { graficosImg.DrawImage(banderaIni, coordenada_InicialXY.X * CELL_WIDTH, coordenada_InicialXY.Y * CELL_WIDTH, 20, 20); } if (coordenada_FinalXY.X == j && coordenada_FinalXY.Y == i) { graficosImg.DrawImage(banderaFin, coordenada_FinalXY.X * CELL_WIDTH, coordenada_FinalXY.Y * CELL_WIDTH, 20, 20); } } } foreach (Personaje personaje in personajes) { graficosImg.DrawImage(personaje.Imagen, personaje.CoordenadaX * CELL_WIDTH, personaje.CoordenadaY * CELL_WIDTH, 30, 30); } foreach (Coordenada coordenada in lista_pasos) { graficosImg.DrawString(coordenada.listaFormateada(), fuente2, pintaloDeBlanco, coordenada.CoordenadaX * CELL_WIDTH, coordenada.CoordenadaY * CELL_WIDTH); } } //Se dibujan los terrenos, personaje, coordenada inicial y final y lista de pasos
} //Valida si un terreno ya existe en la lista private void agregarTerrenos(string texto) { int fil = 0; int col = 0; int cod = 0; string[] filas = texto.Split('\n'); if (filas[filas.Length - 1].ToString() == "") //No hay nada en la ultima fila { Array.Resize(ref filas, filas.Length - 1); //Se elimina } fil = filas.Length; datos = new string[fil][]; for (int i = 0; i < fil; i++) { datos[i] = filas[i].Split(','); } col = datos[0].Length; if (validarDatos(fil, col)) { for (int i = 0; i < fil; i++) { for (int j = 0; j < col; j++) { cod = int.Parse(datos[i][j]); if (!existeTerrenoEnLista(cod)) //Si no existe en la lista se agrega { Terreno terreno = new Terreno(); terreno.Codigo = cod; terrenos.Add(terreno); } } } foreach (Terreno terreno in terrenos) //Se agregan terrenos al combobox { cmbCodigo.Items.Add(terreno.Codigo); } cmbCodigo.SelectedIndex = 0; //Poner indice del combobox en el primer item cmbNombre.SelectedIndex = 0; panel1.Show(); //Se muestran los paneles } } //agrega los datos del txt a una matriz e inicializa el panel 1