private IEnumerator PlayMajorSoundCoroutine(MajorSoundType type) { if (currMajorType == MajorSoundType.Walk && audioMajor.isPlaying) { audioMajor.clip = walkTail; audioMajor.loop = false; audioMajor.volume = 0.3f; audioMajor.Play(); yield return(new WaitForSeconds(walkTail.length)); } currMajorType = type; audioMajor.Stop(); switch (type) { case MajorSoundType.Walk: yield return(StartCoroutine(StartMoveSoundCoroutine())); break; case MajorSoundType.Idle: { audioMajor.clip = idle; audioMajor.loop = true; audioMajor.volume = 1f; audioMajor.Play(); break; } case MajorSoundType.Scared: { audioMajor.clip = scared; audioMajor.loop = true; audioMajor.volume = 0.1f; audioMajor.Play(); break; } case MajorSoundType.Happy: { audioMajor.clip = happy; audioMajor.loop = true; audioMajor.volume = 1f; audioMajor.Play(); break; } default: break; } }
private IEnumerator PlayMajorSoundCoroutine(MajorSoundType type) { if (currMajorType == MajorSoundType.Walk && audioMajor.isPlaying) { audioMajor.clip = walkTail; audioMajor.loop = false; audioMajor.volume = 0.3f; audioMajor.Play(); yield return new WaitForSeconds(walkTail.length); } currMajorType = type; audioMajor.Stop(); switch (type) { case MajorSoundType.Walk: yield return StartCoroutine(StartMoveSoundCoroutine()); break; case MajorSoundType.Idle: { audioMajor.clip = idle; audioMajor.loop = true; audioMajor.volume = 1f; audioMajor.Play(); break; } case MajorSoundType.Scared: { audioMajor.clip = scared; audioMajor.loop = true; audioMajor.volume = 0.1f; audioMajor.Play(); break; } case MajorSoundType.Happy: { audioMajor.clip = happy; audioMajor.loop = true; audioMajor.volume = 1f; audioMajor.Play(); break; } default: break; } }
public void PlayMajorSound(MajorSoundType type) { StartCoroutine(PlayMajorSoundCoroutine(type)); }