Merge branch 'programming'
This commit is contained in:
commit
41f90e97d9
@ -94,7 +94,7 @@ Tree("05_Tutorial") {
|
||||
|
||||
// -- Race 2: User sagt nichts
|
||||
Composite(Sequence) {
|
||||
BTC.Wait(10)
|
||||
BTC.Wait(5)
|
||||
BTC.CompareUserSpeechInputStarted(false)
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
@ -251,7 +251,7 @@ Tree("05_Tutorial") {
|
||||
|
||||
// -- Race 2: User sagt nichts
|
||||
Composite(Sequence) {
|
||||
BTC.Wait(10)
|
||||
BTC.Wait(5)
|
||||
BTC.CompareUserSpeechInputStarted(false)
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
|
@ -1,6 +1,8 @@
|
||||
Tree("Root") {
|
||||
Composite(Sequence) {
|
||||
BTC.InitializeSpeechManager()
|
||||
BTC.SetSpeechRecognitionLanguage("it-IT")
|
||||
BTC.SetVoiceName("it-IT-IsabellaMultilingualNeural")
|
||||
|
||||
Composite(Race) {
|
||||
Composite(Sequence) {
|
||||
@ -10,7 +12,7 @@
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
BTC.SetVoiceName("de-DE-SeraphinaMultilingualNeural")
|
||||
BTC.Run("MediaPlayer.VIDEOS.IntroFidle1")
|
||||
BTC.FadeIn("FadeScene.XRInteractionHandsSetup.Black")
|
||||
RunTree("10_SBB_Zugabteil_Intro")
|
||||
}
|
||||
@ -39,204 +41,51 @@ Tree("10_SBB_Zugabteil_Intro") {
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
BTC.NoStoriesVisited()
|
||||
|
||||
BTC.Show("Depthkit.VIDEOS.Exposition0Zugabte")
|
||||
BTC.Run("Depthkit.VIDEOS.Exposition0Zugabte")
|
||||
|
||||
BTC.SynthesizeText("Wir begrüssen dich auf unserer Reise in die Sprache und Kultur der italienischsprachigen Schweiz.")
|
||||
BTC.SpeechOutputEnded()
|
||||
|
||||
BTC.SynthesizeText("Bitte bleib während des ganzen Ausflugs sitzen. Die Steuerung erfolgt über die Sprache und über das Smartphone, das du in der rechten Hand hältst.")
|
||||
BTC.SpeechOutputEnded()
|
||||
|
||||
BTC.SynthesizeText("Solltest du dich unwohl fühlen, dann schliesse die Augen und lege die VR-Brille ab.")
|
||||
BTC.SpeechOutputEnded()
|
||||
|
||||
BTC.SynthesizeText("Francesca begleitet dich bei deinen Abenteuern in die italienischsprachige Schweiz. Dabei bestimmst du, wohin deine Reise geht, indem du auf Italienisch antwortest, selbst Fragen stellst oder Entscheide triffst. Wenn Du nicht weiterweisst, dann schau auf dein Smartphone. Damit kannst Du an manchen Orten übrigens auch fotografieren.")
|
||||
BTC.SpeechOutputEnded()
|
||||
|
||||
BTC.SetVoiceName("de-DE-KatjaNeural")
|
||||
BTC.Run("StudioEventEmitter.STATIC.SBBAlert")
|
||||
BTC.SynthesizeText("Nächster Halt Bellinzona, Richtung Biasca, Gleis 2, Locarno, Gleis 3, Mendrisio, Gleis 4. Gute Reise!")
|
||||
BTC.SpeechOutputEnded()
|
||||
|
||||
BTC.SetVoiceName("de-DE-SeraphinaMultilingualNeural")
|
||||
BTC.SynthesizeText("In wenigen Minuten treffen wir in Bellinzona ein.")
|
||||
BTC.SpeechOutputEnded()
|
||||
|
||||
BTC.SetSpeechRecognitionLanguage("it-IT")
|
||||
BTC.SetVoiceName("it-IT-FabiolaNeural")
|
||||
BTC.SynthesizeText("Tra pochi minuti arriveremo a Bellinzona. Il treno per Biasca è in partenza dal binario 2, quello per Locarno dal binario 3 e per Mendrisio dal binario 4. Buon viaggio!")
|
||||
BTC.SpeechOutputEnded()
|
||||
BTC.Wait(8)
|
||||
BTC.Hide("MediaPlayer.VIDEOS.IntroFidle1")
|
||||
|
||||
// --- Zugabteil - Exposition ---
|
||||
BTC.Hide("Depthkit.VIDEOS.Exposition0Zugabte")
|
||||
BTC.Show("Depthkit.VIDEOS.Exposition1Zugabte")
|
||||
BTC.Run("Depthkit.VIDEOS.Exposition1Zugabte")
|
||||
BTC.Run("MediaPlayer.VIDEOS.ExpositionF1")
|
||||
BTC.Run("MediaPlayer.VIDEOS.ExpositionFidle2")
|
||||
|
||||
BTC.Hide("Depthkit.VIDEOS.Exposition1Zugabte")
|
||||
BTC.Show("Depthkit.VIDEOS.Exposition2Zugabte")
|
||||
BTC.Run("Depthkit.VIDEOS.Exposition2Zugabte")
|
||||
|
||||
BTC.Hide("Depthkit.VIDEOS.Exposition2Zugabte")
|
||||
BTC.Show("Depthkit.VIDEOS.Exposition3Zugabte")
|
||||
BTC.Run("Depthkit.VIDEOS.Exposition3Zugabte")
|
||||
|
||||
BTC.Hide("Depthkit.VIDEOS.Exposition3Zugabte")
|
||||
BTC.Show("Depthkit.VIDEOS.Exposition4Zugabte")
|
||||
BTC.Run("Depthkit.VIDEOS.Exposition4Zugabte")
|
||||
|
||||
BTC.Hide("Depthkit.VIDEOS.Exposition4Zugabte")
|
||||
//BTC.Run("AudioSource.AUDIO.Exposition5Zugabte")
|
||||
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl_Selection")
|
||||
}
|
||||
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl_Selection")
|
||||
}
|
||||
}
|
||||
|
||||
Tree("10_SBB_Zugabteil_Szenenwahl_Selection") {
|
||||
// --- Zugabteil - Szenenwahl Selection ---
|
||||
Composite(Sequence) {
|
||||
BTC.SetBool("handmenu_active", false)
|
||||
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
// Story A besucht
|
||||
BTC.StoryAVisited()
|
||||
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
// Story A + B besucht
|
||||
BTC.StoryBVisited()
|
||||
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
// Story A + B + C besucht
|
||||
BTC.StoryCVisited()
|
||||
// --- Zugabteil - Story Ende ---
|
||||
BTC.Show("Depthkit.VIDEOS.StoryEnde1Zugabtei")
|
||||
BTC.Run("Depthkit.VIDEOS.StoryEnde1Zugabtei")
|
||||
BTC.Hide("Depthkit.VIDEOS.StoryEnde1Zugabtei")
|
||||
// --- ENDE ---
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A + B besucht
|
||||
// Story C nicht besucht
|
||||
// --- Zugabteil - Repetition Intro C ---
|
||||
BTC.Show("Depthkit.VIDEOS.RepetitionIntroC1Z")
|
||||
BTC.Run("Depthkit.VIDEOS.RepetitionIntroC1Z")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A besucht
|
||||
// Story B nicht besucht
|
||||
BTC.StoryCVisited()
|
||||
|
||||
// Story A + C besucht
|
||||
// Story B nicht besucht
|
||||
// --- Zugabteil - Repetition Intro B ---
|
||||
BTC.Show("Depthkit.VIDEOS.RepetitionIntroB1Z")
|
||||
BTC.Run("Depthkit.VIDEOS.RepetitionIntroB1Z")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A besucht
|
||||
// Story B + C nicht besucht
|
||||
// --- Zugabteil - Repetition Intro BC ---
|
||||
BTC.Show("Depthkit.VIDEOS.RepetitionIntroBC1")
|
||||
BTC.Run("Depthkit.VIDEOS.RepetitionIntroBC1")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A nicht besucht
|
||||
BTC.StoryBVisited()
|
||||
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
// Story B besucht
|
||||
// Story A nicht besucht
|
||||
BTC.StoryCVisited()
|
||||
|
||||
// Story B + C besucht
|
||||
// Story A nicht besucht
|
||||
// --- Zugabteil - Repetition Intro A ---
|
||||
BTC.Show("Depthkit.VIDEOS.RepetitionIntroA1Z")
|
||||
BTC.Run("Depthkit.VIDEOS.RepetitionIntroA1Z")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story B besucht
|
||||
// Story A + C nicht besucht
|
||||
// --- Zugabteil - Repetition Intro AC ---
|
||||
BTC.Show("Depthkit.VIDEOS.RepetitionIntroAC1")
|
||||
BTC.Run("Depthkit.VIDEOS.RepetitionIntroAC1")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A + B nicht besucht
|
||||
BTC.StoryCVisited()
|
||||
|
||||
// Story C besucht
|
||||
// Story A + B nicht besucht
|
||||
// --- Zugabteil - Repetition Intro AB ---
|
||||
BTC.Show("Depthkit.VIDEOS.RepetitionIntroAB1")
|
||||
BTC.Run("Depthkit.VIDEOS.RepetitionIntroAB1")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Nichts besucht
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
BTC.CompareRepetitionVisitedCounter(0)
|
||||
// --- Zugabteil - Intro ABC erste ---
|
||||
BTC.Show("Depthkit.VIDEOS.IntroABCerste1Zuga")
|
||||
BTC.Run("Depthkit.VIDEOS.IntroABCerste1Zuga")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
// Erste Wiederholung
|
||||
BTC.CompareRepetitionVisitedCounter(1)
|
||||
// --- Zugabteil - Intro ABC zweite ---
|
||||
BTC.Show("Depthkit.VIDEOS.IntroABCzweite1Zug")
|
||||
BTC.Run("Depthkit.VIDEOS.IntroABCzweite1Zug")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
// Zweite Wiederholung
|
||||
BTC.CompareRepetitionVisitedCounter(2)
|
||||
// --- Zugabteil - Intro ABC dritte ---
|
||||
BTC.Show("Depthkit.VIDEOS.IntroABCdritte1Zug")
|
||||
BTC.Run("Depthkit.VIDEOS.IntroABCdritte1Zug")
|
||||
BTC.SetBool("handmenu_active")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
}
|
||||
}
|
||||
} // First Selector
|
||||
} // Sequence
|
||||
}
|
||||
|
||||
Tree("10_SBB_Zugabteil_Szenenwahl") {
|
||||
// --- Zugabteil - Szenenwahl ---
|
||||
Composite(Sequence) {
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil.Szenenwahl.3")
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil.Szenenwahl.5")
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil.Szenenwahl.7")
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil-Exposition-U-2")
|
||||
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.ExpositionFidle2")
|
||||
BTC.Run("MediaPlayer.VIDEOS.ExpositionF3")
|
||||
BTC.Run("MediaPlayer.VIDEOS.ExpositionFidle4")
|
||||
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil-Exposition-U-4a")
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil-Exposition-U-4b")
|
||||
BTC.StartSpeechIntentRecognition()
|
||||
|
||||
Composite(Race) {
|
||||
@ -248,203 +97,184 @@ Tree("10_SBB_Zugabteil_Szenenwahl") {
|
||||
// -- Selector 1: Intent erkannt
|
||||
Composite(Sequence) {
|
||||
BTC.SpeechIntentRecognized()
|
||||
BTC.AbortEventListener("NamedGrabEvent.INTERACTABLES.VRBrille")
|
||||
|
||||
// Intent erkannt
|
||||
Composite(Race) {
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil.Szenenwahl.3")
|
||||
BTC.CompareIntentID("Zugabteil-Exposition-U-4a")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story A Picknicken
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.20SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil.Szenenwahl.5")
|
||||
BTC.CompareIntentID("Zugabteil-Exposition-U-4b")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story B Grotto
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.30SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil.Szenenwahl.7")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story C Wandern
|
||||
// ...
|
||||
//BTC.SetStoryCVisited()
|
||||
RunTree("10_SBB_Hide_Videos")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// -- Selector 2: Intent nicht erkannt
|
||||
Composite(Sequence) {
|
||||
BTC.AbortEventListener("NamedGrabEvent.INTERACTABLES.VRBrille")
|
||||
// Fallback: nicht verstanden, wiederholen
|
||||
// ...
|
||||
BTC.SynthesizeText("Temo di non averla capita. Può ripetere, per favore? In alternativa, può usare l'aiuto sul cellulare che tiene nella mano sinistra.")
|
||||
BTC.SpeechOutputEnded()
|
||||
|
||||
BTC.StartSpeechIntentRecognition()
|
||||
|
||||
Composite(Race) {
|
||||
Composite(Sequence) {
|
||||
// Option 1: Spracheingabe
|
||||
BTC.UserStartedSpeechInput()
|
||||
BTC.SpeechIntentRecognized()
|
||||
|
||||
Composite(Race) {
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil.Szenenwahl.3")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story A Picknicken
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.20SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil.Szenenwahl.5")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story B Grotto
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.30SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil.Szenenwahl.7")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story C Wandern
|
||||
// ...
|
||||
//BTC.SetStoryCVisited()
|
||||
RunTree("10_SBB_Hide_Videos")
|
||||
BTC.Hide("MediaPlayer.VIDEOS.ExpositionFidle4")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Option 2: Handmenu
|
||||
Composite(Marathon) {
|
||||
BTC.Show("GO.HANDMENU.SpeechButton")
|
||||
BTC.Set("TextMeshPro.HANDMENU.Option1Button", "text", "picnic")
|
||||
BTC.Show("GO.HANDMENU.Option1Button")
|
||||
BTC.Set("TextMeshPro.HANDMENU.Option2Button", "text", "grotto")
|
||||
BTC.Show("GO.HANDMENU.Option2Button")
|
||||
BTC.Set("TextMeshPro.HANDMENU.Option3Button", "text", "escursione")
|
||||
BTC.Show("GO.HANDMENU.Option3Button")
|
||||
}
|
||||
|
||||
Composite(Race) {
|
||||
Composite(Sequence) {
|
||||
// picnic
|
||||
BTC.Run("NamedEventTrigger.HANDMENU.Option1Button")
|
||||
|
||||
Composite(Marathon) {
|
||||
BTC.Hide("GO.HANDMENU.Option1Button")
|
||||
BTC.Hide("GO.HANDMENU.Option2Button")
|
||||
BTC.Hide("GO.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.SpeechButton")
|
||||
BTC.Hide("GO.HANDMENU.SpeechOptions")
|
||||
}
|
||||
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
|
||||
// Load Scene: Story A Picknicken
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.20SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
// grotto
|
||||
BTC.Run("NamedEventTrigger.HANDMENU.Option2Button")
|
||||
|
||||
Composite(Marathon) {
|
||||
BTC.Hide("GO.HANDMENU.Option1Button")
|
||||
BTC.Hide("GO.HANDMENU.Option2Button")
|
||||
BTC.Hide("GO.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.SpeechButton")
|
||||
BTC.Hide("GO.HANDMENU.SpeechOptions")
|
||||
}
|
||||
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
|
||||
// Load Scene: Story B Grotto
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.30SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
// escursione
|
||||
BTC.Run("NamedEventTrigger.HANDMENU.Option3Button")
|
||||
|
||||
Composite(Marathon) {
|
||||
BTC.Hide("GO.HANDMENU.Option1Button")
|
||||
BTC.Hide("GO.HANDMENU.Option2Button")
|
||||
BTC.Hide("GO.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.SpeechButton")
|
||||
BTC.Hide("GO.HANDMENU.SpeechOptions")
|
||||
}
|
||||
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
|
||||
// Load Scene: Story C Wandern
|
||||
// ...
|
||||
//BTC.SetStoryCVisited()
|
||||
RunTree("10_SBB_Hide_Videos")
|
||||
}
|
||||
} // Ende Race Buttons
|
||||
} // Ende Option 2 Handmenu
|
||||
} // Ende Race Optionen
|
||||
|
||||
} // Ende Sequence
|
||||
} // Ende Selector
|
||||
} // Ende Sequence 1
|
||||
|
||||
// -- Race 2: User sagt nichts
|
||||
Composite(Sequence) {
|
||||
BTC.Wait(10)
|
||||
BTC.Wait(5)
|
||||
BTC.CompareUserSpeechInputStarted(false)
|
||||
Decorator(Inverter) {
|
||||
BTC.CompareBool("handmenu_active")
|
||||
}
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
BTC.AbortEventListener("NamedGrabEvent.INTERACTABLES.VRBrille")
|
||||
BTC.IncrementRepetitionVisitedCounter()
|
||||
RunTree("10_SBB_Hide_Videos")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl_Selection")
|
||||
BTC.Hide("MediaPlayer.VIDEOS.ExpositionFidle4")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// -- Race 3: VR Brille in die Hand nehmen
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl_Selection")
|
||||
}
|
||||
}
|
||||
|
||||
Tree("10_SBB_Zugabteil_Szenenwahl_Selection") {
|
||||
// --- Zugabteil - Szenenwahl Selection ---
|
||||
Composite(Sequence) {
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
// Story A besucht
|
||||
BTC.StoryAVisited()
|
||||
|
||||
Composite(Selector) {
|
||||
Composite(Sequence) {
|
||||
// Story A + B besucht
|
||||
BTC.StoryBVisited()
|
||||
// --- Story Ende ---
|
||||
BTC.Hide("MediaPlayer.VIDEOS.IntroFidle1")
|
||||
BTC.Run("MediaPlayer.VIDEOS.StoryEndeF1")
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.00Menu")
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A besucht
|
||||
// Story B nicht besucht
|
||||
// --- Repetition Intro B ---
|
||||
BTC.Hide("MediaPlayer.VIDEOS.IntroFidle1")
|
||||
BTC.Run("MediaPlayer.VIDEOS.RepetitionIntroBF1")
|
||||
BTC.Run("MediaPlayer.VIDEOS.RepetitionIntroBFi_2")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A nicht besucht
|
||||
BTC.StoryBVisited()
|
||||
|
||||
// Story B besucht
|
||||
// Story A nicht besucht
|
||||
// --- Repetition Intro A ---
|
||||
BTC.Hide("MediaPlayer.VIDEOS.IntroFidle1")
|
||||
BTC.Run("MediaPlayer.VIDEOS.RepetitionIntroAF1")
|
||||
BTC.Run("MediaPlayer.VIDEOS.RepetitionIntroAFi_2")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl")
|
||||
}
|
||||
|
||||
Composite(Sequence) {
|
||||
// Story A + B nicht besucht
|
||||
RunTree("10_SBB_Zugabteil_Intro")
|
||||
}
|
||||
} // First Selector
|
||||
} // Sequence
|
||||
}
|
||||
|
||||
Tree("10_SBB_Zugabteil_Szenenwahl") {
|
||||
// --- Zugabteil - Szenenwahl ---
|
||||
Composite(Sequence) {
|
||||
Composite(Marathon) {
|
||||
BTC.Hide("MediaPlayer.VIDEOS.RepetitionIntroAFi_2")
|
||||
BTC.Hide("MediaPlayer.VIDEOS.RepetitionIntroBFi_2")
|
||||
}
|
||||
BTC.Run("MediaPlayer.VIDEOS.SzenenwahlF1")
|
||||
BTC.Run("MediaPlayer.VIDEOS.SzenenwahlFidle2")
|
||||
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil-Exposition-U-4a")
|
||||
BTC.AddPossbileSpeechIntent("Zugabteil-Exposition-U-4b")
|
||||
BTC.StartSpeechIntentRecognition()
|
||||
|
||||
Composite(Race) {
|
||||
// -- Race 1: User sagt etwas
|
||||
Composite(Sequence) {
|
||||
BTC.UserStartedSpeechInput()
|
||||
|
||||
Composite(Selector) {
|
||||
// -- Selector 1: Intent erkannt
|
||||
Composite(Sequence) {
|
||||
BTC.SpeechIntentRecognized()
|
||||
|
||||
// Intent erkannt
|
||||
Composite(Race) {
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil-Exposition-U-4a")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story A Picknicken
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.20SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
BTC.CompareIntentID("Zugabteil-Exposition-U-4b")
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
// Load Scene: Story B Grotto
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.30SBB")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// -- 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.SzenenwahlFidle2")
|
||||
BTC.Run("MediaPlayer.VIDEOS.SzenenwahlF3")
|
||||
BTC.Run("MediaPlayer.VIDEOS.SzenenwahlFidle4")
|
||||
|
||||
Composite(Race) {
|
||||
// VR Brille nehmen
|
||||
Composite(Sequence) {
|
||||
BTC.Run("NamedGrabEvent.INTERACTABLES.VRBrille")
|
||||
Decorator(Inverter) {
|
||||
BTC.CompareBool("handmenu_active")
|
||||
}
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
BTC.IncrementRepetitionVisitedCounter()
|
||||
|
||||
// --- Bilder Bergell ---
|
||||
//BTC.Run("LoadScene.NEXT.35Slideshow")
|
||||
RunTree("10_SBB_Hide_Videos")
|
||||
RunTree("10_SBB_Zugabteil_Szenenwahl_Selection")
|
||||
// TODO: Minigame starten
|
||||
// Nach Minigame: zuruck zu Szenenwahl
|
||||
}
|
||||
|
||||
// -- Race 4: Hand Menu
|
||||
// Szenenwahl per Handmenu
|
||||
Composite(Sequence) {
|
||||
BTC.CompareBool("handmenu_active")
|
||||
Composite(Marathon) {
|
||||
BTC.Show("GO.HANDMENU.SpeechButton")
|
||||
BTC.Set("TextMeshPro.HANDMENU.Option1Button", "text", "picnic")
|
||||
BTC.Show("GO.HANDMENU.Option1Button")
|
||||
BTC.Set("TextMeshPro.HANDMENU.Option2Button", "text", "grotto")
|
||||
BTC.Show("GO.HANDMENU.Option2Button")
|
||||
BTC.Set("TextMeshPro.HANDMENU.Option3Button", "text", "escursione")
|
||||
BTC.Show("GO.HANDMENU.Option3Button")
|
||||
}
|
||||
|
||||
Composite(Race) {
|
||||
@ -454,18 +284,12 @@ Tree("10_SBB_Zugabteil_Szenenwahl") {
|
||||
|
||||
Composite(Marathon) {
|
||||
BTC.AbortEventListener("NamedEventTrigger.HANDMENU.Option2Button")
|
||||
BTC.AbortEventListener("NamedEventTrigger.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.Option1Button")
|
||||
BTC.Hide("GO.HANDMENU.Option2Button")
|
||||
BTC.Hide("GO.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.SpeechButton")
|
||||
BTC.Hide("GO.HANDMENU.SpeechOptions")
|
||||
}
|
||||
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
|
||||
// Load Scene: Story A Picknicken
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.20SBB")
|
||||
@ -476,61 +300,21 @@ Tree("10_SBB_Zugabteil_Szenenwahl") {
|
||||
|
||||
Composite(Marathon) {
|
||||
BTC.AbortEventListener("NamedEventTrigger.HANDMENU.Option1Button")
|
||||
BTC.AbortEventListener("NamedEventTrigger.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.Option1Button")
|
||||
BTC.Hide("GO.HANDMENU.Option2Button")
|
||||
BTC.Hide("GO.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.SpeechButton")
|
||||
BTC.Hide("GO.HANDMENU.SpeechOptions")
|
||||
}
|
||||
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
|
||||
// Load Scene: Story B Grotto
|
||||
BTC.FadeOut("FadeScene.XRInteractionHandsSetup.Black")
|
||||
BTC.Run("LoadScene.NEXT.30SBB")
|
||||
}
|
||||
Composite(Sequence) {
|
||||
// escursione
|
||||
BTC.Run("NamedEventTrigger.HANDMENU.Option3Button")
|
||||
|
||||
Composite(Marathon) {
|
||||
BTC.AbortEventListener("NamedEventTrigger.HANDMENU.Option1Button")
|
||||
BTC.AbortEventListener("NamedEventTrigger.HANDMENU.Option2Button")
|
||||
BTC.Hide("GO.HANDMENU.Option1Button")
|
||||
BTC.Hide("GO.HANDMENU.Option2Button")
|
||||
BTC.Hide("GO.HANDMENU.Option3Button")
|
||||
BTC.Hide("GO.HANDMENU.SpeechButton")
|
||||
BTC.Hide("GO.HANDMENU.SpeechOptions")
|
||||
} // Race Buttons
|
||||
} // Handmenu Ende
|
||||
}
|
||||
|
||||
BTC.AbortSpeechEventListener()
|
||||
BTC.StopSpeechIntentRecognition()
|
||||
BTC.ClearPossbileSpeechIntents()
|
||||
|
||||
// Load Scene: Story C Wandern
|
||||
// ...
|
||||
//BTC.SetStoryCVisited()
|
||||
RunTree("10_SBB_Hide_Videos")
|
||||
}
|
||||
}
|
||||
}
|
||||
} // Ende Race
|
||||
}
|
||||
}
|
||||
|
||||
Tree("10_SBB_Hide_Videos") {
|
||||
Composite(Marathon) {
|
||||
BTC.Hide("Depthkit.VIDEOS.RepetitionIntroC1Z")
|
||||
BTC.Hide("Depthkit.VIDEOS.RepetitionIntroB1Z")
|
||||
BTC.Hide("Depthkit.VIDEOS.RepetitionIntroBC1")
|
||||
BTC.Hide("Depthkit.VIDEOS.RepetitionIntroA1Z")
|
||||
BTC.Hide("Depthkit.VIDEOS.RepetitionIntroAC1")
|
||||
BTC.Hide("Depthkit.VIDEOS.RepetitionIntroAB1")
|
||||
BTC.Hide("Depthkit.VIDEOS.IntroABCerste1Zuga")
|
||||
BTC.Hide("Depthkit.VIDEOS.IntroABCzweite1Zug")
|
||||
BTC.Hide("Depthkit.VIDEOS.IntroABCdritte1Zug")
|
||||
// TODO: Check if necessary
|
||||
//BTC.Hide("MediaPlayer.VIDEOS.SzenenwahlFidle4")
|
||||
}
|
||||
}
|
BIN
Viagg-io/Assets/Models/sitting-video.fbx
Executable file
BIN
Viagg-io/Assets/Models/sitting-video.fbx
Executable file
Binary file not shown.
109
Viagg-io/Assets/Models/sitting-video.fbx.meta
Executable file
109
Viagg-io/Assets/Models/sitting-video.fbx.meta
Executable file
@ -0,0 +1,109 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 73e54a212ecc57840bbebef70d9ffe62
|
||||
ModelImporter:
|
||||
serializedVersion: 22200
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
materials:
|
||||
materialImportMode: 0
|
||||
materialName: 0
|
||||
materialSearch: 1
|
||||
materialLocation: 1
|
||||
animations:
|
||||
legacyGenerateAnimations: 4
|
||||
bakeSimulation: 0
|
||||
resampleCurves: 1
|
||||
optimizeGameObjects: 0
|
||||
removeConstantScaleCurves: 0
|
||||
motionNodeName:
|
||||
rigImportErrors:
|
||||
rigImportWarnings:
|
||||
animationImportErrors:
|
||||
animationImportWarnings:
|
||||
animationRetargetingWarnings:
|
||||
animationDoRetargetingWarnings: 0
|
||||
importAnimatedCustomProperties: 0
|
||||
importConstraints: 0
|
||||
animationCompression: 1
|
||||
animationRotationError: 0.5
|
||||
animationPositionError: 0.5
|
||||
animationScaleError: 0.5
|
||||
animationWrapMode: 0
|
||||
extraExposedTransformPaths: []
|
||||
extraUserProperties: []
|
||||
clipAnimations: []
|
||||
isReadable: 0
|
||||
meshes:
|
||||
lODScreenPercentages: []
|
||||
globalScale: 1
|
||||
meshCompression: 0
|
||||
addColliders: 0
|
||||
useSRGBMaterialColor: 1
|
||||
sortHierarchyByName: 1
|
||||
importPhysicalCameras: 1
|
||||
importVisibility: 1
|
||||
importBlendShapes: 1
|
||||
importCameras: 0
|
||||
importLights: 0
|
||||
nodeNameCollisionStrategy: 1
|
||||
fileIdsGeneration: 2
|
||||
swapUVChannels: 0
|
||||
generateSecondaryUV: 0
|
||||
useFileUnits: 1
|
||||
keepQuads: 0
|
||||
weldVertices: 1
|
||||
bakeAxisConversion: 1
|
||||
preserveHierarchy: 0
|
||||
skinWeightsMode: 0
|
||||
maxBonesPerVertex: 4
|
||||
minBoneWeight: 0.001
|
||||
optimizeBones: 1
|
||||
meshOptimizationFlags: -1
|
||||
indexFormat: 0
|
||||
secondaryUVAngleDistortion: 8
|
||||
secondaryUVAreaDistortion: 15.000001
|
||||
secondaryUVHardAngle: 88
|
||||
secondaryUVMarginMethod: 1
|
||||
secondaryUVMinLightmapResolution: 40
|
||||
secondaryUVMinObjectScale: 1
|
||||
secondaryUVPackMargin: 4
|
||||
useFileScale: 0
|
||||
strictVertexDataChecks: 0
|
||||
tangentSpace:
|
||||
normalSmoothAngle: 60
|
||||
normalImportMode: 1
|
||||
tangentImportMode: 3
|
||||
normalCalculationMode: 4
|
||||
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||
blendShapeNormalImportMode: 1
|
||||
normalSmoothingSource: 0
|
||||
referencedClips: []
|
||||
importAnimation: 1
|
||||
humanDescription:
|
||||
serializedVersion: 3
|
||||
human: []
|
||||
skeleton: []
|
||||
armTwist: 0.5
|
||||
foreArmTwist: 0.5
|
||||
upperLegTwist: 0.5
|
||||
legTwist: 0.5
|
||||
armStretch: 0.05
|
||||
legStretch: 0.05
|
||||
feetSpacing: 0
|
||||
globalScale: 1
|
||||
rootMotionBoneName:
|
||||
hasTranslationDoF: 0
|
||||
hasExtraRoot: 0
|
||||
skeletonHasParents: 1
|
||||
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||
autoGenerateAvatarMappingIfUnspecified: 1
|
||||
animationType: 2
|
||||
humanoidOversampling: 1
|
||||
avatarSetup: 0
|
||||
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||
importBlendShapeDeformPercent: 1
|
||||
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||
additionalBone: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -1090,26 +1090,6 @@ public class BTC : MonoBehaviour {
|
||||
}
|
||||
}
|
||||
|
||||
[Task]
|
||||
public void StoryCVisited()
|
||||
{
|
||||
if (Task.getState == NodeState.FirstRun)
|
||||
{
|
||||
if (VisitedStories.StoryC)
|
||||
{
|
||||
Debug.Log("Story C was visited.");
|
||||
Task.SetSucceeded();
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.Log("Story C was not visited.");
|
||||
Task.SetFailed();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Task]
|
||||
public void SetStoryAVisited()
|
||||
{
|
||||
@ -1134,56 +1114,12 @@ public class BTC : MonoBehaviour {
|
||||
}
|
||||
}
|
||||
|
||||
[Task]
|
||||
public void SetStoryCVisited()
|
||||
{
|
||||
if (Task.getState == NodeState.FirstRun)
|
||||
{
|
||||
VisitedStories.StoryC = true;
|
||||
Debug.Log($"Set Visited Story C = {VisitedStories.StoryC}");
|
||||
Task.SetSucceeded();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
[Task]
|
||||
public void IncrementRepetitionVisitedCounter()
|
||||
{
|
||||
if (Task.getState == NodeState.FirstRun)
|
||||
{
|
||||
VisitedStories.RepetitionCounter++;
|
||||
Debug.Log($"Set Visited Repetition Counter = {VisitedStories.RepetitionCounter}");
|
||||
Task.SetSucceeded();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
[Task]
|
||||
public void CompareRepetitionVisitedCounter(int number)
|
||||
{
|
||||
if (Task.getState == NodeState.FirstRun)
|
||||
{
|
||||
if (VisitedStories.RepetitionCounter == number)
|
||||
{
|
||||
Debug.Log($"Visited Repetition Counter equals {number}");
|
||||
Task.SetSucceeded();
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.Log($"Visited Repetition Counter not equals {number}");
|
||||
Task.SetFailed();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Task]
|
||||
public void NoStoriesVisited()
|
||||
{
|
||||
if (Task.getState == NodeState.FirstRun)
|
||||
{
|
||||
if (!VisitedStories.StoryA && !VisitedStories.StoryB && !VisitedStories.StoryC)
|
||||
if (!VisitedStories.StoryA && !VisitedStories.StoryB)
|
||||
{
|
||||
Task.SetSucceeded();
|
||||
return;
|
||||
|
@ -104,7 +104,6 @@ public class NamedAVProMediaPlayer : ComponentHandler
|
||||
switch (nodeState)
|
||||
{
|
||||
case NodeState.FirstRun:
|
||||
gameObject.SetActive(true);
|
||||
if (_mediaPlayer != null)
|
||||
{
|
||||
_mediaPlayer.OpenMedia(new MediaPath(videoPath, MediaPathType.RelativeToPersistentDataFolder), autoPlay: false);
|
||||
@ -129,10 +128,9 @@ public class NamedAVProMediaPlayer : ComponentHandler
|
||||
{
|
||||
_mediaPlayer.Stop();
|
||||
_mediaPlayer.CloseMedia();
|
||||
}
|
||||
|
||||
_mediaPlayer.ForceDispose();
|
||||
}
|
||||
}
|
||||
|
||||
Task.SetSucceeded();
|
||||
break;
|
||||
|
50
Viagg-io/Assets/Prefabs/InternetVolumeLogger.prefab
Normal file
50
Viagg-io/Assets/Prefabs/InternetVolumeLogger.prefab
Normal file
@ -0,0 +1,50 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &3384523045912799344
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5113645105102680181}
|
||||
- component: {fileID: 5942046805704443072}
|
||||
m_Layer: 0
|
||||
m_Name: InternetVolumeLogger
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &5113645105102680181
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3384523045912799344}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -1.1034061, y: 0.7802242, z: 0.38190326}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &5942046805704443072
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3384523045912799344}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f56b22124715447a2bf156c1628f37de, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
logInterval: 5
|
||||
logFileName: internet_volume_log.txt
|
||||
enableLogging: 1
|
||||
showInConsole: 1
|
7
Viagg-io/Assets/Prefabs/InternetVolumeLogger.prefab.meta
Normal file
7
Viagg-io/Assets/Prefabs/InternetVolumeLogger.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9a9ef559475fc4d19b0bb4c19950975b
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
393
Viagg-io/Assets/Prefabs/video-container-sitting.prefab
Executable file
393
Viagg-io/Assets/Prefabs/video-container-sitting.prefab
Executable file
@ -0,0 +1,393 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &1064606778807215308
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 6269733995156948630}
|
||||
- component: {fileID: 2165549077798221024}
|
||||
m_Layer: 0
|
||||
m_Name: video-container-sitting
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &6269733995156948630
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1064606778807215308}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: -0.63, y: -0.03, z: 2.355}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 2289990727467313155}
|
||||
- {fileID: 4559309369526134598}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &2165549077798221024
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1064606778807215308}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 96a2d527c1352854b98e30bfd2a38812, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
target: {fileID: 0}
|
||||
lookAxis: 2
|
||||
allowedRotationAxis: 1
|
||||
--- !u!1 &7357111416024985209
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 2289990727467313155}
|
||||
- component: {fileID: 2466982521282103696}
|
||||
m_Layer: 0
|
||||
m_Name: MediaPlayer
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &2289990727467313155
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7357111416024985209}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 6269733995156948630}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &2466982521282103696
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7357111416024985209}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 638c870cac4da414fba921606d504407, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_mediaSource: 1
|
||||
_mediaReference: {fileID: 0}
|
||||
_mediaPath:
|
||||
_pathType: 2
|
||||
_path: Story_A_Picknicken-Start-F-1-ap-tb.mp4
|
||||
_fallbackMediaHints:
|
||||
transparency: 1
|
||||
alphaPacking: 1
|
||||
stereoPacking: 0
|
||||
_autoOpen: 1
|
||||
_autoPlayOnStart: 1
|
||||
_loop: 1
|
||||
_audioVolume: 1
|
||||
_audioBalance: 0
|
||||
_audioMuted: 0
|
||||
_playbackRate: 1
|
||||
_useResampler: 0
|
||||
_resampleMode: 0
|
||||
_resampleBufferSize: 5
|
||||
_videoMapping: 0
|
||||
_textureFilterMode: 1
|
||||
_textureWrapMode: 1
|
||||
_textureAnisoLevel: 0
|
||||
_sideloadSubtitles: 0
|
||||
_subtitlePath:
|
||||
_pathType: 2
|
||||
_path:
|
||||
_audioHeadTransform: {fileID: 0}
|
||||
_audioFocusEnabled: 0
|
||||
_audioFocusTransform: {fileID: 0}
|
||||
_audioFocusWidthDegrees: 90
|
||||
_audioFocusOffLevelDB: 0
|
||||
_httpHeaders:
|
||||
httpHeaders: []
|
||||
_keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
_events:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
_eventMask: -1
|
||||
_pauseMediaOnAppPause: 1
|
||||
_playMediaOnAppUnpause: 1
|
||||
_persistent: 0
|
||||
_forceFileFormat: 0
|
||||
_optionsWindows:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
videoApi: 0
|
||||
useHardwareDecoding: 1
|
||||
useRendererSync: 1
|
||||
useTextureMips: 0
|
||||
use10BitTextures: 0
|
||||
hintAlphaChannel: 0
|
||||
useLowLatency: 0
|
||||
useCustomMovParser: 0
|
||||
useHapNotchLC: 0
|
||||
useStereoDetection: 1
|
||||
useTextTrackSupport: 1
|
||||
useFacebookAudio360Support: 1
|
||||
useAudioDelay: 0
|
||||
forceAudioOutputDeviceName:
|
||||
preferredFilters: []
|
||||
_audioMode: 0
|
||||
audio360ChannelMode: 0
|
||||
startWithHighestBitrate: 0
|
||||
useLowLiveLatency: 0
|
||||
parallelFrameCount: 3
|
||||
prerollFrameCount: 4
|
||||
useUnityAudio: 0
|
||||
enableAudio360: 0
|
||||
_options_macOS:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
textureFormat: 0
|
||||
_audioMode: 0
|
||||
_flags: 0
|
||||
maximumPlaybackRate: 2
|
||||
_preferredPeakBitRate: 0
|
||||
_preferredPeakBitRateUnits: 1
|
||||
_preferredForwardBufferDuration: 0
|
||||
_preferredMaximumResolution: 0
|
||||
_customPreferredMaximumResolution: {x: 0, y: 0}
|
||||
_options_iOS:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
textureFormat: 0
|
||||
_audioMode: 0
|
||||
_flags: 0
|
||||
maximumPlaybackRate: 2
|
||||
_preferredPeakBitRate: 0
|
||||
_preferredPeakBitRateUnits: 1
|
||||
_preferredForwardBufferDuration: 0
|
||||
_preferredMaximumResolution: 0
|
||||
_customPreferredMaximumResolution: {x: 0, y: 0}
|
||||
_options_tvOS:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
textureFormat: 0
|
||||
_audioMode: 0
|
||||
_flags: 0
|
||||
maximumPlaybackRate: 2
|
||||
_preferredPeakBitRate: 0
|
||||
_preferredPeakBitRateUnits: 1
|
||||
_preferredForwardBufferDuration: 0
|
||||
_preferredMaximumResolution: 0
|
||||
_customPreferredMaximumResolution: {x: 0, y: 0}
|
||||
_options_visionOS:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
textureFormat: 0
|
||||
_audioMode: 0
|
||||
_flags: 0
|
||||
maximumPlaybackRate: 2
|
||||
_preferredPeakBitRate: 0
|
||||
_preferredPeakBitRateUnits: 1
|
||||
_preferredForwardBufferDuration: 0
|
||||
_preferredMaximumResolution: 0
|
||||
_customPreferredMaximumResolution: {x: 0, y: 0}
|
||||
_optionsAndroid:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
textureFormat: 0
|
||||
_generateMipmaps: 0
|
||||
_audioMode: 0
|
||||
_preferredMaximumResolution: 0
|
||||
_customPreferredMaximumResolution: {x: 0, y: 0}
|
||||
_preferredPeakBitRate: 0
|
||||
_preferredPeakBitRateUnits: 1
|
||||
videoApi: 2
|
||||
showPosterFrame: 0
|
||||
audio360ChannelMode: 0
|
||||
audio360LatencyMS: 0
|
||||
preferSoftwareDecoder: 0
|
||||
forceRtpTCP: 0
|
||||
forceEnableMediaCodecAsynchronousQueueing: 0
|
||||
fileOffset: 0
|
||||
startWithHighestBitrate: 0
|
||||
minBufferMs: 50000
|
||||
maxBufferMs: 50000
|
||||
bufferForPlaybackMs: 2500
|
||||
bufferForPlaybackAfterRebufferMs: 5000
|
||||
useFastOesPath: 0
|
||||
audioOutput: 0
|
||||
blitTextureFiltering: 0
|
||||
forceEnableMediaCodecAsyncQueueing: 0
|
||||
enableAudio360: 0
|
||||
_optionsWindowsUWP:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
useHardwareDecoding: 1
|
||||
useRendererSync: 1
|
||||
useTextureMips: 0
|
||||
use10BitTextures: 0
|
||||
hintOutput10Bit: 0
|
||||
useLowLatency: 0
|
||||
videoApi: 1
|
||||
_audioMode: 0
|
||||
audio360ChannelMode: 0
|
||||
startWithHighestBitrate: 0
|
||||
useLowLiveLatency: 0
|
||||
_optionsWebGL:
|
||||
httpHeaders:
|
||||
httpHeaders: []
|
||||
keyAuth:
|
||||
keyServerToken:
|
||||
overrideDecryptionKeyBase64:
|
||||
externalLibrary: 0
|
||||
useTextureMips: 0
|
||||
m_VideoPath:
|
||||
m_VideoLocation: 2
|
||||
--- !u!1 &8252953152293453768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 4559309369526134598}
|
||||
- component: {fileID: 3316783114650547420}
|
||||
- component: {fileID: 7010469647222945656}
|
||||
- component: {fileID: 6183954605900507905}
|
||||
m_Layer: 0
|
||||
m_Name: video-actor
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &4559309369526134598
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8252953152293453768}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: -0.00000006705522, y: 0.7071068, z: -0.0000000745058, w: 0.7071068}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 1
|
||||
m_Children: []
|
||||
m_Father: {fileID: 6269733995156948630}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
|
||||
--- !u!33 &3316783114650547420
|
||||
MeshFilter:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8252953152293453768}
|
||||
m_Mesh: {fileID: -8475537623380098382, guid: 73e54a212ecc57840bbebef70d9ffe62, type: 3}
|
||||
--- !u!23 &7010469647222945656
|
||||
MeshRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8252953152293453768}
|
||||
m_Enabled: 1
|
||||
m_CastShadows: 1
|
||||
m_ReceiveShadows: 1
|
||||
m_DynamicOccludee: 1
|
||||
m_StaticShadowCaster: 0
|
||||
m_MotionVectors: 1
|
||||
m_LightProbeUsage: 1
|
||||
m_ReflectionProbeUsage: 1
|
||||
m_RayTracingMode: 2
|
||||
m_RayTraceProcedural: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
- {fileID: 2100000, guid: 3305671f5a40919428aa7935750308d7, type: 2}
|
||||
m_StaticBatchInfo:
|
||||
firstSubMesh: 0
|
||||
subMeshCount: 0
|
||||
m_StaticBatchRoot: {fileID: 0}
|
||||
m_ProbeAnchor: {fileID: 0}
|
||||
m_LightProbeVolumeOverride: {fileID: 0}
|
||||
m_ScaleInLightmap: 1
|
||||
m_ReceiveGI: 1
|
||||
m_PreserveUVs: 0
|
||||
m_IgnoreNormalsForChartDetection: 0
|
||||
m_ImportantGI: 0
|
||||
m_StitchLightmapSeams: 1
|
||||
m_SelectedEditorRenderState: 3
|
||||
m_MinimumChartSize: 4
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_AdditionalVertexStreams: {fileID: 0}
|
||||
--- !u!114 &6183954605900507905
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 8252953152293453768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f6d1977a52888584496b1acc7e998011, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_media: {fileID: 2466982521282103696}
|
||||
_automaticStereoPacking: 1
|
||||
_overrideStereoPacking: 0
|
||||
_stereoRedGreenTint: 0
|
||||
_defaultTexture: {fileID: 0}
|
||||
_renderer: {fileID: 7010469647222945656}
|
||||
_materialIndex: -1
|
||||
_texturePropertyName: _MainTex
|
||||
_offset: {x: 0, y: 0}
|
||||
_scale: {x: 1, y: 1}
|
7
Viagg-io/Assets/Prefabs/video-container-sitting.prefab.meta
Executable file
7
Viagg-io/Assets/Prefabs/video-container-sitting.prefab.meta
Executable file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6cbe3b114f14984419762f5100e9aa16
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -16,11 +16,18 @@ public class LevelManager : MonoBehaviour
|
||||
}
|
||||
|
||||
[SerializeField]
|
||||
private string jumpPointGrottoEssen;
|
||||
string jumpPointGrottoEssen;
|
||||
|
||||
[SerializeField]
|
||||
private string jumpPointGrottoKueche;
|
||||
string jumpPointGrottoKueche;
|
||||
|
||||
[SerializeField]
|
||||
float fadeDuration = 2f;
|
||||
|
||||
[SerializeField]
|
||||
private GameObject _fadeScreenObj;
|
||||
|
||||
private Material _fadeMaterial;
|
||||
|
||||
// A list of LevelEntry objects that can be filled in the inspector
|
||||
public List<LevelEntry> levels = new List<LevelEntry>();
|
||||
@ -47,6 +54,10 @@ public class LevelManager : MonoBehaviour
|
||||
entry.levelButton.onClick.AddListener(() => SetEntryLevel(goToJumpPoint));
|
||||
}
|
||||
}
|
||||
|
||||
_fadeScreenObj = GameObject.FindWithTag("MainCamera").transform.GetChild(0).gameObject;
|
||||
Renderer _renderer = _fadeScreenObj?.GetComponent<Renderer>();
|
||||
_fadeMaterial = _renderer?.sharedMaterial;
|
||||
}
|
||||
|
||||
// This method is called when a button is clicked, and loads the given scene by name
|
||||
@ -57,6 +68,8 @@ public class LevelManager : MonoBehaviour
|
||||
|
||||
IEnumerator LoadAsyncScene(string sceneName)
|
||||
{
|
||||
yield return StartCoroutine(FadeOut());
|
||||
|
||||
AsyncOperation asyncLoad = SceneManager.LoadSceneAsync(sceneName);
|
||||
|
||||
// Wait until the asynchronous scene fully loads
|
||||
@ -66,6 +79,26 @@ public class LevelManager : MonoBehaviour
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerator FadeOut()
|
||||
{
|
||||
_fadeScreenObj.SetActive(true);
|
||||
float elapsedTime = 0f;
|
||||
Color color = _fadeMaterial.color;
|
||||
|
||||
while (elapsedTime < fadeDuration)
|
||||
{
|
||||
elapsedTime += Time.deltaTime;
|
||||
float alpha = Mathf.Lerp(0f, 1f, elapsedTime / fadeDuration);
|
||||
color.a = alpha;
|
||||
_fadeMaterial.color = color;
|
||||
yield return null;
|
||||
}
|
||||
|
||||
// Ensure the final alpha value is set
|
||||
color.a = 1f;
|
||||
_fadeMaterial.color = color;
|
||||
}
|
||||
|
||||
public void SetEntryLevel(string entryPoint)
|
||||
{
|
||||
if (string.IsNullOrEmpty(entryPoint))
|
||||
|
@ -29,6 +29,26 @@
|
||||
"Risotto."
|
||||
]
|
||||
},
|
||||
{
|
||||
"intentID": "Zugabteil-Exposition-U-2",
|
||||
"intentSentences": [
|
||||
"Sto bene, grazie."
|
||||
]
|
||||
},
|
||||
{
|
||||
"intentID": "Zugabteil-Exposition-U-4a",
|
||||
"intentSentences": [
|
||||
"Picnic.",
|
||||
"Scelgo il picnic."
|
||||
]
|
||||
},
|
||||
{
|
||||
"intentID": "Zugabteil-Exposition-U-4b",
|
||||
"intentSentences": [
|
||||
"Grotto.",
|
||||
"Scelgo il grotto."
|
||||
]
|
||||
},
|
||||
{
|
||||
"intentID": "Zugabteil.Szenenwahl.3",
|
||||
"intentSentences": [
|
||||
|
@ -6,6 +6,4 @@ public static class VisitedStories
|
||||
{
|
||||
public static bool StoryA = false;
|
||||
public static bool StoryB = false;
|
||||
public static bool StoryC = false;
|
||||
public static int RepetitionCounter = 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user