1 回答

TA貢獻1842條經(jīng)驗 獲得超22個贊
如果我錯了,有人可能會糾正我,但這可能是因為InvokeRepeating
重復率的第三個參數(shù)不受時間尺度的影響。
您可以考慮使用協(xié)程來代替,如下所示:
public static float demolishTime = 6.0f;
public void OnClickDemolish() {
? ? StartCoroutine(demolishProgress());
}
IEnumerator demolishProgress() {
? ? float progressedTime = 0f;
? ? // Assuming 'demolishTime' is the time taken to entirely demolish the thing.
? ? while (progressedTime < demolishTime) {
? ? ? ? yield return new WaitForEndOfFrame();
? ? ? ? progressedTime += Time.deltaTime;
? ? ? ? demolishProgressBar[DemolishManager.demolishState].fillAmount = Mathf.Lerp(0, 1, progressedTime);
? ? }
? ? demolishCompleted();
}
- 1 回答
- 0 關注
- 162 瀏覽
添加回答
舉報