private void CreatePizza(List <ObjType> types, Vector3 pizzaPosition, Transform parent)
    {
        Pizza pizza = new SmallPizza();

        for (int i = 0; i < types.Count; i++)
        {
            if (types [i] == ObjType.CHICKEN)
            {
                pizza = new ChickenDecorator(pizza);
            }

            if (types [i] == ObjType.HAM)
            {
                pizza = new HamDecorator(pizza);
            }

            if (types [i] == ObjType.MUSHROOM)
            {
                pizza = new MushroomDecorator(pizza);
            }
        }

        GameObject pizzaObj = pizza.CreatePizza(pizzaPosition + new Vector3(0f, 0f, -2f));

        pizzaObj.transform.SetParent(parent);
        pizzaObj.transform.localScale = new Vector3(0.25f, 0.25f, 0.25f);
    }
Example #2
0
        /// <summary>
        /// Funkcja służy do dodania pizzy do listy zamówień
        /// </summary>
        public void AddPizza(int number)
        {
            // Tworzymy obiekt pizzy
            Pizza pizza = new Pizza();

            // Dodajemy składniki znajdujące się w każdej pizzy
            pizza = new TomatoSauceDecorator(pizza);
            pizza = new CheeseDecorator(pizza);
            // Składniki specjalne pizz
            switch (number)
            {
            case 1:
                orders.Add(pizza);
                break;

            case 2:
                pizza = new MushroomsDecorator(pizza);
                orders.Add(pizza);
                break;

            case 3:
                pizza = new HamDecorator(pizza);
                orders.Add(pizza);
                break;

            case 4:
                pizza = new SalamiDecorator(pizza);
                orders.Add(pizza);
                break;
            }
        }
Example #3
0
 bool IsPlacable(int pizzaNumber)
 {
     if (type == ObjType.PIZZA && pizzas [pizzaNumber] == null)
     {
         pizzas [pizzaNumber] = new SmallPizza();
         return(true);
     }
     else if (type != ObjType.PIZZA)
     {
         if (pizzas [pizzaNumber] != null)
         {
             if (type == ObjType.CHICKEN)
             {
                 pizzas [pizzaNumber] = new ChickenDecorator(pizzas [pizzaNumber]);
             }
             else if (type == ObjType.HAM)
             {
                 pizzas [pizzaNumber] = new HamDecorator(pizzas [pizzaNumber]);
             }
             else if (type == ObjType.MUSHROOM)
             {
                 pizzas [pizzaNumber] = new MushroomDecorator(pizzas [pizzaNumber]);
             }
             return(true);
         }
     }
     return(false);
 }
Example #4
0
        static void Main(string[] args)
        {
            Pizza largePizza = new LargePizza();

            largePizza = new CheeseDecorator(largePizza);
            largePizza = new HamDecorator(largePizza);
            Console.WriteLine("{0:C2}", largePizza.CalculateCost());
            Console.WriteLine(largePizza.GetName());
            Console.ReadKey();
        }
Example #5
0
        static void Main(string[] args)
        {
            Pizza largePizza = new LargePizza();

            largePizza = new CheeseDecorator(largePizza);
            largePizza = new HamDecorator(largePizza);

            Console.WriteLine("Pizza name: {0}, Pizza price: {1}", largePizza.GetName(), largePizza.CalculateCost());
            Console.ReadLine();
        }
Example #6
0
        public static void Main(string[] args)
        {
            Pizza largePizza = new LargePizza();

            largePizza = new CheeseDecorator(largePizza);
            largePizza = new HamDecorator(largePizza);
            largePizza = new ChampignonsDecorator(largePizza);
            Console.WriteLine(largePizza.CalculateCost());
            Console.WriteLine(largePizza.GetName());
            Console.ReadLine();
        }
Example #7
0
        static void Main()
        {
            IPizza pizza = new BigPizza();

            PrintInfo(pizza);

            pizza = new HamDecorator(pizza);
            PrintInfo(pizza);

            pizza = new CheeseDecorator(pizza);
            PrintInfo(pizza);
        }
Example #8
0
        static void Main(string[] args)
        {
            Pizza largePizza = new LargePizza();

            largePizza = new ChesseDecorator(largePizza);
            largePizza = new HamDecorator(largePizza);

            Console.WriteLine(largePizza.GetDescription());
            Console.WriteLine("{0:C2}", largePizza.CalcullateCost());

            Console.ReadLine();
        }
        public static void DecoratorPaternInit()
        {
            Console.WriteLine("====================Decorator Patern======================");

            Sandwich standardSandwich = new StandardSandwich();

            standardSandwich = new HamDecorator(standardSandwich);
            Console.WriteLine("Sandwich name: " + standardSandwich.GetName() + "\nCost: " + standardSandwich.CalculateCost());

            standardSandwich = new KetchupDecorator(standardSandwich);
            Console.WriteLine("Add some ketchup to existing sandwich:");
            Console.WriteLine("Sandwich name: " + standardSandwich.GetName() + "\nCost: " + standardSandwich.CalculateCost());

            Console.WriteLine("==========================================================" + "\n");
        }
Example #10
0
        static void Main(string[] args)
        {
            Pizza pizza = new HawaiianPizza();

            Console.WriteLine("Standard pizza");
            Print(pizza);

            pizza = new CheeseDecorator(pizza);
            Console.WriteLine("Decorated with CheeseDecorator");
            Print(pizza);

            pizza = new HamDecorator(pizza);
            Console.WriteLine("Decorated with HamDecorator");
            Print(pizza);

            pizza = new CheeseDecorator(pizza);
            Console.WriteLine("Decorated with CheeseDecorator");
            Print(pizza);
        }
