コード例 #1
0
        public Mano Jugar(Baraja baraja)
        {
            JuegaCartas(2, baraja);
            Console.WriteLine();

            bool juega = true;

            while (juega)
            {
                Console.WriteLine("1.-Jugar\n2.-Mantenerte");
                Console.Write("Opción: ");
                int opcion = int.Parse(Console.ReadLine());
                switch (opcion)
                {
                case 1:
                    JuegaCartas(1, baraja);
                    juega = !mano.Pierde();
                    break;

                case 2:
                    juega = false;
                    break;

                default:
                    Console.WriteLine("Ingrese un valor válido");
                    Console.ReadKey();
                    Console.Clear();
                    break;
                }
            }
            return(mano);
        }
コード例 #2
0
        public void JuegaCartas(int num, Baraja baraja)
        {
            for (int i = 0; i < num; i++)
            {
                mano.Agregar(baraja.ObtenerCarta()); //Para tomar una carta nueva
            }

            Console.WriteLine(this.ToString()); //Lo utilizamos para mostrar el total que hay en Mano
        }
コード例 #3
0
        static void Main(string[] args)
        {
            // MIRA KAREN ASI SE PUEDE TRABAJAR EN GITHUB


            Baraja baraja = new Baraja();
            // CREO EL OBJETO DE LA CLASE PARA MANDAR A LLAMAR A LOS METODOS
            string opcion; // VARIABLE PARA VALIDAR LOS CASOS

            baraja.Ccrear();
            do
            {
                try
                {
                    // CUANDO INICIA EL JUEGO EL PROGRAMA LE PREGUNTA AL USUARIO SI DESEA COMENZAR O SALIR
                    Console.Write("\n\tBLACK JACK 21 \n\tJUEGOS : GANADOS: {0} || PERDIDOS: {1} ", baraja.Victorias, baraja.Perdidas);
                    // COMO TAMBIEN SE MUESTRA EL REGISTRO DE JAGADAS MARCANDO VICTORIA O NO GANADAS
                    Console.Write("\n\t1)COMENZAR || 2)ABANDONAR PARTIDA : ");
                    opcion = Console.ReadLine();

                    switch (opcion) // AQUI SE RECIBE LA OPCION QUE EL USUARIO INGRESO
                    {
                    case "1":
                        // AL COMENZAR EL JUGUEGO LOS PROCESOS LOGICOS COMIENZAN
                        baraja.Ccrear();
                        Console.Write("\tBARAJEADA");
                        baraja.Revolver(); baraja.Revolver();
                        // TANTO EL REVOLVER LA BARAJA COMO LA CREACCION DE ELLA
                        Console.Write("\n\t>>>INICIANDO<<<");
                        // Y ASI SE DA COMIENZO AL JUEGO DONDE SE LE ASIGNAN DOS CARTAS AL USUARIO
                        baraja.Jugar();
                        break;

                    case "2":
                        Console.Write("\n\tSALIR\n");
                        Environment.Exit(0);     //TERMINA EL PROCESO Y PERMITE LA SALIDA DEL PROGRAMA
                        break;

                    default:
                        Console.Write("\a\n\tERROR");
                        break;
                    }
                }
                catch (Exception)
                {
                    Console.Write("\n\t\aERROR REINICIAR");
                }
                Console.Write("\n\t\aREINICIAR (SI || NO): ");
                opcion = Console.ReadLine();
                Console.Clear(); //CORRA LOS DATOS QUE NOS MUESTRAS ANTERIORMENTE
            } while (opcion == "si" || opcion == "SI");
            Console.ReadKey();
        }
