public GetAudioType ( |
||
clip | ||
return | AudioType |
void handleMuteAction(AudioActionType actionType, AudioType audioType) { foreach (AudioSource source in channels.Values) { if (fileList.GetAudioType(source.clip) == audioType) { source.mute = AudioUtil.MutedBoolFromAudioAction(actionType); } } }
AudioType getChannelType(AudioSource channel) { if (channel.clip) { return(fileList.GetAudioType(channel.clip)); } else { return(default(AudioType)); } }
public void Play(AudioFile file) { AudioSource source = getChannel(file.Channel); checkMute(file, source); bool shouldResumeClip = false; float clipTime = 0; if (file.Type == AudioType.FX) { if (source.clip != null && source.isPlaying && !clipIsActive(file)) { if (!AudioUtil.IsMuted(AudioType.FX)) { StartCoroutine(completeOnTempChannel(source.clip, source.time, source.volume)); } } } else if (file.Type == AudioType.Music) { if (source.clip == file.Clip) { shouldResumeClip = true; clipTime = source.time; } } source.clip = file.Clip; source.loop = file.Loop; source.volume = file.Volumef; if (shouldResumeClip) { source.time = clipTime; } source.Play(); if (fileList.GetAudioType(source.clip) == AudioType.FX) { activeSFX.Add(source.clip); StartCoroutine(removeClipWhenFinished(source.clip)); } }