|
|
|
@ -3,6 +3,7 @@ package utilitaires;
|
|
|
|
|
import models.Animal;
|
|
|
|
|
import models.AnimalFourrure;
|
|
|
|
|
import models.AnimalTheque;
|
|
|
|
|
import models.Oiseau;
|
|
|
|
|
|
|
|
|
|
public class Menu {
|
|
|
|
|
private AnimalTheque animalTheque;
|
|
|
|
@ -52,18 +53,59 @@ public class Menu {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void ajouterAnimal() {
|
|
|
|
|
String nom = saisisseur.saisirNom();
|
|
|
|
|
int zone = saisisseur.saisirZone();
|
|
|
|
|
int choixAjout;
|
|
|
|
|
do {
|
|
|
|
|
System.out.println("Menu ajout animal :");
|
|
|
|
|
System.out.println("1. Aimal à Fourrure");
|
|
|
|
|
System.out.println("2. Oiseau");
|
|
|
|
|
System.out.print("Choisissez une option : ");
|
|
|
|
|
choixAjout = saisisseur.saisirEntier();
|
|
|
|
|
|
|
|
|
|
switch (choixAjout) {
|
|
|
|
|
case 1:
|
|
|
|
|
String nomF = saisisseur.saisirNom();
|
|
|
|
|
int zoneF = saisisseur.saisirZone();
|
|
|
|
|
while(zoneF != 0 && zoneF != 1 && zoneF != 3 && zoneF != 4) {
|
|
|
|
|
System.out.println("Densité de fourrure invalide. Veuillez ressaisir ! (0 Sud, 1 Nord, 2 Est, 4 Ouest)");
|
|
|
|
|
System.out.println(zoneF);
|
|
|
|
|
zoneF = saisisseur.saisirZone();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int densiteF = saisisseur.saisirDensiteFourrure();
|
|
|
|
|
while(densiteF != 0 && densiteF != 1) {
|
|
|
|
|
System.out.println("Densité de fourrure invalide. Veuillez ressaisir ! (0 Fine ou 1 Epaisse)");
|
|
|
|
|
System.out.println(densiteF);
|
|
|
|
|
densiteF = saisisseur.saisirZone();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Animal animalF = new AnimalFourrure(nomF, zoneF, densiteF);
|
|
|
|
|
animalTheque.lesAnimaux.add(animalF);
|
|
|
|
|
|
|
|
|
|
afficheur.afficherMessage("L'animal à fourrure a été ajouté avec succès !");
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
String nomO = saisisseur.saisirNom();
|
|
|
|
|
int zoneO = saisisseur.saisirZone();
|
|
|
|
|
while(zoneO != 0 && zoneO != 1) {
|
|
|
|
|
System.out.println("Zone d'oiseau invalide. Veuillez ressaisir ! (0 Sud, 1 Nord)");
|
|
|
|
|
System.out.println(zoneO);
|
|
|
|
|
zoneO = saisisseur.saisirZone();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Animal animal = new AnimalFourrure(nom, zone, 0);
|
|
|
|
|
animalTheque.lesAnimaux.add(animal);
|
|
|
|
|
Animal animalO = new Oiseau(nomO, zoneO);
|
|
|
|
|
animalTheque.lesAnimaux.add(animalO);
|
|
|
|
|
|
|
|
|
|
afficheur.afficherMessage("L'animal a été ajouté avec succès !");
|
|
|
|
|
afficheur.afficherMessage("L'Oiseau a été ajouté avec succès !");
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
afficheur.afficherMessage("Option invalide. Veuillez choisir une option valide.");
|
|
|
|
|
}
|
|
|
|
|
} while (choixAjout != 2 && choixAjout != 1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void supprimerAnimal() {
|
|
|
|
|
String nom = saisisseur.saisirNom();
|
|
|
|
|
if (suppresseur.supprimerAnimal(animalTheque, nom)) {
|
|
|
|
|
String nomF = saisisseur.saisirNom();
|
|
|
|
|
if (suppresseur.supprimerAnimal(animalTheque, nomF)) {
|
|
|
|
|
afficheur.afficherMessage("L'animal a été supprimé avec succès !");
|
|
|
|
|
} else {
|
|
|
|
|
afficheur.afficherMessage("Aucun animal trouvé avec ce nom.");
|
|
|
|
@ -71,14 +113,17 @@ public class Menu {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void hivernerAnimal() {
|
|
|
|
|
String nom = saisisseur.saisirNom();
|
|
|
|
|
for (Animal animal : animalTheque.lesAnimaux) {
|
|
|
|
|
if (animal.getNom().equalsIgnoreCase(nom) && animal instanceof AnimalFourrure) {
|
|
|
|
|
if (animal instanceof AnimalFourrure) {
|
|
|
|
|
((AnimalFourrure) animal).hiverner();
|
|
|
|
|
afficheur.afficherMessage("L'animal a hiverné avec succès !");
|
|
|
|
|
} else if (animal instanceof Oiseau) {
|
|
|
|
|
((Oiseau) animal).hiverner();
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
afficheur.afficherMessage("Aucun animal trouvé avec ce nom ou cet animal ne peut pas hiverner.");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
afficheur.afficherMessage("Aucun animal trouvé avec ce nom ou cet animal ne peut pas hiverner.");
|
|
|
|
|
afficheur.afficherMessage("Tous les animaux vont hiverner.");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|