public void PlayBackgroundMusic(AudioClip clip, MusicTransType transType, float duration, float volume, float pitch, float position = 0) { if (clip == null || backgroundMusic.CurrentClip == clip) { return; } if (backgroundMusic.CurrentClip == null || duration <= 0) { transType = MusicTransType.Swift; } if (transType == MusicTransType.Swift) { PlayBackgroundMusic(clip, position, pitch); SetBackgroundVolume(volume); } else { if (backgroundMusic.NextClip != null) { return; } backgroundMusic.TransType = transType; transitionTime = backgroundMusic.TransitionDuration = duration; musicVolCap = musicVolume; backgroundMusic.NextClip = clip; if (backgroundMusic.TransType == MusicTransType.CrossFade) { if (crossFadeSource != null) { return; } crossFadeSource = InitAudioSource(gameObject.AddComponent <AudioSource>()); crossFadeSource.volume = Mathf.Clamp01(musicVolCap - currentMusicVol); crossFadeSource.priority = 0; PlayBackgroundMusic(ref crossFadeSource, backgroundMusic.NextClip, 0, pitch); } } }
public void PlayBackgroundMusic(string clippath, MusicTransType transition) { PlayBackgroundMusic(LoadClip(clippath), transition, 1f, musicVolume, 1f); }
public void PlayBackgroundMusic(string clippath, MusicTransType transition, float duration, float volume) { PlayBackgroundMusic(LoadClip(clippath), transition, duration, volume, 1f); }
public void PlayBackgroundMusic(string clippath, MusicTransType transition, float duration, float volume, float pitch, float playback_position = 0) { PlayBackgroundMusic(LoadClip(clippath), transition, duration, volume, pitch, playback_position); }
public void PlayBackgroundMusic(AudioClip clip, MusicTransType transition) { PlayBackgroundMusic(clip, transition, 1f, musicVolume, 1f); }
public void PlayBackgroundMusic(AudioClip clip, MusicTransType transition, float transition_duration, float volume) { PlayBackgroundMusic(clip, transition, transition_duration, volume, 1f); }