Пример #1
0
    public override void BindToParkitect(GameObject hider, AssetBundle bundle)
    {
        var baseDecorator = DecoratorByInstance <BaseDecorator>();

        GameObject gameObject = Instantiate(bundle.LoadAsset <GameObject>(Key));

        gameObject.transform.parent = hider.transform;

        CustomShop customShop = gameObject.AddComponent <CustomShop>();

        customShop.walkableFlag = Block.WalkableFlagType.FORWARD;
        List <Product> result = new List <Product>();

        foreach (var p in Products)
        {
            result.Add(p.Decorate(gameObject, hider, bundle));
        }
        customShop.products = result.ToArray();

        baseDecorator.Decorate(gameObject, hider, this, bundle);

        _shop      = customShop;
        _shop.name = Key;
        AssetManager.Instance.registerObject(_shop);

        foreach (var prod in _shop.products)
        {
            AssetManager.Instance.registerObject(prod);
        }
    }
Пример #2
0
    public override void Decorate()
    {
        CustomShop        shop       = Object.AddComponent <CustomShop>();
        List <GameObject> productsGO = new List <GameObject>();

        foreach (ProductMod P in products)
        {
            Debug.Log(P.GetType().Name);
            productsGO.Add(P.Decorate());
        }
        shop.productGOs = productsGO.ToArray();
        base.Decorate();
    }