//Aqui tenemos el metodo revolver con el que se barajea la lista miBaraja //Hacemos un ciclo for del 0 al 51 que recorre cada carta de la lista //Cada carta que va recorriendo el ciclo se guarda en una variable temporal(tmp) luego se elije una de las 52 cartas al azar //Y la carta seleccionada a azar se guarda donde estuvo la carta que va recorriendo el indice //Por ultimo la variable tmp se guarda donde solia estar la variable que seleccionamos de manera aleatoria public void Revolver() { for (int i = 0; i < miBaraja.Count; i++) { Cartas tmp = miBaraja[i]; int R = r.Next(i, miBaraja.Count); miBaraja[i] = miBaraja[R]; miBaraja[R] = tmp; } }
public Carta ExtraePrimera() { if (NumeroCartas < 1) { throw new Exception("No hay cartas que extraer."); } Carta primera = Cartas.First.Value; Cartas.RemoveFirst(); return(primera); }
public void AñadeCarta(Carta carta) { if (Cerrada) { throw new Excepcion("No se pueden añadir cartas, la mano estaba cerrada."); } Cartas.Add(carta); if (Puntos >= PuntosParaCerrarAutomaticamente) { Cierra(); } }
public void Ccreacion() // EN TOTAL SON 52 CARTAS 1 { laBaraja = new List <Cartas>(52); for (int primeras = 0; primeras < 13; primeras++) // EL CONTADOR INICIALIZA EN CERO POR LO CUA ARROGARA 13 ELEMENTOS { tarjeta = new Cartas(); tarjeta.Tipo(primeras, "♥C"); laBaraja.Add(tarjeta); tarjeta = new Cartas(); tarjeta.Tipo(primeras, "♦D"); laBaraja.Add(tarjeta); tarjeta = new Cartas(); tarjeta.Tipo(primeras, "♣T"); laBaraja.Add(tarjeta); tarjeta = new Cartas(); tarjeta.Tipo(primeras, "♠E"); laBaraja.Add(tarjeta); } }
public void Mezcla() { Carta[] cartas = new Carta[Cartas.Count]; Cartas.CopyTo(cartas, 0); Carta aux; Random semilla = new Random(); int posicionAleatoria; for (int i = 0; i < cartas.Length; i++) { posicionAleatoria = semilla.Next(0, cartas.Length); aux = cartas[i]; cartas[i] = cartas[posicionAleatoria]; cartas[posicionAleatoria] = aux; } Cartas = new LinkedList <Carta>(cartas); }
public void Revolver() { for (int contar = 0; contar < laBaraja.Count; contar++) //TENEIENDO LAS 52 CARTAS DE LA BARAJA INICIAMOS A BARAJEAR LLAMADO AL METODO RANDOM (REVOLVER) { Cartas dispersion = laBaraja[contar]; int barajeada = revolver.Next(contar, laBaraja.Count); laBaraja[contar] = laBaraja[barajeada]; laBaraja[barajeada] = dispersion; } Listo = new Stack <Cartas>(); // inicializo la pila // muestro las cartas que seran asignadas foreach (Cartas naipe in laBaraja) { Listo.Push(naipe); } }
//El metodo GenerarBaraja crea una lista de cartas y agrega todas las 52 cartas de blackjack a ella //Lo hace haciendo uso del metodo GenerarCarta de la clase cartas //Usando un simple ciclo del 0 al 12 y mandando a llamar este metodo 4 veces cada ciclo creamos las 52 cartas public void GenerarBaraja() { miBaraja = new List <Cartas>(52); for (int i = 0; i < 13; i++) { card = new Cartas(); card.GenerarCarta(i, "De Treboles"); miBaraja.Add(card); card = new Cartas(); card.GenerarCarta(i, "De Espadas"); miBaraja.Add(card); card = new Cartas(); card.GenerarCarta(i, "De Corazon"); miBaraja.Add(card); card = new Cartas(); card.GenerarCarta(i, "De Diamante"); miBaraja.Add(card); } }
IEnumerator IEnumerable.GetEnumerator() { return(Cartas.GetEnumerator()); }
public IEnumerator <Carta> GetEnumerator() { return(Cartas.GetEnumerator()); }
public void AñadeCarta(Carta carta) { Cartas.AddLast(carta); }