Select Git revision
Carte.java 1.87 KiB
package ch.hepia;
enum COULEUR {
coeur,
carreau,
pique,
trefle
}
public class Carte {
final private COULEUR couleur;
final private int rang;
final private int force;
private static final int NOMBRE_DE_RANGS = 13;
String[][] playingCards = {
{ "🃟", "🂱", "🂲", "🂳", "🂴", "🂵", "🂶", "🂷", "🂸", "🂹", "🂺", "🂻", "🂽", "🂾" },
{ "🃟", "🃁", "🃂", "🃃", "🃄", "🃅", "🃆", "🃇", "🃈", "🃉", "🃊", "🃋", "🃍", "🃎" },
{ "🃟", "🂡", "🂢", "🂣", "🂤", "🂥", "🂦", "🂧", "🂨", "🂩", "🂪", "🂫", "🂭", "🂮" },
{ "🃟", "🃑", "🃒", "🃓", "🃔", "🃕", "🃖", "🃗", "🃘", "🃙", "🃚", "🃛", "🃝", "🃞" }
};
public Carte(COULEUR couleur, int rang) {
if (rang < 0 || rang > NOMBRE_DE_RANGS) {
throw new IllegalArgumentException("Carte invalide : rang incorrect");
}
this.couleur = couleur;
this.rang = rang;
if (rang <= 10) {
this.force = rang;
} else {
this.force = 10;
}
}
public COULEUR getCouleur() {
return this.couleur;
}
public int getRang() {
return this.rang;
}
public int getForce() {
return this.force;
}
public String getNomCouleur() {
String[] NOMS_COULEURS = { "♥", "♦", "♠", "♣" };
return NOMS_COULEURS[couleur.ordinal()];
}
public String getNomRang() {
String[] NOMS_RANGS = { "Joker", "As", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Valet", "Dame", "Roi" };
return NOMS_RANGS[rang];
}
public String getNomComplet() {
if (getRang() == 0) {
return "🃟";
} else {
return playingCards[couleur.ordinal()][rang];
}
}
}