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); } }
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(); }