package mejorCombinacion; import java.util.ArrayList; import com.roshka.bootcamp004.mano.*; public class SelectorGanador { ArrayList lista_p_ganadores; int mejor; public SelectorGanador(ArrayList entrada,int mejorTipo){ this.lista_p_ganadores = entrada; this.mejor = mejorTipo; } public Carta[] procesar() { ArrayList respuesta = null; //Cada jugada tiene un proceso diferente if(this.mejor==1) { respuesta = this.casoPoker(); }else if(this.mejor==2) { respuesta = this.casoFull(); }else if(this.mejor == 3) { respuesta = this.casoColorYCartaAlta(); }else if(this.mejor == 4) { respuesta = this.casoEscalera(); }else if(this.mejor == 5) { respuesta = this.casoTrio(); }else if(this.mejor == 6) { respuesta = this.casoParDoble(); }else if(this.mejor == 7) { respuesta = this.casoPar(); }else if(this.mejor == 8){ respuesta = this.casoColorYCartaAlta(); } //Retorna el mazo ganador return respuesta.get(0); } private ArrayList casoPar() { ArrayList temporal = this.lista_p_ganadores; int pos_mejor; ClsOrdena compara = new ClsOrdena(); for(int i = 0;i casoParDoble() { ArrayList temporal = this.lista_p_ganadores; int pos_mejor; ClsOrdena compara = new ClsOrdena(); for(int i = 0;i casoEscalera() { ArrayList temporal = this.lista_p_ganadores; int pos_mejor; ClsOrdena compara = new ClsOrdena(); /* Existen * 1- Cuando es una escalera real (esta es la mejor mano) * 2- Cuando tienes una escalera A 2 3 4 5 (es la peor escalera) * 3- Cualquier otra escalera * */ for(int i = 0;i casoTrio() { ArrayList temporal = this.lista_p_ganadores; //Va a ver tres casos //1-Cuando tiene un trio con A //2-Cuando tiene una A //3-Cuando no tiene A int pos_mejor; ClsOrdena compara = new ClsOrdena(); //Ahora vamos a ordenar la lista de la mejor a la peor jugada for(int i = 0; i casoColorYCartaAlta() { ArrayList temporal = this.lista_p_ganadores; int pos_mejor; ClsOrdena compara = new ClsOrdena(); for(int i = 0;i casoFull() { ArrayList temporal = this.lista_p_ganadores; //Va a ver tres casos //1-Cuando tiene un trio con A //2-Cuando tiene un par de A //3-Cuando no tiene A int pos_mejor; ClsOrdena compara = new ClsOrdena(); //Ahora vamos a ordenar la lista de la mejor a la peor jugada for(int i = 0; i casoPoker() { ArrayList temporal = this.lista_p_ganadores; //Va a ver tres casos //1-Cuando tiene un poker con A //2-Cuando tiene una A //3-Cuando no tiene A int pos_mejor; ClsOrdena compara = new ClsOrdena(); //Ahora vamos a ordenar la lista de la mejor a la peor jugada for(int i = 0; i primerGrupo() { //Almacenamos la lista ArrayList temporal = this.lista_p_ganadores; int pos_mejor; ClsOrdena compara = new ClsOrdena(); //Ahora vamos a ordenar la lista de la mejor a la peor jugada for(int i = 0; i