Esempio n. 1
0
        public async void AddPrefab(AssetBankItemData data)
        {
            GunPrefabItem gunItem = GunPrefabItem.Create(data);

            gunItem.AddListener(OnDeletePrefab);
            UIDynamicListItem dlItem = prefabList.AddItem(gunItem.transform);

            dlItem.UseColliderForUI      = false;       // dont use the default global collider, sub-widget will catch UI events and propagate them.
            gunItem.transform.localScale = Vector3.one; // Items are hidden (scale 0) while they are not added into a list, so activate the item here.
            gunItem.SetListItem(dlItem);                // link i

            await AssetBankUtils.LoadPrefab(selectedItem);

            prefabs.Add(data.prefab);
        }
Esempio n. 2
0
        public async Task OnGrabUIObject()
        {
            await AssetBankUtils.LoadPrefab(selectedItem);

            if (AssetBankUtils.TryGetItem(selectedItem, out AssetBankItemData item))
            {
                if (item.skipInstantiation)
                {
                    // Assets coming from Blender Asset Bank add-on
                    // We will receive them, no need to instantiate them
                    item.prefab = null;
                }
                if (null != item.prefab)
                {
                    GameObject instance = SceneManager.InstantiateObject(item.prefab);
                    AddObject(instance);
                }
            }
            selectedItem = -1;
        }