diff --git a/Assets/Audio/lautanen.it b/Assets/Audio/lautanen.it new file mode 100644 index 0000000000000000000000000000000000000000..ff08993bd67bc1930bcead22e1da9b79cce42b45 Binary files /dev/null and b/Assets/Audio/lautanen.it differ diff --git a/Assets/Audio/lautanen.it.meta b/Assets/Audio/lautanen.it.meta new file mode 100644 index 0000000000000000000000000000000000000000..1d0f4f56f7534fbc5eebcb1affa8bf5a626631eb --- /dev/null +++ b/Assets/Audio/lautanen.it.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 117f35b9a9c960540ae24eea2bf3ea27 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 1 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/AudioSystem.cs b/Assets/Scripts/AudioSystem.cs index a611bb0a463d80e00d727470fd5aa8e37f0717fc..b78124913e67283c647917395446dd0cbf146931 100644 --- a/Assets/Scripts/AudioSystem.cs +++ b/Assets/Scripts/AudioSystem.cs @@ -10,8 +10,10 @@ public class AudioSystem : MonoBehaviour, IAction private List<AudioClip> musics = new List<AudioClip>(); [SerializeField] - private AudioSource ac; + private AudioSource ac = null; + // Start is called before the first frame update + void Start() { @@ -22,12 +24,7 @@ public class AudioSystem : MonoBehaviour, IAction React(EventType.GameStarts); } - // Update is called once per frame - void Update() - { - - } - + public void React(EventType type) { if (type == EventType.GameStarts) { @@ -62,7 +59,8 @@ public class AudioSystem : MonoBehaviour, IAction public void GameStartsClip() { - StartCoroutine("FadeOutIn", new Timing(0,0)); + StartCoroutine("FadeOutIn", new Timing(2,1)); + StartCoroutine("PlayEffect", 6); } public void CitySmallClip() { @@ -80,7 +78,6 @@ public class AudioSystem : MonoBehaviour, IAction { StartCoroutine("FadeOutIn", new Timing(2, 6)); } - IEnumerator FadeOutIn(Timing t) { //yield return FadeOut(t.duration); yield return StartCoroutine("FadeOut", t.duration); @@ -115,13 +112,20 @@ public class AudioSystem : MonoBehaviour, IAction { float current = Time.time - start; //(max-current)/(max-min) - float volume = (end - Time.time) / (end - start); + float volume = (Time.time - start) / (end - start); yield return null; ac.volume = volume; } ac.volume = 1; } - + public IEnumerator PlayEffect(int clip) + { + AudioSource v = gameObject.AddComponent<AudioSource>(); + v.clip = musics[clip]; + v.Play(); + yield return new WaitForSeconds(v.clip.length + 1); + Destroy(v); + } diff --git a/Assets/Scripts/EventSystem/EventType.cs b/Assets/Scripts/EventSystem/EventType.cs index 1b3013264a49a984465560353127b9961279d50a..80cd57fcd4908c637f7cab71b66433fde216ead5 100644 --- a/Assets/Scripts/EventSystem/EventType.cs +++ b/Assets/Scripts/EventSystem/EventType.cs @@ -4,14 +4,17 @@ using UnityEngine; public enum EventType { - GameStarts, //music - TimePeriodChanged, // music - CitySmall, //music - CityBig, //music - WoodChopped, //effect - StoneCut, //effect - HuntingSmall, //music - HuntingBig, //music - UpgradeBuilt //effect + //music + GameStarts, + TimePeriodChanged, + CitySmall, + CityBig, + HuntingSmall, + HuntingBig, + //effects + WoodChopped, + StoneCut, + Berrypicked, + UpgradeBuilt }