Beispiel #1
0
        /// <summary>
        /// Initializes a new instance of the Zoo class.
        /// </summary>
        /// <param name="name">The name of the zoo.</param>
        /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
        /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
        /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
        /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
        /// <param name="boothMoneyBalance">The initial money balance of the zoo's ticket booth.</param>
        /// <param name="attendant">The zoo's ticket booth attendant.</param>
        /// <param name="vet">The zoo's birthing room vet.</param>
        /// <param name="waterBottlePrice"> The price of the zoo's water bottles.</param>
        public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal boothMoneyBalance, Employee attendant, Employee vet, decimal waterBottlePrice)
        {
            this.animals            = new List <Animal>();
            this.animalSnackMachine = new VendingMachine(animalFoodPrice, new Account());
            this.b168        = new BirthingRoom(vet);
            this.capacity    = capacity;
            this.cages       = new List <Cage>();
            this.guests      = new List <Guest>();
            this.ladiesRoom  = new Restroom(restroomCapacity, Gender.Female);
            this.mensRoom    = new Restroom(restroomCapacity, Gender.Male);
            this.name        = name;
            this.ticketBooth = new MoneyCollectingBooth(attendant, ticketPrice, waterBottlePrice, new MoneyBox());
            this.ticketBooth.AddMoney(boothMoneyBalance);
            this.informationBooth = new GivingBooth(attendant);

            // Loop through the enumerator. Create a cage for every different type of animal.
            foreach (AnimalType a in Enum.GetValues(typeof(AnimalType)))
            {
                // Create a new cage and get the correct cage type.
                Cage cage = new Cage(400, 800, Animal.ConvertAnimalTypeToType(a));

                // Add the created cage to the list of cages.
                this.cages.Add(cage);
            }
        }
Beispiel #2
0
 /// <summary>
 /// Initializes a new instance of the Zoo class.
 /// </summary>
 /// <param name="name">The name of the zoo.</param>
 /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
 /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
 /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
 /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
 /// <param name="boothMoneyBalance">The initial money balance of the zoo's ticket booth.</param>
 /// <param name="attendant">The zoo's ticket booth attendant.</param>
 /// <param name="vet">The zoo's birthing room vet.</param>
 /// <param name="waterBottlePrice"> The price of the zoo's water bottles.</param>
 public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal boothMoneyBalance, Employee attendant, Employee vet, decimal waterBottlePrice)
 {
     this.animals = new List<Animal>();
     this.animalSnackMachine = new VendingMachine(animalFoodPrice);
     this.b168 = new BirthingRoom(vet);
     this.capacity = capacity;
     this.guests = new List<Guest>();
     this.ladiesRoom = new Restroom(restroomCapacity, "Female");
     this.mensRoom = new Restroom(restroomCapacity, "Male");
     this.name = name;
     this.ticketBooth = new Booth(attendant, ticketPrice, waterBottlePrice);
     this.ticketBooth.AddMoney(boothMoneyBalance);
 }
Beispiel #3
0
 /// <summary>
 /// Initializes a new instance of the Zoo class.
 /// </summary>
 /// <param name="name">The name of the zoo.</param>
 /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
 /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
 /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
 /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
 /// <param name="boothMoneyBalance">The initial money balance of the zoo's ticket booth.</param>
 /// <param name="attendant">The zoo's ticket booth attendant.</param>
 /// <param name="vet">The zoo's birthing room vet.</param>
 /// <param name="waterBottlePrice"> The price of the zoo's water bottles.</param>
 public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal boothMoneyBalance, Employee attendant, Employee vet, decimal waterBottlePrice)
 {
     this.animals            = new List <Animal>();
     this.animalSnackMachine = new VendingMachine(animalFoodPrice, new Account());
     this.b168        = new BirthingRoom(vet);
     this.capacity    = capacity;
     this.guests      = new List <Guest>();
     this.ladiesRoom  = new Restroom(restroomCapacity, Gender.Female);
     this.mensRoom    = new Restroom(restroomCapacity, Gender.Male);
     this.name        = name;
     this.ticketBooth = new MoneyCollectingBooth(attendant, ticketPrice, waterBottlePrice, new MoneyBox());
     this.ticketBooth.AddMoney(boothMoneyBalance);
     this.informationBooth = new GivingBooth(attendant);
 }
Beispiel #4
0
        /// <summary>
        /// Initializes a new instance of the Zoo class.
        /// </summary>
        /// <param name="name">The name of the zoo.</param>
        /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
        /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
        /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
        /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
        /// <param name="boothMoneyBalance">The initial money balance of the zoo's ticket booth.</param>
        /// <param name="attendant">The zoo's ticket booth attendant.</param>
        /// <param name="vet">The zoo's birthing room vet.</param>
        /// <param name="waterBottlePrice"> The price of the zoo's water bottles.</param>
        public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal boothMoneyBalance, Employee attendant, Employee vet, decimal waterBottlePrice)
        {
            this.animalSnackMachine = new VendingMachine(animalFoodPrice, new Account());
            this.b168        = new BirthingRoom(vet);
            this.capacity    = capacity;
            this.cages       = new List <Cage>();
            this.guests      = new List <Guest>();
            this.ladiesRoom  = new Restroom(restroomCapacity, Gender.Female);
            this.mensRoom    = new Restroom(restroomCapacity, Gender.Male);
            this.name        = name;
            this.ticketBooth = new MoneyCollectingBooth(attendant, ticketPrice, waterBottlePrice, new MoneyBox());
            this.ticketBooth.AddMoney(boothMoneyBalance);
            this.informationBooth = new GivingBooth(attendant);

            // Make a new list of aniamls and add them to the list.
            this.animals = new List <Animal>()
            {
                new Chimpanzee("Bobo", 10, 128.2, Gender.Male),
                new Chimpanzee("Bubbles", 3, 103.8, Gender.Female),
                new Dingo("Spot", 5, 41.3, Gender.Male),
                new Dingo("Maggie", 6, 37.2, Gender.Female),
                new Dingo("Toby", 0, 15.0, Gender.Male),
                new Eagle("Ari", 12, 10.1, Gender.Female),
                new Hummingbird("Buzz", 2, 0.02, Gender.Male),
                new Hummingbird("Bitsy", 1, 0.03, Gender.Female),
                new Kangaroo("Kanga", 8, 72.0, Gender.Female),
                new Kangaroo("Roo", 0, 23.9, Gender.Male),
                new Kangaroo("Jake", 9, 153.5, Gender.Male),
                new Ostrich("Stretch", 26, 231.7, Gender.Male),
                new Ostrich("Speedy", 30, 213.0, Gender.Female),
                new Platypus("Patti", 13, 4.4, Gender.Female),
                new Platypus("Bill", 11, 4.9, Gender.Male),
                new Platypus("Ted", 0, 1.1, Gender.Male),
                new Shark("Bruce", 19, 810.6, Gender.Female),
                new Shark("Anchor", 17, 458.0, Gender.Male),
                new Shark("Chum", 14, 377.3, Gender.Male),
                new Squirrel("Chip", 4, 1.0, Gender.Male),
                new Squirrel("Dale", 4, 0.9, Gender.Male)
            };

            // Loop through the enumerator. Create a cage for every different type of animal.
            foreach (AnimalType a in Enum.GetValues(typeof(AnimalType)))
            {
                // Create a new cage and get the correct cage type.
                Cage cage = new Cage(400, 800, Animal.ConvertAnimalTypeToType(a));

                // Add the created cage to the list of cages.
                this.cages.Add(cage);
            }
        }
Beispiel #5
0
        /// <summary>
        /// Initializes a new instance of the Zoo class.
        /// </summary>
        /// <param name="name">The name of the zoo.</param>
        /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
        /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
        /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
        /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
        /// <param name="waterBottlePrice">The price of a water bottle.</param>
        /// <param name="attendant">The zoo's ticket booth attendant.</param>
        /// <param name="vet">The zoo's birthing room vet.</param>
        public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal waterBottlePrice, Employee attendant, Employee vet)
        {
            this.animals            = new List <Animal>();
            this.animalSnackMachine = new VendingMachine(animalFoodPrice, new MoneyBox());
            this.b168 = new BirthingRoom(vet);
            this.b168.OnTemperatureChange = (previousTemp, currentTemp) =>
            {
                this.OnBirthingRoomTemperatureChange(previousTemp, currentTemp);
            };
            this.capacity         = capacity;
            this.guests           = new List <Guest>();
            this.informationBooth = new GivingBooth(attendant);
            this.ladiesRoom       = new Restroom(restroomCapacity, Gender.Female);
            this.mensRoom         = new Restroom(restroomCapacity, Gender.Male);
            this.name             = name;
            this.ticketBooth      = new MoneyCollectingBooth(attendant, ticketPrice, waterBottlePrice, new MoneyBox());

            foreach (AnimalType at in Enum.GetValues(typeof(AnimalType)))
            {
                this.cages.Add(Animal.ConvertAnimalTypeToType(at), new Cage(400, 800));
            }

            this.AddAnimal(new Chimpanzee("Bobo", 10, 128.2, Gender.Male));
            this.AddAnimal(new Chimpanzee("Bubbles", 3, 103.8, Gender.Female));
            this.AddAnimal(new Dingo("Spot", 5, 41.3, Gender.Male));
            this.AddAnimal(new Dingo("Maggie", 6, 37.2, Gender.Female));
            this.AddAnimal(new Dingo("Toby", 0, 15.0, Gender.Male));
            this.AddAnimal(new Eagle("Ari", 12, 10.1, Gender.Female));
            this.AddAnimal(new Hummingbird("Buzz", 2, 0.02, Gender.Male));
            this.AddAnimal(new Hummingbird("Bitsy", 1, 0.03, Gender.Female));
            this.AddAnimal(new Kangaroo("Kanga", 8, 72.0, Gender.Female));
            this.AddAnimal(new Kangaroo("Roo", 0, 23.9, Gender.Male));
            this.AddAnimal(new Kangaroo("Jake", 9, 153.5, Gender.Male));
            this.AddAnimal(new Ostrich("Stretch", 26, 231.7, Gender.Male));
            this.AddAnimal(new Ostrich("Speedy", 30, 213.0, Gender.Female));
            this.AddAnimal(new Platypus("Patti", 13, 4.4, Gender.Female));
            this.AddAnimal(new Platypus("Bill", 11, 4.9, Gender.Male));
            this.AddAnimal(new Platypus("Ted", 0, 1.1, Gender.Male));
            this.AddAnimal(new Shark("Bruce", 19, 810.6, Gender.Female));
            this.AddAnimal(new Shark("Anchor", 17, 458.0, Gender.Male));
            this.AddAnimal(new Shark("Chum", 14, 377.3, Gender.Male));
            this.AddAnimal(new Squirrel("Chip", 4, 1.0, Gender.Male));
            this.AddAnimal(new Squirrel("Dale", 4, 0.9, Gender.Male));
        }
Beispiel #6
0
        /// <summary>
        /// Initializes a new instance of the Zoo class.
        /// </summary>
        /// <param name="name">The name of the zoo.</param>
        /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
        /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
        /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
        /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
        /// <param name="waterBottlePrice">The price of a water bottle.</param>
        /// <param name="boothMoneyBalance">The money balance of the money collecting booth.</param>
        /// <param name="attendant">The zoo's ticket booth attendant.</param>
        /// <param name="vet">The zoo's birthing room vet.</param>
        public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal waterBottlePrice, decimal boothMoneyBalance, Employee attendant, Employee vet)
        {
            this.animals            = new List <Animal>();
            this.animalSnackMachine = new VendingMachine(animalFoodPrice, new Account());
            this.b168 = new BirthingRoom(vet);

            this.b168.OnTemperatureChange = (previousTemp, currentTemp) =>
            {
                if (this.OnBirthingRoomTemperatureChange != null)
                {
                    this.OnBirthingRoomTemperatureChange(previousTemp, currentTemp);
                }
            };

            this.capacity         = capacity;
            this.guests           = new List <Guest>();
            this.informationBooth = new GivingBooth(attendant);
            this.ladiesRoom       = new Restroom(restroomCapacity, Gender.Female);
            this.mensRoom         = new Restroom(restroomCapacity, Gender.Male);
            this.name             = name;
            this.ticketBooth      = new MoneyCollectingBooth(attendant, ticketPrice, waterBottlePrice, new MoneyBox());
            this.ticketBooth.AddMoney(boothMoneyBalance);

            foreach (AnimalType at in Enum.GetValues(typeof(AnimalType)))
            {
                Cage cage = new Cage(400, 800);
                cages.Add(Animal.ConvertAnimalTypeToType(at), cage);
            }

            // Animals for sorting
            this.AddAnimal(new Chimpanzee("Bobo", 10, 128.2, Gender.Male));
            this.AddAnimal(new Chimpanzee("Bubbles", 3, 103.8, Gender.Female));
            this.AddAnimal(new Dingo("Spot", 5, 41.3, Gender.Male));
            this.AddAnimal(new Dingo("Maggie", 6, 37.2, Gender.Female));
            this.AddAnimal(new Dingo("Toby", 0, 15.0, Gender.Male));
            this.AddAnimal(new Eagle("Ari", 12, 10.1, Gender.Female));
            this.AddAnimal(new Hummingbird("Buzz", 2, 0.02, Gender.Male));
            this.AddAnimal(new Hummingbird("Bitsy", 1, 0.03, Gender.Female));
            this.AddAnimal(new Kangaroo("Kanga", 8, 72.0, Gender.Female));
            this.AddAnimal(new Kangaroo("Roo", 0, 23.9, Gender.Male));
            this.AddAnimal(new Kangaroo("Jake", 9, 153.5, Gender.Male));
            this.AddAnimal(new Ostrich("Stretch", 26, 231.7, Gender.Male));
            this.AddAnimal(new Ostrich("Speedy", 30, 213.0, Gender.Female));
            this.AddAnimal(new Platypus("Patti", 13, 4.4, Gender.Female));
            this.AddAnimal(new Platypus("Bill", 11, 4.9, Gender.Male));
            this.AddAnimal(new Platypus("Ted", 0, 1.1, Gender.Male));
            this.AddAnimal(new Shark("Bruce", 19, 810.6, Gender.Female));
            this.AddAnimal(new Shark("Anchor", 17, 458.0, Gender.Male));
            this.AddAnimal(new Shark("Chum", 14, 377.3, Gender.Male));
            this.AddAnimal(new Squirrel("Chip", 4, 1.0, Gender.Male));
            this.AddAnimal(new Squirrel("Dale", 4, 0.9, Gender.Male));

            // Guests for sorting
            this.AddGuest(new Guest("Greg", 35, 100.0m, WalletColor.Crimson, Gender.Male, new Account()), new Ticket(0m, 0, 0));
            this.AddGuest(new Guest("Darla", 7, 10.0m, WalletColor.Brown, Gender.Female, new Account()), new Ticket(0m, 0, 0));
            this.AddGuest(new Guest("Anna", 8, 12.56m, WalletColor.Brown, Gender.Female, new Account()), new Ticket(0m, 0, 0));
            this.AddGuest(new Guest("Matthew", 42, 10.0m, WalletColor.Brown, Gender.Male, new Account()), new Ticket(0m, 0, 0));
            this.AddGuest(new Guest("Doug", 7, 11.10m, WalletColor.Brown, Gender.Male, new Account()), new Ticket(0m, 0, 0));
            this.AddGuest(new Guest("Jared", 17, 31.70m, WalletColor.Brown, Gender.Male, new Account()), new Ticket(0m, 0, 0));
            this.AddGuest(new Guest("Sean", 34, 20.50m, WalletColor.Brown, Gender.Male, new Account()), new Ticket(0m, 0, 0));
            this.AddGuest(new Guest("Sally", 52, 134.20m, WalletColor.Brown, Gender.Female, new Account()), new Ticket(0m, 0, 0));
        }
