2025-07-23 11:51:49 +02:00

90 lines
2.8 KiB
Plaintext

Tree("Root") {
Composite(Sequence) {
BTC.InitializeSpeechManager()
BTC.SetSpeechRecognitionLanguage("it-IT")
BTC.SetVoiceName("it-IT-IsabellaMultilingualNeural")
Composite(Race) {
Composite(Sequence) {
// Error in Speech Service: Cancel BTC Trees
BTC.SpeechErrorOccured()
BTC.SetBool("error")
}
RunTree("30_SBB_Story_B_Grotto_Start")
}
Composite(Sequence) {
BTC.CompareBool("error")
// Error Handling
BTC.AbortSpeechEventListener()
BTC.StopSpeechIntentRecognition()
BTC.ClearPossbileSpeechIntents()
BTC.Show("GO.HANDMENU.SpeechButton")
BTC.Set("TextMeshPro.HANDMENU.Option1Button", "text", "Restart")
BTC.Show("GO.HANDMENU.Option1Button")
BTC.Run("NamedEventTrigger.HANDMENU.Option1Button")
BTC.Hide("GO.HANDMENU.Option1Button")
BTC.Hide("GO.HANDMENU.SpeechButton")
BTC.Hide("GO.HANDMENU.SpeechOptions")
}
}
}
Tree("30_SBB_Story_B_Grotto_Start") {
Composite(Sequence) {
Composite(Marathon) {
BTC.Run("MediaPlayer.VIDEOS.StartF1")
BTC.FadeIn("FadeScene.XRInteractionHandsSetup.Black")
}
BTC.Run("MediaPlayer.VIDEOS.StartFidle2")
BTC.AddPossbileSpeechIntent("Zugabteil-Exposition-U-2") // TODO: Update Intent ID
BTC.StartSpeechIntentRecognition()
Composite(Race) {
// -- Race 1: User sagt etwas
Composite(Sequence) {
BTC.UserStartedSpeechInput()
Composite(Selector) {
// -- Selector 1: Intent erkannt
Composite(Sequence) {
BTC.SpeechIntentRecognized()
BTC.ClearPossbileSpeechIntents()
}
// -- Selector 2: Intent nicht erkannt
Composite(Sequence) {
BTC.ClearPossbileSpeechIntents()
}
}
}
// -- Race 2: User sagt nichts
Composite(Sequence) {
BTC.Wait(5)
BTC.CompareUserSpeechInputStarted(false)
BTC.AbortSpeechEventListener()
BTC.StopSpeechIntentRecognition()
BTC.ClearPossbileSpeechIntents()
}
}
BTC.Hide("MediaPlayer.VIDEOS.StartFidle2")
Composite(Marathon) {
Composite(Sequence) {
BTC.Wait(41)
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
}
BTC.Run("MediaPlayer.VIDEOS.StartF3")
}
BTC.Run("LoadScene.NEXT.32Grotto1")
}
}