private IEnumerator UnapplyAfter(Effect effect) { yield return(new WaitForSeconds(effect.Timeout)); //print("destroying buff: " + buff.stat + ", " + buff.type + ", " + buff.value + " for " + buff.timeout); activeEffects.Remove(effect); // TODO: there's only one effect type for now... if (activeEffects.Count == 0) { StartCoroutine(effect.Unapply()); } }