Пример #1
0
        private static void AddToppings(Pizza pizza)
        {
            List <Topping> toppings = APizzaPartFactory.GetToppings();

            Console.WriteLine("Current toppings: ");
            foreach (var topping in pizza.Toppings)
            {
                Console.Write(topping + " ");
            }
            Console.WriteLine(); //Just to start a new line.
            while (pizza.Toppings.Count < 5)
            {
                for (var index = 0; index < toppings.Count(); index++)
                {
                    Console.WriteLine($"{index}: {toppings[index]} ${toppings[index].Price}");
                }
                Console.WriteLine("Input a number for a topping or any other number to quit.");
                bool validInput = int.TryParse(Console.ReadLine(), out int input);
                if (validInput)
                {
                    if (input > 0 && input < toppings.Count())
                    {
                        var  selectedTopping = APizzaPartFactory.MakeTopping(toppings[input].Name);
                        bool added           = pizza.AddTopping(selectedTopping);
                        if (added)
                        {
                            Console.WriteLine($"Added {selectedTopping}");
                            if (pizza.Toppings.Count() >= 5)
                            {
                                Console.WriteLine("You've reached your limit on toppings");
                            }
                        }
                        else
                        {
                            Console.WriteLine("Unable to add topping.");
                        }
                    }
                    else
                    {
                        Console.WriteLine("Thank you for selecting your toppings.");
                        return;
                    }
                }
                else
                {
                    Console.WriteLine("Invalid input, try again.");
                }
            }
        }
Пример #2
0
 public void SetToppings()
 {
     if (Toppings == null || Toppings.Count == 0)
     {
         Toppings = new List <SelectTopping>();
         foreach (var topping in APizzaPartFactory.GetToppings())
         {
             Toppings.Add(new SelectTopping()
             {
                 Selected = false,
                 Topping  = topping
             });
         }
     }
 }