// Update is called once per frame private void Update() { for (int i = 0; i < NUMBEROFSKILLS; i++) { if (cooldowns[i] == null) { continue; } // Updates sprite icons for combos spriteIcons[i].sprite = cooldowns[i].GetIcon(); ICooldown cooldown = cooldowns[i]; float nextAvailableTime = cooldown.GetNextAvailableTime(); float cooldownDuration = cooldown.GetCooldownDuration(); if (nextAvailableTime < Time.time) // Skill is available and ready to use { darkMasks[i].fillAmount = 0; } else { darkMasks[i].fillAmount = Mathf.Lerp(0f, 1f, (nextAvailableTime - Time.time) / cooldownDuration); } } }