bool LoadPrefab()
        {
            var go = Resources.Load <GameObject> (_prefabPath);

            if (go == null)
            {
                Debug.LogWarning("Cant load asset " + _prefabPath, gameObject);
                return(false);
            }
            _cachedAsset         = go.GetComponent(typeof(IPoolObject));
            _needToAddPoolObject = (object)_cachedAsset == null;
            if (_needToAddPoolObject)
            {
                _cachedAsset = go;
            }
            else
            {
                if (_cachedAsset.GetType() != _overridedType)
                {
                    Debug.LogWarning("Prefab already contains another IPoolObject-component", gameObject);
                    return(false);
                }
            }

            _cachedScale = go.transform.localScale;

            _store.UseCastToObjectComparer(true);

            return(true);
        }
Esempio n. 2
0
        bool LoadPrefab()
        {
            if (_prefab == null)
            {
                Debug.LogWarning("Prefab not set");
                return(false);
            }
            _cachedAsset         = _prefab.GetComponent(typeof(IPoolObject));
            _needToAddPoolObject = (object)_cachedAsset == null;
            if (_needToAddPoolObject)
            {
                _cachedAsset   = _prefab;
                _overridedType = typeof(PoolObject);
            }
            else
            {
                if (_cachedAsset.GetType() != _overridedType)
                {
                    Debug.LogWarning("Prefab already contains another IPoolObject-component", gameObject);
                    return(false);
                }
            }

            _cachedScale = _prefab.transform.localScale;

            _store.UseCastToObjectComparer(true);

            if ((object)_itemsRoot == null)
            {
                _itemsRoot = transform;
            }

            return(true);
        }
Esempio n. 3
0
        bool LoadPrefab()
        {
            var go = Resources.Load <GameObject> (_prefabPath);

            if (go == null)
            {
                Debug.LogWarning("Cant load asset " + _prefabPath);
                return(false);
            }
            _cachedAsset         = go.GetComponent(typeof(IPoolObject));
            _needToAddPoolObject = (object)_cachedAsset == null;
            if (_needToAddPoolObject)
            {
                _cachedAsset = go;
            }

            _cachedScale = go.transform.localScale;

            _store.UseCastToObjectComparer(true);

            return(true);
        }