@@ -21,7 +21,7 @@ public abstract class Achetable extends Case {
2121 protected Joueur proprietaire ;
2222
2323 /**
24- * Constructeur pour une case achetable
24+ * Constructeur pour une case achetable avec propriétaire. Le loyer est mis à 0 par défaut.
2525 * @param nom nom de la case
2626 * @param prix le prix de la case
2727 * @param proprietaire le proprietaire de la case
@@ -33,41 +33,70 @@ public Achetable(String nom, int prix, Joueur proprietaire) {
3333 this .proprietaire = proprietaire ;
3434 }
3535
36-
36+ /**
37+ * Constructeur pour une case achetable sans propriétaire. Le loyer est mis à 0 par défaut.
38+ * @param nom le nom de la case
39+ * @param prix le prix de la case
40+ */
3741 public Achetable (String nom , int prix ) {
3842 super (nom );
3943 this .prix = prix ;
4044 this .loyer = 0 ;
4145
4246 }
4347
48+ /**
49+ * Renvoie le prix d'achat de la case.
50+ * @return le prix
51+ */
4452 public int getPrix () {
4553 return prix ;
4654 }
4755
56+ /**
57+ * Renvoie le loyer sur la case.
58+ * @return le loyer
59+ */
4860 public int getLoyer () {
4961 return loyer ;
5062 }
5163
64+ /**
65+ * Renvoie le joueur propriétaire de la case.
66+ * @return le joueur propriétaire
67+ */
5268 public Joueur getProprietaire () {
5369 return proprietaire ;
5470 }
5571
72+ /**
73+ * Définit le prix de la case.
74+ * @param prix le nouveau prix
75+ */
5676 public void setPrix (int prix ) {
5777 this .prix = prix ;
5878 }
5979
80+ /**
81+ * Définit le loyer sur la case.
82+ * @param loyer le nouveau loyer
83+ */
6084 public void setLoyer (int loyer ) {
6185 this .loyer = loyer ;
6286 }
6387
88+ /**
89+ * Définit le propriétaire de la case.
90+ * @param proprietaire le propriétaire de la case.
91+ */
6492 public void setProprietaire (Joueur proprietaire ) {
6593 this .proprietaire = proprietaire ;
6694 }
6795
6896 /**
69- *
70- * @param j
97+ * Permet au joueur d'acheter la case.
98+ * @param j le joueur acheteur
99+ * @throws org.ecn.medev.NoMoreMoney
71100 */
72101 public void acheter (Joueur j ) throws NoMoreMoney {
73102 this .setProprietaire (j );
@@ -78,30 +107,22 @@ public void acheter(Joueur j) throws NoMoreMoney{
78107 }
79108
80109 /**
81- * <h1>CalculLoyer</h1>
82- * La méthode MAJ le prix du loyer lors de l'achat ou de la construction
83- * <p>
84- *
110+ * Calcule le loyer sur la case. Le calcul est fait en fonction du type de case et du nombres de maisons et d'hotels.
85111 * @author Thomas Canal
86- * @version 1.0
87- * @since 2022-11-17
88112 */
89- public void calculLoyer ()
90- {
113+ public void calculLoyer () {
91114 int loyer = 0 ;
92115 int a ,b ;
93116
94117 a = 500 ;
95118 b = 100 ;
96119
97120 // est-ce une gare ?
98- if (this instanceof Constructible )
99- {
121+ if (this instanceof Constructible ) {
100122 loyer = a * this .prix * ((Constructible )this ).getNbHotels () + b * this .prix * ((Constructible )this ).getNbMaisons ();
101123 }
102124 // ou un constructible ?
103- else if (this instanceof Gare )
104- {
125+ else if (this instanceof Gare ) {
105126 loyer = 2500 * Plateau .instance .nbGares (this .getProprietaire ());
106127 }
107128
@@ -110,13 +131,17 @@ else if(this instanceof Gare)
110131
111132
112133
134+ /**
135+ * Renvoie une chaine de caractères représentant la case.
136+ * @return une chaine de caractères représentant la case.
137+ */
113138 @ Override
114139 public String toString () {
115- String achetableString = getNom () + "(cout : " + getPrix () + " )" ;
116- if (getProprietaire () == null ) {
140+ String achetableString = this . getNom () + "(cout : " + this . getPrix () + " )" ;
141+ if (this . getProprietaire () == null ) {
117142 return achetableString + " - Sans proprietaire" ;
118143 } else {
119- return achetableString + " - Proprietaire : " + getProprietaire () + ", loyer: " + getLoyer ();
144+ return achetableString + " - Proprietaire : " + this . getProprietaire () + ", loyer: " + this . getLoyer ();
120145 }
121146 }
122147
0 commit comments