La difficulté avec WaitForSeconds() dans l'Unité

Je suis en train d'invoquer une prise de vue de l'animation dans la fonction de mise à Jour et puis attendre pendant 0,5 secondes avant de frayer un tir laser. Le code ci-dessous ne fonctionne pas pour moi. Que puis-je faire pour obtenir le résultat souhaité?

void Update()
{
    if (Input.GetMouseButtonDown (0)) 
    {
        animator.SetTrigger("Shoot"); //Start animation

        WaitAndShoot();         
    }
}

IEnumerator WaitAndShoot()
{
    yield return new WaitForSeconds(0.5f);

    Instantiate (shot, shotSpawn.transform.position,shotSpawn.transform.rotation);
}
InformationsquelleAutor LooMeenin | 2014-05-04