private void AddButtons(int count)
    {
        if (_buttonPool == null)
        {
            if (_prefab != null && _container != null)
            {
                _buttonPool = new DynamicObjectPool <SpecialTestButton>();
                _buttonPool.Init(_prefab, _container, OnButtonCreated);
            }
            else
            {
                LoggingUtil.LogDebugError("Dynamic Pools require a prefab and container rect.");
                return;
            }
        }

        /* If you are doing muiltiplechanges and the attached object has a layout group attached,
         * as is the case with UI, it is important to disable the container. This prevents the layout
         * being recalculated for every object added. */
        _container.gameObject.SetActive(false);

        for (int i = 0; i < count; i++)
        {
            _buttonPool.AddItem(ref _nextObjectCount);
        }


        //reactivate after all items added;
        _container.gameObject.SetActive(true);
    }
Exemple #2
0
    void Start()
    {
        currentWaveType = WaveType.Intro;

        dynamicPool   = (DynamicObjectPool)poolGameObject.GetComponent(typeof(DynamicObjectPool));
        shopText.text = "";
        waveText.text = "Wave: 1";
        waveCount     = 1;
    }
Exemple #3
0
 //Luke Smith
 // Use this for initialization
 void Start()
 {
     //pooledTurrets = new List<TurretController> ();
     dynamicPool       = (DynamicObjectPool)poolGameObject.GetComponent(typeof(DynamicObjectPool));
     instance          = this;
     turretLimitLevels = new Dictionary <int, int>();
     turretLimitLevels.Add(0, 1);
     turretLimitLevels.Add(100, 3);
     turretLimitLevels.Add(200, 5);
     turretLimitLevels.Add(300, 10);
     turretCostLevels = new Dictionary <string, int>();
     turretCostLevels.Add("AutoTurret", 25);
     turretCostLevels.Add("LaserTurret", 75);
     turretCostLevels.Add("MultiTurret", 50);
     turretCostLevels.Add("OrbitalTurret", 100);
 }
        public void CreateEnemyPools()
        {
            _enemyPools.Clear();
            _bulletPools.Clear();

            for (int i = 0; i < _enemyAssetMapper.Length; i++)
            {
                var currentMap = _enemyAssetMapper[i];
                // Preload a pool of each enemy to reuse them
                var handle = _enemyAssetMapper[i].Reference.LoadAssetAsync <GameObject>();
                handle.Completed += (h) =>
                {
                    // Creating enemy
                    _enemyPools[currentMap.Type] = new DynamicObjectPool()
                    {
                        GameObjectPrefab = h.Result
                    };
                    _enemyPools[currentMap.Type].Create();
                };
            }

            for (int i = 0; i < _bulletAssetMapper.Length; i++)
            {
                // Preload a pool of each bullet type to reuse them
                BulletType type    = _bulletAssetMapper[i].Type;
                var        bHandle = _bulletAssetTable[_bulletAssetMapper[i].Type].LoadAssetAsync <GameObject>();
                bHandle.Completed += (h) =>
                {
                    _bulletPools[type] = new DynamicObjectPool()
                    {
                        GameObjectPrefab = h.Result
                    };
                    _bulletPools[type].Create();
                };
            }
        }
Exemple #5
0
    // Use this for initialization
    public void Start()
    {
        dynamicPool = (DynamicObjectPool)EnemySpawner.instance.poolGameObject.GetComponent(typeof(DynamicObjectPool));

        Reset();
    }
Exemple #6
0
 void Start()
 {
     dynamicPool = (DynamicObjectPool)poolGameObject.GetComponent(typeof(DynamicObjectPool));
 }
Exemple #7
0
 // Use this for initialization
 void Start()
 {
     rb2d        = GetComponent <Rigidbody2D>();
     dynamicPool = (DynamicObjectPool)EnemySpawner.instance.poolGameObject.GetComponent(typeof(DynamicObjectPool));
 }
Exemple #8
0
 // Use this for initialization
 void Start()
 {
     dynamicPool   = (DynamicObjectPool)poolGameObject.GetComponent(typeof(DynamicObjectPool));
     turretToSpawn = null;
 }