一旦我調用此協程,我無法再次停止它,它會一直持續下去。我已經試圖用一個字符串等來調用它...C#Unity:無法停止協程
這個塊是在更新方法中被調用的方法可能與它有什麼關係?
這是我的代碼:
if (currentAmmo < 2 && isColorFading == false) {
StartCoroutine (ColourPulse (ammoCounter, initialColor, 2));
isColorFading = true;
} else if (currentAmmo >= 2 && isColorFading == true) {
StopCoroutine (ColourPulse (ammoCounter, initialColor, 2));
ammoCounter.color = initialColor;
isColorFading = false;
}
如果'currentAmmo'等於2,會發生什麼?或者如果'currentAmmo'永遠不會超過2而'isColorFading'爲''' –
哎呀,這是一個錯誤..如果我編輯... sry – r0128
你必須調試和看到。也許你需要使用'||'而不是'&&' –