public int calcularPontos(ValoresDoDado valoresDoDado, int par)
        {
            ordenarDado(valoresDoDado);
            Boolean primeiraVez = true;

            Pontos = 0;
            var dados = valoresDoDado.ValorDados.GroupBy(x => x).Select(a => new { Item = a.Key, Quant = a.Count() }).ToArray();

            foreach (var a in dados)
            {
                if (a.Quant == 2)
                {
                    if (primeiraVez)
                    {
                        primeiraVez = false;
                        continue;
                    }

                    else
                    {
                        Pontos = a.Item * 2 + par;
                        return(Pontos);
                    }
                }
            }
            return(Pontos);
        }
示例#2
0
        public int calcularPontos(ValoresDoDado valoresDoDado)
        {
            ordenarDado(valoresDoDado);
            Pontos = 0;
            Boolean iguais = false;

            for (int i = 0; i < 4; i++)
            {
                if (valoresDoDado.ValorDados[i] == valoresDoDado.ValorDados[i + 1])
                {
                    iguais = true;
                    continue;
                }

                else
                {
                    iguais = false;
                    break;
                }
            }

            if (iguais == true)
            {
                Pontos = 50;
                return(Pontos);
            }

            else
            {
                return(Pontos);
            }
        }
        public int calcularPontos(ValoresDoDado valoresDoDado)
        {
            ordenarDado(valoresDoDado);
            int[] numTeste1 = new int[4] {
                1, 2, 3, 4
            };
            int[] numTeste2 = new int[4] {
                2, 3, 4, 5
            };
            int[] numTeste3 = new int[4] {
                3, 4, 5, 6
            };
            Pontos = 0;

            eliminarRepeticoes(valoresDoDado);

            if (valoresDoDado.ValorDadosFrequencia.Length >= 4)
            {
                if (valoresDoDado.ValorDadosFrequencia[0] == numTeste1[0] &&
                    valoresDoDado.ValorDadosFrequencia[1] == numTeste1[1] &&
                    valoresDoDado.ValorDadosFrequencia[2] == numTeste1[2] &&
                    valoresDoDado.ValorDadosFrequencia[3] == numTeste1[3])
                {
                    return(Pontos = 15);
                }

                else if (valoresDoDado.ValorDadosFrequencia[1] == numTeste1[0] &&
                         valoresDoDado.ValorDadosFrequencia[2] == numTeste1[1] &&
                         valoresDoDado.ValorDadosFrequencia[3] == numTeste1[2] &&
                         valoresDoDado.ValorDadosFrequencia[4] == numTeste1[3])
                {
                    return(Pontos = 15);
                }

                else if (valoresDoDado.ValorDadosFrequencia[1] == numTeste2[0] &&
                         valoresDoDado.ValorDadosFrequencia[2] == numTeste2[1] &&
                         valoresDoDado.ValorDadosFrequencia[3] == numTeste2[2] &&
                         valoresDoDado.ValorDadosFrequencia[4] == numTeste2[3])
                {
                    return(Pontos = 15);
                }

                else if (valoresDoDado.ValorDadosFrequencia[0] == numTeste2[0] &&
                         valoresDoDado.ValorDadosFrequencia[1] == numTeste2[1] &&
                         valoresDoDado.ValorDadosFrequencia[2] == numTeste2[2] &&
                         valoresDoDado.ValorDadosFrequencia[3] == numTeste2[3])
                {
                    return(Pontos = 15);
                }
                else if (valoresDoDado.ValorDadosFrequencia[0] == numTeste3[0] &&
                         valoresDoDado.ValorDadosFrequencia[1] == numTeste3[1] &&
                         valoresDoDado.ValorDadosFrequencia[2] == numTeste3[2] &&
                         valoresDoDado.ValorDadosFrequencia[3] == numTeste3[3])
                {
                    return(Pontos = 15);
                }
            }
            return(Pontos);
        }
示例#4
0
        public int calcularPontos(ValoresDoDado valoresDoDado)
        {
            ordenarDado(valoresDoDado);
            Pontos = 0;

            foreach (var face in valoresDoDado.ValorDados)
            {
                if (face == 6)
                {
                    Pontos += face;
                }
            }
            return(Pontos);
        }
示例#5
0
        public int calcularPontos(ValoresDoDado valoresDoDado)
        {
            ordenarDado(valoresDoDado);
            var CategoriaPar  = new CategoriaPar();
            var CategoriaTrio = new CategoriaTrio();

            Pontos = 0;

            if (CategoriaPar.calcularPontos(valoresDoDado) > 0 && CategoriaTrio.calcularPontos(valoresDoDado) > 0)
            {
                Pontos = CategoriaPar.calcularPontos(valoresDoDado) + CategoriaTrio.calcularPontos(valoresDoDado);
                return(Pontos);
            }

            return(Pontos);
        }
示例#6
0
        public int calcularPontos(ValoresDoDado valoresDoDado)
        {
            ordenarDado(valoresDoDado);
            Pontos = 0;

            var dados = valoresDoDado.ValorDados.GroupBy(x => x).Select(a => new { Item = a.Key, Quant = a.Count() }).ToArray();

            foreach (var a in dados)
            {
                if (a.Quant == 4)
                {
                    Pontos = a.Item * 4;
                    return(Pontos);
                }
            }
            return(Pontos);
        }
