Exemple #1
0
        private GridItemFX CreateGridItemMatchedFX(GridItemView gridItem, int points, float seconds)
        {
            var fx = PrefabPool.Get <GridItemFX>(_playfieldFxItems);

            fx.Configure(gridItem.Index.x, gridItem.Index.y, gridItem.ID, gridItem.transform.localPosition, _tileSize);
            fx.Show(points, seconds);
            return(fx);
        }
Exemple #2
0
        private GridItemView CreateGridItemView(int x, int y, string itemId, Vector3 position)
        {
            // var gridItem = Instantiate(_gridItemPrefab, _playfieldRootItems);
            var gridItem = PrefabPool.Get <GridItemView>(_playfieldRootItems);

            gridItem.Configure(x, y, itemId, position, _tileSize);
            _gridItemInstances.Add(gridItem);
            return(gridItem);
        }
Exemple #3
0
        private GridNodeView CreateGridNodeView(int x, int y, string nodeId, Vector3 position)
        {
            //var gridNode = Instantiate(_gridNodePrefab, _playfieldRootNodes);
            var gridNode = PrefabPool.Get <GridNodeView>(_playfieldRootNodes);

            gridNode.Configure(x, y, nodeId, position, _tileSize);
            _gridNodeInstances.Add(gridNode);
            return(gridNode);
        }
Exemple #4
0
 private void Update()
 {
     if (!Tween.IsPaused)
     {
         _timeElapsed += Time.deltaTime;
         if (_timeElapsed > _duration)
         {
             PrefabPool.Return(this);
         }
     }
 }
Exemple #5
0
 private void ClearGridItemInstances()
 {
     for (int i = 0; i < _gridItemInstances.Count; i++)
     {
         if (_gridItemInstances[i] != null)
         {
             // Destroy(_gridItemInstances[i].gameObject);
             PrefabPool.Return(_gridItemInstances[i]);
         }
     }
     _gridItemInstances.Clear();
 }
Exemple #6
0
        private void Awake()
        {
            if (!_didCreatePools)
            {
                PrefabPool.CreatePool <GridNodeView>(_gridNodePrefab);
                PrefabPool.CreatePool <GridItemView>(_gridItemPrefab);
                PrefabPool.CreatePool <GridItemFX>(_gridItemMatchedFXPrefab);
                _didCreatePools = true;
            }

            SceneController.RegisterTransitioner(this);
            Level.ListenForLevelEvents(ReceiveLevelEvents);
            DisableEditMode();
        }
Exemple #7
0
 private void DestroyGridItemView(GridItemView gridItem)
 {
     gridItem.Invalidate();
     _gridItemInstances.Remove(gridItem);
     PrefabPool.Return(gridItem);
 }