コード例 #4
0
        //Aqui tenemos el metodo ComenzarJuego() mandando a llamar este metodo comenzamos el juego
        public void ComenzarJuego()
        {
            int    TieneA    = 0;            //Utilizamos esta variable entera tieneA para detectar cuantos ases que valen 11 tenemos en nuestra mano
            int    total     = 0;            //Variable que utilizamos para sumar los puntos de cada carta que tomemos
            Baraja BlackJack = new Baraja(); //Objeto tipo BlackJack con el que generamos la baraja

            BlackJack.GenerarBaraja();       //Creamos baraja de 52 cartas
            BlackJack.Revolver();            //La revolvemos
            BlackJack.PrepararBaraja();      //Y la preparamos para su uso mandandola a la pila
            do
            {
                Console.WriteLine("Juego de blackjack victorias: {0} derrotas: {1} cartas restantes {2}", victorias, perdidas, BlackJack.BarajaPreparada.Count);
                Console.WriteLine("Para comenzar presione enter");
                Console.ReadKey();
                Console.Clear();
                do
                {
                    MyHand.Add(BlackJack.BarajaPreparada.Pop()); //Aqui sacamos una carta de la pila BarajaPreparada y la agregamos a nuestra mano
                    //Aqui utilizamos una serie de condiciones para sumar los valores de cada carta que vamos jalando
                    if (MyHand[MyHand.Count - 1].Valor > 10)     //Con esta primera condicion basicamente checamos si lo que jale es un As ya que los Ases valen 11
                    {
                        if (total <= 10)                         //Si el total de puntos es menor o igual a 10 le sumamos 11
                        {
                            total  = total + 11;
                            TieneA = TieneA + 1;//despues de sumar un As como 11 indicamos que tenemos un As que vale eso
                        }
                        else//si nuestra moano tiene mas de 10 puntos entonces el As valdra 1
                        {
                            total = total + 1;
                        }
                    }
                    else//si jalamos cualquier cosa que no sea un As simplemente lo sumamos al total
                    {
                        total = total + MyHand[MyHand.Count - 1].Valor;
                        if (total > 21 && TieneA > 0) //pero si al sumarlo nos pasamos del valor y tenemos un As que vale 11
                        {
                            total  = total - 10;      //Hacemos que ese As valga uno restandole 10 al total
                            TieneA = TieneA - 1;      //Y finalmente quitamos el hecho de que tenemos un As
                        }
                    }
                    Console.WriteLine("Total de cartas = {0} Total de puntos = {1}\n", BlackJack.BarajaPreparada.Count, total);
                    Console.WriteLine("Tus cartas actuales son:\n");
                    foreach (var item in MyHand)
                    {
                        Console.WriteLine("   " + item.ID);//Aqui le imprimimos al jugador las cartas que tiene actualmente en su mano
                    }
                    Console.WriteLine("\nPresione enter para tomar otra carta");
                    Console.ReadKey();
                    Console.Clear();
                    //El Juego termina cuando se acaben las cartas de la baraja(pila) o el nuemro de cartas jaladas sean 5 o cuando tus puntos sean mayores a 20
                } while (MyHand.Count < 5 && total < 21 && BlackJack.BarajaPreparada.Count > 0);
                if (total == 21)//Uilizamos estas condiciones para checar si el total de puntos es igual a 21 si lo es marcamos la victoria
                {
                    Console.WriteLine("Victoria! Ganaste el juego");
                    victorias = victorias + 1;
                }
                else
                {
                    Console.WriteLine("Perdiste.... intenta de nuevo");
                    perdidas = perdidas + 1;
                }
                total  = 0;                   //Reiniciamos los puntos a cero para el siguiente juego
                TieneA = 0;
                MyHand = new List <Cartas>(); //Tambien nos desacemos de nuestra mano vieja y creamos una nueva
                Console.ReadKey();
                Console.Clear();
            } while (BlackJack.BarajaPreparada.Count > 0);//Los juegos continuara hasta que se acaben las barajas
            Console.WriteLine("Fin del juego se acabaron las cartas... tu puntuacion fue de:\n {0} victorias y {1} derrotas", victorias, perdidas);
            Console.ReadKey();
        }
コード例 #5
0
ファイル: Game.cs プロジェクト: CesarDSC2/Unidad3
 public Game() //Constructor de la clase
 {
     baraja = new Baraja();
 }