Wait Method
[Microsoft Agent is deprecated as of Windows 7, and may be unavailable in subsequent versions of Windows.]
-
Description
-
Causes the animation queue for the specified character to wait until the specified animation request completes.
-
Syntax
-
agent**.Characters ("CharacterID").Wait**Request
Part Description Request A Request object specifying a particular animation..
Remarks
Use this method only when you support multiple (simultaneous) characters and are trying to sequence the interaction of characters. (For a single character, each animation request is played sequentially--after the previous request completes.) If you have two characters and you want a character's animation request to wait until the other character's animation completes, set the Wait method to the other character's animation Request object. To specify the request parameter, you must create a variable and assign the animation request you want to interrupt:
Dim GenieRequest
Dim RobbyRequest
Dim Genie
Dim Robby
Sub window_Onload
Agent1.Characters.Load "Genie", "https://agent.microsoft.com/characters/v2/genie/genie.acf"
Agent1.Characters.Load "Robby", "https://agent.microsoft.com/characters/v2/robby/robby.acf"
Set Genie = Agent1.Characters("Genie")
Set Robby = Agent1.Characters("Robby")
Genie.Get "State", "Showing"
Robby.Get "State", "Showing"
Genie.Get "Animation", "Announce, AnnounceReturn, Pleased, _
PleasedReturn"
Robby.Get "Animation", "Confused, ConfusedReturn, Sad, SadReturn"
Set Genie = Agent1.Characters ("Genie")
Set Robby = Agent1.Characters ("Robby")
Genie.MoveTo 100,100
Genie.Show
Robby.MoveTo 250,100
Robby.Show
Genie.Play "Announce"
Set GenieRequest = Genie.Speak ("Why did the chicken cross the road?")
Robby.Wait GenieRequest
Robby.Play "Confused"
Set RobbyRequest = Robby.Speak ("I don't know. Why did the chicken _
cross the road?")
Genie.Wait RobbyRequest
Genie.Play "Pleased"
Set GenieRequest = Genie.Speak ("To get to the other side.")
Robby.Wait GenieRequest
Robby.Play "Sad"
Robby.Speak "I never should have asked."
End Sub
You can also streamline your code by just calling Wait directly, using a specific animation request.
Robby.Wait Genie.Play "GestureRight"
This avoids having to explicitly declare a Request object.