/// <summary> /// Indique si la tuile est dans l'enclos spécifié /// </summary> /// <param name="numEnclos">L'index de l'enclos</param> /// <returns>True si la tuile y est, false sinon</returns> private bool EstDansEnclos(int numEnclos) { Enclos enclos = Zoo.ListeEnclos[numEnclos]; return(X >= enclos.X && X <= enclos.X + enclos.Width && Y >= enclos.Y && Y <= enclos.Y + enclos.Height); }
/// <summary> /// Si le numéro d'enclos est 0 ou 1 : demande le type de l'animal que l'enclos contiendra/ajoute un animal dans l'enclos /// 2 ou 3 : ajoute un animal dans l'enclos. /// </summary> /// <param name="numEnclos">Le numéro de l'enclos où l'animal doit être ajouté</param> /// <param name="tuile">La tuile sur laquelle l'animal apparaîtra</param> private void AjouterAnimalDansEnclos(int numEnclos, TuileZoo tuile) { Enclos enclos = ListeEnclos[numEnclos]; switch (numEnclos) { case 0: goto case 1; case 1: if (enclos.Espece == Animal.TypeAnimal.Inexistant) { ChoisirEtAcheterAnimal(tuile, enclos); } else { AcheterAnimal(enclos, enclos.PrixEspece, tuile, enclos.Espece); } break; case 2: AcheterAnimal(enclos, Animal.PRIX_LION, tuile, Animal.TypeAnimal.Lion); break; case 3: AcheterAnimal(enclos, Animal.PRIX_GRIZZLY, tuile, Animal.TypeAnimal.Grizzly); break; } }
/// <summary> /// Initialise les enclos avec leur position respective /// </summary> private void CreerEnclos() { ListeEnclos[0] = new Enclos(3, 6, Animal.TypeAnimal.Inexistant); ListeEnclos[1] = new Enclos(18, 6, Animal.TypeAnimal.Inexistant); ListeEnclos[2] = new Enclos(3, 16, Animal.TypeAnimal.Lion); ListeEnclos[3] = new Enclos(18, 16, Animal.TypeAnimal.Grizzly); }
/// <summary> /// Methode pour ajouter (acheter) un animal dans un enclos /// </summary> /// <param name="enclos"></param> /// <param name="prixAnimal"></param> /// <param name="tuile"></param> /// <param name="type"></param> private void AcheterAnimal(Enclos enclos, double prixAnimal, TuileZoo tuile, Animal.TypeAnimal type) { if (!tuile.ContientAnimal() && Heros.AAssezDArgent(prixAnimal)) { enclos.Espece = type; enclos.PrixEspece = prixAnimal; enclos.AnimauxPresents.Add(new Animal(tuile, type)); } }
internal int?EstDansQuelEnclos() { for (int i = 0; i < Zoo.ListeEnclos.Length; i++) { Enclos enclos = Zoo.ListeEnclos[i]; if (EstDansEnclos(i)) { return(i); } } return(null); }
/// <summary> /// Methode pour la selection d'animal (licorne ou mouton) /// </summary> /// <param name="tuile"></param> /// <param name="enclos"></param> private void ChoisirEtAcheterAnimal(TuileZoo tuile, Enclos enclos) { ChoixAnimal choix = new ChoixAnimal(); choix.ShowDialog(); switch (choix.Selection) { case Animal.TypeAnimal.Licorne: AcheterAnimal(enclos, Animal.PRIX_LICORNE, tuile, Animal.TypeAnimal.Licorne); break; case Animal.TypeAnimal.Mouton: AcheterAnimal(enclos, Animal.PRIX_MOUTON, tuile, Animal.TypeAnimal.Mouton); break; } }