IEnumerator attackCooldown(SkillsScript.Skill skill) { skill.castable = false; yield return new WaitForSeconds (skill.cooldown); skill.castable = true; animator.SetBool ("isCasting", false); }
public void useSkill(SkillsScript.Skill skill) { skill.useSkill (SpellDirectionIndicator.gameObject, this.gameObject.name); if(skill.cooldown != 0){ if (skill.castable) { StartCoroutine (attackCooldown (skill)); if (SpellDirectionIndicator.localEulerAngles.z > 180) GetComponent<SpriteRenderer> ().flipX = true; else { GetComponent<SpriteRenderer> ().flipX = false; } //playerScript.voiceList [0].Play ();' clip.clip = playerScript.voiceList[0]; clip.Play (); animator.SetBool ("isCasting", true); } } if(attackBool){ StartCoroutine (attackInterval (skill.interval)); if(skill.castable) animator.SetBool ("isCasting", true); } }