Fin MAJ Javadoc dossier Puissance4

This commit is contained in:
dagorne 2022-11-17 09:49:52 +01:00
parent d97c0b9e2d
commit c3711f917f
7 changed files with 80 additions and 14 deletions

View File

@ -25,6 +25,11 @@ public class ColorChooserListener implements ChangeListener {
this.player = player;
}
/**
* Couleur du pion du joueur change en fonction de la couleur sélectionnée
* @param e
* @see #ColorChooserListener(JComponent, int)
*/
@Override
public void stateChanged(ChangeEvent e) {
if(e.getSource() instanceof ColorSelectionModel) {

View File

@ -9,10 +9,21 @@ public class ResetGame implements ActionListener {
*/
private Puissance4Controller controller;
/**
* Création du listener du bouton reset
* @param p
*/
public ResetGame(Puissance4Controller p){
this.controller = p;
}
/**
* Appelle la fonction ResetGame
* @param e
* @see #ResetGame(Puissance4Controller)
*/
@Override
public void actionPerformed(ActionEvent e) {
this.controller.reset();

View File

@ -6,9 +6,20 @@ package fr.iutfbleau.projetAgile.Puissance4.Event;
public class PlayerEvent {
private int J;
/**
* Créer un évènement
* @param j0
*/
public PlayerEvent(int j0){
this.J=j0;
}
/**
* Retourne le joueur
* @return le joueur
*/
public int getJ() {
return J;
}

View File

@ -23,6 +23,7 @@ public class GrilleModel extends AbstractGridInitiater{
private int playerThreeScore;
private LinkedList<Integer> playersList;
private int playerNumber;
/**
* Crée le modèle et l'initialise avec des cases vides
* @param playerNumber le nombre de joueurs
@ -59,6 +60,9 @@ public class GrilleModel extends AbstractGridInitiater{
this.setPartyStatus(GameStatus.PLAYING);
}
/**
* Remet la liste des joueurs dans l'ordre d'origine
*/
private void resetList() {
this.playersList.clear();
this.playersList.add(Constants.PLAYER_ONE);
@ -68,6 +72,11 @@ public class GrilleModel extends AbstractGridInitiater{
}
}
/**
* Ajoute un pion dans la grille
* @param column colonne de la grille
* @param row ligne de la grille
*/
private void addPiece(int column, int row) {
grille[column][row] = this.playerTurn;
fireGridChanged(column, row, this.playerTurn);
@ -97,6 +106,9 @@ public class GrilleModel extends AbstractGridInitiater{
}
}
/**
* Supprime de la liste le joueur qui vient de gagner
*/
private void removePlayer(){
this.increaseScore();
this.removePlayerPion();
@ -106,6 +118,9 @@ public class GrilleModel extends AbstractGridInitiater{
this.verifyNewWin();
}
/**
* Vérifie si tous les joueurs ont gagnés lors du passage de 3 à 2 joueurs
*/
private void verifyNewWin() {
boolean verifyFirstWin = this.verifyWinAll(this.playerTurn);
this.switchPlayer();
@ -120,6 +135,10 @@ public class GrilleModel extends AbstractGridInitiater{
}
}
/**
* Vérifie la grille en fonction de la couleur du pion
* @param playerColor joueur associé à une couleur
*/
public boolean verifyWinAll(int playerColor) {
for(int y = 0; y < this.column; y++) {
for(int x = this.row - 1; x >= 0; x--) {
@ -173,13 +192,13 @@ public class GrilleModel extends AbstractGridInitiater{
/**
* ReplayersListne true si 4 jetons de la même couleur ou plus sont alignés
* renvoie true si 4 jetons de la même couleur ou plus sont alignés
* @param numColumn La colonne commencer
* @param numRow La ligne commencer
* @param columnOffset l'offset de déplacement vertical
* @param rowOffset l'offset de déplacement horizontal
* @param playerColor La couleur du joueur (entier)
* @return ReplayersListne true si 4 jetons ou plus sont alignés
* @return renvoie true si 4 jetons ou plus sont alignés
*/
private boolean verifyAlignedPiece(int numColumn, int numRow, int columnOffset, int rowOffset, int playerColor) {
int couleur = playerColor;
@ -203,6 +222,9 @@ public class GrilleModel extends AbstractGridInitiater{
return false;
}
/**
* Vérifie s'il y a une égalité
*/
private void verifyDraw() {
if(this.piecePlayed >= this.column * this.row)
this.setPartyStatus(GameStatus.DRAW);
@ -229,7 +251,9 @@ public class GrilleModel extends AbstractGridInitiater{
fireStatusChanged(this.gameStatus, this.playerTurn, this.playerOneScore, this.playerTwoScore, this.playerThreeScore);
}
/**
* Augmente le score du joueur victorieux
*/
private void increaseScore() {
if(this.playerTurn == Constants.PLAYER_ONE)
playerOneScore++;
@ -253,6 +277,11 @@ public class GrilleModel extends AbstractGridInitiater{
}
}
/**
* Fait tomber les pions de la colonne à partir de la ligne sélectionnée
* @param col colonne de la grille
* @param ligne ligne de la grille
*/
private void dropColumn(int col, int ligne){
for(int i=ligne; i>=0; i--){
if(i>0){
@ -267,7 +296,7 @@ public class GrilleModel extends AbstractGridInitiater{
// ----------------------- Getter et Setter --------------------------
/**
* ReplayersListne le playersList du joueur
* renvoie le playersList du joueur
* @return Le playersList du joueur
*/
public int getPlayerTurn() {
@ -275,7 +304,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le tableau d'entier qui représente l'état de la grille
* renvoie le tableau d'entier qui représente l'état de la grille
* @return Le tableau d'entier
*/
public int[][] getTab() {
@ -283,7 +312,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le nombre de colonne de la grille
* renvoie le nombre de colonne de la grille
* @return Le nombre de colonne
*/
public int getColumn() {
@ -291,7 +320,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le nombre de ligne de la grille
* renvoie le nombre de ligne de la grille
* @return Le nombre de ligne
*/
public int getRow() {
@ -299,7 +328,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le nom du joueur 1
* renvoie le nom du joueur 1
* @return Un string du nom du joueur 1
*/
public String getPlayerOneName() {
@ -307,7 +336,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le nom du joueur 2
* renvoie le nom du joueur 2
* @return Un string du nom du joueur 2
*/
public String getPlayerTwoName() {
@ -315,7 +344,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le nom du joueur 3
* renvoie le nom du joueur 3
* @return Un string du nom du joueur 2
*/
public String getPlayerThreeName() {
@ -324,7 +353,7 @@ public class GrilleModel extends AbstractGridInitiater{
/**
* ReplayersListne le score du joueur 1
* renvoie le score du joueur 1
* @return Le score du joueur 1
*/
public int getPlayerOneScore() {
@ -332,7 +361,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le score du joueur 2
* renvoie le score du joueur 2
* @return Le score du joueur 2
*/
public int getPlayerTwoScore() {
@ -340,7 +369,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le score du joueur 3
* renvoie le score du joueur 3
* @return Le score du joueur 3
*/
public int getPlayerThreeScore() {
@ -348,7 +377,7 @@ public class GrilleModel extends AbstractGridInitiater{
}
/**
* ReplayersListne le {@link fr.iutfbleau.projetAgile.Puissance4.Utils.GameStatus status} de la partie
* renvoie le {@link fr.iutfbleau.projetAgile.Puissance4.Utils.GameStatus status} de la partie
* @return Le status de la partie
*/
public GameStatus getGameStatus() {

View File

@ -77,6 +77,9 @@ public class Constants {
}
/**
* Remet les couleurs des pions des joueurs par défaut
*/
public static void resetColor() {
Constants.PLAYER_ONE_COLOR = new Color(252,21,21);
Constants.PLAYER_TWO_COLOR = new Color(241,205,15);

View File

@ -76,6 +76,9 @@ public class Pion extends JComponent{
Pion.HIGHLIGHT_COLOR = c;
}
/**
* Paint le pion
*/
@Override
protected void paintComponent(Graphics g) {
Graphics2D g2 = (Graphics2D) g.create();

View File

@ -233,6 +233,10 @@ public class Puissance4Panel extends JPanel{
this.changeScore(playerOneScore, playerTwoScore, playerThreeScore);
}
/**
* Envoie un popup avec un message de victoire
* @param player joueur
*/
public void playerWin(int player){
switch(player){
case 1: