Example #1
0
 public void SortInWagons(List <Animal> animals)
 {
     foreach (var animal in animals)
     {
         var availableWagon = CheckIfWagonAvailable(animal);
         if (availableWagon != null)
         {
             availableWagon.AddAnimalToWagon(animal);
         }
         else
         {
             availableWagon = new Wagon(animal.Diet, animal.Size);
             Wagons.Add(availableWagon);
             availableWagon.AddAnimalToWagon(animal);
         }
     }
 }
Example #2
0
        public Wagon CheckIfWagonAvailable(Animal animal)
        {
            foreach (var wagon in Wagons)
            {
                if (wagon.IsAnimalCompatible(animal) && wagon.DoesAnimalFitWagon(animal) || wagon.CompatibleSize == 0 && wagon.CompatibleDiet == 0)
                {
                    _wagon = wagon;
                    break;
                }

                else
                {
                    _wagon = null;
                }
            }

            return(_wagon);
        }
Example #3
0
 public Train()
 {
     Wagons = new List <Wagon>();
     _wagon = new Wagon();
     Wagons.Add(_wagon);
 }