// Update is called once per frame public virtual void Update() { // update the added charges and added charge recovery in the charge manager if necessary if (chargeManager) { if (previousAddedCharges != addedCharges || previousAddedChargeRegen != addedChargeRegen) { chargeManager.updateChargeInfo(ability); previousAddedChargeRegen = addedChargeRegen; previousAddedCharges = addedCharges; if (chargeManager.abilitiesStartOffCooldown) { chargeManager.setAbilityChargesToMax(ability); } } } else { chargeManager = GetComponent <ChargeManager>(); } }