IEnumerator AttackCoroutine() { while (AttackField.Count != 0) { CardFunction card = AttackField[0]; card.TriggerEffect(); AttackField.RemoveAt(0); yield return(new WaitForSeconds(1.0f)); } Debug.Log("end attack"); //currentTargetEnemy.TakeDamage(Services.statsManager.GetCurrentAttackDmg()); Services.combatManager.ContinueTimeCycle(); attacking = false; //Services.statsManager.LoseAllTempAttack(); currentAttackCost = attackActionCost; UpdateBasicActionCostDisplay(); attackButton.interactable = true; UpdateCardCanPlay(); yield return(null); }