Compare commits
10 Commits
leveldesig
...
master
Author | SHA1 | Date |
---|---|---|
Nadine Ganz | 428d7a1e0b | |
Nadine Ganz | 9fb35fc9b3 | |
Nadine Ganz | 7a66f72aa8 | |
Nadine Ganz | 75d6785dc6 | |
Nadine Ganz | 6128ae9982 | |
Nadine Ganz | ab3345b106 | |
Nadine Ganz | 2540747b86 | |
Nadine Ganz | 56f7eb0408 | |
Nadine Ganz | 71fd8daad5 | |
Nadine Ganz | 5de8652d62 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -5,12 +5,12 @@
|
||||||
|
|
||||||
//RunTree("32_Grotto_Story_B_Grotto_Intro")
|
//RunTree("32_Grotto_Story_B_Grotto_Intro")
|
||||||
|
|
||||||
//RunTree("32_Grotto_Kueche_Intro")
|
RunTree("32_Grotto_Kueche_Intro")
|
||||||
RunTree("32_Grotto_Kueche_Zwiebeln_schneiden")
|
RunTree("32_Grotto_Kueche_Zwiebeln_schneiden")
|
||||||
RunTree("32_Grotto_Kueche_alles_gefunden")
|
RunTree("32_Grotto_Kueche_alles_gefunden")
|
||||||
//RunTree("32_Grotto_Kueche_Kochen_Anzahl")
|
//RunTree("32_Grotto_Kueche_Kochen_Anzahl")
|
||||||
//RunTree("32_Grotto_Kueche_Zusammen_Kochen")
|
//RunTree("32_Grotto_Kueche_Zusammen_Kochen")
|
||||||
|
//RunTree("32_Grotto_Im_Grotto_Essen_Intro")
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -458,11 +458,13 @@ Tree("32_Grotto_Story_B_Grotto_Antwort_Nonna_Grotto") {
|
||||||
Tree("32_Grotto_Kueche_Intro") {
|
Tree("32_Grotto_Kueche_Intro") {
|
||||||
// --- Kueche - Intro ---
|
// --- Kueche - Intro ---
|
||||||
Composite(Sequence) {
|
Composite(Sequence) {
|
||||||
|
// Initialization
|
||||||
|
BTC.Run("StudioEventEmitter.STATIC.Ambi3D")
|
||||||
|
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche1FIntro")
|
BTC.Run("AudioSource.AUDIO.Kueche1FIntro")
|
||||||
|
|
||||||
// Schuerze greifen
|
// Schuerze greifen
|
||||||
BTC.Run("GO/NamedGrabEvent.INTERACTABLES.Schuerze")
|
BTC.Run("GO/NamedGrabEvent.INTERACTABLES.Schuerze")
|
||||||
//BTC.GetKeyDown("Return")
|
|
||||||
BTC.Hide("GO/NamedGrabEvent.INTERACTABLES.Schuerze")
|
BTC.Hide("GO/NamedGrabEvent.INTERACTABLES.Schuerze")
|
||||||
|
|
||||||
BTC.SynthesizeText("Lies mir bitte das Rezept vor.")
|
BTC.SynthesizeText("Lies mir bitte das Rezept vor.")
|
||||||
|
@ -562,10 +564,12 @@ Tree("32_Grotto_Kueche_Zwiebeln_schneiden") {
|
||||||
// Zwiebeln schneiden
|
// Zwiebeln schneiden
|
||||||
BTC.Set("Collider.INTERACTABLES.ZwiebelTrigger", "otherTag", "Messer")
|
BTC.Set("Collider.INTERACTABLES.ZwiebelTrigger", "otherTag", "Messer")
|
||||||
BTC.Run("Collider.INTERACTABLES.ZwiebelTrigger")
|
BTC.Run("Collider.INTERACTABLES.ZwiebelTrigger")
|
||||||
BTC.Run("StudioEventEmitter.INTERACTABLES.ZwiebelSchneiden")
|
Composite(Marathon) {
|
||||||
BTC.Hide("GO.INTERACTABLES.Zwiebel01")
|
BTC.Run("StudioEventEmitter.INTERACTABLES.ZwiebelSchneiden")
|
||||||
BTC.Show("GO.INTERACTABLES.GeschnitteneZwiebe")
|
BTC.Hide("GO.INTERACTABLES.Zwiebel01")
|
||||||
|
BTC.Show("GO.INTERACTABLES.GeschnitteneZwiebe")
|
||||||
|
}
|
||||||
|
|
||||||
BTC.SynthesizeText("Bitte suche nun die anderen Zutaten zusammen. Ich räume in der Zwischenzeit ein bisschen auf.")
|
BTC.SynthesizeText("Bitte suche nun die anderen Zutaten zusammen. Ich räume in der Zwischenzeit ein bisschen auf.")
|
||||||
BTC.SpeechOutputEnded()
|
BTC.SpeechOutputEnded()
|
||||||
|
|
||||||
|
@ -787,14 +791,20 @@ Tree("32_Grotto_Kueche_alles_gefunden") {
|
||||||
BTC.SynthesizeText("Super, du hast alles gefunden. Bitte gib nun etwas Olivenöl in den Topf.")
|
BTC.SynthesizeText("Super, du hast alles gefunden. Bitte gib nun etwas Olivenöl in den Topf.")
|
||||||
BTC.SpeechOutputEnded()
|
BTC.SpeechOutputEnded()
|
||||||
|
|
||||||
// Oel in Topf geben - Particle Trigger
|
// Oel in Topf geben - ToDo: Particle Trigger
|
||||||
// ...
|
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Olivenoel")
|
||||||
|
BTC.Run("Collider.INTERACTABLES.Topf")
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche2Fallesgefun")
|
BTC.Run("AudioSource.AUDIO.Kueche2Fallesgefun")
|
||||||
|
|
||||||
|
// Herd anstellen - ToDo: Handling in Story?
|
||||||
|
BTC.Run("NamedGrabEvent.STATIC.Herdschalter")
|
||||||
|
BTC.Run("StudioEventEmitter.STATIC.HerdplatteAnstelle")
|
||||||
|
|
||||||
// Zwiebeln in Topf geben
|
// Zwiebeln in Topf geben
|
||||||
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Zwiebeln")
|
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Zwiebeln")
|
||||||
BTC.Run("Collider.INTERACTABLES.Topf")
|
BTC.Run("Collider.INTERACTABLES.Topf")
|
||||||
BTC.Start("StudioEventEmitter.STATIC.Herdplatte")
|
BTC.Run("StudioEventEmitter.INTERACTABLES.ZwiebelnInTopf")
|
||||||
|
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche3Fallesgefun")
|
BTC.Run("AudioSource.AUDIO.Kueche3Fallesgefun")
|
||||||
|
|
||||||
// Frage beantworten
|
// Frage beantworten
|
||||||
|
@ -904,6 +914,7 @@ Tree("32_Grotto_Kueche_Interesse_Kochen") {
|
||||||
// --- Kueche - Interesse Kochen ---
|
// --- Kueche - Interesse Kochen ---
|
||||||
Composite(Sequence) {
|
Composite(Sequence) {
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche1FInteresseK")
|
BTC.Run("AudioSource.AUDIO.Kueche1FInteresseK")
|
||||||
|
// ToDo: Freie Antwort als Speech Input
|
||||||
BTC.Set("TextMeshPro.HANDMENU.Option1Button", "text", "Lasagne")
|
BTC.Set("TextMeshPro.HANDMENU.Option1Button", "text", "Lasagne")
|
||||||
BTC.Show("GO.HANDMENU.Option1Button")
|
BTC.Show("GO.HANDMENU.Option1Button")
|
||||||
BTC.SetBool("32_Grotto_Kueche_Interesse_Kochen_Button_Clicked", false)
|
BTC.SetBool("32_Grotto_Kueche_Interesse_Kochen_Button_Clicked", false)
|
||||||
|
@ -1016,16 +1027,13 @@ Tree("32_Grotto_Kueche_Zusammen_Kochen") {
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche1FZusammenKo")
|
BTC.Run("AudioSource.AUDIO.Kueche1FZusammenKo")
|
||||||
|
|
||||||
// Risotto in Topf geben
|
// Risotto in Topf geben
|
||||||
BTC.Run("GO/NamedGrabEvent/NamedOutline.INTERACTABLES.Risotto")
|
|
||||||
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Risotto")
|
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Risotto")
|
||||||
BTC.Run("Collider.INTERACTABLES.Topf")
|
BTC.Run("Collider.INTERACTABLES.Topf")
|
||||||
|
|
||||||
// Ruehren
|
// Ruehren
|
||||||
BTC.Run("NamedGrabEvent.INTERACTABLES.Loeffel")
|
|
||||||
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Loeffel")
|
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Loeffel")
|
||||||
BTC.Run("Collider.INTERACTABLES.Topf")
|
BTC.Run("Collider.INTERACTABLES.Topf")
|
||||||
// Wie lange ruehren?
|
BTC.Wait(2) // Wie lange ruehren?
|
||||||
BTC.Wait(2)
|
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche2FZusammenKo")
|
BTC.Run("AudioSource.AUDIO.Kueche2FZusammenKo")
|
||||||
|
|
||||||
// Wein leuchtet
|
// Wein leuchtet
|
||||||
|
@ -1035,10 +1043,24 @@ Tree("32_Grotto_Kueche_Zusammen_Kochen") {
|
||||||
BTC.Run("NamedGrabEvent/NamedOutline.INTERACTABLES.Weisswein")
|
BTC.Run("NamedGrabEvent/NamedOutline.INTERACTABLES.Weisswein")
|
||||||
BTC.Disable("NamedGrabEvent/NamedOutline.INTERACTABLES.Weisswein")
|
BTC.Disable("NamedGrabEvent/NamedOutline.INTERACTABLES.Weisswein")
|
||||||
|
|
||||||
// Wein in Topf giessen
|
// Wein in Topf giessen - Todo: Particle Trigger
|
||||||
// ...
|
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Weisswein")
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche3FZusammenKo")
|
BTC.Run("Collider.INTERACTABLES.Topf")
|
||||||
|
BTC.StopSound("StudioEventEmitter.INTERACTABLES.ZwiebelnInTopf")
|
||||||
|
BTC.Run("StudioEventEmitter.INTERACTABLES.Abloeschen")
|
||||||
|
|
||||||
|
Composite(Marathon) {
|
||||||
|
Composite(Sequence) {
|
||||||
|
BTC.Wait(6)
|
||||||
|
BTC.SetFloat("StudioEventEmitter.INTERACTABLES.Abloeschen", "blubbern.transition", 1)
|
||||||
|
BTC.Show("GO.INTERACTABLES.ChangeSound") // Ruehren
|
||||||
|
}
|
||||||
|
|
||||||
|
Composite(Sequence) {
|
||||||
|
BTC.Run("AudioSource.AUDIO.Kueche3FZusammenKo")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Bouillon leuchtet
|
// Bouillon leuchtet
|
||||||
BTC.Enable("NamedGrabEvent/NamedOutline.INTERACTABLES.Bouillon")
|
BTC.Enable("NamedGrabEvent/NamedOutline.INTERACTABLES.Bouillon")
|
||||||
|
|
||||||
|
@ -1046,16 +1068,17 @@ Tree("32_Grotto_Kueche_Zusammen_Kochen") {
|
||||||
BTC.Run("NamedGrabEvent/NamedOutline.INTERACTABLES.Bouillon")
|
BTC.Run("NamedGrabEvent/NamedOutline.INTERACTABLES.Bouillon")
|
||||||
BTC.Disable("NamedGrabEvent/NamedOutline.INTERACTABLES.Bouillon")
|
BTC.Disable("NamedGrabEvent/NamedOutline.INTERACTABLES.Bouillon")
|
||||||
|
|
||||||
// Bouillon in Topf geben
|
// Bouillon in Topf geben - Todo: Particle Trigger
|
||||||
// ...
|
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Bouillon")
|
||||||
|
BTC.Run("Collider.INTERACTABLES.Topf")
|
||||||
BTC.Run("AudioSource.AUDIO.Kueche4FZusammenKo")
|
BTC.Run("AudioSource.AUDIO.Kueche4FZusammenKo")
|
||||||
|
|
||||||
// Glas Wasser mit Steinpilze in Topf geben
|
// Glas Wasser mit Steinpilze in Topf geben
|
||||||
BTC.Run("NamedGrabEvent/NamedOutline.INTERACTABLES.Steinpilze")
|
|
||||||
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Steinpilze")
|
BTC.Set("Collider.INTERACTABLES.Topf", "otherTag", "Steinpilze")
|
||||||
BTC.Run("Collider.INTERACTABLES.Topf")
|
BTC.Run("Collider.INTERACTABLES.Topf")
|
||||||
|
|
||||||
RunTree("32_Grotto_Kueche_Parmigiano")
|
//RunTree("32_Grotto_Kueche_Parmigiano")
|
||||||
|
RunTree("32_Grotto_Im_Grotto_Essen_Intro")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1160,7 +1183,24 @@ Tree("32_Grotto_Kueche_Parmigiano") {
|
||||||
}
|
}
|
||||||
|
|
||||||
Tree("32_Grotto_Im_Grotto_Essen_Intro") {
|
Tree("32_Grotto_Im_Grotto_Essen_Intro") {
|
||||||
|
// --- Im Grotto Essen - Intro ---
|
||||||
|
Composite(Sequence) {
|
||||||
|
BTC.Wait(10)
|
||||||
|
|
||||||
|
// Initialization
|
||||||
|
Composite(Marathon) {
|
||||||
|
BTC.SetPosition("GO.XRInteractionHandsSetup.XROrigin", -3.837, 0, -10.676)
|
||||||
|
BTC.SetPosition("GO.HANDMENU", -3.837, 0, -10.676)
|
||||||
|
BTC.Run("StudioEventEmitter.STATIC.KuechenAmbi")
|
||||||
|
BTC.Run("StudioEventEmitter.AUDIO.Ambi2D")
|
||||||
|
BTC.StopSound("StudioEventEmitter.STATIC.Ambi3D")
|
||||||
|
BTC.StopSound("StudioEventEmitter.STATIC.HerdplatteAnstelle")
|
||||||
|
BTC.StopSound("StudioEventEmitter.INTERACTABLES.Abloeschen")
|
||||||
|
}
|
||||||
|
|
||||||
|
BTC.GetKeyDown("Return")
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Tree("32_Grotto_Kueche_Hide") {
|
Tree("32_Grotto_Kueche_Hide") {
|
||||||
|
|
|
@ -217,6 +217,18 @@ public class BTC : MonoBehaviour {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Task]
|
||||||
|
public void SetFloat(string objectName, string key, float value)
|
||||||
|
{
|
||||||
|
List<ComponentHandler> handlers = GetHandlers(objectName);
|
||||||
|
handlers.ForEach(handler => handler.SetFloat(Task.getState, key, value));
|
||||||
|
if (handlers.Count == 0)
|
||||||
|
{
|
||||||
|
Debug.LogWarning($"BTC.SetFloat: no components under the name '{objectName}'");
|
||||||
|
Task.SetSucceeded();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[Task]
|
[Task]
|
||||||
public void Enable(string objectName)
|
public void Enable(string objectName)
|
||||||
{
|
{
|
||||||
|
@ -278,25 +290,13 @@ public class BTC : MonoBehaviour {
|
||||||
}
|
}
|
||||||
|
|
||||||
[Task]
|
[Task]
|
||||||
public void Start(string objectName)
|
public void StopSound(string objectName)
|
||||||
{
|
{
|
||||||
List<ComponentHandler> handlers = GetHandlers(objectName);
|
List<ComponentHandler> handlers = GetHandlers(objectName);
|
||||||
handlers.ForEach(handler => handler.Start(Task.getState));
|
handlers.ForEach(handler => handler.StopSound(Task.getState));
|
||||||
if (handlers.Count == 0)
|
if (handlers.Count == 0)
|
||||||
{
|
{
|
||||||
Debug.LogWarning($"BTC.Start: no components under the name '{objectName}'");
|
Debug.LogWarning($"BTC.StopSound: no components under the name '{objectName}'");
|
||||||
Task.SetSucceeded();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[Task]
|
|
||||||
public void Stop(string objectName)
|
|
||||||
{
|
|
||||||
List<ComponentHandler> handlers = GetHandlers(objectName);
|
|
||||||
handlers.ForEach(handler => handler.Stop(Task.getState));
|
|
||||||
if (handlers.Count == 0)
|
|
||||||
{
|
|
||||||
Debug.LogWarning($"BTC.Stop: no components under the name '{objectName}'");
|
|
||||||
Task.SetSucceeded();
|
Task.SetSucceeded();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -180,6 +180,15 @@ public class ComponentHandler : MonoBehaviour {
|
||||||
Task.SetError();
|
Task.SetError();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public virtual void SetFloat(MyBT.NodeState nodeState, string key, float value)
|
||||||
|
{
|
||||||
|
if (Task.isDebugging)
|
||||||
|
{
|
||||||
|
Debug.LogWarning($"ComponentHandler.SetFloat: not implemented for {this.GetType()}");
|
||||||
|
}
|
||||||
|
Task.SetError();
|
||||||
|
}
|
||||||
|
|
||||||
public virtual void Enable(MyBT.NodeState nodeState)
|
public virtual void Enable(MyBT.NodeState nodeState)
|
||||||
{
|
{
|
||||||
if (Task.isDebugging)
|
if (Task.isDebugging)
|
||||||
|
@ -220,19 +229,11 @@ public class ComponentHandler : MonoBehaviour {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual void Start(MyBT.NodeState nodeState)
|
public virtual void StopSound(MyBT.NodeState nodeState)
|
||||||
{
|
{
|
||||||
if (Task.isDebugging)
|
if (Task.isDebugging)
|
||||||
{
|
{
|
||||||
Debug.LogWarning($"ComponentHandler.Start: not implemented for {this.GetType()}");
|
Debug.LogWarning($"ComponentHandler.StopSound: not implemented for {this.GetType()}");
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public virtual void Stop(MyBT.NodeState nodeState)
|
|
||||||
{
|
|
||||||
if (Task.isDebugging)
|
|
||||||
{
|
|
||||||
Debug.LogWarning($"ComponentHandler.Stop: not implemented for {this.GetType()}");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -71,55 +71,55 @@ public class NamedStudioEventEmitter : ComponentHandler {
|
||||||
public override void Run(MyBT.NodeState nodeState) {
|
public override void Run(MyBT.NodeState nodeState) {
|
||||||
// whan aborting
|
// whan aborting
|
||||||
if (nodeState == NodeState.Aborting) {
|
if (nodeState == NodeState.Aborting) {
|
||||||
studioEventEmitter.Stop();
|
bool isOneShot;
|
||||||
|
studioEventEmitter.EventDescription.isOneshot(out isOneShot);
|
||||||
|
if (isOneShot)
|
||||||
|
{
|
||||||
|
studioEventEmitter.Stop();
|
||||||
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// at start
|
// at start
|
||||||
if (nodeState == NodeState.FirstRun) {
|
if (nodeState == NodeState.FirstRun) {
|
||||||
// reset event trigger
|
|
||||||
studioEventEmitter.Play();
|
studioEventEmitter.Play();
|
||||||
|
UnityEngine.Debug.Log($"NamedStudioEventEmitter: Event from {gameObject.name} start playing.");
|
||||||
}
|
}
|
||||||
|
|
||||||
// int val;
|
|
||||||
// FMOD.RESULT res = studioEventEmitter.EventInstance.getTimelinePosition(out val);
|
|
||||||
|
|
||||||
// during runtime
|
// during runtime
|
||||||
if (nodeState == NodeState.Running) {
|
if (nodeState == NodeState.Running) {
|
||||||
|
bool isOneShot;
|
||||||
|
studioEventEmitter.EventDescription.isOneshot(out isOneShot);
|
||||||
|
if (!isOneShot)
|
||||||
|
{
|
||||||
|
Task.SetSucceeded();
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!studioEventEmitter.IsPlaying()) {
|
if (!studioEventEmitter.IsPlaying()) {
|
||||||
|
|
||||||
Task.SetSucceeded();
|
Task.SetSucceeded();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Start(MyBT.NodeState nodeState)
|
// For Looping Sounds
|
||||||
|
public override void StopSound(MyBT.NodeState nodeState)
|
||||||
{
|
{
|
||||||
if (nodeState == NodeState.Aborting)
|
|
||||||
{
|
|
||||||
studioEventEmitter.Stop();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (nodeState == NodeState.FirstRun)
|
if (nodeState == NodeState.FirstRun)
|
||||||
{
|
{
|
||||||
studioEventEmitter.Play();
|
studioEventEmitter.Stop();
|
||||||
Task.SetSucceeded();
|
Task.SetSucceeded();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Stop(MyBT.NodeState nodeState)
|
public override void SetFloat(NodeState nodeState, string key, float value)
|
||||||
{
|
{
|
||||||
if (nodeState == NodeState.Aborting)
|
|
||||||
{
|
|
||||||
studioEventEmitter.Stop();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (nodeState == NodeState.FirstRun)
|
if (nodeState == NodeState.FirstRun)
|
||||||
{
|
{
|
||||||
studioEventEmitter.Stop();
|
studioEventEmitter.SetParameter(key, value);
|
||||||
Task.SetSucceeded();
|
Task.SetSucceeded();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -405,5 +405,12 @@ namespace FMODUnity
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void ChangeEvent(EventReference eventRef)
|
||||||
|
{
|
||||||
|
Stop();
|
||||||
|
EventReference = eventRef;
|
||||||
|
Lookup();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
2024-12-10T18:42:57.0313470Z
|
2025-01-08T20:00:27.2696630Z
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,23 @@
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
|
using FMODUnity;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
public class ChangeFMODEvent : MonoBehaviour
|
||||||
|
{
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
|
[SerializeField]
|
||||||
|
EventReference _newSoundRef;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
StudioEventEmitter _emitter;
|
||||||
|
|
||||||
|
void Start()
|
||||||
|
{
|
||||||
|
_emitter.Stop();
|
||||||
|
_emitter.ChangeEvent(_newSoundRef);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b0b655e179ae44f17a6518841330b41a
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -1,11 +1,15 @@
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
|
using FMOD;
|
||||||
using FMODUnity;
|
using FMODUnity;
|
||||||
|
#endif
|
||||||
|
|
||||||
[RequireComponent(typeof(Rigidbody))]
|
[RequireComponent(typeof(Rigidbody))]
|
||||||
public class OnCollideSound : MonoBehaviour
|
public class OnCollideSound : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
EventReference soundRef;
|
EventReference soundRef;
|
||||||
|
|
||||||
|
@ -44,10 +48,11 @@ public class OnCollideSound : MonoBehaviour
|
||||||
{
|
{
|
||||||
// Play default collide sound
|
// Play default collide sound
|
||||||
RuntimeManager.PlayOneShot(soundRef, transform.position);
|
RuntimeManager.PlayOneShot(soundRef, transform.position);
|
||||||
Debug.Log(gameObject.name);
|
UnityEngine.Debug.Log(gameObject.name);
|
||||||
}
|
}
|
||||||
|
|
||||||
_specialCase = false;
|
_specialCase = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,11 +2,15 @@ using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.XR.Interaction.Toolkit;
|
using UnityEngine.XR.Interaction.Toolkit;
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
|
using FMOD;
|
||||||
using FMODUnity;
|
using FMODUnity;
|
||||||
|
#endif
|
||||||
|
|
||||||
[RequireComponent(typeof(XRGrabInteractable))]
|
[RequireComponent(typeof(XRGrabInteractable))]
|
||||||
public class OnGrabSound : MonoBehaviour
|
public class OnGrabSound : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
EventReference soundRef;
|
EventReference soundRef;
|
||||||
|
|
||||||
|
@ -23,4 +27,5 @@ public class OnGrabSound : MonoBehaviour
|
||||||
{
|
{
|
||||||
RuntimeManager.PlayOneShot(soundRef, transform.position);
|
RuntimeManager.PlayOneShot(soundRef, transform.position);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,10 +2,14 @@ using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.XR.Interaction.Toolkit;
|
using UnityEngine.XR.Interaction.Toolkit;
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
|
using FMOD;
|
||||||
using FMODUnity;
|
using FMODUnity;
|
||||||
|
#endif
|
||||||
|
|
||||||
public class OnSocketSnapSound : MonoBehaviour
|
public class OnSocketSnapSound : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
EventReference soundRef;
|
EventReference soundRef;
|
||||||
|
|
||||||
|
@ -22,4 +26,5 @@ public class OnSocketSnapSound : MonoBehaviour
|
||||||
{
|
{
|
||||||
RuntimeManager.PlayOneShot(soundRef, transform.position);
|
RuntimeManager.PlayOneShot(soundRef, transform.position);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
|
using FMOD;
|
||||||
|
using FMODUnity;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
public class OnStirringSound : MonoBehaviour
|
||||||
|
{
|
||||||
|
#if FMOD_AVAILABLE
|
||||||
|
[SerializeField]
|
||||||
|
Rigidbody _rigidbody;
|
||||||
|
|
||||||
|
StudioEventEmitter _stirringSoundEvent;
|
||||||
|
|
||||||
|
void Start()
|
||||||
|
{
|
||||||
|
_stirringSoundEvent = GetComponent<StudioEventEmitter>();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Update()
|
||||||
|
{
|
||||||
|
if (_rigidbody.velocity != Vector3.zero)
|
||||||
|
{
|
||||||
|
if (!_stirringSoundEvent.IsPlaying())
|
||||||
|
{
|
||||||
|
_stirringSoundEvent.Play();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_stirringSoundEvent.Stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void OnDestroy()
|
||||||
|
{
|
||||||
|
_stirringSoundEvent.Stop();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 753dee63ed4644fb4826b73d51770690
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -0,0 +1,28 @@
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class OnTriggerPot : MonoBehaviour
|
||||||
|
{
|
||||||
|
[SerializeField]
|
||||||
|
string loeffelTag;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
GameObject stirringSound;
|
||||||
|
|
||||||
|
private void OnTriggerEnter(Collider other)
|
||||||
|
{
|
||||||
|
if (other.tag == loeffelTag)
|
||||||
|
{
|
||||||
|
stirringSound.SetActive(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnTriggerExit(Collider other)
|
||||||
|
{
|
||||||
|
if (other.tag == loeffelTag)
|
||||||
|
{
|
||||||
|
stirringSound.SetActive(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 87cfd4637a2f74f57b00dff0a8870cb9
|
||||||
|
MonoImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -140,6 +140,9 @@ PlayerSettings:
|
||||||
bundleVersion: 0.1
|
bundleVersion: 0.1
|
||||||
preloadedAssets:
|
preloadedAssets:
|
||||||
- {fileID: 11400000, guid: be340e3c48769439d8d18a5a2bccd498, type: 2}
|
- {fileID: 11400000, guid: be340e3c48769439d8d18a5a2bccd498, type: 2}
|
||||||
|
- {fileID: 11400000, guid: bfa1182bd221b4ca89619141f66f1260, type: 2}
|
||||||
|
- {fileID: -8196854396901781169, guid: 1a4c68ca72a83449f938d669337cb305, type: 2}
|
||||||
|
- {fileID: -64324148185763206, guid: a9a6963505ddf7f4d886008c6dc86122, type: 2}
|
||||||
metroInputSource: 0
|
metroInputSource: 0
|
||||||
wsaTransparentSwapchain: 0
|
wsaTransparentSwapchain: 0
|
||||||
m_HolographicPauseOnTrackingLoss: 1
|
m_HolographicPauseOnTrackingLoss: 1
|
||||||
|
|
Loading…
Reference in New Issue