Compartir a través de


Métodos de objeto Character

[Microsoft Agent está en desuso a partir de Windows 7 y puede no estar disponible en versiones posteriores de Windows.

El servidor también expone métodos para cada carácter de una colección Characters . Se admiten los métodos siguientes:

Para usar un método, haga referencia al carácter de la colección. En VBScript y Visual Basic, para ello, debe especificar el identificador de un carácter:

   Sub FormLoad

   'Load the genie character into the Characters collection
   Agent1.Characters.Load "Genie", "Genie.acs"

   'Display the character
   Agent1.Characters("Genie").Show
   Agent1.Characters("Genie").Play "Greet"
   Agent1.Characters("Genie").Speak "Hello. "

   End Sub

Para simplificar la sintaxis del código, puede definir una variable de objeto y establecerla para hacer referencia a un objeto de carácter en la colección Characters ; después, puede usar la variable para hacer referencia a métodos o propiedades del carácter. En el ejemplo siguiente se muestra cómo puede hacerlo mediante la instrucción Set de Visual Basic:

   'Define a global object variable
   Dim Genie as Object

   Sub FormLoad

   'Load the genie character into the Characters collection
   Agent1.Characters.Load "Genie", " Genie.acs"

   'Create a reference to the character
   Set Genie = Agent1.Characters("Genie")

   'Display the character
   Genie.Show

   'Get the Restpose animation
   Genie.Get "animation", "RestPose"

   'Make the character say Hello
   Genie.Speak "Hello."

   End Sub

En Visual Basic 5.0, también puede crear la referencia declarando la variable como un objeto Character:

   Dim Genie as IAgentCtlCharacterEx

   Sub FormLoad

   'Load the genie character into the Characters collection
   Agent1.Characters.Load "Genie", "Genie.acs"

   'Create a reference to the character
   Set Genie = Agent1.Characters("Genie")

   'Display the character
   Genie.Show

   End Sub

Declarar el objeto de tipo IAgentCtlCharacterEx permite el enlace anticipado en el objeto, lo que da como resultado un mejor rendimiento.

En VBScript, no se puede declarar una referencia como un tipo determinado. Sin embargo, simplemente puede declarar la referencia de variable:

<SCRIPT LANGUAGE = "VBSCRIPT">
<!—--

   Dim Genie
   
   Sub window_OnLoad
   
   'Load the character
   AgentCtl.Characters.Load "Genie", "https://agent.microsoft.com/characters/v2/genie/genie.acf"

   'Create an object reference to the character in the collection
   set Genie= AgentCtl.Characters ("Genie")

   'Get the Showing state animation
   Genie.Get "state", "Showing"

   'Display the character
   Genie.Show

   End Sub

-->
   </SCRIPT>

Algunos lenguajes de programación no admiten colecciones. Sin embargo, puede acceder a los métodos de un objeto Character con el método Character :

   agent.Characters.Character("CharacterID").method

Además, también puede crear una referencia al objeto Character para que el código de script sea más fácil de seguir:

<SCRIPT LANGUAGE="JScript" FOR="window" EVENT="onLoad()">
<!--
   
   //Load the character's data
   AgentCtl.Characters.Load ("Genie", _
      "https://agent.microsoft.com/characters/v2/genie/genie.acf");   

   //Create a reference to this object
   Genie = AgentCtl.Characters.Character("Genie");
   
   //Get the Showing state animation
   Genie.Get("state", "Showing");

   //Display the character
   Genie.Show();

-->
</SCRIPT>