package allumettes;

/**
 * Classe représentant les joueurs, caractérisés par
 * un nom et une stratégie de jeu.
 * @author Édouard Lumet
 *
 */
public class Joueur {

	// Attributs
	/** Nom du joueur. */
	private String nom;
	/** Stratégie du joueur. */
	private Strategie strategie;

	/**
	 * Constructeur de la classe Joueur.
	 * @param nom Le nom du joueur
	 * @param strategie La stratégie du joueur
	 */
	public Joueur(String nom, Strategie strategie) {
		this.nom = nom;
		this.strategie = strategie;
	}

	/**
	 * Retourner le nombre d'allumettes pris par le joueur.
	 * @param jeu Le jeu de la partie en cours
	 * @return Le nombre d'allumettes à retirer
	 */
	public int getPrise(Jeu jeu) {
		return strategie.nbAllumettesARetirer(jeu);
	}

	// Accesseurs et modifieurs

	/**
	 * Retourner le nom du joueur.
	 * @return nom Le nom du joueur
	 */
	public String getNom() {
		return nom;
	}

	/**
	 * Retourner la stratégie de jeu du joueur.
	 * @return strategie La stratégie du joueur
	 */
	public Strategie getStrategie() {
		return strategie;
	}

}
