Rajout Javadoc
This commit is contained in:
parent
b9eeb1218b
commit
b49023fd3d
@ -8,36 +8,71 @@ import java.util.Map;
|
|||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import javax.swing.JPanel;
|
import javax.swing.JPanel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* La classe GameContext gère l'état et la configuration de la grille hexagonale dans le jeu.
|
||||||
|
* Elle stocke les tuiles hexagonales, les positions disponibles et l'offset de vue global.
|
||||||
|
* Elle offre des méthodes pour mettre à jour l'offset de vue et redessiner la grille en fonction de cet offset.
|
||||||
|
*/
|
||||||
public class GameContext {
|
public class GameContext {
|
||||||
private Map<Point, HexagonTile> hexagonMap; // Stocke la grille
|
private Map<Point, HexagonTile> hexagonMap; // Stocke la grille
|
||||||
private Set<Point> availablePositions; // Positions libres pour les placeholders
|
private Set<Point> availablePositions; // Positions libres pour les placeholders
|
||||||
private Point offset; // Offset global pour la grille
|
private Point offset; // Offset global pour la grille
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructeur de la classe GameContext.
|
||||||
|
* Initialise la map des tuiles hexagonales, le set des positions disponibles et l'offset de la vue.
|
||||||
|
*/
|
||||||
public GameContext() {
|
public GameContext() {
|
||||||
this.hexagonMap = new HashMap<>();
|
this.hexagonMap = new HashMap<>();
|
||||||
this.availablePositions = new HashSet<>();
|
this.availablePositions = new HashSet<>();
|
||||||
this.offset = new Point(0, 0); // Initialisation de l’offset à (0, 0)
|
this.offset = new Point(0, 0); // Initialisation de l’offset à (0, 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Getters pour la grille, les positions et l'offset
|
/**
|
||||||
|
* Récupère la map des tuiles hexagonales et leurs positions.
|
||||||
|
*
|
||||||
|
* @return une map associant les positions aux instances de tuiles hexagonales
|
||||||
|
*/
|
||||||
public Map<Point, HexagonTile> getHexagonMap() {
|
public Map<Point, HexagonTile> getHexagonMap() {
|
||||||
return hexagonMap;
|
return hexagonMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère les positions disponibles pour le placement des placeholders.
|
||||||
|
*
|
||||||
|
* @return un set de points représentant les positions disponibles
|
||||||
|
*/
|
||||||
public Set<Point> getAvailablePositions() {
|
public Set<Point> getAvailablePositions() {
|
||||||
return availablePositions;
|
return availablePositions;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Récupère l'offset actuel de la vue.
|
||||||
|
*
|
||||||
|
* @return un point représentant l'offset actuel de la vue
|
||||||
|
*/
|
||||||
public Point getOffset() {
|
public Point getOffset() {
|
||||||
return offset;
|
return offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Méthode pour mettre à jour l'offset de la grille
|
/**
|
||||||
|
* Met à jour l'offset de la vue en ajoutant les valeurs spécifiées.
|
||||||
|
*
|
||||||
|
* @param deltaX le décalage horizontal de l'offset
|
||||||
|
* @param deltaY le décalage vertical de l'offset
|
||||||
|
*/
|
||||||
public void updateOffset(int deltaX, int deltaY) {
|
public void updateOffset(int deltaX, int deltaY) {
|
||||||
offset.translate(deltaX, deltaY);
|
offset.translate(deltaX, deltaY);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Ajout de la méthode pour recalculer les positions de la grille en fonction de l'offset
|
|
||||||
|
/**
|
||||||
|
* Recalcule et applique la position de chaque tuile hexagonale en fonction de l'offset de vue.
|
||||||
|
* Actualise l'interface graphique en ajustant les positions des tuiles et en repeignant le panneau.
|
||||||
|
*
|
||||||
|
* @param gridPanel le panneau contenant la grille hexagonale, à redessiner
|
||||||
|
*/
|
||||||
public void repaintGrid(JPanel gridPanel) {
|
public void repaintGrid(JPanel gridPanel) {
|
||||||
for (Map.Entry<Point, HexagonTile> entry : hexagonMap.entrySet()) {
|
for (Map.Entry<Point, HexagonTile> entry : hexagonMap.entrySet()) {
|
||||||
Point position = entry.getKey();
|
Point position = entry.getKey();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user