public FarmAnimalStock(LivestockCategory livestockCategory)
 {
     Name        = livestockCategory.AnimalShop.Name;
     Description = livestockCategory.AnimalShop.Description;
     Icon        = GetDefaultIconPath(livestockCategory.ToString());
     Exclude     = livestockCategory.AnimalShop.Exclude == null || !livestockCategory.AnimalShop.Exclude.Any()
 ? new List <string>()
 : livestockCategory.AnimalShop.Exclude.Select(o => o.ToString()).ToList();
 }
 public FarmAnimalCategory(string assetSourceDirectory, LivestockCategory category)
 {
     Category   = category.ToString();
     Types      = category.Types.Select(o => new FarmAnimalType(o)).ToList();
     Buildings  = category.Buildings.ToList();
     AnimalShop = category.CanBePurchased() ? new FarmAnimalStock(category) : null;
     if (!CanBePurchased())
     {
         return;
     }
     AnimalShop.Icon = Path.Combine(assetSourceDirectory, AnimalShop.Icon);
 }