// MUSICS public void PlayMusic(MusicNames musicID) { if (_selectedMusic != null) { StopMusic(); _finishingMusic = _selectedMusic; } _selectedMusic = Musics.Find(music => music.MusicID == musicID); if (_selectedMusic == null) { Debug.LogError("The music to play has not been found -- " + musicID); return; } if (MusicSources.ContainsKey(musicID)) { Debug.LogWarning("The music is already being played -- " + musicID); return; } if (_finishingMusic != null) { StartCoroutine(FadeMixerGroup.StartFade(AudioMixer, "Fading", FadingTime, -40f)); StartCoroutine(ChangePlayingMusic()); } else { _musicCoroutine = StartCoroutine(PlayingMusic(_selectedMusic)); } }
private void PlayAudiosources() { StartCoroutine(FadeMixerGroup.StartFade(_mixer, exposedParam, fadeDuration, 1)); foreach (var audioSource in _audioSources) { audioSource.Play(); } }
public IEnumerator FadeAmbientOut(float fadeTime) { yield return(StartCoroutine(FadeMixerGroup.StartFade(mixer, "AmbientVolume", fadeTime, -1f))); foreach (AudioSource i in ambient.GetComponents <AudioSource>()) { Destroy(i); } }
private IEnumerator StopAudiosource() { StartCoroutine(FadeMixerGroup.StartFade(_mixer, exposedParam, fadeDuration, 0)); yield return(new WaitForSeconds(fadeDuration)); foreach (var audioSource in _audioSources) { audioSource.Stop(); } }
public void adjustCurrentPlayingVolume(float targetVolume) { for (int i = 0; i < musicThemes.Length; i++) // checks all Audio Sources (music themes) { if (musicThemes[i].source.isPlaying) // If the music theme is playing { StartCoroutine(FadeMixerGroup.StartFade(musicThemes[i].source.outputAudioMixerGroup.audioMixer, musicThemes[i].name + "Vol", 2, targetVolume)); // adjusts the volume in a fade } } }
public void FadeOutCurrentAudioTrack(float duration = 1f, float targetVolume = 1f) { if (currentAudioTrack == audioTrack1) { StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic1", duration, 0f)); } else { StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic2", duration, 0f)); } }
public void StopCurrentPlaying() { for (int i = 0; i < musicThemes.Length; i++) // checks all Audio Sources (music themes) { if (musicThemes[i].source.isPlaying) // If the music theme is playing { StartCoroutine(FadeMixerGroup.StartFade(musicThemes[i].source.outputAudioMixerGroup.audioMixer, musicThemes[i].name + "Vol", 5.5f, 0)); // turn down the volume in a fade StartCoroutine(StopAfterDelay(musicThemes[i].source)); // stop the music theme } } }
private void Update() { if (!bStarted && Input.GetButtonDown("Jump")) { player.bCanMove = true; bStarted = true; StartCoroutine(FadeMixerGroup.StartFade(audioMixer_Effects, "EffectsMasterVolume", 0.01f, 1.0f)); StartCoroutine(FadeMixerGroup.StartFade(audioMixer_Music, "MusicMasterVolume", 7.0f, 1.0f)); audioManager_Effects.PlaySound("Start"); animator.SetBool("Active", false); } }
public void PlayMusic(string name, float targetVolume) // play a music theme (by name) after a specified delay (in float seconds) { for (int i = 0; i < musicThemes.Length; i++) // checks all Audio Sources (music themes) { if (musicThemes[i].source.isPlaying) // If the music theme is already playing { if (name != musicThemes[i].name) // if the requested music theme is not this one { // Debug.Log("name: " + name + " - musicThemes[i].name: " + musicThemes[i].name); StartCoroutine(FadeMixerGroup.StartFade(musicThemes[i].source.outputAudioMixerGroup.audioMixer, musicThemes[i].name + "Vol", 5.5f, 0)); // turn down the volume in a fade StartCoroutine(StopAfterDelay(musicThemes[i].source)); // stop the music theme } } else { if (name == "Battle") { if (SceneManager.GetActiveScene().name == "Tutorial") { musicThemes[2].source.clip = battle[4]; // tutorial battle music FadeMixerGroup.SetVolume(musicThemes[5].source.outputAudioMixerGroup.audioMixer, musicThemes[5].name + "Vol", targetVolume); // turn down the volume musicThemes[5].source.Stop(); // stop instructions music FadeMixerGroup.SetVolume(musicThemes[2].source.outputAudioMixerGroup.audioMixer, musicThemes[2].name + "Vol", targetVolume); // turn up the volume musicThemes[2].source.Play(); // play battle music return; } else { musicThemes[2].source.clip = battle[runTimeChoices.runTimeLoopCount - 1]; } StopCurrentPlaying(); StartCoroutine(FadeMixerGroup.StartFade(musicThemes[i].source.outputAudioMixerGroup.audioMixer, musicThemes[i].name + "Vol", 5, targetVolume)); // turn up the volume in a fade } else if (name == "Peace") { musicThemes[3].source.clip = peace[runTimeChoices.runTimeLoopCount - 1]; } StartCoroutine(FadeMixerGroup.StartFade(musicThemes[i].source.outputAudioMixerGroup.audioMixer, musicThemes[i].name + "Vol", 5, targetVolume)); // turn up the volume in a fade } } MusicTheme mt = Array.Find(musicThemes, musicTheme => musicTheme.name == name); if (mt == null) { Debug.LogWarning("Music Theme: " + name + " not found!"); return; } StartCoroutine(PlayAfterDelay(mt.source)); }
public void Start() { if (bPlayMusic) { PlaySound("Music"); PlaySound("Beat"); //StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "MusicMasterVolume", 0.01f, 1.0f)); } if (!bPlayMusic) { StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "EffectsMasterVolume", 0.01f, 1.0f)); } }
// Update is called once per frame void Update() { if (previousVelocity <= 0.5 && rb.velocity.magnitude > 0.5) { StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "drivingVolume", 2, 1)); StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "idleVolume", 2, 0)); } if (previousVelocity > 0.5 && rb.velocity.magnitude <= 0.5) { StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "idleVolume", 2, 1)); StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "drivingVolume", 2, 0)); } previousVelocity = rb.velocity.magnitude; }
private void Start() { if (PlayerPrefs.HasKey("musicVolume")) { audioMixer.SetFloat("MusicVolume", Mathf.Log10(0.0001f) * 20); ///so the fade-in actually starts from silence StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "MusicVolume", musicFadeIn, PlayerPrefsManager.GetMusicVolume())); } else { StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "MusicVolume", musicFadeIn, 1f)); } if (PlayerPrefs.HasKey("sfxVolume")) { ChangeSfxVolume(PlayerPrefsManager.GetSfxVolume()); } }
protected override void ComputeVelocity() { if (bCanMove) { Vector2 move = Vector2.zero; move.x = Input.GetAxisRaw("Horizontal"); // flip gravity if (Input.GetButtonDown("Jump") && (velocity.y < 0.01f && velocity.y > -0.01f)) { FlipGravity(); audioManager_Effects.PlaySound("Jump"); } // play landing sound and fade in and out the beat track if (!bAlreadyLanded && velocity.y < 0.01f && velocity.y > -0.01f) // if not moving on y-axis { bAlreadyLanded = true; audioManager_Effects.PlaySound("Landed"); StartCoroutine(FadeMixerGroup.StartFade(audioMixer_Music, "BeatMasterVolume", 0.4f, 0.0f)); } else if (velocity.y > 0.01f || velocity.y < -0.01f) // if moving up or down { bAlreadyLanded = false; StartCoroutine(FadeMixerGroup.StartFade(audioMixer_Music, "BeatMasterVolume", 0.01f, 1.0f)); } // flip sprite bool flipSprite = (spriteRenderer.flipX ? (move.x > 0.01f) : (move.x < -0.01f)); if (flipSprite) { spriteRenderer.flipX = !spriteRenderer.flipX; } targetVelocity = move * maxSpeed; if ((move.x > 0.01f) || (move.x < -0.01f)) { animator.SetBool("Moving", true); } else { animator.SetBool("Moving", false); } } }
private void TransitStageToNextLevel() { // yes i know this line is very convoluted, but the scenemanager is not able to call GetSceneAt(index) for unloaded scenes. string prevSceneName = Path.GetFileNameWithoutExtension(SceneUtility.GetScenePathByBuildIndex(SceneManager.GetActiveScene().buildIndex - 1)); if (currentSceneName.ElementAt(5) != prevSceneName.ElementAt(5) && !prevSceneName.Contains("Cutscene")) // a hack done to see if the level the user is at changed { currentLevel += 1; Debug.Log("Level Changed: " + currentLevel); // tutorial is lvl 0 // change bgm audioSources[currentLevel].volume = 0.1f; string nextSceneMusicParam = FadeMixerGroup.exposedBGMParams[currentLevel]; string prevSceneMusicParam = FadeMixerGroup.exposedBGMParams[currentLevel - 1]; StartCoroutine(FadeMixerGroup.StartFade(audioMixer, prevSceneMusicParam, 2f, 0f)); StartCoroutine(FadeMixerGroup.StartFade(audioMixer, nextSceneMusicParam, 4f, 1f)); } }
public void PlayCrossFadeMusic(AudioClip clipToPlay, float duration = 1f, float targetVolume = 1f, float audioPosition = 0) { if (currentAudioTrack == audioTrack1) { StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic1", duration, 0f)); StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic2", duration, targetVolume)); currentAudioTrack = audioTrack2; } else { StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic2", duration, 0f)); StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic1", duration, targetVolume)); currentAudioTrack = audioTrack1; } currentAudioTrack.time = audioPosition; currentAudioTrack.clip = clipToPlay; currentAudioTrack.Play(); }
private void Update() { if (counter >= 3) { bReady = true; StartCoroutine(FadeMixerGroup.StartFade(audioMixer_Music, "MusicMasterVolume", 1.0f, 0.0f)); GetComponent<AudioSource>().minDistance = 30.0f; GetComponent<AudioSource>().maxDistance = 130.0f; } DisplayCounters(); if (bActive) { StartCoroutine(FadeAudioSource.StartFade(GetComponent<AudioSource>(), 0.2f, 0.0f)); animator.SetBool("Active", true); StartCoroutine(EndScreenCoroutine()); } }
void Update() { if (_nextSoundTime < Time.timeAsDouble) { AudioClip clip = _audioClips.GetRandom(); // If we are playing Nosce Te Ipsem, we will want to treat the volume in certain ways and // wait a while before we play anything else if (_audioClips.IndexOf(clip) == _audioClips.Count - 1) { IncidentalSoundSource.volume = 0.0f; IncidentalSoundSource.PlayOneShot(clip); StartCoroutine(FadeMixerGroup.StartFade(IncidentalSoundSource, 8f, 0.125f)); _nextSoundTime = Time.timeAsDouble + 180; } else { IncidentalSoundSource.volume = 0.20f; IncidentalSoundSource.PlayOneShot(clip); _nextSoundTime = Time.timeAsDouble + Random.Range(10, 50); } } }
//public AudioMixer audioMixer_Music; private void Update() { if (bActive) { finalScoreText.text = "Y0U F0UND " + player.score.ToString() + " / 6 C0INS"; deathCountText.text = "Y0U DIED " + Mathf.FloorToInt(player.deathCount / 2).ToString() + " TIMES"; // glitch with dying twice holder.SetActive(true); animator.SetBool("Active", true); // restart on SPACE press if (Input.GetButtonDown("Jump")) { //Debug.Log("Restarting game"); // fade music // fade out should be shorter than the RestartGameCoroutine() WaitForSeconds() //StartCoroutine(FadeMixerGroup.StartFade(audioMixer_Music, "MusicMasterVolume", 4.0f, 0.0f)); StartCoroutine(FadeMixerGroup.StartFade(audioMixer_Effects, "EffectsMasterVolume", 4.0f, 0.0f)); //StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "MasterVolume", 4.0f, 0.0f)); StartCoroutine(RestartGameCoroutine()); } } }
private void DeathSequence() { deathScreen.SetActive(true); StartCoroutine(FadeMixerGroup.StartFade(audioMixer, "Volume", 1f, -80f)); }
void updateStage() { currentStage = SceneManager.GetActiveScene().buildIndex; currentSceneName = SceneManager.GetSceneByBuildIndex(currentStage).name; stageNameText.text = currentSceneName; if (currentStage >= 1) { if (!audioIsPlaying) // play audio if it is not playing already { startingSnapshot = audioMixer.FindSnapshot("Starting"); pausedSnapshot = audioMixer.FindSnapshot("Paused"); audioIsPlaying = true; audioSources = GetComponents <AudioSource>(); foreach (AudioSource audioSource in audioSources) { FadeMixerGroup.TurnOffSound(audioMixer); audioSource.Play(); } StartCoroutine(FadeMixerGroup.StartFade(audioMixer, FadeMixerGroup.exposedBGMParams[0], 2f, 1f)); } // update timeTakenPerStage if (!timeTakenPerStage.ContainsKey(currentSceneName)) { Debug.Log("not loading from save data"); timeTakenPerStage.Add(currentSceneName, 0f); // key may already exist if loaded from savefile. timeTakenCurrentStage = 0f; thingsPickedUp = new List <string>(); } // set pause menu ui and time debug text toUpdateTime = true; PauseMenuUI = gameObject.transform.Find("PauseCanvas/PauseMenu").gameObject; if (PauseMenuUI != null) { PauseMenuUI.SetActive(false); Button pauseButton = GetComponentInChildren <Button>(); pauseButton.onClick.AddListener(delegate { PauseGame(); }); Button[] buttons = PauseMenuUI.GetComponentsInChildren <Button>(); foreach (Button button in buttons) { switch (button.name) { case "ResumeButton": button.onClick.AddListener(delegate { ResumeGame(); }); break; case "QuitButton": button.onClick.AddListener(delegate { QuitGame(); }); break; } } } // set player spawn position player = GameObject.FindGameObjectWithTag("Player"); if (player != null) { playerSpawnPosition = player.transform.position; } setProgressSlider(); TransitStageToNextLevel(); } if (currentStage >= 2 && WeaponUI == null) { setWeaponUI(); } SaveSystem.SavePlayer(); }
public void FadeAmbientIn(float fadeTime) { StartCoroutine(FadeMixerGroup.StartFade(mixer, "AmbientVolume", fadeTime, 1f)); }
public void FadeOutAllMusic(float duration = 1.0f) { StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic1", duration, 0f)); StartCoroutine(FadeMixerGroup.StartFade(mainAudioMixer, "VolumeMusic2", duration, 0f)); }
public void FadeMusicIn(float fadeTime) { StartCoroutine(FadeMixerGroup.StartFade(mixer, "MusicVolume", fadeTime, 1f)); }