home *** CD-ROM | disk | FTP | other *** search
- '==========================================================================
- '
- ' VBScript Source File
- '
- ' NAME: SpkClip.vbs
- '
- ' AUTHOR: Thorsten Eggeling
- ' DATE : 01.2001
- '
- ' COMMENT: Agent-Demo 2
- ' Sub readText(ptext) ist aus den Agen Powertoy ⁿbernommen
- ' ⌐ 1997/98 by Costas Andriotis, http://users.forthnet.gr/ath/costasan/
- '
- 'n÷tige Anpassungen: strCharacter, FileName
- '==========================================================================
- MsgBox("Bitte dieses Script vor dem Start erst anpassen! Script wird beendet.")
- Wscript.Quit
-
- Dim objAgent
- Dim chPath
- Dim strCharacter
- Dim FileName
- Dim fso
-
- strCharacter = "merlin"
- FileName="Text2Speak.txt"
-
-
- Set objAgent = CreateObject("Agent.Control.1")
- If IsObject(objAgent) Then
- objAgent.Connected = True
- Set fso = CreateObject("Scripting.FileSystemObject")
- Call Clibrd()
-
- objAgent.Characters.Load strCharacter, strCharacter & ".acs"
-
- Set char = objAgent.Characters (strCharacter)
- char.Get "state", "Showing"
- char.Get "state", "Speaking"
- char.MoveTo 10, 10
- char.commands.caption = "Lies es!"
- char.Show
-
- '************************************************************
- 'Aus Datei lesen
- Const ForReading = 1, ForWriting = 2, ForAppending = 3
- Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
- Dim f, ts, s
- Set f = fso.GetFile(FileName)
- Set ts = f.OpenAsTextStream(ForReading, TristateUseDefault)
-
- Do While ts.AtEndOfStream <> True
- s = s+ts.ReadLine + Chr(13)
- Loop
- ts.Close
- ReadText(s)
-
- Set objRequest = Char.Hide
- Do Until objRequest.Status = Complete
- Wscript.Sleep 100
- Loop
-
- Set Char = Nothing
- objAgent.Characters.Unload strCharacter
-
- WScript.Quit
-
- End If
- '***************************************************
- Sub readText(ptext)
- On error resume next ' This traps error in case the character doesn't have a 'Read' or 'ReadContinued' animation.
- ptext = ptext & "\mrk=1\" ' Exit properly
- char.play "Read" : firsttime = true
- for each paragraph in split(replace(ptext,chr(13),chr(10)),chr(10))
- if (len(paragraph) > 80) and (not firsttime) then char.play "ReadContinued"
- firsttime = false
- for i = 1 to len(sentencebreaks)
- sbreak = mid(sentencebreaks,i,1)
- paragraph = replace(paragraph, sbreak & " ",sbreak & "╖")
- next
- for each sentence in split(paragraph,"╖")
- char.speak sentence
- next
- next
- end Sub
- '********************************************
- Sub Clibrd()
- Dim myClip
- Dim WshShell
- Dim fso
- Dim TempDir
-
- TempDir=GetTempFolder
- FileName=TempDir & "\" & FileName
- Set myClip=CreateObject("pcwClip.pcwClip")
- With myClip
- .TextFileName=FileName
- .GetText
- End With
- End Sub
-
- '********************************************
- 'Hilfsfunktionen
-
- Function GetTempFolder
- Dim tfolder, tname, tfile
- Const TemporaryFolder = 2
- Set tfolder = fso.GetSpecialFolder(TemporaryFolder)
- GetTempFolder = tFolder.Path
- End Function