Module ComplementIA

Class GrilleNavaleGraphique

java.lang.Object
logique.GrilleNavale
interfacegraphique.GrilleNavaleGraphique

public class GrilleNavaleGraphique extends GrilleNavale
Couche graphique au-dessus de la logique de la grille. Lorsqu'un navire est ajouté ou qu'un tir est reçu, la grille graphique est colorée afin de refléter l'état courant (vert = navire, rouge = touché, bleu = manqué). Cette classe délègue la logique métier à `GrilleNavale` et se limite à la mise à jour de l'affichage.
  • Constructor Details

    • GrilleNavaleGraphique

      public GrilleNavaleGraphique(int taille)
  • Method Details

    • getGrilleGraphique

      public GrilleGraphique getGrilleGraphique()
      Retourne la grille graphique associée, utilisée par l'interface pour l'affichage et les interactions utilisateur.
    • ajouteNavire

      public boolean ajouteNavire(Navire n)
      Description copied from class: GrilleNavale
      Ajoute un navire à la grille s'il ne dépasse pas les limites, ne chevauche pas un navire existant et ne touche pas (pas de navires adjacents). Retourne vrai si l'ajout a réussi.
      Overrides:
      ajouteNavire in class GrilleNavale
    • recoitTir

      public boolean recoitTir(Coordonnee c)
      Description copied from class: GrilleNavale
      Traite un tir sur la grille. Si la coordonnée a déjà été attaquée, retourne faux. Sinon, enregistre le tir et retourne vrai si un navire a été touché.
      Overrides:
      recoitTir in class GrilleNavale
    • estCoule

      public boolean estCoule(Coordonnee c)
      Indique si un navire est coulé à la coordonnée donnée (utile pour adapter l'affichage ou déclencher une animation). Retourne vrai si la coordonnée appartient à un navire désormais coulé.
      Overrides:
      estCoule in class GrilleNavale
    • estALEau

      public boolean estALEau(Coordonnee c)
      Indique si une coordonnée est de l'eau (aucun navire ne l'occupe).
      Overrides:
      estALEau in class GrilleNavale