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); }
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); }
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); }