Example #11
0
        static void Main(string[] args)
        {
            // Create the pizza object
            Pizza pizza = null;
            // Creating two bools used to ensure user doesn't give bad input
            bool test1 = false;
            bool test2 = false;

            while (!test1 && !test2)
            {
                test1 = false;
                test2 = false;
                Console.WriteLine("Choose type of pizza: Calzone (c), deep pan (d) or regular pizza (r)");
                string in1 = Console.ReadLine();

                Console.WriteLine("Choose size of pizza: Lunch (l), regular (r) or family (f)");
                string in2 = Console.ReadLine();

                if (in1 == "c")
                {
                    if (in2 == "l")
                    {
                        pizza = new CalzonePizza(Pizza.SizeType.Lunch);
                        test1 = true;
                        test2 = true;
                    }
                    else if (in2 == "r")
                    {
                        pizza = new CalzonePizza(Pizza.SizeType.Regular);
                        test1 = true;
                        test2 = true;
                    }
                    else if (in2 == "f")
                    {
                        pizza = new CalzonePizza(Pizza.SizeType.Family);
                        test1 = true;
                        test2 = true;
                    }
                    else
                    {
                        Console.WriteLine("Invalid input for size - try again!");
                    }
                }
                else if (in1 == "d")
                {
                    if (in2 == "l")
                    {
                        pizza = new DeepPanPizza(Pizza.SizeType.Lunch);
                        test1 = true;
                        test2 = true;
                    }
                    else if (in2 == "r")
                    {
                        pizza = new DeepPanPizza(Pizza.SizeType.Regular);
                        test1 = true;
                        test2 = true;
                    }
                    else if (in2 == "f")
                    {
                        pizza = new DeepPanPizza(Pizza.SizeType.Family);
                        test1 = true;
                        test2 = true;
                    }
                    else
                    {
                        Console.WriteLine("Invalid input for size - try again!");
                    }
                }
                else if (in1 == "r")
                {
                    if (in2 == "l")
                    {
                        pizza = new NormalPizza(Pizza.SizeType.Lunch);
                        test1 = true;
                        test2 = true;
                    }
                    else if (in2 == "r")
                    {
                        pizza = new NormalPizza(Pizza.SizeType.Regular);
                        test1 = true;
                        test2 = true;
                    }
                    else if (in2 == "f")
                    {
                        pizza = new NormalPizza(Pizza.SizeType.Family);
                        test1 = true;
                        test2 = true;
                    }
                    else
                    {
                        Console.WriteLine("Invalid input for size - try again!");
                    }
                }
                else
                {
                    Console.WriteLine("Invalid input for pizza type - try again!");
                }
            }

            test1 = false;
            while (!test1)
            {
                Console.WriteLine("Pick topping: Bell pepper (1), cheese (2), chili (3), dressing (4), garlic (5), ham (6), kebab (7), lettuce (8), onion (9), pepperoni (10) or pineapple (11)");
                switch (Console.ReadLine())
                {
                case "1":
                    pizza = new BellPepperDecorator(pizza);
                    test1 = true;
                    break;

                case "2":
                    pizza = new CheeseDecorator(pizza);
                    test1 = true;
                    break;

                case "3":
                    pizza = new ChilliDecorator(pizza);
                    test1 = true;
                    break;

                case "4":
                    pizza = new DressingDecorator(pizza);
                    test1 = true;
                    break;

                case "5":
                    pizza = new GarlicDecorator(pizza);
                    test1 = true;
                    break;

                case "6":
                    pizza = new HamDecorator(pizza);
                    test1 = true;
                    break;

                case "7":
                    pizza = new KebabDecorator(pizza);
                    test1 = true;
                    break;

                case "8":
                    pizza = new LettuceDecorator(pizza);
                    test1 = true;
                    break;

                case "9":
                    pizza = new OnionDecorator(pizza);
                    test1 = true;
                    break;

                case "10":
                    pizza = new PepperoniDecorator(pizza);
                    test1 = true;
                    break;

                case "11":
                    pizza = new PineappleDecorator(pizza);
                    test1 = true;
                    break;

                default:
                    Console.WriteLine("Invalid input for topping");
                    break;
                }
            }

            test2 = false;
            while (!test2)
            {
                Console.WriteLine("Pick another topping: Bell pepper (1), cheese (2), chili (3), dressing (4), garlic (5), ham (6), kebab (7), lettuce (8), onion (9), pepperoni (10) or pineapple (11)");
                switch (Console.ReadLine())
                {
                case "1":
                    pizza = new BellPepperDecorator(pizza);
                    test2 = true;
                    break;

                case "2":
                    pizza = new CheeseDecorator(pizza);
                    test2 = true;
                    break;

                case "3":
                    pizza = new ChilliDecorator(pizza);
                    test2 = true;
                    break;

                case "4":
                    pizza = new DressingDecorator(pizza);
                    test2 = true;
                    break;

                case "5":
                    pizza = new GarlicDecorator(pizza);
                    test2 = true;
                    break;

                case "6":
                    pizza = new HamDecorator(pizza);
                    test2 = true;
                    break;

                case "7":
                    pizza = new KebabDecorator(pizza);
                    test2 = true;
                    break;

                case "8":
                    pizza = new LettuceDecorator(pizza);
                    test2 = true;
                    break;

                case "9":
                    pizza = new OnionDecorator(pizza);
                    test2 = true;
                    break;

                case "10":
                    pizza = new PepperoniDecorator(pizza);
                    test2 = true;
                    break;

                case "11":
                    pizza = new PineappleDecorator(pizza);
                    test2 = true;
                    break;

                default:
                    Console.WriteLine("Invalid input for topping");
                    break;
                }
            }

            pizza.GetDescription();

            Console.WriteLine("Total price: " + pizza.GetPrice() + " kr\n");
        }