public void PlaySe(SeType seType) { if (_seList.TryGetValue((int)seType, out var clip)) { audioSource.PlayOneShot(clip); } }
/// <summary> /// SEの再生 /// </summary> /// <param name="type">再生するSEの種類</param> public void PlaySe(SeType type) { // 再生するSEのオブジェクトを複製する(再生中のSEを持つ親オブジェクトにセット) GameObject playingSe = Instantiate(parentSe.GetChild((int)type).gameObject, parentPlayingSe); // 再生するSEのオブジェクトをオンにする playingSe.SetActive(true); }
static void PlaySe(SeType se) { seWait = RapidSeWait; if (se != SeType.None) { Instance.audioSE.PlayOneShot(Instance.seList[(int)se]); } }
public void PlaySe(SeType seType) { var clip = _seUseCase.GetSeClip(seType); if (clip == null) { return; } audioSource.PlayOneShot(clip); }
/// <summary> /// 指定のSEを停止する /// </summary> /// <param name="type">停止するSEの種類</param> public void StopSe(SeType type) { // 再生中のSEで指定されたSEと同じものは停止する foreach (Transform playingSeChild in parentPlayingSe) { // オブジェクト名とEnumの種類名で判定(クローンされたオブジェクトの名前には"(Clone)"が付加される) if (playingSeChild.gameObject.name == type.ToString() + "(Clone)") { // 名前が一致したSEは停止する playingSeChild.gameObject.SetActive(false); } } }
public AudioClip GetClip(SeType type) { switch (type) { case SeType.COIN: return(coinGet); case SeType.SWISH: return(swish); case SeType.SPAWN: return(spawn); case SeType.DAMAGE: return(damage); case SeType.DEAD: return(dead); } return(coinGet); }
/// <summary> /// 指定の効果音を鳴らします。 /// </summary> /// <param name="snd">再生したい効果音</param> public static void Play(SeType snd) { // すでに上限の時はキャンセル if (entrySeCount >= EntrySeMax) { return; } if ((seWait <= 0) && (entrySeCount == 0)) { PlaySe(snd); return; } int idx = (entrySeIndex + entrySeCount) % EntrySeMax; entrySe[idx] = snd; entrySeCount++; }
/// <summary> /// 指定のSEが再生中か判断する /// </summary> /// <param name="type">判定するSEの種類</param> /// <returns>再生中かどうか返す</returns> public bool IsPlayingSe(SeType type) { // 再生中のSEで指定されたSEと同じものは停止する foreach (Transform playingSeChild in parentPlayingSe) { // オブジェクト名とEnumの種類名で判定(クローンされたオブジェクトの名前には"(Clone)"が付加される) if (playingSeChild.gameObject.name == type.ToString() + "(Clone)") { // オブジェクトがアクティブかどうかも判定する。 // NOTE : 再生が終了したSEが子オブジェクトとして残ったままになっている場合があるため if (playingSeChild.gameObject.activeSelf) { // 名前が一致した場合はtrueを返す return(true); } } } // 無ければfalseを返す return(false); }
public async UniTaskVoid DelayPlaySeAsync(SeType seType, float delayTime, CancellationToken token) { await UniTask.Delay(TimeSpan.FromSeconds(delayTime), cancellationToken : token); PlaySe(seType); }
/// <summary> /// 指定の効果音を鳴らします。 /// </summary> /// <param name="snd">再生したい効果音</param> public static void Play(SeType snd) { Instance.audioSE.PlayOneShot(Instance.seList[(int)snd]); }
public void PlaySe(SeType seType) { PlaySe((long)seType); }
public void PlayOneShot(SeType type) { audio.PlayOneShot(GetClip(type)); }
public void PlaySe(SeType eSeType) { pAudioSource_.PlayOneShot(pArrAudioSe_[(int)eSeType]); }
public AudioClip GetSeClip(SeType seType) => _soundRepository.FindSe(seType);
public AudioClip FindSe(SeType seType) { return(_seTable.seData .Find(x => x.seType == seType) .audioClip); }