Example #1
0
        private string resuelveEmpatePareja(string[] manoJugador1, string[] manoJugador2)
        {
            //Mirar el valor de la pareja
            var cartasParejaJugador1 = getCartasPareja(manoJugador1);
            var cartasParejaJugador2 = getCartasPareja(manoJugador2);

            int valorParejaJugador1 = ManosPokerUtils.getValorNumericoCarta(cartasParejaJugador1[0]);
            int valorParejaJugador2 = ManosPokerUtils.getValorNumericoCarta(cartasParejaJugador2[0]);

            if (valorParejaJugador1 > valorParejaJugador2)
            {
                return("Ganador jugador1 - Pareja");
            }
            else if (valorParejaJugador2 > valorParejaJugador1)
            {
                return("Ganador jugador2 - Pareja");
            }
            //En caso de que la pareja sea igual, comprobar el valor del resto de cartas
            else
            {
                //Ordenamos el resto de cartas por su valor (De mayor a menor)
                var restoCartasJugador1 = ManosPokerUtils.manoStringToTupla(manoJugador1.Except(cartasParejaJugador1).ToArray()).OrderByDescending(c => c.Item1);
                var restoCartasJugador2 = ManosPokerUtils.manoStringToTupla(manoJugador2.Except(cartasParejaJugador2).ToArray()).OrderByDescending(c => c.Item1);

                int valorCartaJugador1, valorCartaJugador2;
                for (int i = 0; i < restoCartasJugador1.Count(); i++)
                {
                    valorCartaJugador1 = restoCartasJugador1.ElementAt(i).Item1;
                    valorCartaJugador2 = restoCartasJugador2.ElementAt(i).Item1;
                    if (valorCartaJugador1 > valorCartaJugador2)
                    {
                        return("Ganador jugador1 - CartaMasAlta : " + ManosPokerUtils.getRepresentacionCarta(valorCartaJugador1) + restoCartasJugador1.ElementAt(i).Item2);
                    }
                    if (valorCartaJugador2 > valorCartaJugador1)
                    {
                        return("Ganador jugador2 - CartaMasAlta : " + ManosPokerUtils.getRepresentacionCarta(valorCartaJugador2) + restoCartasJugador2.ElementAt(i).Item2);
                    }
                }

                return("Empate");
            }
        }
Example #2
0
        private string resuelveEmpateCartaMasAlta(string[] manoJugador1, string[] manoJugador2)
        {
            //Ordenamos cartas por su valor (de mayor a menor)
            var cartasJugador1 = ManosPokerUtils.manoStringToTupla(manoJugador1.ToArray()).OrderByDescending(c => c.Item1);
            var cartasJugador2 = ManosPokerUtils.manoStringToTupla(manoJugador2.ToArray()).OrderByDescending(c => c.Item1);

            int valorCartaJugador1, valorCartaJugador2;

            for (int i = 0; i < cartasJugador1.Count(); i++)
            {
                valorCartaJugador1 = cartasJugador1.ElementAt(i).Item1;
                valorCartaJugador2 = cartasJugador2.ElementAt(i).Item1;
                if (valorCartaJugador1 > valorCartaJugador2)
                {
                    return("Ganador jugador1 - CartaMasAlta : " + ManosPokerUtils.getRepresentacionCarta(valorCartaJugador1) + cartasJugador1.ElementAt(i).Item2);
                }
                if (valorCartaJugador2 > valorCartaJugador1)
                {
                    return("Ganador jugador2 - CartaMasAlta : " + ManosPokerUtils.getRepresentacionCarta(valorCartaJugador2) + cartasJugador2.ElementAt(i).Item2);
                }
            }

            return("Empate");
        }
Example #3
0
        public void getRepresentacionCarta(int valor, string expected)
        {
            string actual = ManosPokerUtils.getRepresentacionCarta(valor);

            Assert.That(actual, Is.EqualTo(expected));
        }