Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public boolean estQFR(List<Carte> carteMains, JoueurPoker jp) {
- // permet de savoir si As il y a.
- List<Carte> trouve = new ArrayList<Carte>();
- int cpt = 1;
- int j = 0;
- trouve = this.rechercherCarte(carteMains, 14);
- // s'il n'y a pas d'As alors il ne peut y avoir Quinte Flush Royale
- if (trouve.isEmpty()) {
- return false;
- } else {
- // on parcourt en fonction des as.
- for (int i = 0; i < trouve.size(); i++) {
- j = 0;
- //on cherche s'il y a un dix
- while (carteMains.get(j).getValeur() != 10 && j < carteMains.size() - 1) {
- // pour démarrer le comptage des cartes.
- j++;
- }
- // on parcourt donc de j à 6
- while (j < carteMains.size() - 1) {
- // si on est supérieur a 2 soit 3 cartes et que l'on a pas encore 3 de correctes cartes alors on ne pourra plus avoir de Quinte Flush Royale ou si la couleur est incorrecte, alors on ne poursuit pas.
- if ((j > 2 && cpt < 2) || (carteMains.get(j).getCouleur().compareTo(trouve.get(i).getCouleur()) != 0)) {
- break;
- } else {
- if ((trouve.get(i).getCouleur().compareTo(carteMains.get(j).getCouleur()) == 0)
- && (trouve.get(i).getCouleur().compareTo(carteMains.get(j + 1).getCouleur()) == 0)
- && (carteMains.get(j).getValeur() + 1 == carteMains.get(j + 1).getValeur())) {
- cpt++;
- // dès que l'on a 4 cartes alors on sait qu'il y a Quinte Flush Royale. 4 cartes car nous savons qu'il y a déjà un as et on calcule la somme de la main pour pouvoir tester ensuite
- if (cpt == 4) {
- jp.setTypeDeMain(900);
- return true;
- }
- // sinon on reset le compteur.
- } else {
- cpt = 1;
- }
- }
- j++;
- }
- }
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement