public void PlayBGM(EAudioList audio, EFadeType type, float sec) { m_nowBgmIndex ^= 1; bool inFade = false; bool outFade = false; switch (type) { case EFadeType.In: inFade = true; break; case EFadeType.Out: outFade = true; break; case EFadeType.InOut: StartCoroutine(FadeInOut(audio, sec)); return; break; case EFadeType.Cross: inFade = outFade = true; break; } m_bgm[m_nowBgmIndex ^ 1].GetComponent <CAudio>().Stop(outFade, sec); m_bgm[m_nowBgmIndex].GetComponent <CAudio>().Play(m_audioClips[(int)audio], inFade, sec, true); }
public void PlaySE(EAudioList audio) { GameObject newSE = new GameObject("SE "); newSE.AddComponent <CAudio>(); newSE.transform.parent = transform; newSE.GetComponent <CAudio>().PlayAndDestroy(m_audioClips[(int)audio]); }
//フェードインのあとにフェードアウトする IEnumerator FadeInOut(EAudioList audio, float sec) { m_bgm[m_nowBgmIndex ^ 1].GetComponent <CAudio>().Stop(true, sec / 2); for (float timer = 0; timer < sec / 2; timer += Time.deltaTime) { yield return(0); } m_bgm[m_nowBgmIndex].GetComponent <CAudio>().Play(m_audioClips[(int)audio], true, sec / 2, true); }
//Channelがnoneだと制御しないゲームオブジェクトを作成させる。 public void PlaySE(EAudioList audio, ESEChannelList channnel, bool isLoop) { switch (channnel) { case ESEChannelList._1: case ESEChannelList._2: case ESEChannelList._3: case ESEChannelList._4: case ESEChannelList._5: case ESEChannelList._6: case ESEChannelList._7: case ESEChannelList._8: m_seChannel[(int)channnel].GetComponent <CAudio>().Play(m_audioClips[(int)audio], false, 0, isLoop); m_seChannel[(int)channnel].GetComponent <CAudio>().SetVolume(0, 1, false); break; } }
//enumと連動させてファイルネーム取得する static public string GetFileName(EAudioList value) { string[] values = { "Sound/BGM/Bgm01", "Sound/BGM/Bgm02", "Sound/BGM/Bgm03", "Sound/BGM/Bgm04", "Sound/SE/SE01", "Sound/SE/SE02", "Sound/SE/SE03", "Sound/SE/SE04", "Sound/SE/SE05", "Sound/SE/SE06", "Sound/SE/SE07", "Sound/SE/SE08", "Sound/SE/SE09", "Sound/SE/SE10", "Sound/SE/SE11", "Sound/SE/SE12", "Sound/SE/SE13", "Sound/SE/SE14", "Sound/SE/SE15", "Sound/SE/SE16", "Sound/SE/SE17", "Sound/SE/SE18", "Sound/SE/SE19", "Sound/SE/SE20", "Sound/SE/SE21", "Sound/SE/SE22", "Sound/SE/SE23", "Sound/SE/SE24", "Sound/SE/SE25", "Sound/SE/SE26", "Sound/SE/SE27", "Sound/SE/SE28", null }; return(values[(int)value]); }