Beispiel #7
0
        /// <summary>
        /// Initializes a new instance of the Zoo class.
        /// </summary>
        /// <param name="name">The name of the zoo.</param>
        /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
        /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
        /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
        /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
        /// <param name="waterBottlePrice">The price of the water bottles.</param>
        /// <param name="boothMoneyBalance">The initial money balance of the zoo's ticket booth.</param>
        /// <param name="attendant">The zoo's ticket booth attendant.</param>
        /// <param name="vet">The zoo's birthing room vet.</param>
        public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal waterBottlePrice, decimal boothMoneyBalance, Employee attendant, Employee vet)
        {
            this.animals            = new List <Animal>();
            this.animalSnackMachine = new VendingMachine(animalFoodPrice, new Account());
            this.b168        = new BirthingRoom(vet);
            this.capacity    = capacity;
            this.guests      = new List <Guest>();
            this.ladiesRoom  = new Restroom(restroomCapacity, Gender.Female);
            this.mensRoom    = new Restroom(restroomCapacity, Gender.Male);
            this.name        = name;
            this.ticketBooth = new MoneyCollectingBooth(attendant, ticketPrice, waterBottlePrice, new MoneyBox());

            this.informationBooth = new GivingBooth(attendant);

            // ticketPrice added to boothMoneyBalance 1.2 step 9c.
            this.ticketBooth.AddMoney(boothMoneyBalance + ticketPrice);

            //// Object Initializer. Removed via Zoo 3.2 Step 3A.
            ////this.animals = new List<Animal>();
            ////{
            ////    new Chimpanzee("Bobo", 10, 128.2, Gender.Male);
            ////    new Chimpanzee("Bubbles", 3, 103.8, Gender.Female);
            ////    new Dingo("Spot", 5, 41.3, Gender.Male);
            ////    new Dingo("Maggie", 6, 37.2, Gender.Female);
            ////    new Dingo("Toby", 0, 15.0, Gender.Male);
            ////    new Eagle("Ari", 12, 10.1, Gender.Female);
            ////    new Hummingbird("Buzz", 2, 0.02, Gender.Male);
            ////    new Hummingbird("Bitsy", 1, 0.03, Gender.Female);
            ////    new Kangaroo("Kanga", 8, 72.0, Gender.Female);
            ////    new Kangaroo("Roo", 0, 23.9, Gender.Male);
            ////    new Kangaroo("Jake", 9, 153.5, Gender.Male);
            ////    new Ostrich("Stretch", 26, 231.7, Gender.Male);
            ////    new Ostrich("Speedy", 30, 213.0, Gender.Female);
            ////    new Platypus("Patti", 13, 4.4, Gender.Female);
            ////    new Platypus("Bill", 11, 4.9, Gender.Male);
            ////    new Platypus("Ted", 0, 1.1, Gender.Male);
            ////    new Shark("Bruce", 19, 810.6, Gender.Female);
            ////    new Shark("Anchor", 17, 458.0, Gender.Male);
            ////    new Shark("Chum", 14, 377.3, Gender.Male);
            ////    new Squirrel("Chip", 4, 1.0, Gender.Male);
            ////    new Squirrel("Dale", 4, 0.9, Gender.Male);
            //// }

            Animal brutus = new Dingo("Brutus", 3, 36.0, Gender.Male);
            Animal coco   = new Dingo("Coco", 7, 38.3, Gender.Female);

            coco.AddChild(brutus);

            Animal toby   = new Dingo("Toby", 4, 42.5, Gender.Male);
            Animal steve  = new Dingo("Steve", 4, 41.1, Gender.Male);
            Animal maggie = new Dingo("Maggie", 7, 34.8, Gender.Female);

            maggie.AddChild(toby);
            maggie.AddChild(steve);

            Animal lucy  = new Dingo("Lucy", 7, 36.5, Gender.Female);
            Animal ted   = new Dingo("Ted", 7, 39.7, Gender.Male);
            Animal bella = new Dingo("Bella", 10, 40.2, Gender.Female);

            bella.AddChild(coco);
            bella.AddChild(maggie);
            bella.AddChild(lucy);
            bella.AddChild(ted);

            List <Animal> tempList = new List <Animal>();

            tempList.Add(bella);
            tempList.Add(new Dingo("Max", 12, 46.9, Gender.Male));

            // Initializes a new Cage Dictionary.
            this.cages = new Dictionary <Type, Cage>();

            // Add new cages to the list for each animal.
            foreach (AnimalType t in Enum.GetValues(typeof(AnimalType)))
            {
                this.cages.Add(Animal.ConvertAnimalTypetoType(t), new Cage(400, 800));
            }

            this.AddAnimalsToZoo(tempList);
        }
