Example #1
0
            public Sequence Play(SymbolHolder holder, int orderInLine)
            {
                CustomSlot        slot    = holder.reel.slot;
                SlotEffectManager manager = slot.effects;

                Sequence sequence = Util.Sequence();

                if (manager.changeParentOfHitSymbol)
                {
                    Transform oldParent = holder.transform.parent;

                    //	int index = holder.transform.GetSiblingIndex();
                    sequence.OnStart(() => { holder.transform.SetParent(holder.reel.slot.transform); }).OnComplete(() => {
                        holder.transform.SetParent(oldParent);

                        //			holder.transform.SetSiblingIndex(index);
                    });
                }

                if (scale != Vector3.one)
                {
                    sequence.Join(holder.image.transform.DOScale(scale, duration * 0.35f).SetLoops(2, LoopType.Yoyo).SetEase(scaleEase)).SetDelay(delay * orderInLine);
                }
                if (rotation != Vector3.zero)
                {
                    sequence.Join(holder.image.transform.DORotate(rotation, duration * 0.6f, RotateMode.FastBeyond360).SetEase(rotationEase)).SetDelay(delay * orderInLine);
                }

                sequence.Join(holder.HighlightBorder(duration));
                return(sequence);
            }
Example #2
0
 internal IEnumerator StopCoroutine()
 {
     isSearchingForSymbol = true;
     while (true)
     {
         SymbolHolder holder = holders[Mathf.Clamp(slot.config.hiddenTopRows - GetStopDistance() + manipulation.rowOffset, 0, holders.Count - 1)];
         if ((manipulation.symbol && holder.symbol == manipulation.symbol) || (!manipulation.symbol && holder.symbolIndex == manipulation.index))
         {
             _Stop(false);
             break;
         }
         yield return(null);
     }
 }
Example #3
0
 private void Awake()
 {
     _rect = transform as RectTransform;
     link  = this;
 }