private IEnumerator RunAttackCountdown() { _currentCountdownLabel = Instantiate(_countdownLabel); _manager.AddToGameplayUI(_currentCountdownLabel.transform); _currentCountdownLabel.Initialize(transform); float countDown = _attackTimer; while (countDown > 0.0f) { _currentCountdownLabel.UpdateValue(countDown); countDown -= Time.deltaTime; if (countDown <= 0.0f) { SpawnCombatNumber("TIME SPHERE", CombatMessageType.Normal); Vector3 timeSpherePos = transform.position; timeSpherePos.y = 0.0f; var timeSphere = ObjectPoolController.Instance.Spawn(_timeSphere.gameObject, timeSpherePos, Quaternion.identity); countDown += _attackTimer; } yield return(null); } }