示例#7
0
        public string MostrarMelhorJogada(ValoresDoDado valoresDoDado)
        {
            int[] pontos = new int[]
            {
                categoriaAurora.calcularPontos(valoresDoDado),
                categoriaUns.calcularPontos(valoresDoDado),
                categoriaDois.calcularPontos(valoresDoDado),
                categoriaTres.calcularPontos(valoresDoDado),
                categoriaQuatro.calcularPontos(valoresDoDado),
                categoriaCinco.calcularPontos(valoresDoDado),
                categoriaSeis.calcularPontos(valoresDoDado),
                categoriaPar.calcularPontos(valoresDoDado),
                categoriaDoisPares.calcularPontos(valoresDoDado, categoriaPar.calcularPontos(valoresDoDado)),
                categoriaTrio.calcularPontos(valoresDoDado),
                categoriaQuadra.calcularPontos(valoresDoDado),
                categoriaFullHouse.calcularPontos(valoresDoDado),
                categoriaSequenciaMaior.calcularPontos(valoresDoDado),
                categoriaSequenciaMenor.calcularPontos(valoresDoDado)
            };

            Array.Sort(pontos);

            pontosTotal = pontos[13];

            if (pontos[13] == categoriaAurora.calcularPontos(valoresDoDado))
            {
                return("Aurora");
            }

            else if (pontos[13] == categoriaFullHouse.calcularPontos(valoresDoDado))
            {
                return("Full House");
            }

            else if (pontos[13] == categoriaSequenciaMaior.calcularPontos(valoresDoDado))
            {
                return("Sequência maior");
            }

            else if (pontos[13] == categoriaSequenciaMenor.calcularPontos(valoresDoDado))
            {
                return("Sequência menor");
            }

            else if (pontos[13] == categoriaQuadra.calcularPontos(valoresDoDado))
            {
                return("quadra");
            }

            else if (pontos[13] == categoriaTrio.calcularPontos(valoresDoDado))
            {
                return("trio");
            }

            else if (pontos[13] == categoriaDoisPares.calcularPontos(valoresDoDado, categoriaPar.calcularPontos(valoresDoDado)))
            {
                return("dois pares");
            }

            else if (pontos[13] == categoriaPar.calcularPontos(valoresDoDado))
            {
                return("par");
            }

            else if (pontos[13] == categoriaSeis.calcularPontos(valoresDoDado))
            {
                return("seis");
            }

            else if (pontos[13] == categoriaCinco.calcularPontos(valoresDoDado))
            {
                return("cinco");
            }

            else if (pontos[13] == categoriaQuatro.calcularPontos(valoresDoDado))
            {
                return("quatro");
            }

            else if (pontos[13] == categoriaTres.calcularPontos(valoresDoDado))
            {
                return("três");
            }

            else if (pontos[13] == categoriaDois.calcularPontos(valoresDoDado))
            {
                return("dois");
            }

            else if (pontos[13] == categoriaUns.calcularPontos(valoresDoDado))
            {
                return("uns");
            }
            return(null);
        }
示例#8
0
        public int categoriaSelecionada(int comboBox1, ValoresDoDado valoresDoDado)
        {
            if (comboBox1 == 1)
            {
                categoriaAurora.calcularPontos(valoresDoDado);
                return(categoriaAurora.Pontos);
            }

            else if (comboBox1 == 2)
            {
                categoriaFullHouse.calcularPontos(valoresDoDado);
                return(categoriaFullHouse.Pontos);
            }

            else if (comboBox1 == 3)
            {
                categoriaSequenciaMaior.calcularPontos(valoresDoDado);
                return(categoriaSequenciaMaior.Pontos);
            }

            else if (comboBox1 == 4)
            {
                categoriaSequenciaMenor.calcularPontos(valoresDoDado);
                return(categoriaSequenciaMenor.Pontos);
            }


            else if (comboBox1 == 5)
            {
                categoriaQuadra.calcularPontos(valoresDoDado);
                return(categoriaQuadra.Pontos);
            }


            else if (comboBox1 == 6)
            {
                categoriaTrio.calcularPontos(valoresDoDado);
                return(categoriaTrio.Pontos);
            }


            else if (comboBox1 == 7)
            {
                categoriaDoisPares.calcularPontos(valoresDoDado, categoriaPar.calcularPontos(valoresDoDado));
                return(categoriaDoisPares.Pontos);
            }


            else if (comboBox1 == 8)
            {
                categoriaPar.calcularPontos(valoresDoDado);
                return(categoriaPar.Pontos);
            }


            else if (comboBox1 == 9)
            {
                categoriaSeis.calcularPontos(valoresDoDado);
                return(categoriaSeis.Pontos);
            }


            else if (comboBox1 == 10)
            {
                categoriaCinco.calcularPontos(valoresDoDado);
                return(categoriaCinco.Pontos);
            }


            else if (comboBox1 == 11)
            {
                categoriaQuatro.calcularPontos(valoresDoDado);
                return(categoriaQuatro.Pontos);
            }


            else if (comboBox1 == 12)
            {
                categoriaTres.calcularPontos(valoresDoDado);
                return(categoriaTres.Pontos);
            }


            else if (comboBox1 == 13)
            {
                categoriaDois.calcularPontos(valoresDoDado);
                return(categoriaDois.Pontos);
            }

            else if (comboBox1 == 14)
            {
                categoriaUns.calcularPontos(valoresDoDado);
                return(categoriaUns.Pontos);
            }

            return(0);
        }
示例#9
0
 protected void eliminarRepeticoes(ValoresDoDado valoresDoDado)
 {
     valoresDoDado.ValorDadosFrequencia = valoresDoDado.ValorDadosFrequencia.Distinct().ToArray();
 }
示例#10
0
 protected void ordenarDado(ValoresDoDado valoresDoDado)
 {
     Array.Sort(valoresDoDado.ValorDados);
     Array.Sort(valoresDoDado.ValorDadosFrequencia);
 }