//SE TERMIAN EL JUEGO private void FinJuego() { int input; while (true) { input = UserIO.ElJuego(EstadoJuego); if (input == 1) { //SE REINICIA TODOS LOS DATOS Cartas.Reiniciar(); Casino.Reset(); Apostador.Reset(); JuegoCiclo(); break; } if (input == 2) { Environment.Exit(0); break; } } }
private void JuegoCiclo() { //SE REALIZA EL CICLO DE JUEGO bool TurnoJugador = true; int input; Random random = new Random(); EstadoJuego = GameStatus.InGame; while (true) { if (TurnoJugador) { Apostador.VMano(); if (Ganador1(Apostador, Casino)) { return; } while (true) { input = UserIO.ElJuego(EstadoJuego); if (input == 1) { Apostador.AskCard(); break; } if (input == 2) { TurnoJugador = false; break; } Apostador.VMano(); } } if (!TurnoJugador) { //SE DETERMINA QUE JUGADOR TIENE LA PUNTUACION GANADORA double rand = random.NextDouble(); if (MaximaPuntuacion - Casino.Score >= MaximaPuntuacion - Cartas.MaximodeCartasDeck || rand >= ((double)Casino.Score - Cartas.MaximodeCartasDeck) / ((double)MaximaPuntuacion - Cartas.MaximodeCartasDeck)) { Casino.AskCard(); if (Ganador1(Casino, Apostador)) { return; } } if (MaximaPuntuacion - Casino.Score < MaximaPuntuacion - Cartas.MaximodeCartasDeck && rand < ((double)Casino.Score - Cartas.MaximodeCartasDeck) / ((double)MaximaPuntuacion - Cartas.MaximodeCartasDeck)) { EstadoJuego = GameStatus.GameEnd; Ganador1(Casino, Apostador); } } } }