Ejemplo n.º 1
0
        float Prepend(IHOTweenComponent p_twMember, float p_duration)
        {
            if (items == null)
            {
                return(Insert(0, p_twMember));
            }

            if (p_twMember != null)
            {
                HOTween.RemoveFromTweens(p_twMember);
                ((ABSTweenComponent)p_twMember).contSequence = this;
                CheckSpeedBasedTween(p_twMember);
            }

            HOTSeqItem newItem = (p_twMember != null ? new HOTSeqItem(0, p_twMember as ABSTweenComponent) : new HOTSeqItem(0, p_duration));

            float itemDur    = newItem.duration;
            int   itemsCount = items.Count;

            for (int i = 0; i < itemsCount; ++i)
            {
                items[i].startTime += itemDur;
            }
            items.Insert(0, newItem);
            _duration += itemDur;

            SetFullDuration();
            _isEmpty = false;
            return(_duration);
        }
Ejemplo n.º 2
0
        float Insert(float p_time, IHOTweenComponent p_twMember, float p_duration)
        {
            if (p_twMember != null)
            {
                HOTween.RemoveFromTweens(p_twMember);
                ((ABSTweenComponent)p_twMember).contSequence = this;
                CheckSpeedBasedTween(p_twMember);
            }

            HOTSeqItem newItem = (p_twMember != null ? new HOTSeqItem(p_time, p_twMember as ABSTweenComponent) : new HOTSeqItem(p_time, p_duration));

            if (items == null)
            {
                items = new List <HOTSeqItem>
                {
                    newItem
                };
                _duration = newItem.startTime + newItem.duration;
                SetFullDuration();
                _isEmpty = false;
                return(_duration);
            }

            bool placed     = false;
            int  itemsCount = items.Count;

            for (int i = 0; i < itemsCount; ++i)
            {
                if (items[i].startTime >= p_time)
                {
                    items.Insert(i, newItem);
                    placed = true;
                    break;
                }
            }
            if (!placed)
            {
                items.Add(newItem);
            }
            _duration = Mathf.Max(newItem.startTime + newItem.duration, _duration);

            SetFullDuration();
            _isEmpty = false;
            return(_duration);
        }
Ejemplo n.º 3
0
        float Append(IHOTweenComponent p_twMember, float p_duration)
        {
            if (items == null)
            {
                return(p_twMember != null ? Insert(0, p_twMember) : Insert(0, null, p_duration));
            }

            if (p_twMember != null)
            {
                HOTween.RemoveFromTweens(p_twMember);
                ((ABSTweenComponent)p_twMember).contSequence = this;
                CheckSpeedBasedTween(p_twMember);
            }

            HOTSeqItem newItem = (p_twMember != null ? new HOTSeqItem(_duration, p_twMember as ABSTweenComponent) : new HOTSeqItem(_duration, p_duration));

            items.Add(newItem);

            _duration += newItem.duration;

            SetFullDuration();
            _isEmpty = false;
            return(_duration);
        }