IEnumerator ShowUpgradeUI_Coroutine(bool visibility) { if (visibility) { upgradeSystem.RefreshUpgrades(); } float endVal = visibility ? 1 : 0; uIUpgradeCanvas.alpha = 1 - endVal; yield return(pTween.To(.3f, 1 - endVal, endVal, t => { uIUpgradeCanvas.alpha = t; })); upgradeUI.SetActive(visibility); }