Type `UnityEngine.Animator' does not contain a definition for `PlayQueued'

For some reason, Animation.Play() works, but Animation.PlayQueued() gives me:

“error CS1061: Type UnityEngine.Animator' does not contain a definition for PlayQueued’ and no extension method PlayQueued' of type UnityEngine.Animator’ could be found (are you missing a using directive or an assembly reference?)”

Any thoughts about what I’m doing wrong? Thanks in advance!

using UnityEngine;
using System.Collections;

public class TestScript : MonoBehaviour {
    public Animator TestAnimator;
    string paramName;

    void Start () {
        TestAnimator = GetComponent<Animator>();
    }

    void Update () {
        Test ();
    }

    void Test(){
        if (Input.anyKeyDown) {
            Debug.Log ("Testing...");
            TestAnimator.Play ("animation1");
            TestAnimator.PlayQueued ("animation2", QueueMode.CompleteOthers);
            Debug.Log("Done!");
        }

    }
}

Animator is a different class from Animation. Animator is for mecanim, and Animation is for legacy animations.

Animation.PlayQueued exists.

Animator.PlayQueued does not.

Is there anything that approximates PlayQueued within Mecanim that I could use instead?

move to the next state via a timed transition? that wouldn’t be in code though, that would be in the animator state engine interface… mecanim and legacy animation are very different concepts.

I got it working using a coroutine and WaitForSeconds. Wish there was a better way to do it, though. Whatever works, I guess?