ClsOrdena.java 1.82 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
package mejorCombinacion;

import com.roshka.bootcamp004.mano.*;

public class ClsOrdena {
	final char valores[] = {'A','2','3','4','5','6','7','8','9','T','J','Q','K'};
	final char palos[] = {'S','C','H','D'};
	
	/**
     * Comprueba si el valor de la otra carta es superior, igual o inferior al valor de
     * la carta actual
     * @param valorE El valor de la otra carta en formato 'char'.
     * @return 0: son iguales, 1: la carta es superior a la otra carta, -1: lo contrario al valor 1
     */
    //Funcion que nos permite comparar con otra carta
    public int compararValor(char valor1,char valor2) {
    	int numValor1 = 0;
		int numValor2 = 0;
		//Buscamos en que posición está cada valor
		//Valor1
		for(int i=0;i<valores.length;i++) {
			if(valor1 == valores[i]) {
				numValor1 = i;
				break;
			}
		}
		//Valor2
		for(int i=0;i<valores.length;i++) {
			if(valor2 == valores[i]) {
				numValor2 = i;
				break;
			}
		}
		//Realizamos la comparación
		if(numValor1 == numValor2) {
			return 0;
		}else if(numValor1 > numValor2) {
			return 1;
		}else {
			return -1;
		}
    }
    /**
     * Retorna un boolean si la otra carta es un paso superior a la carta actual
     * @param otraCarta La otra carta
     * @return Si es o no es cierto
     */
    public boolean esAnterior(Carta carta1,Carta carta2) {
    	int valor1 = 0;
    	int valor2 = 0;
    	//Buscamos la posicion del valor de la otra carta
    	for(int i=0;i<valores.length;i++) {
			if(carta1.obtenerCarta().charAt(0) == valores[i]) {
				valor1 = i;
				break;
			}
		}
    	//Buscamos la posicion del valor de esta carta
    	for(int i=0;i<valores.length;i++) {
			if(carta2.obtenerCarta().charAt(0) == valores[i]) {
				valor2 = i;
				break;
			}
		}
    	//averiguamos si es el siguiente
    	if(valor1 != (valor2+1)) {
    		return false;
    	}
    	return true;
    }
}