public Figura BuscarFigura(int x, int y) { Figura resul = null; int cont = 0; bool flag = false; while (ListaFiguras != null && flag == false) { Figura fig = ListaFiguras[cont]; Ubicacion[] ubi = fig.GetLista(); for (int i = 0; i < ubi.Length; i++) { int ubiX = ubi[i].GetX(); int ubiY = ubi[i].GetY(); if (ubiX == x && ubiY == y) { resul = fig; flag = true; break; } } cont++; } return(resul); }
public bool VerificarFigura(int [,] tablero, int num, int coordenadaX, int coordenadaY) { Figura fig = BuscarFigura(coordenadaX, coordenadaY); Ubicacion[] listaPosiciones = fig.GetLista(); //busca posiciones de una figura en el tablero for (int i = 0; i < listaPosiciones.Length; i++) { Ubicacion ubi = listaPosiciones[i]; int x = ubi.GetX(); int y = ubi.GetY(); int numTablero = tablero[x, y]; //busca numero en el tablero en una posicion if (num == numTablero) //verifica si no se repiten numeros en la figura { return(false); } } return(true); }
public void ModificarFigura(int x, int y, int numero, int aumentarOquitar) //1 = aumentar , 2 = quitar { int cont = 0; bool flag = false; while (ListaFiguras != null && flag == false) { Figura fig = ListaFiguras[cont]; Ubicacion[] ubi = fig.GetLista(); for (int i = 0; i < ubi.Length; i++) { int ubiX = ubi[i].GetX(); int ubiY = ubi[i].GetY(); if (ubiX == x && ubiY == y) { if ((ListaFiguras[cont].GetOperacion() == 1) && aumentarOquitar == 1) { ListaFiguras[cont].AumentarAcumuladoSum(numero); ListaFiguras[cont].AumentarOcupado(1); } if ((ListaFiguras[cont].GetOperacion() == 1) && aumentarOquitar == 2) { ListaFiguras[cont].DisminuirAcumuladoSum(numero); ListaFiguras[cont].DisminuirOcupado(1); } if ((ListaFiguras[cont].GetOperacion() == 2) && aumentarOquitar == 1) { ListaFiguras[cont].AumentarAcumuladoMul(numero); ListaFiguras[cont].AumentarOcupado(1); } if ((ListaFiguras[cont].GetOperacion() == 2) && aumentarOquitar == 2) { ListaFiguras[cont].DisminuirAcumuladoMul(numero); ListaFiguras[cont].DisminuirOcupado(1); } flag = true; break; } } cont++; } }
public void ImprimirFiguras() { int cont = 0; while (ListaFiguras[cont] != null) { Figura f = ListaFiguras[cont]; string tipoFigura = f.GetTipo(); Ubicacion[] ubicaciones = f.GetLista(); Console.WriteLine("Figura:" + tipoFigura); int cont2 = 0; while (cont2 < ubicaciones.Length) { Ubicacion ubi = ubicaciones[cont2]; string str1 = ubi.GetX().ToString(); string str2 = ubi.GetY().ToString(); Console.WriteLine("Ubicaciones: " + "[" + str1 + "," + str2 + "]"); cont2++; } cont++; } }