コード例 #1
0
    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);
    }
コード例 #2
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);
 }