public void End() { if (this.runningAnims == null) { return; } if (this.runningAnims.Rewind()) { this.forcedStop = true; do { EZLinkedListNode <EZAnimation> current = this.runningAnims.Current; EZAnimation val = current.val; if (val != null) { val.CompletedDelegate = null; EZAnimator.instance.StopAnimation(val, true); } this.runningAnims.Remove(current); this.idleAnims.Add(current); current.val = null; }while (this.runningAnims.MoveNext()); this.forcedStop = false; this.CallEndDelegates(); } }
public void RemoveSubSubject(GameObject go) { if (this.subSubjects == null) { return; } EZLinkedListNode <GameObject> current = this.subSubjects.Current; if (this.subSubjects.Rewind()) { while (!(this.subSubjects.Current.val == go)) { if (!this.subSubjects.MoveNext()) { goto IL_6E; } } this.subSubjects.Remove(this.subSubjects.Current); } IL_6E: this.subSubjects.Current = current; }
public void OnAnimEnd(EZAnimation anim) { EZLinkedListNode <EZAnimation> eZLinkedListNode = (EZLinkedListNode <EZAnimation>)anim.Data; if (eZLinkedListNode == null) { return; } if (this.runningAnims == null) { return; } eZLinkedListNode.val = null; this.runningAnims.Remove(eZLinkedListNode); this.idleAnims.Add(eZLinkedListNode); if (this.onEndDelegates == null || this.forcedStop) { return; } EZLinkedListNode <EZAnimation> current = this.runningAnims.Current; if (this.runningAnims.Rewind()) { while (this.runningAnims.Current.val.Duration <= 0f) { if (!this.runningAnims.MoveNext()) { goto IL_A1; } } return; } IL_A1: this.runningAnims.Current = current; this.CallEndDelegates(); }
public EZLinkedListNode <EZAnimation> AddRunningAnim() { if (this.runningAnims == null) { this.runningAnims = new EZLinkedList <EZLinkedListNode <EZAnimation> >(); if (this.idleAnims == null) { this.idleAnims = new EZLinkedList <EZLinkedListNode <EZAnimation> >(); } } EZLinkedListNode <EZAnimation> eZLinkedListNode; if (this.idleAnims.Count > 0) { eZLinkedListNode = this.idleAnims.Head; this.idleAnims.Remove(eZLinkedListNode); } else { eZLinkedListNode = new EZLinkedListNode <EZAnimation>(null); } this.runningAnims.Add(eZLinkedListNode); return(eZLinkedListNode); }
protected EZLinkedListNode<PointerInfoDelegate> GetPtrListenNode(PointerInfoDelegate del) { EZLinkedListNode<PointerInfoDelegate> delNode; if (listenerPool.Count > 0) { delNode = listenerPool.Head; listenerPool.Remove(delNode); delNode.val = del; } else delNode = new EZLinkedListNode<PointerInfoDelegate>(del); return delNode; }