public void PlaySound(AudioClip a, MissionCompletedText m) { if (!isPlayingSound) { StartCoroutine(PlayAudioWithDelay(a, 0, m)); } else { StartCoroutine(PlayAudioWithDelay(a, 1.5f, m)); } }
IEnumerator PlayAudioWithDelay(AudioClip a, float delayLength, MissionCompletedText m) { StartCoroutine(AudioTimerCountdown(a.length)); yield return(new WaitForSeconds(delayLength)); if (OnAudio != null) { OnAudio(); // make MissionCompletedText call } audio.PlayOneShot(a); StartCoroutine(EnableLowPassFilter(a.length)); }
void Update() { if (GameManager.Instance.PlayingState != PlayingState.Playing) // only check if game is playing { return; } for (int i = InstantiatedMissions.Count - 1; i >= 0; i--) { MissionBase m = InstantiatedMissions[i]; if (m != null) { if (!m.MissionIsActive) // dont look into inactive missions { return; } if (m.MissionAccomplished()) // look if mission has been accomplished { GoKitTweenExtensions.shake(Camera.main.transform, 0.5f, new Vector3(0.2f, 0.2f, 0.2f), GoShakeType.Position); GameObject g = (GameObject)Instantiate(MissionIsCompletedPrefab); MissionCompletedText t = g.GetComponent <MissionCompletedText>(); t.SoundToPlay = m.ChooseCompletedSound(); t.ColorToUse = new Color(m.PlayerScript.PlayerColor.r, m.PlayerScript.PlayerColor.g, m.PlayerScript.PlayerColor.b, 255); DoorGoUpDown(); //Debug.Log(string.Format("Player {0} completed mission {1})", m.Player.ToString(), m.ToString())); m.GivePointsToPlayer(); } } } /*foreach (MissionBase m in InstantiatedMissions) * { * if (!m.MissionIsActive) // dont look into inactive missions * return; * * if (m.MissionAccomplished()) // look if mission has been accomplished * { * GoKitTweenExtensions.shake(Camera.main.transform, 0.5f, new Vector3(0.2f, 0.2f, 0.2f), GoShakeType.Position); * audio.PlayOneShot(AudioManager.Instance.MissionAccomplishedSound); * Debug.Log(string.Format("{0} mission accomplished ({1} points)", m.ToString(), m.Points)); * m.GivePointsToPlayer(); * } * }*/ }
IEnumerator PlayAudioWithDelay(AudioClip a, float delayLength, MissionCompletedText m) { StartCoroutine(AudioTimerCountdown(a.length)); yield return new WaitForSeconds(delayLength); if (OnAudio != null) OnAudio(); // make MissionCompletedText call audio.PlayOneShot(a); StartCoroutine(EnableLowPassFilter(a.length)); }
public void PlaySound(AudioClip a, MissionCompletedText m) { if (!isPlayingSound) StartCoroutine(PlayAudioWithDelay(a, 0, m)); else StartCoroutine(PlayAudioWithDelay(a, 1.5f, m)); }