diff --git a/out/production/java-e005-poker-02/Carta.class b/out/production/java-e005-poker-02/Carta.class index 7cdf54c..e7ef45a 100644 Binary files a/out/production/java-e005-poker-02/Carta.class and b/out/production/java-e005-poker-02/Carta.class differ diff --git a/out/production/java-e005-poker-02/Juego.class b/out/production/java-e005-poker-02/Juego.class index 7b72631..dd1438e 100644 Binary files a/out/production/java-e005-poker-02/Juego.class and b/out/production/java-e005-poker-02/Juego.class differ diff --git a/out/production/java-e005-poker-02/MyClass.class b/out/production/java-e005-poker-02/MyClass.class index 4ec5bd6..56bc6c6 100644 Binary files a/out/production/java-e005-poker-02/MyClass.class and b/out/production/java-e005-poker-02/MyClass.class differ diff --git a/src/Carta.java b/src/Carta.java index ef4219e..25d0dc2 100644 --- a/src/Carta.java +++ b/src/Carta.java @@ -5,6 +5,8 @@ import java.util.Objects; public class Carta { private String valor; private String palo; + private final int MIN=1; + private final int MAX=4; public Carta() { valorAleatorio(); @@ -40,9 +42,8 @@ public class Carta { public void valorAleatorio(){ int max = 13; - int min = 1; - int range = max - min + 1; - int rand = (int)(Math.random() * range) + min; + int range = max - MIN + 1; + int rand = (int)(Math.random() * range) + MIN; for (int i = 0; i < 1; i++) { if(rand==10){ this.valor="T"; @@ -65,10 +66,8 @@ public class Carta { } public void paloAleatorio(){ - int max = 4; - int min = 1; - int range = max - min + 1; - int rand = (int)(Math.random() * range) + min; + int range = MAX - MIN + 1; + int rand = (int)(Math.random() * range) + MIN; for (int i = 0; i < 1; i++) { if(rand==1){ this.palo="C"; diff --git a/src/Juego.java b/src/Juego.java index f18f7f1..266b303 100644 --- a/src/Juego.java +++ b/src/Juego.java @@ -39,44 +39,35 @@ public class Juego { } public int juegosPosibles(List cartas) { - boolean siguiente = true; if (escaleraColor(cartas)) { - siguiente = false; System.out.println("ESCALERA COLOR"); return 9; } - if (siguiente && poker(cartas)) { - siguiente = false; + if (poker(cartas)) { System.out.println("ESCALERA COLOR"); return 8; } - if (siguiente && full(cartas)) { - siguiente = false; + if (full(cartas)) { System.out.println("FULL"); return 7; } - if (siguiente && escalera(cartas)) { - siguiente = false; + if (escalera(cartas)) { System.out.println("ESCALERA"); return 6; } - if (siguiente && color(cartas)) { - siguiente = false; + if (color(cartas)) { System.out.println("COLOR"); return 5; } - if (siguiente && trio(cartas)) { - siguiente = false; + if (trio(cartas)) { System.out.println("TRIO"); return 4; } - if (siguiente && parDoble(cartas)) { - siguiente = false; + if (parDoble(cartas)) { System.out.println("PAR DOBLE"); return 3; } - if (siguiente && par(cartas)) { - siguiente = false; + if (par(cartas)) { System.out.println("PAR"); return 1; } @@ -263,7 +254,7 @@ public class Juego { } contador += valoresArry[i]; - if (contador == 34 && valoresArry[0] == 1) { + if (contador == 21 && valoresArry[0] == 1) { return true; } } @@ -338,28 +329,21 @@ public class Juego { } public boolean isRepetidos(Carta[] m1, Carta[] m2) { - Carta[] m3 = new Carta[10]; - + Set cartas = new HashSet<>(); int c = 5; - for (int i = 0; i < m3.length; i++) { + for (int i = 0; i < 10; i++) { if (i < 5) { - m3[i] = (m1[i]); + cartas.add(m1[i]); } else if (i > 4) { - m3[i] = (m2[i - c]); + cartas.add(m2[i - c]); } } - List cartas = new ArrayList(Arrays.asList(m3)); - List distinctElementList = cartas.stream() - .distinct() - .collect(Collectors.toList()); - - if (distinctElementList.size() < 10) { + if (cartas.size() < 10) { return false; } return true; } - } diff --git a/src/MyClass.java b/src/MyClass.java index 2e5e252..d59cef4 100644 --- a/src/MyClass.java +++ b/src/MyClass.java @@ -43,16 +43,15 @@ public class MyClass { respuesta = j.isRepetidos(m1,m2); }while (respuesta==false); - jugadas.add(m1); jugadas.add(m2); String ganadores = mc.ganadores(jugadas); System.out.println("\n"+ganadores); System.out.print("Jugada 1 = "); - int valor = j.juegosPosibles(Arrays.asList(m1[0], m1[1] , m1[2] , m1[3] , m1[4] )); + int valor = j.juegosPosibles(Arrays.asList(m1)); System.out.print("Jugada 2 = "); - int valor2 = j.juegosPosibles(Arrays.asList(m2[0], m2[1] , m2[2] , m2[3] , m2[4] )); + int valor2 = j.juegosPosibles(Arrays.asList(m2)); System.out.println("GANADOR JUGADA # "+ j.mano1VsMano2(valor,valor2)); //Si son iguales realiza un desempate