Skip to content

Commit

Permalink
Merge pull request #1 from danydudiot/fusion
Browse files Browse the repository at this point in the history
Fusion des controleurs et des plateau
  • Loading branch information
danydudiot authored Apr 6, 2024
2 parents 00744e6 + bb76d50 commit 5246b20
Show file tree
Hide file tree
Showing 44 changed files with 461 additions and 525 deletions.
4 changes: 2 additions & 2 deletions Document/Iteration2/Iteration2.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ flowchart LR
5. Le système demande au joueur 2
6. Le joueur 2 répond
7. Le système enregistre le nom du joueur 2
8. Le système affiche le plateau ainsi que le nom du joueur qui doit jouer
8. Le système affiche le plateauNim ainsi que le nom du joueur qui doit jouer
9. Le joueur choisi dans quelle colonne il souhaite mettre un jeton
10. Le système vérifie si la partie est gagné
11. Le système affiche le vainqueur et demande si l'utilisateur souhaite refaire une partie ("y" or "n")
Expand Down Expand Up @@ -112,7 +112,7 @@ classDiagram
}
class Plateau {
- byte[][] plateau
- byte[][] plateauNim
- byte[] dernierCoup
+ Plateau ()
Expand Down
30 changes: 15 additions & 15 deletions Document/Iteration3/Iteration3.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ graph LR
8. Le système demande aux joueurs s'ils veulent activer la rotation
9. Le joueur répond
10. Le système enregistre la réponse du joueur
11. Le système affiche le plateau ainsi que le nom du joueur qui doit jouer
11. Le système affiche le plateauNim ainsi que le nom du joueur qui doit jouer
12. Le joueur choisi dans quelle colonne il souhaite mettre un jeton
13. Le système vérifie si la partie est gagné
14. Le système affiche le vainqueur et demande si l'utilisateur souhaite refaire une partie ("y" or "n")
Expand Down Expand Up @@ -169,7 +169,7 @@ graph LR
1. Le système affiche un message d'erreur
2. retour au point 11 du scénario nominal

- 13.c L'utilisateur choisit de faire tourner le plateau
- 13.c L'utilisateur choisit de faire tourner le plateauNim
1. Le système vérifie que l'option est activée
1. Le système affiche un message d'erreur
2. retour au point 11 du scénario nominal
Expand Down Expand Up @@ -208,7 +208,7 @@ classDiagram
# int nombrePartie = 0
# Joueur[] lesjoueurs
# Plateau plateau
# Plateau plateauNim
# Ihm ihm
+ Controleur(Ihm ihm)
Expand Down Expand Up @@ -252,7 +252,7 @@ classDiagram
}
class PlateauP4 {
- byte[][] plateau
- byte[][] plateauNim
- byte[] dernierCoup
+ PlateauP4()
Expand Down Expand Up @@ -339,15 +339,15 @@ public class Controleur{
private void toursDeJeu() {
nombrePartie += 1;
numeroJoueurCourant = 1;
plateau.reset();
plateau.setOption(ihm.demanderOption());
while (!plateau.verifierFin()) {
plateauNim.reset();
plateauNim.setOption(ihm.demanderOption());
while (!plateauNim.verifierFin()) {
tourSuivant();
boolean estCoupCorrect = false;
while (!estCoupCorrect) {
try {
estCoupCorrect = true;
ihm.afficherPlateau(plateau.toString());
ihm.afficherPlateau(plateauNim.toString());
getCoup();
} catch (CoupImpossible | FormatReponseInvalide exception) {
estCoupCorrect = false;
Expand All @@ -371,23 +371,23 @@ public class Controleur{
public class ControleurNim{
public void jouer() {
initJoueur();
plateau = new PlateauNim(ihm.demanderNbTas);
plateauNim = new PlateauNim(ihm.demanderNbTas);
tourDeJeu();
}

protected void getCoup(){
int[] candidate = ihm.demanderCoupNim(getNomJoueurCourant());
plateau.retirerBatonnets(candidate[0], candidate[1]);
plateauNim.retirerBatonnets(candidate[0], candidate[1]);
}

protected void victoire(){
if (!plateau.verifierVictoire()){
if (!plateauNim.verifierVictoire()){
ihm.afficherVictoire(getNomJoueurCourant(), getJoueurCourant().getNbVictoires(), nbParties, true);
} else {
getJoueurCourant().incrementVictoires();
ihm.afficherVictoire(getNomJoueurCourant(), getJoueurCourant().getNbVictoires(), nbParties, false);
}
ihm.afficherPlateau(plateau.toString());
ihm.afficherPlateau(plateauNim.toString());
}
}

Expand All @@ -396,18 +396,18 @@ public class ControleurNim{
public class ControleurP4{
public void jouer() {
initJoueur();
plateau = new PlateauP4();
plateauNim = new PlateauP4();
tourDeJeu();
}

protected void getCoup(){
if (ihm.demanderCoupOuRotation()){
byte candidate = ihm.demanderCoupP4(getNomJoueurCourant());
plateau.placerJeton((byte) (candidate-1), (byte) (numeroJoueurCourant+1));
plateauNim.placerJeton((byte) (candidate-1), (byte) (numeroJoueurCourant+1));
}
else{
boolean candidate = ihm.demanderRotation(getNomJoueurCourant()); //à définir que signifie true gauche ou droite
plateau.rotation(candidate);
plateauNim.rotation(candidate);
}
}
protected void victoire(){
Expand Down
2 changes: 1 addition & 1 deletion Document/Misc/scenario.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ graph LR
4. Le système demande au joueur 2
5. Le joueur 2 répond
6. Le système enregistre le nom du joueur 2
7. Le système affiche le plateau ainsi que le nom du joueur qui doit jouer
7. Le système affiche le plateauNim ainsi que le nom du joueur qui doit jouer
8. Le joueur choisi dans quel colonne il souhaite jouer
9. Le système vérifie si la partie est gagné
10. Le système affiche le vainqueur et demande si l'utilisateur souhaite refaire une partie (y or n)
Expand Down
4 changes: 2 additions & 2 deletions Javadoc/allclasses-index.html
Original file line number Diff line number Diff line change
Expand Up @@ -102,11 +102,11 @@ <h1 title="All Classes and Interfaces" class="title">All Classes and Interfaces<
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="modele/nim/Plateau.html" title="class in modele.nim">Plateau</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Classe représentant un plateau de jeu de Nim</div>
<div class="block">Classe représentant un plateauNim de jeu de Nim</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Classe représentant un plateau de jeu de puissance 4</div>
<div class="block">Classe représentant un plateauNim de jeu de puissance 4</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="modele/nim/Tas.html" title="class in modele.nim">Tas</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
Expand Down
12 changes: 6 additions & 6 deletions Javadoc/controleur/ControleurJeuNim.html
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ <h2>Field Summary</h2>
<div class="block">Numéro du joueur courant, x ∈ [0 ; 1]</div>
</div>
<div class="col-first even-row-color"><code>private <a href="../modele/nim/Plateau.html" title="class in modele.nim">Plateau</a></code></div>
<div class="col-second even-row-color"><code><a href="#plateau" class="member-name-link">plateau</a></code></div>
<div class="col-second even-row-color"><code><a href="#plateauNim" class="member-name-link">plateauNim</a></code></div>
<div class="col-last even-row-color">
<div class="block">Objet Plateau représentant une collection de tas</div>
</div>
Expand Down Expand Up @@ -238,9 +238,9 @@ <h3>lesJoueurs</h3>
</section>
</li>
<li>
<section class="detail" id="plateau">
<h3>plateau</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="../modele/nim/Plateau.html" title="class in modele.nim">Plateau</a></span>&nbsp;<span class="element-name">plateau</span></div>
<section class="detail" id="plateauNim">
<h3>plateauNim</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="../modele/nim/Plateau.html" title="class in modele.nim">Plateau</a></span>&nbsp;<span class="element-name">plateauNim</span></div>
<div class="block">Objet Plateau représentant une collection de tas</div>
</section>
</li>
Expand Down Expand Up @@ -283,7 +283,7 @@ <h2>Method Details</h2>
<h3>jouer</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">jouer</span>()</div>
<div class="block"><p>Initialise une nouvelle partie en demandant le nombre de tas.</p>
<p>Les noms des joueurs, et en créant le plateau de jeu.</p></div>
<p>Les noms des joueurs, et en créant le plateauNim de jeu.</p></div>
</section>
</li>
<li>
Expand All @@ -299,7 +299,7 @@ <h3>commencerPartie</h3>
<h3>toursDeJeu</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">toursDeJeu</span>()</div>
<div class="block"><p>Facilite le déroulement complet d'une série de tours de jeu jusqu'à la fin.</p>
<p>À chaque tour, demande le coup au joueur courant, met à jour le plateau, et gère les erreurs.</p>
<p>À chaque tour, demande le coup au joueur courant, met à jour le plateauNim, et gère les erreurs.</p>
<p>Après la fin du jeu, incrémente les victoires du joueur courant, affiche le résultat,
puis demande si les joueurs veulent jouer encore.</p>
<p>En cas de réponse affirmative, démarre une nouvelle partie ; sinon, termine le programme.</p></div>
Expand Down
18 changes: 9 additions & 9 deletions Javadoc/controleur/ControleurP4.html
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ <h2>Field Summary</h2>
<div class="block">Numéro du joueur courant, x ∈ [0 ; 1]</div>
</div>
<div class="col-first even-row-color"><code>private <a href="../modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></code></div>
<div class="col-second even-row-color"><code><a href="#plateau" class="member-name-link">plateau</a></code></div>
<div class="col-second even-row-color"><code><a href="#plateauNim" class="member-name-link">plateauNim</a></code></div>
<div class="col-last even-row-color">
<div class="block">Objet Plateau représentant la grille de puissance 4</div>
</div>
Expand Down Expand Up @@ -162,7 +162,7 @@ <h2>Method Summary</h2>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#commencerPartie()" class="member-name-link">commencerPartie</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Incrémente le nombre de parties, reset / crée le plateau.</div>
<div class="block">Incrémente le nombre de parties, reset / crée le plateauNim.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#finPartie()" class="member-name-link">finPartie</a>()</code></div>
Expand All @@ -188,7 +188,7 @@ <h2>Method Summary</h2>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#jouer()" class="member-name-link">jouer</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Initialise une nouvelle partie en demandant les noms des joueurs,
et en créant le plateau de jeu.</div>
et en créant le plateauNim de jeu.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toursDeJeu()" class="member-name-link">toursDeJeu</a>()</code></div>
Expand Down Expand Up @@ -239,9 +239,9 @@ <h3>lesJoueurs</h3>
</section>
</li>
<li>
<section class="detail" id="plateau">
<h3>plateau</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="../modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></span>&nbsp;<span class="element-name">plateau</span></div>
<section class="detail" id="plateauNim">
<h3>plateauNim</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="../modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></span>&nbsp;<span class="element-name">plateauNim</span></div>
<div class="block">Objet Plateau représentant la grille de puissance 4</div>
</section>
</li>
Expand Down Expand Up @@ -284,14 +284,14 @@ <h2>Method Details</h2>
<h3>jouer</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">jouer</span>()</div>
<div class="block">Initialise une nouvelle partie en demandant les noms des joueurs,
et en créant le plateau de jeu.</div>
et en créant le plateauNim de jeu.</div>
</section>
</li>
<li>
<section class="detail" id="commencerPartie()">
<h3>commencerPartie</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">commencerPartie</span>()</div>
<div class="block"><p>Incrémente le nombre de parties, reset / crée le plateau.</p>
<div class="block"><p>Incrémente le nombre de parties, reset / crée le plateauNim.</p>
<p>Puis lance la séquence de tours de jeu.</p></div>
</section>
</li>
Expand All @@ -300,7 +300,7 @@ <h3>commencerPartie</h3>
<h3>toursDeJeu</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">toursDeJeu</span>()</div>
<div class="block"><p>Facilite le déroulement complet d'une série de tours de jeu jusqu'à la fin.</p>
<p>À chaque tour, demande le coup au joueur courant, met à jour le plateau, et gère les erreurs.</p>
<p>À chaque tour, demande le coup au joueur courant, met à jour le plateauNim, et gère les erreurs.</p>
<p>Après la fin du jeu, incrémente les victoires du joueur courant, affiche le résultat,
puis demande si les joueurs veulent jouer encore.</p>
<p>En cas de réponse affirmative, démarre une nouvelle partie ; sinon, termine le programme.</p></div>
Expand Down
2 changes: 1 addition & 1 deletion Javadoc/index-files/index-1.html
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ <h2 class="title" id="I:A">A</h2>
</dd>
<dt><a href="../vue/Ihm.html#afficherPlateau(java.lang.String)" class="member-name-link">afficherPlateau(String)</a> - Method in class vue.<a href="../vue/Ihm.html" title="class in vue">Ihm</a></dt>
<dd>
<div class="block">Affiche le plateau passé sous la forme d'une String</div>
<div class="block">Affiche le plateauNim passé sous la forme d'une String</div>
</dd>
<dt><a href="../vue/Ihm.html#afficherVictoire(java.lang.String,int,int,boolean)" class="member-name-link">afficherVictoire(String, int, int, boolean)</a> - Method in class vue.<a href="../vue/Ihm.html" title="class in vue">Ihm</a></dt>
<dd>
Expand Down
12 changes: 6 additions & 6 deletions Javadoc/index-files/index-12.html
Original file line number Diff line number Diff line change
Expand Up @@ -57,25 +57,25 @@ <h2 class="title" id="I:P">P</h2>
<dd>
<div class="block">Permet de placer un jeton dans une colonne</div>
</dd>
<dt><a href="../controleur/ControleurJeuNim.html#plateau" class="member-name-link">plateau</a> - Variable in class controleur.<a href="../controleur/ControleurJeuNim.html" title="class in controleur">ControleurJeuNim</a></dt>
<dt><a href="../controleur/ControleurJeuNim.html#plateauNim" class="member-name-link">plateauNim</a> - Variable in class controleur.<a href="../controleur/ControleurJeuNim.html" title="class in controleur">ControleurJeuNim</a></dt>
<dd>
<div class="block">Objet Plateau représentant une collection de tas</div>
</dd>
<dt><a href="../controleur/ControleurP4.html#plateau" class="member-name-link">plateau</a> - Variable in class controleur.<a href="../controleur/ControleurP4.html" title="class in controleur">ControleurP4</a></dt>
<dt><a href="../controleur/ControleurP4.html#plateauNim" class="member-name-link">plateauNim</a> - Variable in class controleur.<a href="../controleur/ControleurP4.html" title="class in controleur">ControleurP4</a></dt>
<dd>
<div class="block">Objet Plateau représentant la grille de puissance 4</div>
</dd>
<dt><a href="../modele/p4/Plateau.html#plateau" class="member-name-link">plateau</a> - Variable in class modele.p4.<a href="../modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></dt>
<dt><a href="../modele/p4/Plateau.html#plateauNim" class="member-name-link">plateauNim</a> - Variable in class modele.p4.<a href="../modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></dt>
<dd>
<div class="block">Le tableau représentant le plateau de puissance 4</div>
<div class="block">Le tableau représentant le plateauNim de puissance 4</div>
</dd>
<dt><a href="../modele/nim/Plateau.html" class="type-name-link" title="class in modele.nim">Plateau</a> - Class in <a href="../modele/nim/package-summary.html">modele.nim</a></dt>
<dd>
<div class="block">Classe représentant un plateau de jeu de Nim</div>
<div class="block">Classe représentant un plateauNim de jeu de Nim</div>
</dd>
<dt><a href="../modele/p4/Plateau.html" class="type-name-link" title="class in modele.p4">Plateau</a> - Class in <a href="../modele/p4/package-summary.html">modele.p4</a></dt>
<dd>
<div class="block">Classe représentant un plateau de jeu de puissance 4</div>
<div class="block">Classe représentant un plateauNim de jeu de puissance 4</div>
</dd>
<dt><a href="../modele/p4/Plateau.html#%3Cinit%3E()" class="member-name-link">Plateau()</a> - Constructor for class modele.p4.<a href="../modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></dt>
<dd>
Expand Down
6 changes: 3 additions & 3 deletions Javadoc/index-files/index-13.html
Original file line number Diff line number Diff line change
Expand Up @@ -55,19 +55,19 @@ <h2 class="title" id="I:R">R</h2>
<dl class="index">
<dt><a href="../modele/nim/Plateau.html#reset()" class="member-name-link">reset()</a> - Method in class modele.nim.<a href="../modele/nim/Plateau.html" title="class in modele.nim">Plateau</a></dt>
<dd>
<div class="block">Remplit le plateau en créant les tas</div>
<div class="block">Remplit le plateauNim en créant les tas</div>
</dd>
<dt><a href="../modele/p4/Plateau.html#reset()" class="member-name-link">reset()</a> - Method in class modele.p4.<a href="../modele/p4/Plateau.html" title="class in modele.p4">Plateau</a></dt>
<dd>
<div class="block">Remplit le plateau en créant le plateau</div>
<div class="block">Remplit le plateauNim en créant le plateauNim</div>
</dd>
<dt><a href="../modele/nim/Tas.html#retirerBatonnet(int)" class="member-name-link">retirerBatonnet(int)</a> - Method in class modele.nim.<a href="../modele/nim/Tas.html" title="class in modele.nim">Tas</a></dt>
<dd>
<div class="block">Retire un nombre spécifié de bâtonnets du tas.</div>
</dd>
<dt><a href="../modele/nim/Plateau.html#retirerBatonnets(int,int)" class="member-name-link">retirerBatonnets(int, int)</a> - Method in class modele.nim.<a href="../modele/nim/Plateau.html" title="class in modele.nim">Plateau</a></dt>
<dd>
<div class="block">Retire un nombre spécifié de bâtonnets d'un tas spécifié sur le plateau.</div>
<div class="block">Retire un nombre spécifié de bâtonnets d'un tas spécifié sur le plateauNim.</div>
</dd>
</dl>
<a href="index-1.html">A</a>&nbsp;<a href="index-2.html">C</a>&nbsp;<a href="index-3.html">D</a>&nbsp;<a href="index-4.html">E</a>&nbsp;<a href="index-5.html">F</a>&nbsp;<a href="index-6.html">G</a>&nbsp;<a href="index-7.html">I</a>&nbsp;<a href="index-8.html">J</a>&nbsp;<a href="index-9.html">L</a>&nbsp;<a href="index-10.html">M</a>&nbsp;<a href="index-11.html">N</a>&nbsp;<a href="index-12.html">P</a>&nbsp;<a href="index-13.html">R</a>&nbsp;<a href="index-14.html">S</a>&nbsp;<a href="index-15.html">T</a>&nbsp;<a href="index-16.html">V</a>&nbsp;<br><a href="../allclasses-index.html">All&nbsp;Classes&nbsp;and&nbsp;Interfaces</a><span class="vertical-separator">|</span><a href="../allpackages-index.html">All&nbsp;Packages</a><span class="vertical-separator">|</span><a href="../serialized-form.html">Serialized&nbsp;Form</a></main>
Expand Down
Loading

0 comments on commit 5246b20

Please sign in to comment.