public bool podeColocar(int azulejo, int modelo) { for (int i = 0; i < 5; i++) { if (this.parede[modelo, i]) { if (azulejo == Azulejo.VerCorNaParede(modelo, i)) { return(false); } } } return(true); }
}//Diz quantos pontos a linha vai fazer private bool completaCor(int l, int c) { int cor = Azulejo.VerCorNaParede(l, c); int qtd = 0; //int linhaModelo = 0; for (int i = 0; i < 5; i++) { if (jogador.tabuleiro.parede[i, checaPos(i, cor - 1)]) { qtd++; } } if (qtd == 4) { return(true); } return(false); }
}//Busca Linhas de Modelo incompletas private void listaComprasModelosVazios() { listaCompraColuna = new List <Compra>(); for (int l = 0; l < 5; l++) { Compra MelhorCorLinha = new Compra(); if (jogador.tabuleiro.verificaSeLinhaVazia(l)) { int maisPontos = 0; for (int c = 0; c < 5; c++) { if (!jogador.tabuleiro.parede[l, c]) { int p = checarPontosAzul(l, c); if (p >= 10) { MelhorCorLinha.azulejo = Azulejo.VerCorNaParede(l, c); MelhorCorLinha.modelo = l + 1; MelhorCorLinha.qtd = l + 1; int qtdColuna = MelhorCorLinha.qtd; while (qtdColuna + 3 >= 1) { Compra com = new Compra(); com.azulejo = MelhorCorLinha.azulejo; com.modelo = MelhorCorLinha.modelo; com.qtd = qtdColuna; listaCompraColuna.Add(com); qtdColuna--; } } if (p >= maisPontos) { maisPontos = p; MelhorCorLinha.azulejo = Azulejo.VerCorNaParede(l, c); MelhorCorLinha.modelo = l + 1; MelhorCorLinha.qtd = l + 1; } } } int qtd = MelhorCorLinha.qtd; while (qtd >= 1) { Compra c = new Compra(); c.azulejo = MelhorCorLinha.azulejo; c.modelo = MelhorCorLinha.modelo; c.qtd = qtd; listaCompras.Add(c); qtd--; } Invoke((MethodInvoker) delegate { textBox1.Text += Azulejo.LembraCor(MelhorCorLinha.azulejo, false) + " modelo " + (l + 1).ToString() + "\r\n"; }); } } }//Busca a melhor cor pra cada linha de modelo vazia