public void Reset() { this.mnLoopDelta = 0; this.mDurationDelta = 0f; this.mDelayDelta = 0f; base.gameObject.SetActive(true); if (null == this.mLKCurveAnimationImpArr) { this.mLKCurveAnimationImpArr = new ILKCurveAnimationImp[8]; } int i = 0; int max = this.mLKCurveInfoList.Count; while (i < max) { int impIndex = (int)this.mLKCurveInfoList[i].curveType; if (null == this.mLKCurveAnimationImpArr[impIndex]) { this.mLKCurveAnimationImpArr[impIndex] = this.CreateLKCurveAnimationImp(this.mLKCurveInfoList[i].curveType); } i++; } i = 0; max = this.mLKCurveInfoList.Count; while (i < max) { this.mLKCurveInfoList[i].Reset(); i++; } i = 0; max = this.mLKCurveInfoList.Count; while (i < max) { LKCurveInfo lkCurveInfo = this.mLKCurveInfoList[i]; if (lkCurveInfo.enable) { int impIndex = (int)lkCurveInfo.curveType; ILKCurveAnimationImp imp = this.mLKCurveAnimationImpArr[impIndex]; if (null != imp) { imp.Init(lkCurveInfo); imp.Reset(); } } i++; } i = 0; max = this.mLKCurveInfoList.Count; while (i < max) { int impIndex = (int)this.mLKCurveInfoList[i].curveType; ILKCurveAnimationImp imp = this.mLKCurveAnimationImpArr[impIndex]; if (null != imp) { imp.ApplyCurve(this.mLKCurveInfoList[i], 0f); } i++; } }
private void Evaluate(float time) { if (this.mLKCurveInfoList != null) { float normalizedTime = time / this.mDuration; int i = 0; int max = this.mLKCurveInfoList.Count; while (i < max) { LKCurveInfo lkCurveInfo = this.mLKCurveInfoList[i]; if (lkCurveInfo.enable) { int impIndex = (int)lkCurveInfo.curveType; ILKCurveAnimationImp imp = this.mLKCurveAnimationImpArr[impIndex]; if (null != imp) { imp.ApplyCurve(lkCurveInfo, normalizedTime); } } i++; } } }