GFAgent/GFAgentmod.bas
Attribute VB_Name = "GFAgentmod"
Option Explicit
'(c)2005 by Louis.
Dim AgentObject As New Agent
Dim AgentInitializedFlag As Boolean
Public Function GFAgent_Initialize() As Boolean
On Error GoTo Error:
If AgentInitializedFlag = False Then
AgentInitializedFlag = True
AgentObject.Connected = True
Call AgentObject.Characters.Load("Merlin")
End If
GFAgent_Initialize = True
Exit Function
Error:
GFAgent_Initialize = False
Exit Function
End Function
Public Function GFAgent_Show(Optional ByVal LanguageID As Long = &H409) As Boolean
On Error GoTo Error:
AgentObject.Characters("Merlin").SoundEffectsOn = True
AgentObject.Characters("Merlin").LanguageID = LanguageID '&H409: English, &H407: German
Call AgentObject.Characters.Character("Merlin").Show
GFAgent_Show = True
Exit Function
Error:
GFAgent_Show = False
Exit Function
End Function
Public Function GFAgent_Hide() As Boolean
On Error GoTo Error:
Call AgentObject.Characters.Character("Merlin").StopAll
Call AgentObject.Characters.Character("Merlin").Hide
GFAgent_Hide = True
Exit Function
Error:
GFAgent_Hide = False
Exit Function
End Function
Public Function GFAgent_Speak(ByVal SpeechText As String) As Boolean
On Error GoTo Error:
Dim Temp As Long
Do 'cut out |, mysterious things happen if this char's to be spoken
Temp = InStr(1, SpeechText, "|", vbBinaryCompare)
If Temp < 1 Then Exit Do
SpeechText = Left$(SpeechText, Temp ‑ 1) + Mid$(SpeechText, Temp + 1)
Loop
Call AgentObject.Characters.Character("Merlin").StopAll
Call AgentObject.Characters.Character("Merlin").Speak(SpeechText)
GFAgent_Speak = True
Exit Function
Error:
GFAgent_Speak = False
Exit Function
End Function
Public Function GFAgent_IsSpeaking() As Boolean
'GFAgent_IsSpeaking = AgentObject.Characters.Character("Merlin").Active
End Function
Public Function GFAgent_Terminate() As Boolean
On Error GoTo Error:
Call GFAgent_Hide
Call AgentObject.Characters.Unload("Merlin")
GFAgent_Terminate = True
Exit Function
Error:
GFAgent_Terminate = False
Exit Function
End Function
[END OF FILE]