Wait 方法
[Microsoft 代理从 Windows 7 开始已弃用,可能在后续版本的 Windows 中不可用。]
-
Description
-
导致指定字符的动画队列等待指定的动画请求完成。
-
语法
-
agent**。字符 (“CharacterID”) 。等待**请求
组成部分 说明 请求 指定特定动画的 Request 对象。
仅当支持多个 (同时) 字符并尝试对字符交互进行排序时,才使用此方法。 (对于单个角色,每个动画请求在上一个请求完成后按顺序播放。) 如果你有两个字符,并且希望一个字符的动画请求等待其他角色的动画完成,请将 Wait 方法设置为另一个字符的动画 Request 对象。 若要指定请求参数,必须创建一个变量并分配要中断的动画请求:
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
还可以通过使用特定的动画请求直接调用 Wait 来简化代码。
Robby.Wait Genie.Play "GestureRight"
这避免了必须显式声明 Request 对象。