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.Graphics;
/**
* Classe ScoreDisplay, utilisée pour afficher le score du joueur à l'écran.
*
* @version 1.0
* @author Lenny FOULOU
*/
public class ScoreDisplay {
private int score;
private Font font;
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) {
this.font = font;
this.x = x;
this.y = y;
}
/**
* Met à jour le score à afficher.
*
* @param score Le nouveau score à afficher.
*/
public void setScore(int 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) {
this.x = x;
this.y = y;
}
/**
* Dessine le score à l'écran.
*
* @param g L'objet Graphics utilisé pour dessiner.
*/
public void draw(Graphics g) {
g.setFont(font);
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 {
private List<Pocket> pockets;
private int currentScore;
/**
* Constructeur de la classe ScoreManager.
* Initialise les poches et le score à 0.
*/
public ScoreManager() {
pockets = new ArrayList<>();
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) {
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 biome The biome to match.
* @return The connected pocket, or null if none found.
* @param tile La tuile à vérifier.
* @param biome Le biome à associer.
* @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) {
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() {
currentScore = 0;
@@ -91,6 +100,12 @@ public class ScoreManager {
}
}
/**
* Obtient le score actuel du jeu.
*
* @return Le score actuel du jeu.
*/
public int getCurrentScore() {
return currentScore;
}