Beispiel #8
0
        /// <summary>
        /// Initializes a new instance of the Zoo class.
        /// </summary>
        /// <param name="name">The name of the zoo.</param>
        /// <param name="capacity">The maximum number of guests the zoo can accommodate at a given time.</param>
        /// <param name="restroomCapacity">The capacity of the zoo's restrooms.</param>
        /// <param name="animalFoodPrice">The price of a pound of food from the zoo's animal snack machine.</param>
        /// <param name="ticketPrice">The price of an admission ticket to the zoo.</param>
        /// <param name="boothMoneyBalance">The initial money balance of the zoo's ticket booth.</param>
        /// <param name="attendant">The zoo's ticket booth attendant.</param>
        /// <param name="vet">The zoo's birthing room vet.</param>
        /// <param name="waterBottlePrice"> The price of the zoo's water bottles.</param>
        public Zoo(string name, int capacity, int restroomCapacity, decimal animalFoodPrice, decimal ticketPrice, decimal boothMoneyBalance, Employee attendant, Employee vet, decimal waterBottlePrice)
        {
            this.animalSnackMachine = new VendingMachine(animalFoodPrice, new Account());
            this.b168 = new BirthingRoom(vet);

            // Plugs the HandleBirthingRoomTemperatureChange method into the delegate.
            this.b168.OnTemperatureChange += this.HandleBirthingRoomTemperatureChange;

            this.capacity    = capacity;
            this.cages       = new Dictionary <Type, Cage>();
            this.guests      = new List <Guest>();
            this.ladiesRoom  = new Restroom(restroomCapacity, Gender.Female);
            this.mensRoom    = new Restroom(restroomCapacity, Gender.Male);
            this.name        = name;
            this.ticketBooth = new MoneyCollectingBooth(attendant, ticketPrice, waterBottlePrice, new MoneyBox());
            this.ticketBooth.AddMoney(boothMoneyBalance);
            this.informationBooth = new GivingBooth(attendant);

            //// Make a new list of aniamls and add them to the list.
            this.animals = new List <Animal>();
            //{
            //    new Chimpanzee("Bubbles", 3, 103.8, Gender.Female),
            //    new Dingo("Spot", 5, 41.3, Gender.Male),
            //    new Dingo("Maggie", 6, 37.2, Gender.Female),
            //    new Dingo("Toby", 0, 15.0, Gender.Male),
            //    new Eagle("Ari", 12, 10.1, Gender.Female),
            //    new Hummingbird("Buzz", 2, 0.02, Gender.Male),
            //    new Hummingbird("Bitsy", 1, 0.03, Gender.Female),
            //    new Kangaroo("Kanga", 8, 72.0, Gender.Female),
            //    new Kangaroo("Roo", 0, 23.9, Gender.Male),
            //    new Kangaroo("Jake", 9, 153.5, Gender.Male),
            //    new Ostrich("Stretch", 26, 231.7, Gender.Male),
            //    new Ostrich("Speedy", 30, 213.0, Gender.Female),
            //    new Platypus("Patti", 13, 4.4, Gender.Female),
            //    new Platypus("Bill", 11, 4.9, Gender.Male),
            //    new Platypus("Ted", 0, 1.1, Gender.Male),
            //    new Shark("Bruce", 19, 810.6, Gender.Female),
            //    new Shark("Anchor", 17, 458.0, Gender.Male),
            //    new Shark("Chum", 14, 377.3, Gender.Male),
            //    new Squirrel("Chip", 4, 1.0, Gender.Male),
            //    new Squirrel("Dale", 4, 0.9, Gender.Male)
            //};

            // Loop through the enumerator. Create a cage for every different type of animal.
            foreach (AnimalType a in Enum.GetValues(typeof(AnimalType)))
            {
                // Create a new cage and get the correct cage type.
                Cage cage = new Cage(400, 800);

                // Add the created cage to the list of cages.
                this.cages.Add(Animal.ConvertAnimalTypeToType(a), cage);
            }

            //// Creates and adds lots of animals to their own lists of childern.
            //Animal brutus = new Dingo("Brutus", 3, 36.0, Gender.Male);
            //Animal coco = new Dingo("Coco", 7, 38.3, Gender.Female);
            //coco.AddChild(brutus);

            //Animal toby = new Dingo("Toby", 4, 42.5, Gender.Male);
            //Animal steve = new Dingo("Steve", 4, 41.1, Gender.Male);
            //Animal maggie = new Dingo("Maggie", 7, 34.8, Gender.Female);
            //maggie.AddChild(toby);
            //maggie.AddChild(steve);

            //Animal lucy = new Dingo("Lucy", 7, 36.5, Gender.Female);
            //Animal ted = new Dingo("Ted", 7, 39.7, Gender.Male);
            //Animal bella = new Dingo("Bella", 10, 40.2, Gender.Female);
            //bella.AddChild(coco);
            //bella.AddChild(maggie);
            //bella.AddChild(lucy);
            //bella.AddChild(ted);

            //List<Animal> tempList = new List<Animal>();
            //tempList.Add(bella);
            //tempList.Add(new Dingo("Max", 12, 46.9, Gender.Male));

            //// Call the recursive method.
            //this.AddAnimalsToZoo(tempList);
        }