java.lang.Object
logique.Navire
Représente un navire sur la grille. Un navire est défini par ses coordonnées
de début et de fin ainsi que par l'ensemble des cases déjà touchées.
Les navires sont horizontaux ou verticaux (aucune diagonale).
-
Constructor Summary
ConstructorsConstructorDescriptionNavire(Coordonnee debut, int longueur, boolean estVertical) Crée un navire à partir d'une coordonnée de départ, d'une longueur et d'une orientation. -
Method Summary
Modifier and TypeMethodDescriptionbooleanRetourne vrai si ce navire chevauche un autre navire (partage au moins une case).booleanRetourne vrai si la coordonnée donnée se situe sur ce navire (touchée ou non).doubledistance()Calcule une distance euclidienne simple entre le début et la fin du navire.booleanestCoule()Indique si toutes les parties du navire ont été touchées (navire coulé).booleanIndique si le navire a été touché au moins une fois.booleanRetourne vrai si le navire a été touché à la coordonnée donnée.getDebut()getFin()booleanApplique un tir à la coordonnée donnée.toString()booleanRetourne vrai si ce navire touche un autre navire sans chevauchement (adjacence horizontale ou verticale).
-
Constructor Details
-
Navire
Crée un navire à partir d'une coordonnée de départ, d'une longueur et d'une orientation.- Parameters:
debut- coordonnée de départ (indexée à 0)longueur- longueur du navire (nombre de cases)estVertical- vrai si le navire est vertical, faux s'il est horizontal
-
-
Method Details
-
getDebut
-
getFin
-
contient
Retourne vrai si la coordonnée donnée se situe sur ce navire (touchée ou non). -
estTouche
Retourne vrai si le navire a été touché à la coordonnée donnée. -
recoitTir
Applique un tir à la coordonnée donnée. Retourne vrai si le tir touche le navire et n'avait pas déjà été enregistré. Les tirs doublons sont ignorés. -
estTouche
public boolean estTouche()Indique si le navire a été touché au moins une fois. -
estCoule
public boolean estCoule()Indique si toutes les parties du navire ont été touchées (navire coulé). -
distance
public double distance()Calcule une distance euclidienne simple entre le début et la fin du navire. Principalement utilisée pour des tests unitaires. -
toString
-