Javadoc du Score

This commit is contained in:
2024-12-09 21:07:35 +01:00
parent 1634c6a4d8
commit bd4d54ecae
2 changed files with 57 additions and 8 deletions

View File

@@ -4,26 +4,60 @@ import java.awt.Color;
import java.awt.Font; import java.awt.Font;
import java.awt.Graphics; import java.awt.Graphics;
/**
* Classe ScoreDisplay, utilisée pour afficher le score du joueur à l'écran.
*
* @version 1.0
* @author Lenny FOULOU
*/
public class ScoreDisplay { public class ScoreDisplay {
private int score; private int score;
private Font font; private Font font;
private int x, y; // Position du texte private int x, y; // Position du texte
/**
* Constructeur de la classe ScoreDisplay.
*
* @param font La police utilisée pour afficher le score.
* @param x La position X où le score sera affiché.
* @param y La position Y où le score sera affiché.
*/
public ScoreDisplay(Font font, int x, int y) { public ScoreDisplay(Font font, int x, int y) {
this.font = font; this.font = font;
this.x = x; this.x = x;
this.y = y; this.y = y;
} }
/**
* Met à jour le score à afficher.
*
* @param score Le nouveau score à afficher.
*/
public void setScore(int score) { public void setScore(int score) {
this.score = score; this.score = score;
} }
/**
* Met à jour la position où le score sera affiché.
*
* @param x La nouvelle position X du score.
* @param y La nouvelle position Y du score.
*/
public void setPosition(int x, int y) { public void setPosition(int x, int y) {
this.x = x; this.x = x;
this.y = y; this.y = y;
} }
/**
* Dessine le score à l'écran.
*
* @param g L'objet Graphics utilisé pour dessiner.
*/
public void draw(Graphics g) { public void draw(Graphics g) {
g.setFont(font); g.setFont(font);
g.setColor(Color.BLACK); g.setColor(Color.BLACK);

View File

@@ -10,21 +10,30 @@ import java.util.Map;
/** /**
* Manages the score of the game, keeping track of biome pockets. * Gère le score du jeu en suivant les poches de biomes et en calculant le score en fonction de la taille de ces poches.
*
* @version 1.0
* @author Lenny FOULOU
*/ */
public class ScoreManager { public class ScoreManager {
private List<Pocket> pockets; private List<Pocket> pockets;
private int currentScore; private int currentScore;
/**
* Constructeur de la classe ScoreManager.
* Initialise les poches et le score à 0.
*/
public ScoreManager() { public ScoreManager() {
pockets = new ArrayList<>(); pockets = new ArrayList<>();
currentScore = 0; currentScore = 0;
} }
/** /**
* Adds a tile to the appropriate pocket or creates a new one if necessary. * Ajoute une tuile à la poche appropriée ou crée une nouvelle poche si nécessaire.
* Le score est recalculé après l'ajout de la tuile.
* *
* @param tile The tile to add. * @param tile La tuile à ajouter.
*/ */
public void addTile(Tile tile) { public void addTile(Tile tile) {
Map<Biome, Pocket> biomeToPocketMap = new HashMap<>(); Map<Biome, Pocket> biomeToPocketMap = new HashMap<>();
@@ -66,11 +75,11 @@ public class ScoreManager {
} }
/** /**
* Finds the pocket associated with the given tile and biome. * Trouve la poche associée à la tuile et au biome donnés.
* *
* @param tile The tile to check. * @param tile La tuile à vérifier.
* @param biome The biome to match. * @param biome Le biome à associer.
* @return The connected pocket, or null if none found. * @return La poche associée à la tuile et au biome, ou null si aucune poche n'est trouvée.
*/ */
private Pocket findPocketForTile(Tile tile, Biome biome) { private Pocket findPocketForTile(Tile tile, Biome biome) {
for (Pocket pocket : pockets) { for (Pocket pocket : pockets) {
@@ -82,7 +91,7 @@ public class ScoreManager {
} }
/** /**
* Recalculates the score based on the current pockets. * Recalcule le score en fonction des poches de biomes actuelles.
*/ */
private void recalculateScore() { private void recalculateScore() {
currentScore = 0; currentScore = 0;
@@ -91,6 +100,12 @@ public class ScoreManager {
} }
} }
/**
* Obtient le score actuel du jeu.
*
* @return Le score actuel du jeu.
*/
public int getCurrentScore() { public int getCurrentScore() {
return currentScore; return currentScore;
} }