public override void resetProperty() { base.resetProperty(); mLerpingCallBack = null; mLerpDoneCallBack = null; mPlayState = PLAY_STATE.NONE; mLerpSpeed = 0.0f; }
public override void init() { base.init(); mLerpingCallBack = null; mLerpDoneCallBack = null; mTargetRotation = Vector3.zero; mLerpSpeed = 0.0f; }
protected static void doneCallback(ref LerpCallback curDoneCallback, ComponentLerp component) { // 先保存回调,然后再调用回调之前就清空回调,确保在回调函数执行时已经完全完成 LerpCallback tempCallback = curDoneCallback; component.clearCallback(); tempCallback?.Invoke(component, false); }
public override void resetProperty() { base.resetProperty(); mLerpingCallBack = null; mLerpDoneCallBack = null; mTargetRotation = Vector3.zero; mLerpSpeed = 0.0f; }
//---------------------------------------------------------------------------------------------------------------------------- protected static void setCallback(LerpCallback callback, ref LerpCallback curCallback, ComponentLerp component) { LerpCallback tempCallback = curCallback; curCallback = null; // 如果回调函数当前不为空,则是中断了正在进行的变化 tempCallback?.Invoke(component, true); curCallback = callback; }
public void setLerpDoneCallback(LerpCallback callback) { setCallback(callback, ref mLerpDoneCallBack, this); }
protected void clearCallback() { mLerpingCallBack = null; mLerpDoneCallBack = null; }