private void listaComprasModelos() { for (int i = 0; i < 5; i++) { if (jogador.tabuleiro.verificaSeLinhaPreenchidaNaoCompleta(i))//confere se a linha tá prenchida mas não completa { int qtd = (i + 1) - jogador.tabuleiro.modelo[i].quantidade; while (qtd >= 1) { Compra compra = new Compra(); compra.azulejo = jogador.tabuleiro.modelo[i].id; compra.modelo = i + 1; compra.qtd = qtd; listaCompras.Add(compra); qtd--; } Invoke((MethodInvoker) delegate { textBox1.Text += compra.qtd.ToString() + Azulejo.LembraCor(compra.azulejo, false) + " modelo " + (i + 1).ToString() + "\r\n"; }); } } }//Busca Linhas de Modelo incompletas
}//Recarrega azulejos (REMOVER) private void azulejo_Click(object sender, EventArgs e) { compra = new Compra(); //Instacia o objeto compra PictureBox pcb = (PictureBox)sender; //Recebe a picturebox que mandou o evento //Preence o objeto compra compra.tipo = pcb.AccessibleName.Substring(0, 1); compra.fabrica = Convert.ToInt32(pcb.AccessibleName.Substring(1, 1)); compra.azulejo = Convert.ToInt32(pcb.AccessibleName.Substring(2, 1)); compra.qtd = Convert.ToInt32(pcb.AccessibleName.Substring(3, 1)); string cor = Azulejo.LembraCor(compra.azulejo, compra.qtd > 1); //Pega a cor na função da classe azulejo, essa comparação diz se é plural ou não string azu = "azulejo"; //Pego o plural ou o singular de Azulejos if (compra.qtd > 1) { azu += "s"; } string dx;//Vê se a compra é da fábrica ou do centro if (compra.tipo == "F") { dx = "da fábrica " + compra.fabrica; } else { dx = "do centro"; } lblCompra.Text = "Compra: " + compra.qtd + " " + azu + " " + cor + " " + dx;//Escreve a corrinho de compras na tela }//Clique em um azulejo das fábricas e centro: adiciona o azulejo no carrinho
}//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